Re: [PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-18 Thread Sekhar Nori
On Friday 19 January 2018 12:10 AM, David Lechner wrote:
> On 01/18/2018 09:27 AM, Sekhar Nori wrote:
>> On Monday 08 January 2018 07:55 AM, David Lechner wrote:
>>> This removes all of the clock init code from da8xx-dt.c. This includes
>>> all of the OF_DEV_AUXDATA that was just used for looking up clocks.
>>>
>>> Note: You need to have clocks defined in your device tree or your system
>>> won't boot after this patch.
>>
>> I am not sure we can do this then, as we cannot break DT compatibility.
>>
> 
> In the past, you have told me that you don't want the .dts changes and code
> changes in the same patch. In this case, if you apply either one

Thats still true.

> separately,
> it will break clocks. It does not matter which one is first.
> 
> So either we have to squash [PATCH v5 44/44] ARM: dts: da850: Add clocks
> into this patch or deal with the breakage.

I am not so much concerned about temporary breakage in the middle of the
series, but more about DT compatibility after the entire series is applied.

Thanks,
Sekhar


Re: [PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-18 Thread Sekhar Nori
On Friday 19 January 2018 12:10 AM, David Lechner wrote:
> On 01/18/2018 09:27 AM, Sekhar Nori wrote:
>> On Monday 08 January 2018 07:55 AM, David Lechner wrote:
>>> This removes all of the clock init code from da8xx-dt.c. This includes
>>> all of the OF_DEV_AUXDATA that was just used for looking up clocks.
>>>
>>> Note: You need to have clocks defined in your device tree or your system
>>> won't boot after this patch.
>>
>> I am not sure we can do this then, as we cannot break DT compatibility.
>>
> 
> In the past, you have told me that you don't want the .dts changes and code
> changes in the same patch. In this case, if you apply either one

Thats still true.

> separately,
> it will break clocks. It does not matter which one is first.
> 
> So either we have to squash [PATCH v5 44/44] ARM: dts: da850: Add clocks
> into this patch or deal with the breakage.

I am not so much concerned about temporary breakage in the middle of the
series, but more about DT compatibility after the entire series is applied.

Thanks,
Sekhar


Re: [PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-18 Thread David Lechner

On 01/18/2018 09:27 AM, Sekhar Nori wrote:

On Monday 08 January 2018 07:55 AM, David Lechner wrote:

This removes all of the clock init code from da8xx-dt.c. This includes
all of the OF_DEV_AUXDATA that was just used for looking up clocks.

Note: You need to have clocks defined in your device tree or your system
won't boot after this patch.


I am not sure we can do this then, as we cannot break DT compatibility.



In the past, you have told me that you don't want the .dts changes and code
changes in the same patch. In this case, if you apply either one separately,
it will break clocks. It does not matter which one is first.

So either we have to squash [PATCH v5 44/44] ARM: dts: da850: Add clocks
into this patch or deal with the breakage.


Re: [PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-18 Thread David Lechner

On 01/18/2018 09:27 AM, Sekhar Nori wrote:

On Monday 08 January 2018 07:55 AM, David Lechner wrote:

This removes all of the clock init code from da8xx-dt.c. This includes
all of the OF_DEV_AUXDATA that was just used for looking up clocks.

Note: You need to have clocks defined in your device tree or your system
won't boot after this patch.


I am not sure we can do this then, as we cannot break DT compatibility.



In the past, you have told me that you don't want the .dts changes and code
changes in the same patch. In this case, if you apply either one separately,
it will break clocks. It does not matter which one is first.

So either we have to squash [PATCH v5 44/44] ARM: dts: da850: Add clocks
into this patch or deal with the breakage.


Re: [PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-18 Thread Sekhar Nori
On Monday 08 January 2018 07:55 AM, David Lechner wrote:
> This removes all of the clock init code from da8xx-dt.c. This includes
> all of the OF_DEV_AUXDATA that was just used for looking up clocks.
> 
> Note: You need to have clocks defined in your device tree or your system
> won't boot after this patch.

I am not sure we can do this then, as we cannot break DT compatibility.

Thanks,
Sekhar


Re: [PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-18 Thread Sekhar Nori
On Monday 08 January 2018 07:55 AM, David Lechner wrote:
> This removes all of the clock init code from da8xx-dt.c. This includes
> all of the OF_DEV_AUXDATA that was just used for looking up clocks.
> 
> Note: You need to have clocks defined in your device tree or your system
> won't boot after this patch.

I am not sure we can do this then, as we cannot break DT compatibility.

Thanks,
Sekhar


[PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-07 Thread David Lechner
This removes all of the clock init code from da8xx-dt.c. This includes
all of the OF_DEV_AUXDATA that was just used for looking up clocks.

Note: You need to have clocks defined in your device tree or your system
won't boot after this patch.

Signed-off-by: David Lechner 
---
 arch/arm/mach-davinci/da8xx-dt.c | 61 +---
 1 file changed, 1 insertion(+), 60 deletions(-)

diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
index ab199f4..d5c6cdb 100644
--- a/arch/arm/mach-davinci/da8xx-dt.c
+++ b/arch/arm/mach-davinci/da8xx-dt.c
@@ -19,69 +19,11 @@
 #include "cp_intc.h"
 #include 
 
-static struct of_dev_auxdata da850_aemif_auxdata_lookup[] = {
-   OF_DEV_AUXDATA("ti,davinci-nand", 0x6200, "davinci-nand.0", NULL),
-   {}
-};
-
-static struct aemif_platform_data aemif_data = {
-   .dev_lookup = da850_aemif_auxdata_lookup,
-};
-
-static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
-   OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
-   OF_DEV_AUXDATA("ti,davinci-i2c", 0x01e28000, "i2c_davinci.2", NULL),
-   OF_DEV_AUXDATA("ti,davinci-wdt", 0x01c21000, "davinci-wdt", NULL),
-   OF_DEV_AUXDATA("ti,da830-mmc", 0x01c4, "da830-mmc.0", NULL),
-   OF_DEV_AUXDATA("ti,da850-ehrpwm", 0x01f0, "ehrpwm.0", NULL),
-   OF_DEV_AUXDATA("ti,da850-ehrpwm", 0x01f02000, "ehrpwm.1", NULL),
-   OF_DEV_AUXDATA("ti,da850-ecap", 0x01f06000, "ecap.0", NULL),
-   OF_DEV_AUXDATA("ti,da850-ecap", 0x01f07000, "ecap.1", NULL),
-   OF_DEV_AUXDATA("ti,da850-ecap", 0x01f08000, "ecap.2", NULL),
-   OF_DEV_AUXDATA("ti,da830-spi", 0x01c41000, "spi_davinci.0", NULL),
-   OF_DEV_AUXDATA("ti,da830-spi", 0x01f0e000, "spi_davinci.1", NULL),
-   OF_DEV_AUXDATA("ns16550a", 0x01c42000, "serial8250.0", NULL),
-   OF_DEV_AUXDATA("ns16550a", 0x01d0c000, "serial8250.1", NULL),
-   OF_DEV_AUXDATA("ns16550a", 0x01d0d000, "serial8250.2", NULL),
-   OF_DEV_AUXDATA("ti,davinci_mdio", 0x01e24000, "davinci_mdio.0", NULL),
-   OF_DEV_AUXDATA("ti,davinci-dm6467-emac", 0x01e2, "davinci_emac.1",
-  NULL),
-   OF_DEV_AUXDATA("ti,da830-mcasp-audio", 0x01d0, "davinci-mcasp.0", 
NULL),
-   OF_DEV_AUXDATA("ti,da850-aemif", 0x6800, "ti-aemif", _data),
-   OF_DEV_AUXDATA("ti,da850-tilcdc", 0x01e13000, "da8xx_lcdc.0", NULL),
-   OF_DEV_AUXDATA("ti,da830-ohci", 0x01e25000, "ohci-da8xx", NULL),
-   OF_DEV_AUXDATA("ti,da830-musb", 0x01e0, "musb-da8xx", NULL),
-   OF_DEV_AUXDATA("ti,da830-usb-phy", 0x01c1417c, "da8xx-usb-phy", NULL),
-   OF_DEV_AUXDATA("ti,da850-ahci", 0x01e18000, "ahci_da850", NULL),
-   OF_DEV_AUXDATA("ti,da850-vpif", 0x01e17000, "vpif", NULL),
-   OF_DEV_AUXDATA("ti,da850-dsp", 0x1180, "davinci-rproc.0", NULL),
-   {}
-};
-
 #ifdef CONFIG_ARCH_DAVINCI_DA850
 
 static void __init da850_init_machine(void)
 {
-   /* All existing boards use 100MHz SATA refclkpn */
-   static const unsigned long sata_refclkpn = 100 * 1000 * 1000;
-
-   int ret;
-
-   ret = da8xx_register_usb20_phy_clk(false);
-   if (ret)
-   pr_warn("%s: registering USB 2.0 PHY clock failed: %d",
-   __func__, ret);
-   ret = da8xx_register_usb11_phy_clk(false);
-   if (ret)
-   pr_warn("%s: registering USB 1.1 PHY clock failed: %d",
-   __func__, ret);
-
-   ret = da850_register_sata_refclk(sata_refclkpn);
-   if (ret)
-   pr_warn("%s: registering SATA REFCLK failed: %d",
-   __func__, ret);
-
-   of_platform_default_populate(NULL, da850_auxdata_lookup, NULL);
+   of_platform_default_populate(NULL, NULL, NULL);
davinci_pm_init();
pdata_quirks_init();
 }
@@ -96,7 +38,6 @@ static const char *const da850_boards_compat[] __initconst = {
 
 DT_MACHINE_START(DA850_DT, "Generic DA850/OMAP-L138/AM18x")
.map_io = da850_init,
-   .init_time  = da850_init_time,
.init_machine   = da850_init_machine,
.dt_compat  = da850_boards_compat,
.init_late  = davinci_init_late,
-- 
2.7.4



[PATCH v5 43/44] ARM: da8xx-dt: switch to device tree clocks

2018-01-07 Thread David Lechner
This removes all of the clock init code from da8xx-dt.c. This includes
all of the OF_DEV_AUXDATA that was just used for looking up clocks.

Note: You need to have clocks defined in your device tree or your system
won't boot after this patch.

Signed-off-by: David Lechner 
---
 arch/arm/mach-davinci/da8xx-dt.c | 61 +---
 1 file changed, 1 insertion(+), 60 deletions(-)

diff --git a/arch/arm/mach-davinci/da8xx-dt.c b/arch/arm/mach-davinci/da8xx-dt.c
index ab199f4..d5c6cdb 100644
--- a/arch/arm/mach-davinci/da8xx-dt.c
+++ b/arch/arm/mach-davinci/da8xx-dt.c
@@ -19,69 +19,11 @@
 #include "cp_intc.h"
 #include 
 
-static struct of_dev_auxdata da850_aemif_auxdata_lookup[] = {
-   OF_DEV_AUXDATA("ti,davinci-nand", 0x6200, "davinci-nand.0", NULL),
-   {}
-};
-
-static struct aemif_platform_data aemif_data = {
-   .dev_lookup = da850_aemif_auxdata_lookup,
-};
-
-static struct of_dev_auxdata da850_auxdata_lookup[] __initdata = {
-   OF_DEV_AUXDATA("ti,davinci-i2c", 0x01c22000, "i2c_davinci.1", NULL),
-   OF_DEV_AUXDATA("ti,davinci-i2c", 0x01e28000, "i2c_davinci.2", NULL),
-   OF_DEV_AUXDATA("ti,davinci-wdt", 0x01c21000, "davinci-wdt", NULL),
-   OF_DEV_AUXDATA("ti,da830-mmc", 0x01c4, "da830-mmc.0", NULL),
-   OF_DEV_AUXDATA("ti,da850-ehrpwm", 0x01f0, "ehrpwm.0", NULL),
-   OF_DEV_AUXDATA("ti,da850-ehrpwm", 0x01f02000, "ehrpwm.1", NULL),
-   OF_DEV_AUXDATA("ti,da850-ecap", 0x01f06000, "ecap.0", NULL),
-   OF_DEV_AUXDATA("ti,da850-ecap", 0x01f07000, "ecap.1", NULL),
-   OF_DEV_AUXDATA("ti,da850-ecap", 0x01f08000, "ecap.2", NULL),
-   OF_DEV_AUXDATA("ti,da830-spi", 0x01c41000, "spi_davinci.0", NULL),
-   OF_DEV_AUXDATA("ti,da830-spi", 0x01f0e000, "spi_davinci.1", NULL),
-   OF_DEV_AUXDATA("ns16550a", 0x01c42000, "serial8250.0", NULL),
-   OF_DEV_AUXDATA("ns16550a", 0x01d0c000, "serial8250.1", NULL),
-   OF_DEV_AUXDATA("ns16550a", 0x01d0d000, "serial8250.2", NULL),
-   OF_DEV_AUXDATA("ti,davinci_mdio", 0x01e24000, "davinci_mdio.0", NULL),
-   OF_DEV_AUXDATA("ti,davinci-dm6467-emac", 0x01e2, "davinci_emac.1",
-  NULL),
-   OF_DEV_AUXDATA("ti,da830-mcasp-audio", 0x01d0, "davinci-mcasp.0", 
NULL),
-   OF_DEV_AUXDATA("ti,da850-aemif", 0x6800, "ti-aemif", _data),
-   OF_DEV_AUXDATA("ti,da850-tilcdc", 0x01e13000, "da8xx_lcdc.0", NULL),
-   OF_DEV_AUXDATA("ti,da830-ohci", 0x01e25000, "ohci-da8xx", NULL),
-   OF_DEV_AUXDATA("ti,da830-musb", 0x01e0, "musb-da8xx", NULL),
-   OF_DEV_AUXDATA("ti,da830-usb-phy", 0x01c1417c, "da8xx-usb-phy", NULL),
-   OF_DEV_AUXDATA("ti,da850-ahci", 0x01e18000, "ahci_da850", NULL),
-   OF_DEV_AUXDATA("ti,da850-vpif", 0x01e17000, "vpif", NULL),
-   OF_DEV_AUXDATA("ti,da850-dsp", 0x1180, "davinci-rproc.0", NULL),
-   {}
-};
-
 #ifdef CONFIG_ARCH_DAVINCI_DA850
 
 static void __init da850_init_machine(void)
 {
-   /* All existing boards use 100MHz SATA refclkpn */
-   static const unsigned long sata_refclkpn = 100 * 1000 * 1000;
-
-   int ret;
-
-   ret = da8xx_register_usb20_phy_clk(false);
-   if (ret)
-   pr_warn("%s: registering USB 2.0 PHY clock failed: %d",
-   __func__, ret);
-   ret = da8xx_register_usb11_phy_clk(false);
-   if (ret)
-   pr_warn("%s: registering USB 1.1 PHY clock failed: %d",
-   __func__, ret);
-
-   ret = da850_register_sata_refclk(sata_refclkpn);
-   if (ret)
-   pr_warn("%s: registering SATA REFCLK failed: %d",
-   __func__, ret);
-
-   of_platform_default_populate(NULL, da850_auxdata_lookup, NULL);
+   of_platform_default_populate(NULL, NULL, NULL);
davinci_pm_init();
pdata_quirks_init();
 }
@@ -96,7 +38,6 @@ static const char *const da850_boards_compat[] __initconst = {
 
 DT_MACHINE_START(DA850_DT, "Generic DA850/OMAP-L138/AM18x")
.map_io = da850_init,
-   .init_time  = da850_init_time,
.init_machine   = da850_init_machine,
.dt_compat  = da850_boards_compat,
.init_late  = davinci_init_late,
-- 
2.7.4