]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branch 'arm-soc/for-next'
authorStephen Rothwell <sfr@canb.auug.org.au>
Wed, 19 Jun 2013 06:08:02 +0000 (16:08 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Wed, 19 Jun 2013 06:08:02 +0000 (16:08 +1000)
Conflicts:
arch/arm/mach-shmobile/clock-r8a7740.c
arch/arm/mach-shmobile/clock-r8a7778.c
drivers/tty/serial/xilinx_uartps.c
drivers/usb/phy/phy-rcar-usb.c

37 files changed:
1  2 
MAINTAINERS
arch/arm/Kconfig
arch/arm/Kconfig.debug
arch/arm/boot/dts/am33xx.dtsi
arch/arm/boot/dts/imx28.dtsi
arch/arm/boot/dts/sun4i-a10.dtsi
arch/arm/include/asm/cp15.h
arch/arm/mach-msm/io.c
arch/arm/mach-omap2/Kconfig
arch/arm/mach-shmobile/Kconfig
arch/arm/mach-shmobile/board-armadillo800eva.c
arch/arm/mach-shmobile/clock-r8a7740.c
arch/arm/mach-shmobile/clock-r8a7778.c
arch/arm/mach-shmobile/clock-r8a7779.c
arch/arm/mm/mmu.c
arch/arm/plat-samsung/include/plat/cpu-freq-core.h
drivers/cpufreq/Kconfig.arm
drivers/cpufreq/Makefile
drivers/cpufreq/s3c24xx-cpufreq.c
drivers/crypto/ux500/cryp/cryp_core.c
drivers/gpio/Kconfig
drivers/gpio/gpio-rcar.c
drivers/pci/Kconfig
drivers/pinctrl/Kconfig
drivers/pinctrl/Makefile
drivers/pinctrl/pinctrl-nomadik.c
drivers/pinctrl/sh-pfc/core.c
drivers/regulator/ab8500.c
drivers/staging/tidspbridge/core/_tiomap.h
drivers/staging/tidspbridge/core/tiomap3430_pwr.c
drivers/tty/serial/xilinx_uartps.c
drivers/usb/gadget/Kconfig
drivers/usb/host/ehci-platform.c
drivers/usb/musb/ux500.c
drivers/usb/musb/ux500_dma.c
drivers/usb/phy/Kconfig
sound/soc/ux500/ux500_pcm.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index ae93f94d15bd65a6c9de847bb95e6d5d2dc0fab1,7fd32d604e342b5ccb6b1e119fb1e4ae1e72a59e..de10fd78bf2b839671ed39331173abf6c6db1d2c
@@@ -591,7 -594,9 +594,9 @@@ static struct clk_lookup lookups[] = 
        CLKDEV_DEV_ID("e6860000.sdhi",          &mstp_clks[MSTP313]),
        CLKDEV_DEV_ID("sh_mmcif",               &mstp_clks[MSTP312]),
        CLKDEV_DEV_ID("e6bd0000.mmcif",         &mstp_clks[MSTP312]),
 -      CLKDEV_DEV_ID("sh-eth",                 &mstp_clks[MSTP309]),
 +      CLKDEV_DEV_ID("r8a7740-gether",         &mstp_clks[MSTP309]),
+       CLKDEV_DEV_ID("e9a00000.sh-eth",        &mstp_clks[MSTP309]),
+       CLKDEV_DEV_ID("renesas_tpu_pwm",        &mstp_clks[MSTP304]),
  
        CLKDEV_DEV_ID("sh_mobile_sdhi.2",       &mstp_clks[MSTP415]),
        CLKDEV_DEV_ID("e6870000.sdhi",          &mstp_clks[MSTP415]),
index 9614b07254b2cc1c2d8f90db3c63273749162f03,53798e5037d7a98b24f9a375db35a653d0c5291a..a0e9eb72e46d829f518503e65276e3e4eeb24380
@@@ -76,8 -136,22 +136,22 @@@ static struct clk mstp_clks[MSTP_NR] = 
  };
  
  static struct clk_lookup lookups[] = {
+       /* main */
+       CLKDEV_CON_ID("shyway_clk",     &s_clk),
+       CLKDEV_CON_ID("peripheral_clk", &p_clk),
        /* MSTP32 clocks */
 -      CLKDEV_DEV_ID("sh-eth", &mstp_clks[MSTP114]), /* Ether */
+       CLKDEV_DEV_ID("sh_mmcif", &mstp_clks[MSTP331]), /* MMC */
+       CLKDEV_DEV_ID("sh_mobile_sdhi.0", &mstp_clks[MSTP323]), /* SDHI0 */
+       CLKDEV_DEV_ID("sh_mobile_sdhi.1", &mstp_clks[MSTP322]), /* SDHI1 */
+       CLKDEV_DEV_ID("sh_mobile_sdhi.2", &mstp_clks[MSTP321]), /* SDHI2 */
 +      CLKDEV_DEV_ID("r8a777x-ether", &mstp_clks[MSTP114]), /* Ether */
+       CLKDEV_DEV_ID("ehci-platform", &mstp_clks[MSTP100]), /* USB EHCI port0/1 */
+       CLKDEV_DEV_ID("ohci-platform", &mstp_clks[MSTP100]), /* USB OHCI port0/1 */
+       CLKDEV_DEV_ID("i2c-rcar.0", &mstp_clks[MSTP030]), /* I2C0 */
+       CLKDEV_DEV_ID("i2c-rcar.1", &mstp_clks[MSTP029]), /* I2C1 */
+       CLKDEV_DEV_ID("i2c-rcar.2", &mstp_clks[MSTP028]), /* I2C2 */
+       CLKDEV_DEV_ID("i2c-rcar.3", &mstp_clks[MSTP027]), /* I2C3 */
        CLKDEV_DEV_ID("sh-sci.0", &mstp_clks[MSTP026]), /* SCIF0 */
        CLKDEV_DEV_ID("sh-sci.1", &mstp_clks[MSTP025]), /* SCIF1 */
        CLKDEV_DEV_ID("sh-sci.2", &mstp_clks[MSTP024]), /* SCIF2 */
index 2f7e5245a690f4aebff237cf572a29e7d16b82df,9daeb8c374833b239c8d7bfc95f322c6253369aa..10340f5becbb32400d6f481c8484be3fba54e891
@@@ -161,9 -162,10 +162,10 @@@ static struct clk_lookup lookups[] = 
        CLKDEV_CON_ID("peripheral_clk", &clkp_clk),
  
        /* MSTP32 clocks */
+       CLKDEV_DEV_ID("rcar-pcie", &mstp_clks[MSTP116]), /* PCIe */
        CLKDEV_DEV_ID("sata_rcar", &mstp_clks[MSTP115]), /* SATA */
        CLKDEV_DEV_ID("fc600000.sata", &mstp_clks[MSTP115]), /* SATA w/DT */
 -      CLKDEV_DEV_ID("sh-eth", &mstp_clks[MSTP114]), /* Ether */
 +      CLKDEV_DEV_ID("r8a777x-ether", &mstp_clks[MSTP114]), /* Ether */
        CLKDEV_DEV_ID("ehci-platform.1", &mstp_clks[MSTP101]), /* USB EHCI port2 */
        CLKDEV_DEV_ID("ohci-platform.1", &mstp_clks[MSTP101]), /* USB OHCI port2 */
        CLKDEV_DEV_ID("ehci-platform.0", &mstp_clks[MSTP100]), /* USB EHCI port0/1 */
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 6c9174530422953a2b1294ab0c1cf55d3e128882,a4a3028103e3441c533517da3cdc9ac62ad6eed9..7e4150aa69c65b34c44e526c5633bf456f1abe2f
@@@ -972,14 -1004,15 +1004,14 @@@ static int xuartps_probe(struct platfor
                port->mapbase = res->start;
                port->irq = res2->start;
                port->dev = &pdev->dev;
-               port->uartclk = clk_get_rate(clk);
-               port->private_data = clk;
+               port->uartclk = clk_get_rate(xuartps_data->refclk);
+               port->private_data = xuartps_data;
 -              dev_set_drvdata(&pdev->dev, port);
 +              platform_set_drvdata(pdev, port);
                rc = uart_add_one_port(&xuartps_uart_driver, port);
                if (rc) {
                        dev_err(&pdev->dev,
                                "uart_add_one_port() failed; err=%i\n", rc);
-                       return rc;
 -                      dev_set_drvdata(&pdev->dev, NULL);
+                       goto err_out_clk_disable;
                }
                return 0;
        }
@@@ -993,14 -1039,19 +1038,18 @@@ err_out_free
   **/
  static int xuartps_remove(struct platform_device *pdev)
  {
 -      struct uart_port *port = dev_get_drvdata(&pdev->dev);
 +      struct uart_port *port = platform_get_drvdata(pdev);
-       struct clk *clk = port->private_data;
+       struct xuartps *xuartps_data = port->private_data;
        int rc;
  
        /* Remove the xuartps port from the serial core */
        rc = uart_remove_one_port(&xuartps_uart_driver, port);
 -      dev_set_drvdata(&pdev->dev, NULL);
        port->mapbase = 0;
-       clk_disable_unprepare(clk);
+       clk_disable_unprepare(xuartps_data->refclk);
+       clk_disable_unprepare(xuartps_data->aperclk);
+       clk_put(xuartps_data->refclk);
+       clk_put(xuartps_data->aperclk);
+       kfree(xuartps_data);
        return rc;
  }
  
Simple merge
Simple merge
index 028ff4d07dc74a3346df56c6a677e4e8d95bbf9e,f0beee7b868e817a7c6d4ca325f8f42917992782..fce71b605936ed228bc104efd2d5d60c0959af2f
@@@ -187,10 -195,39 +195,40 @@@ static const struct musb_platform_ops u
        .set_vbus       = ux500_musb_set_vbus,
  };
  
+ static struct musb_hdrc_platform_data *
+ ux500_of_probe(struct platform_device *pdev, struct device_node *np)
+ {
+       struct musb_hdrc_platform_data *pdata;
+       const char *mode;
+       int strlen;
+       pdata = devm_kzalloc(&pdev->dev, sizeof(*pdata), GFP_KERNEL);
+       if (!pdata)
+               return NULL;
+       mode = of_get_property(np, "dr_mode", &strlen);
+       if (!mode) {
+               dev_err(&pdev->dev, "No 'dr_mode' property found\n");
+               return NULL;
+       }
+       if (strlen > 0) {
+               if (!strcmp(mode, "host"))
+                       pdata->mode = MUSB_HOST;
+               if (!strcmp(mode, "otg"))
+                       pdata->mode = MUSB_OTG;
+               if (!strcmp(mode, "peripheral"))
+                       pdata->mode = MUSB_PERIPHERAL;
+       }
+       return pdata;
+ }
  static int ux500_probe(struct platform_device *pdev)
  {
 +      struct resource musb_resources[2];
        struct musb_hdrc_platform_data  *pdata = pdev->dev.platform_data;
+       struct device_node              *np = pdev->dev.of_node;
        struct platform_device          *musb;
        struct ux500_glue               *glue;
        struct clk                      *clk;
Simple merge
Simple merge
Simple merge