Olof Johansson [Mon, 7 Oct 2013 17:23:39 +0000 (10:23 -0700)]
Merge tag 'ux500-devicetree-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/dt
From Linus Walleij:
Second part of the Ux500 devicetree conversion and ATAG
deletion: this fixes bugs discovered when switching to a
devicetree-only setup, primarily on the HREF prototypes.
The biggest change is to split into four DTS variants as
the UIB autodetection was lost.
* tag 'ux500-devicetree-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
ARM: ux500: move BU21013 touchpad GPIOs into top-level DTS
ARM: ux500: register the tc35892 GPIO on the TVK UIB
ARM: ux500: split the HREF DTS files from two to four
ARM: ux500: split HREF UIB files
ARM: ux500: move TC35892 at 0x42 to hrefprev60
ARM: ux500: correct CD for micro SD on hrev60plus
ARM: ux500: fix proximity sensor button
ARM: ux500: correct I2C address of ambient light sensor
ARM: ux500 enable the AB8500 gpio for all HREFs
ARM: ux500: add default trigger on HREF LED
Linus Walleij [Thu, 3 Oct 2013 08:29:24 +0000 (10:29 +0200)]
ARM: ux500: move BU21013 touchpad GPIOs into top-level DTS
The BU21013 touchscreen GPIOs have been pretty confused, correct
them per board, and move the GPIO assignments up to the top
level DTS file so we can control it from there, and avoid defining
the GPIO assignments for non-ST UIB equipped boards.
Linus Walleij [Thu, 3 Oct 2013 08:18:36 +0000 (10:18 +0200)]
ARM: ux500: register the tc35892 GPIO on the TVK UIB
The TVK1281618 UIB has a TC35892 GPIO expander on it, which has
in the past probably been confused with the GPIO expander on the
older HREF plus previous to v60, which is on an entirely different
part of the system with another I2C address. Register the expander
in the right place.
Linus Walleij [Wed, 2 Oct 2013 13:42:59 +0000 (15:42 +0200)]
ARM: ux500: split the HREF DTS files from two to four
As the device tree conversion did away with the ability to
auto-detect the UIB (User Interface Board) version from attempting
to read an I2C address, we now have to pass the knowledge of
what UIB is mounted through the device tree. This gives rise
to four possible board permutations:
- HREF prior to v60, ST UIB (hrefprev60-stuib)
- HREF prior to v60, TVK1281618 UIB (hrefprev60-tvk)
- HREF v60 and later, ST UIB (href60plus-stuib)
- HREF v60 and later, TVK1281618 UIB (hrefv60plus-tvk)
Linus Walleij [Wed, 2 Oct 2013 14:03:31 +0000 (16:03 +0200)]
ARM: ux500: move TC35892 at 0x42 to hrefprev60
The TC35892 was mounted as a GPIO expander on the HREF prior
to v60 and not in later versions, which instead use the Nomadik
GPIO directly, so move it over to the hrefprev60 DTS file.
Linus Walleij [Wed, 2 Oct 2013 14:12:52 +0000 (16:12 +0200)]
ARM: ux500: correct CD for micro SD on hrev60plus
This correct the card detect line for the HREF v60 and later
reference designs. This is connected directly to the Nomadik
GPIO block, line 95 at offset 31 on the third instance.
Olof Johansson [Mon, 30 Sep 2013 16:08:46 +0000 (09:08 -0700)]
Merge tag 'ux500-dt-for-v3.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/dt
From Linus Walleij:
This is a huge device tree and ATAG removal series for ux500:
- Move all the clock definitions over to the device tree
- Remove all now-redundant AUXDATA and make the ux500 device
tree only
* tag 'ux500-dt-for-v3.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson: (92 commits)
ARM: ux500: delete devices-common remnants
clk: ux500: Provide a look-up for the ARMSS clock
ARM: ux500: Enable CPUFreq on Snowball
ARM: ux500: Provide a Device Tree node for CPUFreq in the DBx500
ARM: ux500: Provide a clock lookup for the Hash driver
ARM: ux500: Provide a clock lookup for the Crypto driver
ARM: ux500: Fix trivial white-space error in the DBX500 DTSI file
ARM: ux500: Remove ATAG booting support for Snowball
ARM: ux500: Remove ATAG booting support for HREF
ARM: ux500: Remove ATAG booting support for U8520
ARM: ux500: Remove ATAG booting support for MOP500
ARM: ux500: Purge UIB framework when booting with ATAGs
ARM: ux500: Take out STUIB support when not booting with Device Tree
ARM: ux500: Remove BU21013 ROHM TS support when booting with only ATAGs
ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
ARM: ux500: Delete U8500 UIB support when booting with ATAGs
ARM: ux500: Don't register Synaptics RMI4 TS when booting with ATAGs
ARM: ux500: Purge DB8500 PRCMU registration when not booting with DT
ARM: ux500: Stop requesting the SoC device to play 'parent' role
ARM: ux500: Remove UART support when booting without Device Tree
...
commit f1ff5b2549990b5de080b52e3313cbb30c218853
"ARM: ux500: Stop enabling GPIOs when not booting with Device Tree"
deleted devices-common.c, but did not delete the build
rule from Makefile (most likely due to compiling in
a dirty tree where the object file still existed so
linking would complete anyway).
Delete the makerule, the header file associated
with this file and the remaining reference to the header.
Cc: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Thu, 22 Aug 2013 14:52:30 +0000 (15:52 +0100)]
ARM: ux500: Stop requesting the SoC device to play 'parent' role
There are no more devices which require left to register which require
a parent. This is part of the ux500 conversion over to Device Tree only
booting.
Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Wed, 21 Aug 2013 10:32:49 +0000 (11:32 +0100)]
ARM: ux500: Reclassify PRCMU AUXDATA entry
We still need to utilise the AUXDATA system for the PRCMU to pass
through platform data which can not be DT:ed i.e. regulator initialisation
values. All we're doing in this patch is changing the comment header to be
more accurate.
Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Wed, 18 Sep 2013 12:37:12 +0000 (13:37 +0100)]
ARM: ux500: Relocate AUXDATA relating to MSP (Audio)
MSP no longer requires clock-name bindings, so we need to move them to
a more appropriate header indicating that we're still passing DMA
related platform data to them.
Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:41:42 +0000 (10:41 +0100)]
ARM: ux500: Call appropriate clock initialisation based on DT or !DT booting
The ux500 platform will soon be converted to Device Tree only. When that
happens the old clock initialisation will be ripped out. In the meantime
however, we have to make a decision and call the appropriate
initialisation code manually.
Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Wed, 18 Sep 2013 07:58:18 +0000 (08:58 +0100)]
usb: musb: ux500: Don't supply a con_id when requesting the clock
If we supply a con_id then the clock framework will search for that name
in MUSB's Device Tree node for the 'clock-names' property. If it's absent
the clock request will fail. However, if we don't supply the con_id then
clk_get() will call into clk_sys() which will use the device name to
search for the appropriate clock, which is much more natural than forcing
'usb'.
Acked-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:35:00 +0000 (10:35 +0100)]
clk: ux500: Add Device Tree support for the TWD clock
This patch enables the TWD fixed factor clock to be specified from
Device Tree via phandles to the "smp-twd-clock" node.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:34:24 +0000 (10:34 +0100)]
clk: ux500: Add Device Tree support for the RTC clock
This patch enables the RTC fixed frequency clock to be specified from
Device Tree via phandles to the "rtc32k-clock" node.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:33:05 +0000 (10:33 +0100)]
clk: ux500: Add Device Tree support for the PRCC Kernel clock
This patch enables clocks to be specified from Device Tree via phandles
to the "prcc-kernel-clock" node.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:31:39 +0000 (10:31 +0100)]
clk: ux500: Add Device Tree support for the PRCC Peripheral clock
This patch enables clocks to be specified from Device Tree via phandles
to the "prcc-periph-clock" node.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:30:19 +0000 (10:30 +0100)]
clk: ux500: Add Device Tree support for the PRCMU clock
This patch enables clocks to be specified from Device Tree via phandles
to the "prcmu-clock" node.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Mon, 22 Jul 2013 12:13:01 +0000 (13:13 +0100)]
clk: ux500: Add a 2-cell Device Tree parser for obtaining PRCC clocks
PRCC (peripheral and kernel) clocks are specified using a property tuple
<&phandle base bit>, where 'base' is the peripheral (1, 2, 3, 5 or 6),
and bit is read-in value into that peripheral stipulated by the hardware
specification.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:26:24 +0000 (10:26 +0100)]
clk: ux500: Provide u8500_clk with skeleton Device Tree support
The functional components will be added on a per-clock basis.
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Tue, 17 Sep 2013 09:11:53 +0000 (10:11 +0100)]
clk: ux500: Copy u8500_clk_init() ready for DT enablement
Here we're using the old clock initialisation function as a template.
It's necessary to remove all of the clk_register_clkdev() calls as
they don't make sense when booting with Device Tree.
Cc: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Thu, 8 Aug 2013 09:38:15 +0000 (10:38 +0100)]
clk: ux500: Remove BML8580 clock
There is no mention of the PRCMU_BML8580CLK in any of the Design
Specifications for the chips supported in Mainline. In fact, where it
is incorrectly used in the u8540 clock definition driver it would
have the side effect of using the incorrect clock management address
([PRCM_BML8580CLK_MGT] 0x108 instead of the correct value 0x04C).
Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Wed, 18 Sep 2013 08:54:07 +0000 (09:54 +0100)]
ARM: ux500: Add a DT node for the Nomadik System Timer (MTU0)
The MTU0 is required for full booting of the system. The driver has
been previously DT:ed and is in use on the Nomadik platform, but we
also need to enable it on ux500 based systems.
Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Lee Jones [Mon, 19 Aug 2013 11:23:05 +0000 (12:23 +0100)]
mfd: dbx500: Remove any mention of the BML8580CLK
The platform which it pertains to is no longer supported and is actually
causing some confusion in the new common clock implementation. A recent
patch removed its use in the clock driver, let's take out the definitions
too.
Acked-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>