From f25718e8cff17b5c64ad11c2a6e9d2ee1b676eef Mon Sep 17 00:00:00 2001 From: Nicolas Pitre Date: Thu, 21 Jul 2011 21:48:13 -0400 Subject: Revert "Merge remote-tracking branch 'arm-soc/for-next' into linaro-3.0" This reverts commit c7e0c8535d73f8c5bf760926a2bd71c9840cf2ef, reversing changes made to dfee09c8acf18e84fe197bb5d821d1e4e02d020f. John Stultz reports that Panda doesn't boot anymore and 'git bisect' indicated the merge commit itself as the culprit. The resulting kernel log is: [ 1.734802] OMAP DSS rev 4.0 [ 1.740417] omap_hwmod: dss_core: _wait_target_disable failed [ 1.746429] omap_device: omapdss_dss.-1: new worst case deactivate latency 01 [ 1.755035] omapdss DISPC error: can't get dss_clk [ 1.760101] omapdss_dispc: probe of omapdss_dispc failed with error -2 [ 1.767333] omapdss HDMI error: can't get hdmi_clk [ 1.772399] omapdss_hdmi: probe of omapdss_hdmi failed with error -2 [ 1.780273] ------------[ cut here ]------------ [ 1.785125] WARNING: at drivers/video/omap2/dss/dispc.c:553dispc_runtime_ge) [ 1.793640] Modules linked in: [ 1.796905] ---[ end trace 6fcb132ac310d004 ]--- [ 1.801757] Unable to handle kernel NULL pointer dereference at virtualaddr0 [...] Revert it so a later version of the arm-soc merge result can be used instead. --- Documentation/arm/Samsung-S3C24XX/Overview.txt | 7 +- Documentation/devicetree/bindings/arm/sirf.txt | 3 - Documentation/devicetree/bindings/arm/xilinx.txt | 7 - .../devicetree/bindings/gpio/fsl-imx-gpio.txt | 22 - Documentation/devicetree/bindings/gpio/gpio.txt | 46 +- .../devicetree/bindings/gpio/gpio_nvidia.txt | 8 - MAINTAINERS | 6 - arch/arm/Kconfig | 44 +- arch/arm/Makefile | 7 +- arch/arm/boot/dts/prima2-cb.dts | 416 --------- arch/arm/boot/dts/zynq-ep107.dts | 52 -- arch/arm/configs/cm_x300_defconfig | 18 +- arch/arm/configs/loki_defconfig | 120 +++ arch/arm/configs/mx51_defconfig | 3 +- arch/arm/configs/mxs_defconfig | 4 +- arch/arm/configs/u8500_defconfig | 32 +- arch/arm/include/asm/hardware/scoop.h | 1 + arch/arm/include/asm/irq.h | 1 - arch/arm/include/asm/pci.h | 12 +- arch/arm/include/asm/vga.h | 5 +- arch/arm/kernel/irq.c | 19 +- arch/arm/lib/ecard.S | 1 + arch/arm/lib/io-readsw-armv3.S | 1 + arch/arm/lib/io-writesw-armv3.S | 1 + arch/arm/mach-bcmring/include/mach/hardware.h | 2 + arch/arm/mach-cns3xxx/cns3420vb.c | 3 +- arch/arm/mach-cns3xxx/core.c | 43 - arch/arm/mach-cns3xxx/core.h | 6 - arch/arm/mach-cns3xxx/include/mach/hardware.h | 22 + arch/arm/mach-cns3xxx/include/mach/vmalloc.h | 2 +- arch/arm/mach-cns3xxx/pcie.c | 3 - arch/arm/mach-davinci/board-da850-evm.c | 7 - arch/arm/mach-davinci/board-dm646x-evm.c | 17 +- arch/arm/mach-davinci/clock.c | 46 +- arch/arm/mach-davinci/clock.h | 3 - arch/arm/mach-davinci/da850.c | 10 - arch/arm/mach-davinci/devices-da8xx.c | 126 --- arch/arm/mach-davinci/dm646x.c | 4 +- arch/arm/mach-davinci/include/mach/da8xx.h | 2 - arch/arm/mach-davinci/include/mach/dm646x.h | 2 + arch/arm/mach-davinci/include/mach/psc.h | 151 ++-- arch/arm/mach-davinci/psc.c | 14 +- arch/arm/mach-dove/include/mach/hardware.h | 7 + arch/arm/mach-dove/pcie.c | 3 - arch/arm/mach-ep93xx/Makefile | 2 +- arch/arm/mach-ep93xx/core.c | 27 +- arch/arm/mach-ep93xx/gpio.c | 410 +++++++++ arch/arm/mach-ep93xx/include/mach/ep93xx-regs.h | 1 - arch/arm/mach-ep93xx/include/mach/hardware.h | 2 + arch/arm/mach-footbridge/dc21285.c | 3 - arch/arm/mach-footbridge/include/mach/hardware.h | 5 + arch/arm/mach-imx/Kconfig | 6 - arch/arm/mach-imx/dma-v1.c | 25 +- arch/arm/mach-imx/eukrea_mbimx27-baseboard.c | 23 +- arch/arm/mach-imx/eukrea_mbimxsd25-baseboard.c | 15 +- arch/arm/mach-imx/eukrea_mbimxsd35-baseboard.c | 13 +- arch/arm/mach-imx/mach-apf9328.c | 9 +- arch/arm/mach-imx/mach-armadillo5x0.c | 2 - arch/arm/mach-imx/mach-bug.c | 2 - arch/arm/mach-imx/mach-cpuimx27.c | 2 - arch/arm/mach-imx/mach-cpuimx35.c | 2 - arch/arm/mach-imx/mach-eukrea_cpuimx25.c | 2 - arch/arm/mach-imx/mach-imx27_visstrim_m10.c | 4 +- arch/arm/mach-imx/mach-imx27ipcam.c | 2 - arch/arm/mach-imx/mach-imx27lite.c | 2 - arch/arm/mach-imx/mach-kzm_arm11_01.c | 2 - arch/arm/mach-imx/mach-mx1ads.c | 2 - arch/arm/mach-imx/mach-mx21ads.c | 2 - arch/arm/mach-imx/mach-mx25_3ds.c | 2 - arch/arm/mach-imx/mach-mx27_3ds.c | 139 +-- arch/arm/mach-imx/mach-mx27ads.c | 2 - arch/arm/mach-imx/mach-mx31_3ds.c | 12 +- arch/arm/mach-imx/mach-mx31ads.c | 2 - arch/arm/mach-imx/mach-mx31lilly.c | 2 - arch/arm/mach-imx/mach-mx31lite.c | 2 - arch/arm/mach-imx/mach-mx31moboard.c | 16 +- arch/arm/mach-imx/mach-mx35_3ds.c | 4 +- arch/arm/mach-imx/mach-mxt_td60.c | 2 - arch/arm/mach-imx/mach-pca100.c | 2 - arch/arm/mach-imx/mach-pcm037.c | 2 - arch/arm/mach-imx/mach-pcm038.c | 2 - arch/arm/mach-imx/mach-pcm043.c | 2 - arch/arm/mach-imx/mach-qong.c | 2 - arch/arm/mach-imx/mach-scb9328.c | 19 +- arch/arm/mach-imx/mach-vpr200.c | 2 - arch/arm/mach-imx/mm-imx1.c | 21 +- arch/arm/mach-imx/mm-imx21.c | 24 +- arch/arm/mach-imx/mm-imx25.c | 42 +- arch/arm/mach-imx/mm-imx27.c | 25 +- arch/arm/mach-imx/mm-imx31.c | 42 +- arch/arm/mach-imx/mm-imx35.c | 63 +- arch/arm/mach-imx/mx31lite-db.c | 15 +- arch/arm/mach-integrator/include/mach/bits.h | 61 ++ arch/arm/mach-integrator/include/mach/hardware.h | 7 + arch/arm/mach-integrator/pci_v3.c | 5 - arch/arm/mach-iop13xx/include/mach/hardware.h | 7 + arch/arm/mach-iop13xx/pci.c | 5 +- arch/arm/mach-iop32x/include/mach/hardware.h | 3 + arch/arm/mach-iop33x/include/mach/hardware.h | 3 + arch/arm/mach-ixp2000/include/mach/hardware.h | 8 + arch/arm/mach-ixp2000/pci.c | 5 - arch/arm/mach-ixp23xx/include/mach/hardware.h | 4 + arch/arm/mach-ixp23xx/pci.c | 5 - arch/arm/mach-ixp4xx/common-pci.c | 5 - arch/arm/mach-ixp4xx/include/mach/hardware.h | 5 + arch/arm/mach-kirkwood/include/mach/hardware.h | 7 + arch/arm/mach-kirkwood/pcie.c | 3 - arch/arm/mach-ks8695/include/mach/hardware.h | 9 + arch/arm/mach-ks8695/pci.c | 3 - arch/arm/mach-loki/Kconfig | 13 + arch/arm/mach-loki/Makefile | 3 + arch/arm/mach-loki/Makefile.boot | 3 + arch/arm/mach-loki/addr-map.c | 122 +++ arch/arm/mach-loki/common.c | 162 ++++ arch/arm/mach-loki/common.h | 37 + arch/arm/mach-loki/include/mach/bridge-regs.h | 28 + arch/arm/mach-loki/include/mach/debug-macro.S | 19 + arch/arm/mach-loki/include/mach/entry-macro.S | 30 + arch/arm/mach-loki/include/mach/hardware.h | 15 + arch/arm/mach-loki/include/mach/io.h | 26 + arch/arm/mach-loki/include/mach/irqs.h | 58 ++ arch/arm/mach-loki/include/mach/loki.h | 83 ++ arch/arm/mach-loki/include/mach/memory.h | 10 + arch/arm/mach-loki/include/mach/system.h | 36 + arch/arm/mach-loki/include/mach/timex.h | 11 + arch/arm/mach-loki/include/mach/uncompress.h | 47 + arch/arm/mach-loki/include/mach/vmalloc.h | 5 + arch/arm/mach-loki/irq.c | 22 + arch/arm/mach-loki/lb88rc8480-setup.c | 99 +++ arch/arm/mach-lpc32xx/clock.c | 2 +- arch/arm/mach-lpc32xx/common.c | 42 - arch/arm/mach-lpc32xx/common.h | 2 - arch/arm/mach-lpc32xx/include/mach/vmalloc.h | 2 +- arch/arm/mach-mmp/Kconfig | 7 - arch/arm/mach-mmp/Makefile | 1 - arch/arm/mach-mmp/clock.c | 15 - arch/arm/mach-mmp/clock.h | 1 - arch/arm/mach-mmp/gplugd.c | 189 ---- arch/arm/mach-mmp/include/mach/mfp-gplugd.h | 52 -- arch/arm/mach-mmp/include/mach/mfp-pxa168.h | 19 - arch/arm/mach-mmp/include/mach/pxa168.h | 8 - arch/arm/mach-mmp/include/mach/regs-apmu.h | 1 - arch/arm/mach-mmp/pxa168.c | 6 - arch/arm/mach-mmp/ttc_dkb.c | 31 +- arch/arm/mach-mv78xx0/include/mach/hardware.h | 7 + arch/arm/mach-mv78xx0/pcie.c | 3 - arch/arm/mach-mx5/Kconfig | 18 - arch/arm/mach-mx5/Makefile | 2 - arch/arm/mach-mx5/board-cpuimx51.c | 14 +- arch/arm/mach-mx5/board-cpuimx51sd.c | 2 - arch/arm/mach-mx5/board-mx50_rdp.c | 2 - arch/arm/mach-mx5/board-mx51_3ds.c | 5 +- arch/arm/mach-mx5/board-mx51_babbage.c | 58 +- arch/arm/mach-mx5/board-mx51_efikamx.c | 17 +- arch/arm/mach-mx5/board-mx51_efikasb.c | 18 +- arch/arm/mach-mx5/board-mx53_ard.c | 254 ------ arch/arm/mach-mx5/board-mx53_evk.c | 19 - arch/arm/mach-mx5/board-mx53_loco.c | 37 +- arch/arm/mach-mx5/board-mx53_smd.c | 2 - arch/arm/mach-mx5/clock-mx51-mx53.c | 22 +- arch/arm/mach-mx5/crm_regs.h | 2 - arch/arm/mach-mx5/devices-imx53.h | 8 - arch/arm/mach-mx5/devices.c | 64 ++ arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c | 24 +- arch/arm/mach-mx5/eukrea_mbimxsd-baseboard.c | 19 +- arch/arm/mach-mx5/mm-mx50.c | 22 +- arch/arm/mach-mx5/mm.c | 71 +- arch/arm/mach-mx5/pm-imx5.c | 73 -- arch/arm/mach-mxs/Kconfig | 3 - arch/arm/mach-mxs/Makefile | 2 +- arch/arm/mach-mxs/devices.c | 11 - arch/arm/mach-mxs/devices/Makefile | 1 - arch/arm/mach-mxs/devices/platform-gpio-mxs.c | 53 -- arch/arm/mach-mxs/devices/platform-mxsfb.c | 1 - arch/arm/mach-mxs/gpio.c | 331 +++++++ arch/arm/mach-mxs/gpio.h | 34 + arch/arm/mach-mxs/include/mach/devices-common.h | 2 - arch/arm/mach-mxs/include/mach/dma.h | 2 - arch/arm/mach-mxs/mach-mx28evk.c | 22 +- arch/arm/mach-mxs/mach-tx28.c | 19 +- arch/arm/mach-mxs/mm-mx23.c | 1 + arch/arm/mach-mxs/mm-mx28.c | 1 + arch/arm/mach-nuc93x/include/mach/vmalloc.h | 2 +- arch/arm/mach-omap1/board-ams-delta.c | 4 +- arch/arm/mach-omap1/board-fsample.c | 4 +- arch/arm/mach-omap1/board-generic.c | 4 +- arch/arm/mach-omap1/board-h2.c | 4 +- arch/arm/mach-omap1/board-h3.c | 4 +- arch/arm/mach-omap1/board-htcherald.c | 4 +- arch/arm/mach-omap1/board-innovator.c | 4 +- arch/arm/mach-omap1/board-nokia770.c | 4 +- arch/arm/mach-omap1/board-osk.c | 4 +- arch/arm/mach-omap1/board-palmte.c | 4 +- arch/arm/mach-omap1/board-palmtt.c | 4 +- arch/arm/mach-omap1/board-palmz71.c | 4 +- arch/arm/mach-omap1/board-perseus2.c | 4 +- arch/arm/mach-omap1/board-sx1.c | 4 +- arch/arm/mach-omap1/board-voiceblue.c | 4 +- arch/arm/mach-omap1/gpio15xx.c | 22 - arch/arm/mach-omap1/gpio16xx.c | 28 - arch/arm/mach-omap1/gpio7xx.c | 27 - arch/arm/mach-omap1/irq.c | 2 +- arch/arm/mach-omap1/mcbsp.c | 4 +- arch/arm/mach-omap1/time.c | 6 +- arch/arm/mach-omap1/timer32k.c | 4 + arch/arm/mach-omap2/Kconfig | 6 +- arch/arm/mach-omap2/Makefile | 20 +- arch/arm/mach-omap2/board-2430sdp.c | 4 +- arch/arm/mach-omap2/board-3430sdp.c | 93 +- arch/arm/mach-omap2/board-3630sdp.c | 4 +- arch/arm/mach-omap2/board-4430sdp.c | 341 +++----- arch/arm/mach-omap2/board-am3517crane.c | 4 +- arch/arm/mach-omap2/board-am3517evm.c | 4 +- arch/arm/mach-omap2/board-apollon.c | 4 +- arch/arm/mach-omap2/board-cm-t35.c | 176 ++-- arch/arm/mach-omap2/board-cm-t3517.c | 5 +- arch/arm/mach-omap2/board-devkit8000.c | 64 +- arch/arm/mach-omap2/board-flash.c | 4 + arch/arm/mach-omap2/board-generic.c | 4 +- arch/arm/mach-omap2/board-h4.c | 4 +- arch/arm/mach-omap2/board-igep0020.c | 79 +- arch/arm/mach-omap2/board-ldp.c | 29 +- arch/arm/mach-omap2/board-n8x0.c | 12 +- arch/arm/mach-omap2/board-omap3beagle.c | 167 ++-- arch/arm/mach-omap2/board-omap3evm.c | 111 ++- arch/arm/mach-omap2/board-omap3logic.c | 19 +- arch/arm/mach-omap2/board-omap3pandora.c | 119 ++- arch/arm/mach-omap2/board-omap3stalker.c | 99 ++- arch/arm/mach-omap2/board-omap3touchbook.c | 97 ++- arch/arm/mach-omap2/board-omap4panda.c | 161 +++- arch/arm/mach-omap2/board-overo.c | 84 +- arch/arm/mach-omap2/board-rm680.c | 12 +- arch/arm/mach-omap2/board-rx51-peripherals.c | 194 +---- arch/arm/mach-omap2/board-rx51.c | 4 +- arch/arm/mach-omap2/board-ti8168evm.c | 9 +- arch/arm/mach-omap2/board-zoom-debugboard.c | 9 - arch/arm/mach-omap2/board-zoom-peripherals.c | 128 ++- arch/arm/mach-omap2/board-zoom.c | 8 +- arch/arm/mach-omap2/clock.c | 28 +- arch/arm/mach-omap2/clock.h | 3 - arch/arm/mach-omap2/clock2420_data.c | 22 +- arch/arm/mach-omap2/clock2430_data.c | 32 +- arch/arm/mach-omap2/clock3xxx_data.c | 44 +- arch/arm/mach-omap2/clock44xx.h | 7 + arch/arm/mach-omap2/clock44xx_data.c | 492 +++++------ arch/arm/mach-omap2/clockdomain.c | 210 +---- arch/arm/mach-omap2/clockdomain.h | 11 - arch/arm/mach-omap2/clockdomain2xxx_3xxx.c | 6 +- arch/arm/mach-omap2/clockdomain44xx.c | 13 +- arch/arm/mach-omap2/clockdomains44xx_data.c | 124 ++- arch/arm/mach-omap2/cm-regbits-44xx.h | 659 ++++++++------ arch/arm/mach-omap2/cm1_44xx.h | 64 +- arch/arm/mach-omap2/cm2_44xx.h | 73 +- arch/arm/mach-omap2/cm44xx.h | 8 +- arch/arm/mach-omap2/cminst44xx.c | 150 +--- arch/arm/mach-omap2/cminst44xx.h | 10 +- arch/arm/mach-omap2/common-board-devices.c | 27 +- arch/arm/mach-omap2/common-board-devices.h | 26 +- arch/arm/mach-omap2/devices.c | 3 +- arch/arm/mach-omap2/display.c | 26 +- arch/arm/mach-omap2/gpio.c | 32 - arch/arm/mach-omap2/gpmc-nand.c | 10 +- arch/arm/mach-omap2/hsmmc.c | 7 +- arch/arm/mach-omap2/i2c.c | 68 -- arch/arm/mach-omap2/id.c | 53 +- arch/arm/mach-omap2/io.c | 17 +- arch/arm/mach-omap2/iommu2.c | 4 +- arch/arm/mach-omap2/irq.c | 32 +- arch/arm/mach-omap2/omap-iommu.c | 2 +- arch/arm/mach-omap2/omap4-common.c | 10 +- arch/arm/mach-omap2/omap_hwmod.c | 404 ++------- arch/arm/mach-omap2/omap_hwmod_2420_data.c | 860 +++++++++++++++--- arch/arm/mach-omap2/omap_hwmod_2430_data.c | 936 ++++++++++++++++---- .../omap_hwmod_2xxx_3xxx_interconnect_data.c | 173 ---- .../mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c | 322 ------- .../mach-omap2/omap_hwmod_2xxx_interconnect_data.c | 130 --- arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c | 150 ---- arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 709 +++++++++++---- arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 968 +++++++-------------- arch/arm/mach-omap2/omap_hwmod_common_data.c | 20 + arch/arm/mach-omap2/omap_hwmod_common_data.h | 93 +- arch/arm/mach-omap2/pm-debug.c | 372 +++++++- arch/arm/mach-omap2/pm.c | 6 +- arch/arm/mach-omap2/pm.h | 16 + arch/arm/mach-omap2/pm24xx.c | 6 +- arch/arm/mach-omap2/pm34xx.c | 6 + arch/arm/mach-omap2/powerdomains44xx_data.c | 27 +- arch/arm/mach-omap2/prcm.c | 2 +- arch/arm/mach-omap2/prcm_mpu44xx.h | 69 +- arch/arm/mach-omap2/prm-regbits-44xx.h | 8 - arch/arm/mach-omap2/prm44xx.c | 145 ++- arch/arm/mach-omap2/prm44xx.h | 44 +- arch/arm/mach-omap2/prminst44xx.c | 112 +-- arch/arm/mach-omap2/prminst44xx.h | 12 +- arch/arm/mach-omap2/smartreflex.c | 38 +- arch/arm/mach-omap2/timer-gp.c | 266 ++++++ arch/arm/mach-omap2/timer-gp.h | 16 + arch/arm/mach-omap2/timer.c | 342 -------- arch/arm/mach-omap2/twl-common.c | 304 ------- arch/arm/mach-omap2/twl-common.h | 59 -- arch/arm/mach-orion5x/include/mach/hardware.h | 7 + arch/arm/mach-orion5x/pci.c | 2 - arch/arm/mach-prima2/Makefile | 7 - arch/arm/mach-prima2/Makefile.boot | 3 - arch/arm/mach-prima2/clock.c | 509 ----------- arch/arm/mach-prima2/common.h | 26 - arch/arm/mach-prima2/include/mach/clkdev.h | 15 - arch/arm/mach-prima2/include/mach/debug-macro.S | 29 - arch/arm/mach-prima2/include/mach/entry-macro.S | 29 - arch/arm/mach-prima2/include/mach/hardware.h | 15 - arch/arm/mach-prima2/include/mach/io.h | 16 - arch/arm/mach-prima2/include/mach/irqs.h | 17 - arch/arm/mach-prima2/include/mach/map.h | 16 - arch/arm/mach-prima2/include/mach/memory.h | 21 - arch/arm/mach-prima2/include/mach/system.h | 29 - arch/arm/mach-prima2/include/mach/timex.h | 14 - arch/arm/mach-prima2/include/mach/uart.h | 23 - arch/arm/mach-prima2/include/mach/uncompress.h | 40 - arch/arm/mach-prima2/include/mach/vmalloc.h | 16 - arch/arm/mach-prima2/irq.c | 71 -- arch/arm/mach-prima2/l2x0.c | 59 -- arch/arm/mach-prima2/lluart.c | 25 - arch/arm/mach-prima2/prima2.c | 41 - arch/arm/mach-prima2/rstc.c | 69 -- arch/arm/mach-prima2/timer.c | 217 ----- arch/arm/mach-pxa/balloon3.c | 1 - arch/arm/mach-pxa/capc7117.c | 1 - arch/arm/mach-pxa/clock.c | 15 - arch/arm/mach-pxa/clock.h | 1 - arch/arm/mach-pxa/cm-x2xx-pci.c | 3 - arch/arm/mach-pxa/cm-x2xx.c | 5 +- arch/arm/mach-pxa/cm-x300.c | 59 +- arch/arm/mach-pxa/colibri-pxa270.c | 2 - arch/arm/mach-pxa/colibri-pxa300.c | 1 - arch/arm/mach-pxa/colibri-pxa320.c | 4 +- arch/arm/mach-pxa/corgi.c | 3 - arch/arm/mach-pxa/csb726.c | 4 +- arch/arm/mach-pxa/em-x270.c | 2 - arch/arm/mach-pxa/eseries.c | 6 - arch/arm/mach-pxa/ezx.c | 6 - arch/arm/mach-pxa/generic.h | 13 + arch/arm/mach-pxa/gumstix.c | 1 - arch/arm/mach-pxa/h5000.c | 2 - arch/arm/mach-pxa/himalaya.c | 4 +- arch/arm/mach-pxa/hx4700.c | 71 +- arch/arm/mach-pxa/icontrol.c | 1 - arch/arm/mach-pxa/idp.c | 1 - arch/arm/mach-pxa/include/mach/hardware.h | 3 + arch/arm/mach-pxa/include/mach/irqs.h | 12 - arch/arm/mach-pxa/include/mach/magician.h | 3 +- arch/arm/mach-pxa/include/mach/pxa25x.h | 9 - arch/arm/mach-pxa/include/mach/pxa27x.h | 5 - arch/arm/mach-pxa/include/mach/pxa300.h | 3 +- arch/arm/mach-pxa/include/mach/pxa320.h | 3 +- arch/arm/mach-pxa/include/mach/pxa3xx.h | 14 - arch/arm/mach-pxa/include/mach/pxa930.h | 3 +- arch/arm/mach-pxa/include/mach/regs-intc.h | 30 + arch/arm/mach-pxa/irq.c | 36 +- arch/arm/mach-pxa/littleton.c | 1 - arch/arm/mach-pxa/lpd270.c | 1 - arch/arm/mach-pxa/lubbock.c | 1 - arch/arm/mach-pxa/magician.c | 58 +- arch/arm/mach-pxa/mainstone.c | 1 - arch/arm/mach-pxa/mioa701.c | 71 +- arch/arm/mach-pxa/mp900.c | 1 - arch/arm/mach-pxa/palmld.c | 1 - arch/arm/mach-pxa/palmt5.c | 1 - arch/arm/mach-pxa/palmtc.c | 4 +- arch/arm/mach-pxa/palmte2.c | 3 +- arch/arm/mach-pxa/palmtreo.c | 2 - arch/arm/mach-pxa/palmtx.c | 1 - arch/arm/mach-pxa/palmz72.c | 1 - arch/arm/mach-pxa/pcm027.c | 1 - arch/arm/mach-pxa/poodle.c | 1 - arch/arm/mach-pxa/pxa3xx.c | 5 +- arch/arm/mach-pxa/pxa95x.c | 1 + arch/arm/mach-pxa/raumfeld.c | 8 +- arch/arm/mach-pxa/saar.c | 1 - arch/arm/mach-pxa/saarb.c | 3 +- arch/arm/mach-pxa/spitz.c | 3 - arch/arm/mach-pxa/stargate2.c | 2 - arch/arm/mach-pxa/tavorevb.c | 1 - arch/arm/mach-pxa/tavorevb3.c | 1 - arch/arm/mach-pxa/tosa.c | 1 - arch/arm/mach-pxa/trizeps4.c | 2 - arch/arm/mach-pxa/viper.c | 1 - arch/arm/mach-pxa/vpac270.c | 1 - arch/arm/mach-pxa/xcep.c | 4 +- arch/arm/mach-pxa/z2.c | 18 - arch/arm/mach-pxa/zeus.c | 4 +- arch/arm/mach-pxa/zylonite.c | 3 +- arch/arm/mach-s3c2400/Kconfig | 7 + arch/arm/mach-s3c2400/Makefile | 15 + arch/arm/mach-s3c2400/gpio.c | 42 + arch/arm/mach-s3c2400/include/mach/map.h | 66 ++ arch/arm/mach-s3c2410/include/mach/gpio-fns.h | 6 + arch/arm/mach-s3c2410/include/mach/regs-gpio.h | 241 +++++ arch/arm/mach-s3c2410/include/mach/regs-mem.h | 28 + arch/arm/mach-s3c2412/Kconfig | 2 +- arch/arm/mach-s3c24a0/include/mach/debug-macro.S | 27 + arch/arm/mach-s3c24a0/include/mach/io.h | 18 + arch/arm/mach-s3c24a0/include/mach/irqs.h | 117 +++ arch/arm/mach-s3c24a0/include/mach/map.h | 86 ++ arch/arm/mach-s3c24a0/include/mach/memory.h | 21 + arch/arm/mach-s3c24a0/include/mach/regs-clock.h | 88 ++ arch/arm/mach-s3c24a0/include/mach/regs-irq.h | 25 + arch/arm/mach-s3c24a0/include/mach/system.h | 25 + arch/arm/mach-s3c24a0/include/mach/tick.h | 15 + arch/arm/mach-s3c24a0/include/mach/timex.h | 18 + arch/arm/mach-s3c24a0/include/mach/vmalloc.h | 17 + arch/arm/mach-sa1100/include/mach/hardware.h | 8 + arch/arm/mach-sa1100/pci-nanoengine.c | 3 - arch/arm/mach-shark/include/mach/hardware.h | 6 + arch/arm/mach-shark/pci.c | 12 +- arch/arm/mach-tegra/Makefile | 1 + arch/arm/mach-tegra/board-harmony.c | 22 + arch/arm/mach-tegra/board-paz00-pinmux.c | 10 +- arch/arm/mach-tegra/board-paz00.c | 31 +- arch/arm/mach-tegra/board-paz00.h | 10 +- arch/arm/mach-tegra/board-seaboard.c | 26 +- arch/arm/mach-tegra/board-trimslice-pinmux.c | 7 +- arch/arm/mach-tegra/board-trimslice.c | 56 -- arch/arm/mach-tegra/board-trimslice.h | 3 - arch/arm/mach-tegra/devices.c | 53 +- arch/arm/mach-tegra/gpio.c | 431 +++++++++ arch/arm/mach-tegra/include/mach/barriers.h | 30 + arch/arm/mach-tegra/include/mach/hardware.h | 28 + arch/arm/mach-tegra/include/mach/system.h | 1 + arch/arm/mach-tegra/io.c | 1 + arch/arm/mach-tegra/pcie.c | 2 - arch/arm/mach-tegra/platsmp.c | 3 +- arch/arm/mach-tegra/tegra2_clocks.c | 4 +- arch/arm/mach-u300/spi.c | 4 +- arch/arm/mach-u300/timer.c | 33 +- arch/arm/mach-ux500/Kconfig | 15 +- arch/arm/mach-ux500/board-mop500-pins.c | 43 - arch/arm/mach-ux500/board-mop500-regulators.c | 9 +- arch/arm/mach-ux500/board-mop500-sdi.c | 61 +- arch/arm/mach-ux500/board-mop500-uib.c | 2 +- arch/arm/mach-ux500/board-mop500.c | 154 +--- arch/arm/mach-ux500/board-mop500.h | 5 - arch/arm/mach-ux500/clock.c | 48 - arch/arm/mach-ux500/cpu-db5500.c | 1 - arch/arm/mach-ux500/include/mach/uncompress.h | 3 +- arch/arm/mach-ux500/usb.c | 1 - arch/arm/mach-versatile/include/mach/hardware.h | 6 + arch/arm/mach-versatile/pci.c | 3 - arch/arm/mach-zynq/Makefile | 6 - arch/arm/mach-zynq/Makefile.boot | 3 - arch/arm/mach-zynq/board_dt.c | 0 arch/arm/mach-zynq/common.c | 118 --- arch/arm/mach-zynq/common.h | 24 - arch/arm/mach-zynq/include/mach/clkdev.h | 32 - arch/arm/mach-zynq/include/mach/debug-macro.S | 36 - arch/arm/mach-zynq/include/mach/entry-macro.S | 30 - arch/arm/mach-zynq/include/mach/hardware.h | 18 - arch/arm/mach-zynq/include/mach/io.h | 33 - arch/arm/mach-zynq/include/mach/irqs.h | 21 - arch/arm/mach-zynq/include/mach/memory.h | 22 - arch/arm/mach-zynq/include/mach/system.h | 28 - arch/arm/mach-zynq/include/mach/timex.h | 23 - arch/arm/mach-zynq/include/mach/uart.h | 25 - arch/arm/mach-zynq/include/mach/uncompress.h | 51 -- arch/arm/mach-zynq/include/mach/vmalloc.h | 20 - arch/arm/mach-zynq/include/mach/zynq_soc.h | 48 - arch/arm/mach-zynq/timer.c | 298 ------- arch/arm/mm/Kconfig | 3 +- arch/arm/mm/iomap.c | 12 - arch/arm/mm/proc-xsc3.S | 1 + arch/arm/plat-iop/pci.c | 3 - arch/arm/plat-mxc/Makefile | 2 +- arch/arm/plat-mxc/avic.c | 12 +- arch/arm/plat-mxc/devices.c | 25 - arch/arm/plat-mxc/devices/Makefile | 1 - arch/arm/plat-mxc/devices/platform-gpio-mxc.c | 32 - arch/arm/plat-mxc/devices/platform-imx-dma.c | 204 ++++- arch/arm/plat-mxc/devices/platform-imx-i2c.c | 3 +- arch/arm/plat-mxc/devices/platform-imx-keypad.c | 5 - arch/arm/plat-mxc/devices/platform-imx-ssi.c | 12 +- arch/arm/plat-mxc/devices/platform-imx-uart.c | 2 - arch/arm/plat-mxc/gpio.c | 361 ++++++++ arch/arm/plat-mxc/include/mach/common.h | 12 +- arch/arm/plat-mxc/include/mach/debug-macro.S | 10 +- arch/arm/plat-mxc/include/mach/devices-common.h | 8 - arch/arm/plat-mxc/include/mach/gpio.h | 27 + arch/arm/plat-mxc/include/mach/hardware.h | 28 +- arch/arm/plat-mxc/include/mach/iomux-mx25.h | 2 +- arch/arm/plat-mxc/include/mach/iomux-mx53.h | 128 +-- arch/arm/plat-mxc/include/mach/iomux-v1.h | 4 + arch/arm/plat-mxc/include/mach/iomux-v3.h | 2 +- arch/arm/plat-mxc/include/mach/iomux.h | 26 + arch/arm/plat-mxc/include/mach/irqs.h | 21 +- arch/arm/plat-mxc/include/mach/mx53.h | 54 +- arch/arm/plat-mxc/include/mach/mxc.h | 8 +- arch/arm/plat-mxc/include/mach/sdma.h | 6 +- arch/arm/plat-mxc/include/mach/timex.h | 13 +- arch/arm/plat-mxc/include/mach/uncompress.h | 1 - arch/arm/plat-mxc/iomux-v1.c | 34 +- arch/arm/plat-mxc/irq-common.c | 13 +- arch/arm/plat-mxc/pwm.c | 8 +- arch/arm/plat-mxc/tzic.c | 99 ++- arch/arm/plat-omap/Kconfig | 3 + arch/arm/plat-omap/clock.c | 39 - arch/arm/plat-omap/counter_32k.c | 123 ++- arch/arm/plat-omap/dmtimer.c | 213 ++++- arch/arm/plat-omap/include/plat/clkdev_omap.h | 1 - arch/arm/plat-omap/include/plat/clock.h | 4 +- arch/arm/plat-omap/include/plat/common.h | 6 +- arch/arm/plat-omap/include/plat/cpu.h | 35 +- arch/arm/plat-omap/include/plat/dmtimer.h | 251 +----- arch/arm/plat-omap/include/plat/gpio.h | 20 - arch/arm/plat-omap/include/plat/i2c.h | 6 +- arch/arm/plat-omap/include/plat/irqs.h | 18 +- arch/arm/plat-omap/include/plat/mcbsp.h | 74 +- arch/arm/plat-omap/include/plat/nand.h | 6 +- arch/arm/plat-omap/include/plat/omap-pm.h | 8 + arch/arm/plat-omap/include/plat/omap4-keypad.h | 3 +- arch/arm/plat-omap/include/plat/omap_hwmod.h | 35 +- arch/arm/plat-omap/include/plat/uncompress.h | 1 - arch/arm/plat-omap/iovmm.c | 6 +- arch/arm/plat-omap/mcbsp.c | 604 ++++++++++++- arch/arm/plat-omap/omap_device.c | 94 +- arch/arm/plat-s3c24xx/Kconfig | 2 +- arch/arm/plat-s3c24xx/cpu.c | 15 + arch/arm/plat-s3c24xx/include/plat/regs-iis.h | 9 + arch/arm/plat-s3c24xx/include/plat/regs-spi.h | 1 + arch/arm/plat-s3c24xx/include/plat/s3c2400.h | 31 + .../plat-samsung/include/plat/gpio-cfg-helpers.h | 2 +- arch/arm/plat-samsung/include/plat/regs-serial.h | 8 + arch/microblaze/include/asm/pci-bridge.h | 67 +- arch/powerpc/include/asm/pci-bridge.h | 50 +- arch/powerpc/include/asm/pci.h | 2 +- arch/powerpc/kernel/pci-common.c | 22 +- arch/powerpc/kernel/pci_32.c | 2 +- arch/powerpc/kernel/pci_64.c | 4 +- arch/powerpc/kernel/rtas_pci.c | 2 +- arch/powerpc/platforms/40x/ep405.c | 2 +- arch/powerpc/platforms/40x/ppc40x_simple.c | 2 +- arch/powerpc/platforms/40x/walnut.c | 2 +- arch/powerpc/platforms/44x/canyonlands.c | 2 +- arch/powerpc/platforms/44x/ebony.c | 2 +- arch/powerpc/platforms/44x/ppc44x_simple.c | 2 +- arch/powerpc/platforms/44x/sam440ep.c | 2 +- arch/powerpc/platforms/52xx/Kconfig | 8 + arch/powerpc/platforms/52xx/Makefile | 1 + arch/powerpc/platforms/52xx/mpc52xx_gpio.c | 380 ++++++++ arch/powerpc/platforms/52xx/mpc52xx_pci.c | 2 +- arch/powerpc/platforms/82xx/pq2.c | 2 +- arch/powerpc/platforms/chrp/pci.c | 2 +- arch/powerpc/platforms/powermac/pci.c | 6 +- arch/powerpc/sysdev/fsl_pci.c | 4 +- arch/powerpc/sysdev/grackle.c | 2 +- arch/powerpc/sysdev/ppc4xx_pci.c | 2 +- drivers/dma/imx-dma.c | 3 +- drivers/dma/imx-sdma.c | 6 +- drivers/gpio/74x164.c | 182 ++++ drivers/gpio/Kconfig | 66 +- drivers/gpio/Makefile | 87 +- drivers/gpio/ab8500-gpio.c | 521 +++++++++++ drivers/gpio/adp5520-gpio.c | 211 +++++ drivers/gpio/adp5588-gpio.c | 503 +++++++++++ drivers/gpio/basic_mmio_gpio.c | 548 ++++++++++++ drivers/gpio/bt8xxgpio.c | 348 ++++++++ drivers/gpio/cs5535-gpio.c | 401 +++++++++ drivers/gpio/gpio-74x164.c | 177 ---- drivers/gpio/gpio-ab8500.c | 521 ----------- drivers/gpio/gpio-adp5520.c | 211 ----- drivers/gpio/gpio-adp5588.c | 503 ----------- drivers/gpio/gpio-bt8xx.c | 348 -------- drivers/gpio/gpio-cs5535.c | 401 --------- drivers/gpio/gpio-da9052.c | 277 ------ drivers/gpio/gpio-ep93xx.c | 405 --------- drivers/gpio/gpio-exynos4.c | 5 +- drivers/gpio/gpio-generic.c | 548 ------------ drivers/gpio/gpio-it8761e.c | 234 ----- drivers/gpio/gpio-janz-ttl.c | 258 ------ drivers/gpio/gpio-langwell.c | 458 ---------- drivers/gpio/gpio-max7300.c | 93 -- drivers/gpio/gpio-max7301.c | 116 --- drivers/gpio/gpio-max730x.c | 255 ------ drivers/gpio/gpio-max732x.c | 714 --------------- drivers/gpio/gpio-mc33880.c | 197 ----- drivers/gpio/gpio-mcp23s08.c | 723 --------------- drivers/gpio/gpio-ml-ioh.c | 357 -------- drivers/gpio/gpio-mpc5200.c | 376 -------- drivers/gpio/gpio-mxc.c | 460 ---------- drivers/gpio/gpio-mxs.c | 289 ------ drivers/gpio/gpio-omap.c | 723 +++++++++++---- drivers/gpio/gpio-pca953x.c | 760 ---------------- drivers/gpio/gpio-pcf857x.c | 369 -------- drivers/gpio/gpio-pch.c | 316 ------- drivers/gpio/gpio-pl061.c | 358 -------- drivers/gpio/gpio-plat-samsung.c | 3 +- drivers/gpio/gpio-rdc321x.c | 246 ------ drivers/gpio/gpio-s5pc100.c | 5 +- drivers/gpio/gpio-s5pv210.c | 5 +- drivers/gpio/gpio-sch.c | 316 ------- drivers/gpio/gpio-stmpe.c | 404 --------- drivers/gpio/gpio-sx150x.c | 680 --------------- drivers/gpio/gpio-tc3589x.c | 389 --------- drivers/gpio/gpio-tegra.c | 441 ---------- drivers/gpio/gpio-timberdale.c | 379 -------- drivers/gpio/gpio-tps65910.c | 102 --- drivers/gpio/gpio-twl4030.c | 513 ----------- drivers/gpio/gpio-u300.c | 5 +- drivers/gpio/gpio-ucb1400.c | 125 --- drivers/gpio/gpio-vr41xx.c | 585 ------------- drivers/gpio/gpio-vx855.c | 333 ------- drivers/gpio/gpio-wm831x.c | 318 ------- drivers/gpio/gpio-wm8350.c | 182 ---- drivers/gpio/gpio-wm8994.c | 242 ------ drivers/gpio/gpio-xilinx.c | 233 ----- drivers/gpio/it8761e_gpio.c | 234 +++++ drivers/gpio/janz-ttl.c | 258 ++++++ drivers/gpio/langwell_gpio.c | 456 ++++++++++ drivers/gpio/max7300.c | 95 ++ drivers/gpio/max7301.c | 118 +++ drivers/gpio/max730x.c | 257 ++++++ drivers/gpio/max732x.c | 714 +++++++++++++++ drivers/gpio/mc33880.c | 197 +++++ drivers/gpio/mcp23s08.c | 530 +++++++++++ drivers/gpio/ml_ioh_gpio.c | 357 ++++++++ drivers/gpio/pca953x.c | 769 ++++++++++++++++ drivers/gpio/pcf857x.c | 369 ++++++++ drivers/gpio/pch_gpio.c | 316 +++++++ drivers/gpio/pl061.c | 360 ++++++++ drivers/gpio/rdc321x-gpio.c | 246 ++++++ drivers/gpio/sch_gpio.c | 316 +++++++ drivers/gpio/stmpe-gpio.c | 404 +++++++++ drivers/gpio/sx150x.c | 680 +++++++++++++++ drivers/gpio/tc3589x-gpio.c | 389 +++++++++ drivers/gpio/timbgpio.c | 379 ++++++++ drivers/gpio/tps65910-gpio.c | 102 +++ drivers/gpio/twl4030-gpio.c | 513 +++++++++++ drivers/gpio/ucb1400_gpio.c | 125 +++ drivers/gpio/vr41xx_giu.c | 585 +++++++++++++ drivers/gpio/vx855_gpio.c | 333 +++++++ drivers/gpio/wm831x-gpio.c | 318 +++++++ drivers/gpio/wm8350-gpiolib.c | 182 ++++ drivers/gpio/wm8994-gpio.c | 242 ++++++ drivers/gpio/xilinx_gpio.c | 233 +++++ drivers/input/misc/Kconfig | 13 +- drivers/input/misc/Makefile | 1 - drivers/input/misc/twl4030-vibra.c | 12 +- drivers/input/misc/twl6040-vibra.c | 423 --------- drivers/leds/Kconfig | 19 +- drivers/leds/leds-gpio.c | 6 +- drivers/mfd/Kconfig | 8 +- drivers/mfd/Makefile | 3 +- drivers/mfd/twl-core.c | 13 +- drivers/mfd/twl4030-audio.c | 277 ------ drivers/mfd/twl4030-codec.c | 277 ++++++ drivers/mfd/twl6040-core.c | 620 ------------- drivers/mfd/twl6040-irq.c | 191 ---- drivers/mmc/host/mxcmmc.c | 8 +- drivers/of/gpio.c | 11 +- drivers/pcmcia/pxa2xx_sharpsl.c | 3 + drivers/pcmcia/pxa2xx_trizeps4.c | 4 + drivers/tty/serial/Kconfig | 15 + drivers/tty/serial/Makefile | 2 + drivers/tty/serial/s3c2400.c | 105 +++ drivers/tty/serial/s3c24a0.c | 117 +++ drivers/video/omap2/displays/Kconfig | 7 - drivers/video/omap2/displays/Makefile | 1 - drivers/video/omap2/displays/panel-picodlp.c | 591 ------------- drivers/video/omap2/displays/panel-picodlp.h | 288 ------ drivers/video/omap2/displays/panel-taal.c | 50 +- drivers/video/omap2/dss/Kconfig | 12 + drivers/video/omap2/dss/core.c | 15 +- drivers/video/omap2/dss/dispc.c | 484 +++++------ drivers/video/omap2/dss/display.c | 45 + drivers/video/omap2/dss/dpi.c | 73 +- drivers/video/omap2/dss/dsi.c | 277 +++--- drivers/video/omap2/dss/dss.c | 584 ++++++++++--- drivers/video/omap2/dss/dss.h | 34 +- drivers/video/omap2/dss/dss_features.c | 13 +- drivers/video/omap2/dss/dss_features.h | 4 - drivers/video/omap2/dss/hdmi.c | 162 +--- drivers/video/omap2/dss/manager.c | 67 +- drivers/video/omap2/dss/overlay.c | 27 +- drivers/video/omap2/dss/rfbi.c | 111 +-- drivers/video/omap2/dss/sdi.c | 40 +- drivers/video/omap2/dss/venc.c | 180 +--- drivers/video/omap2/omapfb/omapfb-ioctl.c | 72 +- drivers/video/omap2/omapfb/omapfb-main.c | 166 +--- drivers/video/omap2/omapfb/omapfb-sysfs.c | 34 - drivers/video/omap2/omapfb/omapfb.h | 37 +- include/asm-generic/pci-bridge.h | 62 -- include/linux/i2c-omap.h | 27 - include/linux/i2c/twl.h | 25 +- include/linux/mfd/twl4030-audio.h | 272 ------ include/linux/mfd/twl4030-codec.h | 272 ++++++ include/linux/mfd/twl6040.h | 228 ----- include/linux/of_gpio.h | 42 +- include/linux/spi/74x164.h | 2 + include/linux/spi/mcp23s08.h | 9 + include/video/omap-panel-picodlp.h | 23 - include/video/omapdss.h | 17 +- sound/soc/codecs/Kconfig | 3 +- sound/soc/codecs/twl4030.c | 22 +- sound/soc/codecs/twl6040.c | 733 +++++++++------- sound/soc/codecs/twl6040.h | 119 ++- sound/soc/imx/imx-pcm-dma-mx2.c | 4 +- sound/soc/omap/sdp3430.c | 2 +- sound/soc/omap/sdp4430.c | 52 +- sound/soc/omap/zoom2.c | 2 +- 706 files changed, 28449 insertions(+), 31978 deletions(-) delete mode 100644 Documentation/devicetree/bindings/arm/sirf.txt delete mode 100644 Documentation/devicetree/bindings/arm/xilinx.txt delete mode 100644 Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt delete mode 100644 Documentation/devicetree/bindings/gpio/gpio_nvidia.txt delete mode 100644 arch/arm/boot/dts/prima2-cb.dts delete mode 100644 arch/arm/boot/dts/zynq-ep107.dts create mode 100644 arch/arm/configs/loki_defconfig create mode 100644 arch/arm/mach-cns3xxx/include/mach/hardware.h create mode 100644 arch/arm/mach-ep93xx/gpio.c create mode 100644 arch/arm/mach-integrator/include/mach/bits.h create mode 100644 arch/arm/mach-loki/Kconfig create mode 100644 arch/arm/mach-loki/Makefile create mode 100644 arch/arm/mach-loki/Makefile.boot create mode 100644 arch/arm/mach-loki/addr-map.c create mode 100644 arch/arm/mach-loki/common.c create mode 100644 arch/arm/mach-loki/common.h create mode 100644 arch/arm/mach-loki/include/mach/bridge-regs.h create mode 100644 arch/arm/mach-loki/include/mach/debug-macro.S create mode 100644 arch/arm/mach-loki/include/mach/entry-macro.S create mode 100644 arch/arm/mach-loki/include/mach/hardware.h create mode 100644 arch/arm/mach-loki/include/mach/io.h create mode 100644 arch/arm/mach-loki/include/mach/irqs.h create mode 100644 arch/arm/mach-loki/include/mach/loki.h create mode 100644 arch/arm/mach-loki/include/mach/memory.h create mode 100644 arch/arm/mach-loki/include/mach/system.h create mode 100644 arch/arm/mach-loki/include/mach/timex.h create mode 100644 arch/arm/mach-loki/include/mach/uncompress.h create mode 100644 arch/arm/mach-loki/include/mach/vmalloc.h create mode 100644 arch/arm/mach-loki/irq.c create mode 100644 arch/arm/mach-loki/lb88rc8480-setup.c delete mode 100644 arch/arm/mach-mmp/gplugd.c delete mode 100644 arch/arm/mach-mmp/include/mach/mfp-gplugd.h delete mode 100644 arch/arm/mach-mx5/board-mx53_ard.c delete mode 100644 arch/arm/mach-mx5/pm-imx5.c delete mode 100644 arch/arm/mach-mxs/devices/platform-gpio-mxs.c create mode 100644 arch/arm/mach-mxs/gpio.c create mode 100644 arch/arm/mach-mxs/gpio.h delete mode 100644 arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_interconnect_data.c delete mode 100644 arch/arm/mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c delete mode 100644 arch/arm/mach-omap2/omap_hwmod_2xxx_interconnect_data.c delete mode 100644 arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c create mode 100644 arch/arm/mach-omap2/timer-gp.c create mode 100644 arch/arm/mach-omap2/timer-gp.h delete mode 100644 arch/arm/mach-omap2/timer.c delete mode 100644 arch/arm/mach-omap2/twl-common.c delete mode 100644 arch/arm/mach-omap2/twl-common.h delete mode 100644 arch/arm/mach-prima2/Makefile delete mode 100644 arch/arm/mach-prima2/Makefile.boot delete mode 100644 arch/arm/mach-prima2/clock.c delete mode 100644 arch/arm/mach-prima2/common.h delete mode 100644 arch/arm/mach-prima2/include/mach/clkdev.h delete mode 100644 arch/arm/mach-prima2/include/mach/debug-macro.S delete mode 100644 arch/arm/mach-prima2/include/mach/entry-macro.S delete mode 100644 arch/arm/mach-prima2/include/mach/hardware.h delete mode 100644 arch/arm/mach-prima2/include/mach/io.h delete mode 100644 arch/arm/mach-prima2/include/mach/irqs.h delete mode 100644 arch/arm/mach-prima2/include/mach/map.h delete mode 100644 arch/arm/mach-prima2/include/mach/memory.h delete mode 100644 arch/arm/mach-prima2/include/mach/system.h delete mode 100644 arch/arm/mach-prima2/include/mach/timex.h delete mode 100644 arch/arm/mach-prima2/include/mach/uart.h delete mode 100644 arch/arm/mach-prima2/include/mach/uncompress.h delete mode 100644 arch/arm/mach-prima2/include/mach/vmalloc.h delete mode 100644 arch/arm/mach-prima2/irq.c delete mode 100644 arch/arm/mach-prima2/l2x0.c delete mode 100644 arch/arm/mach-prima2/lluart.c delete mode 100644 arch/arm/mach-prima2/prima2.c delete mode 100644 arch/arm/mach-prima2/rstc.c delete mode 100644 arch/arm/mach-prima2/timer.c delete mode 100644 arch/arm/mach-pxa/include/mach/pxa3xx.h create mode 100644 arch/arm/mach-pxa/include/mach/regs-intc.h create mode 100644 arch/arm/mach-s3c2400/Kconfig create mode 100644 arch/arm/mach-s3c2400/Makefile create mode 100644 arch/arm/mach-s3c2400/gpio.c create mode 100644 arch/arm/mach-s3c2400/include/mach/map.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/debug-macro.S create mode 100644 arch/arm/mach-s3c24a0/include/mach/io.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/irqs.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/map.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/memory.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/regs-clock.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/regs-irq.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/system.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/tick.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/timex.h create mode 100644 arch/arm/mach-s3c24a0/include/mach/vmalloc.h create mode 100644 arch/arm/mach-tegra/gpio.c create mode 100644 arch/arm/mach-tegra/include/mach/barriers.h create mode 100644 arch/arm/mach-tegra/include/mach/hardware.h delete mode 100644 arch/arm/mach-zynq/Makefile delete mode 100644 arch/arm/mach-zynq/Makefile.boot delete mode 100644 arch/arm/mach-zynq/board_dt.c delete mode 100644 arch/arm/mach-zynq/common.c delete mode 100644 arch/arm/mach-zynq/common.h delete mode 100644 arch/arm/mach-zynq/include/mach/clkdev.h delete mode 100644 arch/arm/mach-zynq/include/mach/debug-macro.S delete mode 100644 arch/arm/mach-zynq/include/mach/entry-macro.S delete mode 100644 arch/arm/mach-zynq/include/mach/hardware.h delete mode 100644 arch/arm/mach-zynq/include/mach/io.h delete mode 100644 arch/arm/mach-zynq/include/mach/irqs.h delete mode 100644 arch/arm/mach-zynq/include/mach/memory.h delete mode 100644 arch/arm/mach-zynq/include/mach/system.h delete mode 100644 arch/arm/mach-zynq/include/mach/timex.h delete mode 100644 arch/arm/mach-zynq/include/mach/uart.h delete mode 100644 arch/arm/mach-zynq/include/mach/uncompress.h delete mode 100644 arch/arm/mach-zynq/include/mach/vmalloc.h delete mode 100644 arch/arm/mach-zynq/include/mach/zynq_soc.h delete mode 100644 arch/arm/mach-zynq/timer.c delete mode 100644 arch/arm/plat-mxc/devices/platform-gpio-mxc.c create mode 100644 arch/arm/plat-mxc/gpio.c create mode 100644 arch/arm/plat-mxc/include/mach/iomux.h create mode 100644 arch/arm/plat-s3c24xx/include/plat/s3c2400.h create mode 100644 arch/powerpc/platforms/52xx/mpc52xx_gpio.c create mode 100644 drivers/gpio/74x164.c create mode 100644 drivers/gpio/ab8500-gpio.c create mode 100644 drivers/gpio/adp5520-gpio.c create mode 100644 drivers/gpio/adp5588-gpio.c create mode 100644 drivers/gpio/basic_mmio_gpio.c create mode 100644 drivers/gpio/bt8xxgpio.c create mode 100644 drivers/gpio/cs5535-gpio.c delete mode 100644 drivers/gpio/gpio-74x164.c delete mode 100644 drivers/gpio/gpio-ab8500.c delete mode 100644 drivers/gpio/gpio-adp5520.c delete mode 100644 drivers/gpio/gpio-adp5588.c delete mode 100644 drivers/gpio/gpio-bt8xx.c delete mode 100644 drivers/gpio/gpio-cs5535.c delete mode 100644 drivers/gpio/gpio-da9052.c delete mode 100644 drivers/gpio/gpio-ep93xx.c delete mode 100644 drivers/gpio/gpio-generic.c delete mode 100644 drivers/gpio/gpio-it8761e.c delete mode 100644 drivers/gpio/gpio-janz-ttl.c delete mode 100644 drivers/gpio/gpio-langwell.c delete mode 100644 drivers/gpio/gpio-max7300.c delete mode 100644 drivers/gpio/gpio-max7301.c delete mode 100644 drivers/gpio/gpio-max730x.c delete mode 100644 drivers/gpio/gpio-max732x.c delete mode 100644 drivers/gpio/gpio-mc33880.c delete mode 100644 drivers/gpio/gpio-mcp23s08.c delete mode 100644 drivers/gpio/gpio-ml-ioh.c delete mode 100644 drivers/gpio/gpio-mpc5200.c delete mode 100644 drivers/gpio/gpio-mxc.c delete mode 100644 drivers/gpio/gpio-mxs.c delete mode 100644 drivers/gpio/gpio-pca953x.c delete mode 100644 drivers/gpio/gpio-pcf857x.c delete mode 100644 drivers/gpio/gpio-pch.c delete mode 100644 drivers/gpio/gpio-pl061.c delete mode 100644 drivers/gpio/gpio-rdc321x.c delete mode 100644 drivers/gpio/gpio-sch.c delete mode 100644 drivers/gpio/gpio-stmpe.c delete mode 100644 drivers/gpio/gpio-sx150x.c delete mode 100644 drivers/gpio/gpio-tc3589x.c delete mode 100644 drivers/gpio/gpio-tegra.c delete mode 100644 drivers/gpio/gpio-timberdale.c delete mode 100644 drivers/gpio/gpio-tps65910.c delete mode 100644 drivers/gpio/gpio-twl4030.c delete mode 100644 drivers/gpio/gpio-ucb1400.c delete mode 100644 drivers/gpio/gpio-vr41xx.c delete mode 100644 drivers/gpio/gpio-vx855.c delete mode 100644 drivers/gpio/gpio-wm831x.c delete mode 100644 drivers/gpio/gpio-wm8350.c delete mode 100644 drivers/gpio/gpio-wm8994.c delete mode 100644 drivers/gpio/gpio-xilinx.c create mode 100644 drivers/gpio/it8761e_gpio.c create mode 100644 drivers/gpio/janz-ttl.c create mode 100644 drivers/gpio/langwell_gpio.c create mode 100644 drivers/gpio/max7300.c create mode 100644 drivers/gpio/max7301.c create mode 100644 drivers/gpio/max730x.c create mode 100644 drivers/gpio/max732x.c create mode 100644 drivers/gpio/mc33880.c create mode 100644 drivers/gpio/mcp23s08.c create mode 100644 drivers/gpio/ml_ioh_gpio.c create mode 100644 drivers/gpio/pca953x.c create mode 100644 drivers/gpio/pcf857x.c create mode 100644 drivers/gpio/pch_gpio.c create mode 100644 drivers/gpio/pl061.c create mode 100644 drivers/gpio/rdc321x-gpio.c create mode 100644 drivers/gpio/sch_gpio.c create mode 100644 drivers/gpio/stmpe-gpio.c create mode 100644 drivers/gpio/sx150x.c create mode 100644 drivers/gpio/tc3589x-gpio.c create mode 100644 drivers/gpio/timbgpio.c create mode 100644 drivers/gpio/tps65910-gpio.c create mode 100644 drivers/gpio/twl4030-gpio.c create mode 100644 drivers/gpio/ucb1400_gpio.c create mode 100644 drivers/gpio/vr41xx_giu.c create mode 100644 drivers/gpio/vx855_gpio.c create mode 100644 drivers/gpio/wm831x-gpio.c create mode 100644 drivers/gpio/wm8350-gpiolib.c create mode 100644 drivers/gpio/wm8994-gpio.c create mode 100644 drivers/gpio/xilinx_gpio.c delete mode 100644 drivers/input/misc/twl6040-vibra.c delete mode 100644 drivers/mfd/twl4030-audio.c create mode 100644 drivers/mfd/twl4030-codec.c delete mode 100644 drivers/mfd/twl6040-core.c delete mode 100644 drivers/mfd/twl6040-irq.c create mode 100644 drivers/tty/serial/s3c2400.c create mode 100644 drivers/tty/serial/s3c24a0.c delete mode 100644 drivers/video/omap2/displays/panel-picodlp.c delete mode 100644 drivers/video/omap2/displays/panel-picodlp.h delete mode 100644 include/asm-generic/pci-bridge.h delete mode 100644 include/linux/mfd/twl4030-audio.h create mode 100644 include/linux/mfd/twl4030-codec.h delete mode 100644 include/linux/mfd/twl6040.h delete mode 100644 include/video/omap-panel-picodlp.h diff --git a/Documentation/arm/Samsung-S3C24XX/Overview.txt b/Documentation/arm/Samsung-S3C24XX/Overview.txt index 359587b2367..c12bfc1a00c 100644 --- a/Documentation/arm/Samsung-S3C24XX/Overview.txt +++ b/Documentation/arm/Samsung-S3C24XX/Overview.txt @@ -8,13 +8,10 @@ Introduction The Samsung S3C24XX range of ARM9 System-on-Chip CPUs are supported by the 's3c2410' architecture of ARM Linux. Currently the S3C2410, - S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443 and S3C2450 devices + S3C2412, S3C2413, S3C2416 S3C2440, S3C2442, S3C2443 and S3C2450 devices are supported. - Support for the S3C2400 and S3C24A0 series was never completed and the - corresponding code has been removed after a while. If someone wishes to - revive this effort, partial support can be retrieved from earlier Linux - versions. + Support for the S3C2400 and S3C24A0 series are in progress. The S3C2416 and S3C2450 devices are very similar and S3C2450 support is included under the arch/arm/mach-s3c2416 directory. Note, whilst core diff --git a/Documentation/devicetree/bindings/arm/sirf.txt b/Documentation/devicetree/bindings/arm/sirf.txt deleted file mode 100644 index 6b07f65b32d..00000000000 --- a/Documentation/devicetree/bindings/arm/sirf.txt +++ /dev/null @@ -1,3 +0,0 @@ -prima2 "cb" evalutation board -Required root node properties: - - compatible = "sirf,prima2-cb", "sirf,prima2"; diff --git a/Documentation/devicetree/bindings/arm/xilinx.txt b/Documentation/devicetree/bindings/arm/xilinx.txt deleted file mode 100644 index 6f1ed830b4f..00000000000 --- a/Documentation/devicetree/bindings/arm/xilinx.txt +++ /dev/null @@ -1,7 +0,0 @@ -Xilinx Zynq EP107 Emulation Platform board - -This board is an emulation platform for the Zynq product which is -based on an ARM Cortex A9 processor. - -Required root node properties: - - compatible = "xlnx,zynq-ep107"; diff --git a/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt b/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt deleted file mode 100644 index 4363ae4b3c1..00000000000 --- a/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.txt +++ /dev/null @@ -1,22 +0,0 @@ -* Freescale i.MX/MXC GPIO controller - -Required properties: -- compatible : Should be "fsl,-gpio" -- reg : Address and length of the register set for the device -- interrupts : Should be the port interrupt shared by all 32 pins, if - one number. If two numbers, the first one is the interrupt shared - by low 16 pins and the second one is for high 16 pins. -- gpio-controller : Marks the device node as a gpio controller. -- #gpio-cells : Should be two. The first cell is the pin number and - the second cell is used to specify optional parameters (currently - unused). - -Example: - -gpio0: gpio@73f84000 { - compatible = "fsl,imx51-gpio", "fsl,imx31-gpio"; - reg = <0x73f84000 0x4000>; - interrupts = <50 51>; - gpio-controller; - #gpio-cells = <2>; -}; diff --git a/Documentation/devicetree/bindings/gpio/gpio.txt b/Documentation/devicetree/bindings/gpio/gpio.txt index 4e16ba4feab..edaa84d288a 100644 --- a/Documentation/devicetree/bindings/gpio/gpio.txt +++ b/Documentation/devicetree/bindings/gpio/gpio.txt @@ -4,45 +4,17 @@ Specifying GPIO information for devices 1) gpios property ----------------- -Nodes that makes use of GPIOs should specify them using one or more -properties, each containing a 'gpio-list': +Nodes that makes use of GPIOs should define them using `gpios' property, +format of which is: <&gpio-controller1-phandle gpio1-specifier + &gpio-controller2-phandle gpio2-specifier + 0 /* holes are permitted, means no GPIO 3 */ + &gpio-controller4-phandle gpio4-specifier + ...>; - gpio-list ::= [gpio-list] - single-gpio ::= - gpio-phandle : phandle to gpio controller node - gpio-specifier : Array of #gpio-cells specifying specific gpio - (controller specific) - -GPIO properties should be named "[-]gpios". Exact -meaning of each gpios property must be documented in the device tree -binding for each device. - -For example, the following could be used to describe gpios pins to use -as chip select lines; with chip selects 0, 1 and 3 populated, and chip -select 2 left empty: - - gpio1: gpio1 { - gpio-controller - #gpio-cells = <2>; - }; - gpio2: gpio2 { - gpio-controller - #gpio-cells = <1>; - }; - [...] - chipsel-gpios = <&gpio1 12 0>, - <&gpio1 13 0>, - <0>, /* holes are permitted, means no GPIO 2 */ - <&gpio2 2>; - -Note that gpio-specifier length is controller dependent. In the -above example, &gpio1 uses 2 cells to specify a gpio, while &gpio2 -only uses one. +Note that gpio-specifier length is controller dependent. gpio-specifier may encode: bank, pin position inside the bank, whether pin is open-drain and whether pin is logically inverted. -Exact meaning of each specifier cell is controller specific, and must -be documented in the device tree binding for the device. Example of the node using GPIOs: @@ -56,8 +28,8 @@ and empty GPIO flags as accepted by the "qe_pio_e" gpio-controller. 2) gpio-controller nodes ------------------------ -Every GPIO controller node must both an empty "gpio-controller" -property, and have #gpio-cells contain the size of the gpio-specifier. +Every GPIO controller node must have #gpio-cells property defined, +this information will be used to translate gpio-specifiers. Example of two SOC GPIO banks defined as gpio-controller nodes: diff --git a/Documentation/devicetree/bindings/gpio/gpio_nvidia.txt b/Documentation/devicetree/bindings/gpio/gpio_nvidia.txt deleted file mode 100644 index eb4b530d64e..00000000000 --- a/Documentation/devicetree/bindings/gpio/gpio_nvidia.txt +++ /dev/null @@ -1,8 +0,0 @@ -NVIDIA Tegra 2 GPIO controller - -Required properties: -- compatible : "nvidia,tegra20-gpio" -- #gpio-cells : Should be two. The first cell is the pin number and the - second cell is used to specify optional parameters: - - bit 0 specifies polarity (0 for normal, 1 for inverted) -- gpio-controller : Marks the device node as a GPIO controller. diff --git a/MAINTAINERS b/MAINTAINERS index 6689b7c8266..187282da921 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -731,12 +731,6 @@ T: git git://git.berlios.de/gemini-board S: Maintained F: arch/arm/mach-gemini/ -ARM/CSR SIRFPRIMA2 MACHINE SUPPORT -M: Barry Song -L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) -S: Maintained -F: arch/arm/mach-prima2/ - ARM/EBSA110 MACHINE SUPPORT M: Russell King L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 5f5407720f1..a1c3ea972d5 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -321,7 +321,7 @@ config ARCH_CLPS711X config ARCH_CNS3XXX bool "Cavium Networks CNS3XXX family" - select CPU_V6K + select CPU_V6 select GENERIC_CLOCKEVENTS select ARM_GIC select MIGHT_HAVE_PCI @@ -337,19 +337,6 @@ config ARCH_GEMINI help Support for the Cortina Systems Gemini family SoCs -config ARCH_PRIMA2 - bool "CSR SiRFSoC PRIMA2 ARM Cortex A9 Platform" - select CPU_V7 - select GENERIC_TIME - select NO_IOPORT - select GENERIC_CLOCKEVENTS - select CLKDEV_LOOKUP - select GENERIC_IRQ_CHIP - select USE_OF - select ZONE_DMA - help - Support for CSR SiRFSoC ARM Cortex A9 Platform - config ARCH_EBSA110 bool "EBSA-110" select CPU_SA110 @@ -389,7 +376,6 @@ config ARCH_MXC select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP select CLKSRC_MMIO - select GENERIC_IRQ_CHIP select HAVE_SCHED_CLOCK help Support for Freescale MXC/iMX-based family of processors @@ -504,6 +490,14 @@ config ARCH_KIRKWOOD Support for the following Marvell Kirkwood series SoCs: 88F6180, 88F6192 and 88F6281. +config ARCH_LOKI + bool "Marvell Loki (88RC8480)" + select CPU_FEROCEON + select GENERIC_CLOCKEVENTS + select PLAT_ORION + help + Support for the Marvell Loki (88RC8480) SoC. + config ARCH_LPC32XX bool "NXP LPC32XX" select CLKSRC_MMIO @@ -597,6 +591,7 @@ config ARCH_TEGRA select GENERIC_GPIO select HAVE_CLK select HAVE_SCHED_CLOCK + select ARCH_HAS_BARRIERS if CACHE_L2X0 select ARCH_HAS_CPUFREQ help This enables support for NVIDIA Tegra based systems (Tegra APX, @@ -623,8 +618,6 @@ config ARCH_PXA select TICK_ONESHOT select PLAT_PXA select SPARSE_IRQ - select AUTO_ZRELADDR - select MULTI_IRQ_HANDLER help Support for Intel/Marvell's PXA2xx/PXA3xx processor line. @@ -859,7 +852,6 @@ config ARCH_OMAP select HAVE_CLK select ARCH_REQUIRE_GPIOLIB select ARCH_HAS_CPUFREQ - select CLKSRC_MMIO select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select ARCH_HAS_HOLES_MEMORYMODEL @@ -887,19 +879,6 @@ config ARCH_VT8500 select HAVE_PWM help Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip. - -config ARCH_ZYNQ - bool "Xilinx Zynq ARM Cortex A9 Platform" - select CPU_V7 - select GENERIC_TIME - select GENERIC_CLOCKEVENTS - select CLKDEV_LOOKUP - select ARM_GIC - select ARM_AMBA - select ICST - select USE_OF - help - Support for Xilinx Zynq ARM Cortex A9 Platform endchoice # @@ -945,6 +924,8 @@ source "arch/arm/mach-kirkwood/Kconfig" source "arch/arm/mach-ks8695/Kconfig" +source "arch/arm/mach-loki/Kconfig" + source "arch/arm/mach-lpc32xx/Kconfig" source "arch/arm/mach-msm/Kconfig" @@ -988,6 +969,7 @@ source "arch/arm/plat-spear/Kconfig" source "arch/arm/plat-tcc/Kconfig" if ARCH_S3C2410 +source "arch/arm/mach-s3c2400/Kconfig" source "arch/arm/mach-s3c2410/Kconfig" source "arch/arm/mach-s3c2412/Kconfig" source "arch/arm/mach-s3c2416/Kconfig" diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 3a4a04b33d0..f5b2b390c8f 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -150,6 +150,7 @@ machine-$(CONFIG_ARCH_IXP23XX) := ixp23xx machine-$(CONFIG_ARCH_IXP4XX) := ixp4xx machine-$(CONFIG_ARCH_KIRKWOOD) := kirkwood machine-$(CONFIG_ARCH_KS8695) := ks8695 +machine-$(CONFIG_ARCH_LOKI) := loki machine-$(CONFIG_ARCH_LPC32XX) := lpc32xx machine-$(CONFIG_ARCH_MMP) := mmp machine-$(CONFIG_ARCH_MSM) := msm @@ -168,11 +169,11 @@ machine-$(CONFIG_ARCH_OMAP3) := omap2 machine-$(CONFIG_ARCH_OMAP4) := omap2 machine-$(CONFIG_ARCH_ORION5X) := orion5x machine-$(CONFIG_ARCH_PNX4008) := pnx4008 -machine-$(CONFIG_ARCH_PRIMA2) := prima2 machine-$(CONFIG_ARCH_PXA) := pxa machine-$(CONFIG_ARCH_REALVIEW) := realview machine-$(CONFIG_ARCH_RPC) := rpc -machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2412 s3c2416 s3c2440 s3c2443 +machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2400 s3c2412 s3c2416 s3c2440 s3c2443 +machine-$(CONFIG_ARCH_S3C24A0) := s3c24a0 machine-$(CONFIG_ARCH_S3C64XX) := s3c64xx machine-$(CONFIG_ARCH_S5P64X0) := s5p64x0 machine-$(CONFIG_ARCH_S5PC100) := s5pc100 @@ -195,7 +196,6 @@ machine-$(CONFIG_MACH_SPEAR300) := spear3xx machine-$(CONFIG_MACH_SPEAR310) := spear3xx machine-$(CONFIG_MACH_SPEAR320) := spear3xx machine-$(CONFIG_MACH_SPEAR600) := spear6xx -machine-$(CONFIG_ARCH_ZYNQ) := zynq # Platform directory name. This list is sorted alphanumerically # by CONFIG_* macro name. @@ -203,7 +203,6 @@ plat-$(CONFIG_ARCH_MXC) := mxc plat-$(CONFIG_ARCH_OMAP) := omap plat-$(CONFIG_ARCH_S3C64XX) := samsung plat-$(CONFIG_ARCH_TCC_926) := tcc -plat-$(CONFIG_ARCH_ZYNQ) := versatile plat-$(CONFIG_PLAT_IOP) := iop plat-$(CONFIG_PLAT_NOMADIK) := nomadik plat-$(CONFIG_PLAT_ORION) := orion diff --git a/arch/arm/boot/dts/prima2-cb.dts b/arch/arm/boot/dts/prima2-cb.dts deleted file mode 100644 index 6fecc88065b..00000000000 --- a/arch/arm/boot/dts/prima2-cb.dts +++ /dev/null @@ -1,416 +0,0 @@ -/dts-v1/; -/ { - model = "SiRF Prima2 eVB"; - compatible = "sirf,prima2-cb", "sirf,prima2"; - #address-cells = <1>; - #size-cells = <1>; - interrupt-parent = <&intc>; - - memory { - reg = <0x00000000 0x20000000>; - }; - - chosen { - bootargs = "mem=512M real_root=/dev/mmcblk0p2 console=ttyS0 panel=1 bootsplash=true bpp=16 androidboot.console=ttyS1"; - linux,stdout-path = &uart1; - }; - - cpus { - #address-cells = <1>; - #size-cells = <0>; - - cpu@0 { - reg = <0x0>; - d-cache-line-size = <32>; - i-cache-line-size = <32>; - d-cache-size = <32768>; - i-cache-size = <32768>; - /* from bootloader */ - timebase-frequency = <0>; - bus-frequency = <0>; - clock-frequency = <0>; - }; - }; - - axi { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x40000000 0x40000000 0x80000000>; - - l2-cache-controller@80040000 { - compatible = "arm,pl310-cache"; - reg = <0x80040000 0x1000>; - interrupts = <59>; - }; - - intc: interrupt-controller@80020000 { - #interrupt-cells = <1>; - interrupt-controller; - compatible = "sirf,prima2-intc"; - reg = <0x80020000 0x1000>; - }; - - sys-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x88000000 0x88000000 0x40000>; - - clock-controller@88000000 { - compatible = "sirf,prima2-clkc"; - reg = <0x88000000 0x1000>; - interrupts = <3>; - }; - - reset-controller@88010000 { - compatible = "sirf,prima2-rstc"; - reg = <0x88010000 0x1000>; - }; - }; - - mem-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x90000000 0x90000000 0x10000>; - - memory-controller@90000000 { - compatible = "sirf,prima2-memc"; - reg = <0x90000000 0x10000>; - interrupts = <27>; - }; - }; - - disp-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x90010000 0x90010000 0x30000>; - - display@90010000 { - compatible = "sirf,prima2-lcd"; - reg = <0x90010000 0x20000>; - interrupts = <30>; - }; - - vpp@90020000 { - compatible = "sirf,prima2-vpp"; - reg = <0x90020000 0x10000>; - interrupts = <31>; - }; - }; - - graphics-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x98000000 0x98000000 0x8000000>; - - graphics@98000000 { - compatible = "powervr,sgx531"; - reg = <0x98000000 0x8000000>; - interrupts = <6>; - }; - }; - - multimedia-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0xa0000000 0xa0000000 0x8000000>; - - multimedia@a0000000 { - compatible = "sirf,prima2-video-codec"; - reg = <0xa0000000 0x8000000>; - interrupts = <5>; - }; - }; - - dsp-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0xa8000000 0xa8000000 0x2000000>; - - dspif@a8000000 { - compatible = "sirf,prima2-dspif"; - reg = <0xa8000000 0x10000>; - interrupts = <9>; - }; - - gps@a8010000 { - compatible = "sirf,prima2-gps"; - reg = <0xa8010000 0x10000>; - interrupts = <7>; - }; - - dsp@a9000000 { - compatible = "sirf,prima2-dsp"; - reg = <0xa9000000 0x1000000>; - interrupts = <8>; - }; - }; - - peri-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0xb0000000 0xb0000000 0x180000>; - - timer@b0020000 { - compatible = "sirf,prima2-tick"; - reg = <0xb0020000 0x1000>; - interrupts = <0>; - }; - - nand@b0030000 { - compatible = "sirf,prima2-nand"; - reg = <0xb0030000 0x10000>; - interrupts = <41>; - }; - - audio@b0040000 { - compatible = "sirf,prima2-audio"; - reg = <0xb0040000 0x10000>; - interrupts = <35>; - }; - - uart0: uart@b0050000 { - cell-index = <0>; - compatible = "sirf,prima2-uart"; - reg = <0xb0050000 0x10000>; - interrupts = <17>; - }; - - uart1: uart@b0060000 { - cell-index = <1>; - compatible = "sirf,prima2-uart"; - reg = <0xb0060000 0x10000>; - interrupts = <18>; - }; - - uart2: uart@b0070000 { - cell-index = <2>; - compatible = "sirf,prima2-uart"; - reg = <0xb0070000 0x10000>; - interrupts = <19>; - }; - - usp0: usp@b0080000 { - cell-index = <0>; - compatible = "sirf,prima2-usp"; - reg = <0xb0080000 0x10000>; - interrupts = <20>; - }; - - usp1: usp@b0090000 { - cell-index = <1>; - compatible = "sirf,prima2-usp"; - reg = <0xb0090000 0x10000>; - interrupts = <21>; - }; - - usp2: usp@b00a0000 { - cell-index = <2>; - compatible = "sirf,prima2-usp"; - reg = <0xb00a0000 0x10000>; - interrupts = <22>; - }; - - dmac0: dma-controller@b00b0000 { - cell-index = <0>; - compatible = "sirf,prima2-dmac"; - reg = <0xb00b0000 0x10000>; - interrupts = <12>; - }; - - dmac1: dma-controller@b0160000 { - cell-index = <1>; - compatible = "sirf,prima2-dmac"; - reg = <0xb0160000 0x10000>; - interrupts = <13>; - }; - - vip@b00C0000 { - compatible = "sirf,prima2-vip"; - reg = <0xb00C0000 0x10000>; - }; - - spi0: spi@b00d0000 { - cell-index = <0>; - compatible = "sirf,prima2-spi"; - reg = <0xb00d0000 0x10000>; - interrupts = <15>; - }; - - spi1: spi@b0170000 { - cell-index = <1>; - compatible = "sirf,prima2-spi"; - reg = <0xb0170000 0x10000>; - interrupts = <16>; - }; - - i2c0: i2c@b00e0000 { - cell-index = <0>; - compatible = "sirf,prima2-i2c"; - reg = <0xb00e0000 0x10000>; - interrupts = <24>; - }; - - i2c1: i2c@b00f0000 { - cell-index = <1>; - compatible = "sirf,prima2-i2c"; - reg = <0xb00f0000 0x10000>; - interrupts = <25>; - }; - - tsc@b0110000 { - compatible = "sirf,prima2-tsc"; - reg = <0xb0110000 0x10000>; - interrupts = <33>; - }; - - gpio: gpio-controller@b0120000 { - #gpio-cells = <2>; - #interrupt-cells = <2>; - compatible = "sirf,prima2-gpio"; - reg = <0xb0120000 0x10000>; - gpio-controller; - interrupt-controller; - }; - - pwm@b0130000 { - compatible = "sirf,prima2-pwm"; - reg = <0xb0130000 0x10000>; - }; - - efusesys@b0140000 { - compatible = "sirf,prima2-efuse"; - reg = <0xb0140000 0x10000>; - }; - - pulsec@b0150000 { - compatible = "sirf,prima2-pulsec"; - reg = <0xb0150000 0x10000>; - interrupts = <48>; - }; - - pci-iobg { - compatible = "sirf,prima2-pciiobg", "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0x56000000 0x56000000 0x1b00000>; - - sd0: sdhci@56000000 { - cell-index = <0>; - compatible = "sirf,prima2-sdhc"; - reg = <0x56000000 0x100000>; - interrupts = <38>; - }; - - sd1: sdhci@56100000 { - cell-index = <1>; - compatible = "sirf,prima2-sdhc"; - reg = <0x56100000 0x100000>; - interrupts = <38>; - }; - - sd2: sdhci@56200000 { - cell-index = <2>; - compatible = "sirf,prima2-sdhc"; - reg = <0x56200000 0x100000>; - interrupts = <23>; - }; - - sd3: sdhci@56300000 { - cell-index = <3>; - compatible = "sirf,prima2-sdhc"; - reg = <0x56300000 0x100000>; - interrupts = <23>; - }; - - sd4: sdhci@56400000 { - cell-index = <4>; - compatible = "sirf,prima2-sdhc"; - reg = <0x56400000 0x100000>; - interrupts = <39>; - }; - - sd5: sdhci@56500000 { - cell-index = <5>; - compatible = "sirf,prima2-sdhc"; - reg = <0x56500000 0x100000>; - interrupts = <39>; - }; - - pci-copy@57900000 { - compatible = "sirf,prima2-pcicp"; - reg = <0x57900000 0x100000>; - interrupts = <40>; - }; - - rom-interface@57a00000 { - compatible = "sirf,prima2-romif"; - reg = <0x57a00000 0x100000>; - }; - }; - }; - - rtc-iobg { - compatible = "sirf,prima2-rtciobg", "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - reg = <0x80030000 0x10000>; - - gpsrtc@1000 { - compatible = "sirf,prima2-gpsrtc"; - reg = <0x1000 0x1000>; - interrupts = <55 56 57>; - }; - - sysrtc@2000 { - compatible = "sirf,prima2-sysrtc"; - reg = <0x2000 0x1000>; - interrupts = <52 53 54>; - }; - - pwrc@3000 { - compatible = "sirf,prima2-pwrc"; - reg = <0x3000 0x1000>; - interrupts = <32>; - }; - }; - - uus-iobg { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges = <0xb8000000 0xb8000000 0x40000>; - - usb0: usb@b00e0000 { - compatible = "chipidea,ci13611a-prima2"; - reg = <0xb8000000 0x10000>; - interrupts = <10>; - }; - - usb1: usb@b00f0000 { - compatible = "chipidea,ci13611a-prima2"; - reg = <0xb8010000 0x10000>; - interrupts = <11>; - }; - - sata@b00f0000 { - compatible = "synopsys,dwc-ahsata"; - reg = <0xb8020000 0x10000>; - interrupts = <37>; - }; - - security@b00f0000 { - compatible = "sirf,prima2-security"; - reg = <0xb8030000 0x10000>; - interrupts = <42>; - }; - }; - }; -}; diff --git a/arch/arm/boot/dts/zynq-ep107.dts b/arch/arm/boot/dts/zynq-ep107.dts deleted file mode 100644 index 37ca192fb19..00000000000 --- a/arch/arm/boot/dts/zynq-ep107.dts +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (C) 2011 Xilinx - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - */ - -/dts-v1/; -/ { - model = "Xilinx Zynq EP107"; - compatible = "xlnx,zynq-ep107"; - #address-cells = <1>; - #size-cells = <1>; - interrupt-parent = <&intc>; - - memory { - device_type = "memory"; - reg = <0x0 0x10000000>; - }; - - chosen { - bootargs = "console=ttyPS0,9600 root=/dev/ram rw initrd=0x800000,8M earlyprintk"; - linux,stdout-path = &uart0; - }; - - amba { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <1>; - ranges; - - intc: interrupt-controller@f8f01000 { - interrupt-controller; - compatible = "arm,gic"; - reg = <0xF8F01000 0x1000>; - #interrupt-cells = <2>; - }; - - uart0: uart@e0000000 { - compatible = "xlnx,xuartps"; - reg = <0xE0000000 0x1000>; - interrupts = <59 0>; - clock = <50000000>; - }; - }; -}; diff --git a/arch/arm/configs/cm_x300_defconfig b/arch/arm/configs/cm_x300_defconfig index f4b767256f9..921e56a7572 100644 --- a/arch/arm/configs/cm_x300_defconfig +++ b/arch/arm/configs/cm_x300_defconfig @@ -5,6 +5,7 @@ CONFIG_SYSVIPC=y CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y CONFIG_LOG_BUF_SHIFT=18 +CONFIG_SYSFS_DEPRECATED_V2=y CONFIG_BLK_DEV_INITRD=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_MODULES=y @@ -12,7 +13,6 @@ CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_FORCE_UNLOAD=y # CONFIG_BLK_DEV_BSG is not set CONFIG_ARCH_PXA=y -CONFIG_GPIO_PCA953X=y CONFIG_MACH_CM_X300=y CONFIG_NO_HZ=y CONFIG_AEABI=y @@ -23,6 +23,7 @@ CONFIG_CMDLINE="root=/dev/mtdblock5 rootfstype=ubifs console=ttyS2,38400" CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ_GOV_USERSPACE=y CONFIG_FPE_NWFPE=y +CONFIG_PM=y CONFIG_APM_EMULATION=y CONFIG_NET=y CONFIG_PACKET=y @@ -39,8 +40,8 @@ CONFIG_IP_PNP_RARP=y # CONFIG_INET_DIAG is not set # CONFIG_IPV6 is not set CONFIG_BT=m -CONFIG_BT_L2CAP=y -CONFIG_BT_SCO=y +CONFIG_BT_L2CAP=m +CONFIG_BT_SCO=m CONFIG_BT_RFCOMM=m CONFIG_BT_RFCOMM_TTY=y CONFIG_BT_BNEP=m @@ -59,6 +60,7 @@ CONFIG_MTD_NAND_PXA3xx=y CONFIG_MTD_UBI=y CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_RAM=y +# CONFIG_MISC_DEVICES is not set CONFIG_SCSI=y CONFIG_BLK_DEV_SD=y CONFIG_NETDEVICES=y @@ -79,15 +81,16 @@ CONFIG_TOUCHSCREEN_WM97XX=m # CONFIG_TOUCHSCREEN_WM9705 is not set # CONFIG_TOUCHSCREEN_WM9713 is not set # CONFIG_SERIO is not set -# CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_PXA=y CONFIG_SERIAL_PXA_CONSOLE=y +# CONFIG_LEGACY_PTYS is not set # CONFIG_HW_RANDOM is not set CONFIG_I2C=y CONFIG_I2C_PXA=y CONFIG_SPI=y CONFIG_SPI_GPIO=y CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_PCA953X=y # CONFIG_HWMON is not set CONFIG_PMIC_DA903X=y CONFIG_REGULATOR=y @@ -99,6 +102,7 @@ CONFIG_LCD_CLASS_DEVICE=y CONFIG_LCD_TDO24M=y # CONFIG_BACKLIGHT_GENERIC is not set CONFIG_BACKLIGHT_DA903X=m +# CONFIG_VGA_CONSOLE is not set CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FONTS=y @@ -127,6 +131,7 @@ CONFIG_HID_GREENASIA=y CONFIG_HID_SMARTJOYPLUS=y CONFIG_HID_TOPSEED=y CONFIG_HID_THRUSTMASTER=y +CONFIG_HID_WACOM=m CONFIG_HID_ZEROPLUS=y CONFIG_USB=y CONFIG_USB_DEVICEFS=y @@ -147,6 +152,7 @@ CONFIG_RTC_DRV_PXA=y CONFIG_EXT2_FS=y CONFIG_EXT3_FS=y # CONFIG_EXT3_FS_XATTR is not set +CONFIG_INOTIFY=y CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=m CONFIG_TMPFS=y @@ -158,6 +164,7 @@ CONFIG_NFS_V3=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y CONFIG_ROOT_NFS=y +CONFIG_SMB_FS=m CONFIG_CIFS=m CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_PARTITION_ADVANCED=y @@ -165,7 +172,9 @@ CONFIG_NLS_CODEPAGE_437=m CONFIG_NLS_ISO8859_1=m CONFIG_DEBUG_FS=y CONFIG_DEBUG_KERNEL=y +# CONFIG_DETECT_SOFTLOCKUP is not set # CONFIG_SCHED_DEBUG is not set +# CONFIG_RCU_CPU_STALL_DETECTOR is not set CONFIG_SYSCTL_SYSCALL_CHECK=y # CONFIG_FTRACE is not set CONFIG_DEBUG_USER=y @@ -173,6 +182,7 @@ CONFIG_DEBUG_LL=y CONFIG_CRYPTO_ECB=m CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_AES=m +CONFIG_CRYPTO_ARC4=m # CONFIG_CRYPTO_ANSI_CPRNG is not set # CONFIG_CRYPTO_HW is not set CONFIG_CRC_T10DIF=y diff --git a/arch/arm/configs/loki_defconfig b/arch/arm/configs/loki_defconfig new file mode 100644 index 00000000000..1ba752b2dc6 --- /dev/null +++ b/arch/arm/configs/loki_defconfig @@ -0,0 +1,120 @@ +CONFIG_EXPERIMENTAL=y +CONFIG_SYSVIPC=y +CONFIG_LOG_BUF_SHIFT=14 +CONFIG_EXPERT=y +CONFIG_SLAB=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +# CONFIG_BLK_DEV_BSG is not set +CONFIG_ARCH_LOKI=y +CONFIG_MACH_LB88RC8480=y +# CONFIG_CPU_FEROCEON_OLD_ID is not set +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_PREEMPT=y +CONFIG_AEABI=y +CONFIG_ZBOOT_ROM_TEXT=0x0 +CONFIG_ZBOOT_ROM_BSS=0x0 +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +# CONFIG_IPV6 is not set +CONFIG_NET_PKTGEN=m +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_MTD=y +CONFIG_MTD_PARTITIONS=y +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_MTD_CHAR=y +CONFIG_MTD_BLOCK=y +CONFIG_FTL=y +CONFIG_NFTL=y +CONFIG_MTD_CFI=y +CONFIG_MTD_JEDECPROBE=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_GEOMETRY=y +CONFIG_MTD_CFI_I4=y +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_STAA=y +CONFIG_MTD_PHYSMAP=y +CONFIG_MTD_M25P80=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_VERIFY_WRITE=y +CONFIG_MTD_NAND_ORION=y +CONFIG_BLK_DEV_LOOP=y +# CONFIG_MISC_DEVICES is not set +# CONFIG_SCSI_PROC_FS is not set +CONFIG_BLK_DEV_SD=y +CONFIG_BLK_DEV_SR=m +CONFIG_CHR_DEV_SG=m +CONFIG_ATA=y +CONFIG_SATA_MV=y +CONFIG_NETDEVICES=y +CONFIG_NET_ETHERNET=y +CONFIG_MII=y +CONFIG_MV643XX_ETH=y +# CONFIG_NETDEV_10000 is not set +# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_INPUT_MOUSE is not set +# CONFIG_SERIO is not set +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +CONFIG_LEGACY_PTY_COUNT=16 +CONFIG_I2C=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MV64XXX=y +CONFIG_SPI=y +# CONFIG_HWMON is not set +# CONFIG_VGA_CONSOLE is not set +CONFIG_USB=y +CONFIG_USB_DEVICEFS=y +CONFIG_USB_PRINTER=y +CONFIG_USB_STORAGE=y +CONFIG_USB_STORAGE_DATAFAB=y +CONFIG_USB_STORAGE_FREECOM=y +CONFIG_USB_STORAGE_SDDR09=y +CONFIG_USB_STORAGE_SDDR55=y +CONFIG_USB_STORAGE_JUMPSHOT=y +CONFIG_NEW_LEDS=y +CONFIG_EXT2_FS=y +CONFIG_EXT3_FS=y +# CONFIG_EXT3_FS_XATTR is not set +CONFIG_XFS_FS=y +CONFIG_INOTIFY=y +CONFIG_ISO9660_FS=y +CONFIG_UDF_FS=m +CONFIG_MSDOS_FS=y +CONFIG_VFAT_FS=y +CONFIG_TMPFS=y +CONFIG_JFFS2_FS=y +CONFIG_CRAMFS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V3=y +CONFIG_ROOT_NFS=y +CONFIG_PARTITION_ADVANCED=y +CONFIG_BSD_DISKLABEL=y +CONFIG_MINIX_SUBPARTITION=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_LDM_PARTITION=y +CONFIG_LDM_DEBUG=y +CONFIG_SUN_PARTITION=y +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_850=y +CONFIG_NLS_ISO8859_1=y +CONFIG_NLS_ISO8859_2=y +CONFIG_MAGIC_SYSRQ=y +CONFIG_SYSCTL_SYSCALL_CHECK=y +CONFIG_DEBUG_USER=y +CONFIG_CRYPTO_CBC=m +CONFIG_CRYPTO_ECB=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRC_CCITT=y +CONFIG_CRC16=y +CONFIG_LIBCRC32C=y diff --git a/arch/arm/configs/mx51_defconfig b/arch/arm/configs/mx51_defconfig index 88c5802a235..0ace16cba9b 100644 --- a/arch/arm/configs/mx51_defconfig +++ b/arch/arm/configs/mx51_defconfig @@ -106,7 +106,6 @@ CONFIG_GPIO_SYSFS=y CONFIG_USB=y CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_MXC=y -CONFIG_USB_STORAGE=y CONFIG_MMC=y CONFIG_MMC_BLOCK=m CONFIG_MMC_SDHCI=m @@ -146,7 +145,7 @@ CONFIG_ROOT_NFS=y CONFIG_NLS_DEFAULT="cp437" CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=y -CONFIG_NLS_ISO8859_1=y +CONFIG_NLS_ISO8859_1=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_UTF8=y CONFIG_MAGIC_SYSRQ=y diff --git a/arch/arm/configs/mxs_defconfig b/arch/arm/configs/mxs_defconfig index db2cb7d180d..2bf224310fb 100644 --- a/arch/arm/configs/mxs_defconfig +++ b/arch/arm/configs/mxs_defconfig @@ -22,8 +22,6 @@ CONFIG_BLK_DEV_INTEGRITY=y # CONFIG_IOSCHED_DEADLINE is not set # CONFIG_IOSCHED_CFQ is not set CONFIG_ARCH_MXS=y -CONFIG_MACH_MX23EVK=y -CONFIG_MACH_MX28EVK=y CONFIG_MACH_STMP378X_DEVB=y CONFIG_MACH_TX28=y # CONFIG_ARM_THUMB is not set @@ -91,7 +89,7 @@ CONFIG_DISPLAY_SUPPORT=m # CONFIG_USB_SUPPORT is not set CONFIG_MMC=y CONFIG_MMC_MXS=y -CONFIG_RTC_CLASS=y +CONFIG_RTC_CLASS=m CONFIG_RTC_DRV_DS1307=m CONFIG_DMADEVICES=y CONFIG_MXS_DMA=y diff --git a/arch/arm/configs/u8500_defconfig b/arch/arm/configs/u8500_defconfig index 97d31a4663d..a5cce242a77 100644 --- a/arch/arm/configs/u8500_defconfig +++ b/arch/arm/configs/u8500_defconfig @@ -11,12 +11,12 @@ CONFIG_ARCH_U8500=y CONFIG_UX500_SOC_DB5500=y CONFIG_UX500_SOC_DB8500=y CONFIG_MACH_U8500=y -CONFIG_MACH_SNOWBALL=y CONFIG_MACH_U5500=y CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y CONFIG_SMP=y CONFIG_NR_CPUS=2 +CONFIG_HOTPLUG_CPU=y CONFIG_PREEMPT=y CONFIG_AEABI=y CONFIG_CMDLINE="root=/dev/ram0 console=ttyAMA2,115200n8" @@ -25,13 +25,8 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y CONFIG_VFP=y CONFIG_NEON=y CONFIG_NET=y -CONFIG_PACKET=y -CONFIG_UNIX=y -CONFIG_INET=y -CONFIG_IP_PNP=y -CONFIG_IP_PNP_DHCP=y -CONFIG_NETFILTER=y CONFIG_PHONET=y +CONFIG_PHONET_PIPECTRLR=y # CONFIG_WIRELESS is not set CONFIG_CAIF=y CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" @@ -40,13 +35,6 @@ CONFIG_BLK_DEV_RAM_SIZE=65536 CONFIG_MISC_DEVICES=y CONFIG_AB8500_PWM=y CONFIG_SENSORS_BH1780=y -CONFIG_NETDEVICES=y -CONFIG_SMSC_PHY=y -CONFIG_NET_ETHERNET=y -CONFIG_SMSC911X=y -# CONFIG_NETDEV_1000 is not set -# CONFIG_NETDEV_10000 is not set -# CONFIG_WLAN is not set # CONFIG_INPUT_MOUSEDEV_PSAUX is not set CONFIG_INPUT_EVDEV=y # CONFIG_KEYBOARD_ATKBD is not set @@ -61,9 +49,9 @@ CONFIG_INPUT_MISC=y CONFIG_INPUT_AB8500_PONKEY=y # CONFIG_SERIO is not set CONFIG_VT_HW_CONSOLE_BINDING=y -# CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_AMBA_PL011=y CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +# CONFIG_LEGACY_PTYS is not set CONFIG_HW_RANDOM=y CONFIG_HW_RANDOM_NOMADIK=y CONFIG_I2C=y @@ -76,19 +64,14 @@ CONFIG_GPIO_TC3589X=y CONFIG_MFD_STMPE=y CONFIG_MFD_TC3589X=y CONFIG_AB8500_CORE=y +CONFIG_REGULATOR=y CONFIG_REGULATOR_AB8500=y # CONFIG_HID_SUPPORT is not set -CONFIG_USB_MUSB_HDRC=y -CONFIG_USB_GADGET_MUSB_HDRC=y -CONFIG_MUSB_PIO_ONLY=y -CONFIG_USB_GADGET=y -CONFIG_AB8500_USB=y +# CONFIG_USB_SUPPORT is not set CONFIG_MMC=y -CONFIG_MMC_CLKGATE=y CONFIG_MMC_ARMMMCI=y CONFIG_NEW_LEDS=y CONFIG_LEDS_CLASS=y -CONFIG_LEDS_LM3530=y CONFIG_LEDS_LP5521=y CONFIG_RTC_CLASS=y CONFIG_RTC_DRV_AB8500=y @@ -96,6 +79,7 @@ CONFIG_RTC_DRV_PL031=y CONFIG_DMADEVICES=y CONFIG_STE_DMA40=y CONFIG_STAGING=y +# CONFIG_STAGING_EXCLUDE_BUILD is not set CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=y CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y @@ -107,8 +91,6 @@ CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y CONFIG_CONFIGFS_FS=m # CONFIG_MISC_FILESYSTEMS is not set -CONFIG_NFS_FS=y -CONFIG_ROOT_NFS=y CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ISO8859_1=y CONFIG_MAGIC_SYSRQ=y @@ -117,5 +99,7 @@ CONFIG_DEBUG_KERNEL=y # CONFIG_SCHED_DEBUG is not set # CONFIG_DEBUG_PREEMPT is not set CONFIG_DEBUG_INFO=y +# CONFIG_RCU_CPU_STALL_DETECTOR is not set # CONFIG_FTRACE is not set CONFIG_DEBUG_USER=y +CONFIG_DEBUG_ERRORS=y diff --git a/arch/arm/include/asm/hardware/scoop.h b/arch/arm/include/asm/hardware/scoop.h index 58cdf5d8412..ebb3ceaa8fa 100644 --- a/arch/arm/include/asm/hardware/scoop.h +++ b/arch/arm/include/asm/hardware/scoop.h @@ -61,6 +61,7 @@ struct scoop_pcmcia_dev { struct scoop_pcmcia_config { struct scoop_pcmcia_dev *devs; int num_devs; + void (*pcmcia_init)(void); void (*power_ctrl)(struct device *scoop, unsigned short cpr, int nr); }; diff --git a/arch/arm/include/asm/irq.h b/arch/arm/include/asm/irq.h index 5a526afb5f1..2721a5814cb 100644 --- a/arch/arm/include/asm/irq.h +++ b/arch/arm/include/asm/irq.h @@ -23,7 +23,6 @@ struct pt_regs; extern void migrate_irqs(void); extern void asm_do_IRQ(unsigned int, struct pt_regs *); -void handle_IRQ(unsigned int, struct pt_regs *); void init_IRQ(void); #endif diff --git a/arch/arm/include/asm/pci.h b/arch/arm/include/asm/pci.h index 2b1f245db0c..92e2a833693 100644 --- a/arch/arm/include/asm/pci.h +++ b/arch/arm/include/asm/pci.h @@ -3,19 +3,9 @@ #ifdef __KERNEL__ #include -#include #include /* for pci_sys_data */ - -extern unsigned long pcibios_min_io; -#define PCIBIOS_MIN_IO pcibios_min_io -extern unsigned long pcibios_min_mem; -#define PCIBIOS_MIN_MEM pcibios_min_mem - -static inline int pcibios_assign_all_busses(void) -{ - return pci_has_flag(PCI_REASSIGN_ALL_RSRC); -} +#include /* for PCIBIOS_MIN_* */ #ifdef CONFIG_PCI_DOMAINS static inline int pci_domain_nr(struct pci_bus *bus) diff --git a/arch/arm/include/asm/vga.h b/arch/arm/include/asm/vga.h index 91f40217bfa..250a4dd0063 100644 --- a/arch/arm/include/asm/vga.h +++ b/arch/arm/include/asm/vga.h @@ -2,10 +2,9 @@ #define ASMARM_VGA_H #include +#include -extern unsigned long vga_base; - -#define VGA_MAP_MEM(x,s) (vga_base + (x)) +#define VGA_MAP_MEM(x,s) (PCIMEM_BASE + (x)) #define vga_readb(x) (*((volatile unsigned char *)x)) #define vga_writeb(x,y) (*((volatile unsigned char *)y) = (x)) diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c index dbc1f41575b..83bbad03fcc 100644 --- a/arch/arm/kernel/irq.c +++ b/arch/arm/kernel/irq.c @@ -67,12 +67,12 @@ int arch_show_interrupts(struct seq_file *p, int prec) } /* - * handle_IRQ handles all hardware IRQ's. Decoded IRQs should - * not come via this function. Instead, they should provide their - * own 'handler'. Used by platform code implementing C-based 1st - * level decoding. + * do_IRQ handles all hardware IRQ's. Decoded IRQs should not + * come via this function. Instead, they should provide their + * own 'handler' */ -void handle_IRQ(unsigned int irq, struct pt_regs *regs) +asmlinkage void __exception_irq_entry +asm_do_IRQ(unsigned int irq, struct pt_regs *regs) { struct pt_regs *old_regs = set_irq_regs(regs); @@ -97,15 +97,6 @@ void handle_IRQ(unsigned int irq, struct pt_regs *regs) set_irq_regs(old_regs); } -/* - * asm_do_IRQ is the interface to be used from assembly code. - */ -asmlinkage void __exception_irq_entry -asm_do_IRQ(unsigned int irq, struct pt_regs *regs) -{ - handle_IRQ(irq, regs); -} - void set_irq_flags(unsigned int irq, unsigned int iflags) { unsigned long clr = 0, set = IRQ_NOREQUEST | IRQ_NOPROBE | IRQ_NOAUTOEN; diff --git a/arch/arm/lib/ecard.S b/arch/arm/lib/ecard.S index e6057fa851b..8678eb2b7a6 100644 --- a/arch/arm/lib/ecard.S +++ b/arch/arm/lib/ecard.S @@ -12,6 +12,7 @@ */ #include #include +#include #define CPSR2SPSR(rt) \ mrs rt, cpsr; \ diff --git a/arch/arm/lib/io-readsw-armv3.S b/arch/arm/lib/io-readsw-armv3.S index 88487c8c4f2..9aaf7c72065 100644 --- a/arch/arm/lib/io-readsw-armv3.S +++ b/arch/arm/lib/io-readsw-armv3.S @@ -9,6 +9,7 @@ */ #include #include +#include .Linsw_bad_alignment: adr r0, .Linsw_bad_align_msg diff --git a/arch/arm/lib/io-writesw-armv3.S b/arch/arm/lib/io-writesw-armv3.S index 49b800419e3..cd34503e424 100644 --- a/arch/arm/lib/io-writesw-armv3.S +++ b/arch/arm/lib/io-writesw-armv3.S @@ -9,6 +9,7 @@ */ #include #include +#include .Loutsw_bad_alignment: adr r0, .Loutsw_bad_align_msg diff --git a/arch/arm/mach-bcmring/include/mach/hardware.h b/arch/arm/mach-bcmring/include/mach/hardware.h index ed78aabb8e9..8bf3564fba5 100644 --- a/arch/arm/mach-bcmring/include/mach/hardware.h +++ b/arch/arm/mach-bcmring/include/mach/hardware.h @@ -36,6 +36,8 @@ #define RAM_SIZE (CFG_GLOBAL_RAM_SIZE-CFG_GLOBAL_RAM_SIZE_RESERVED) #define RAM_BASE PAGE_OFFSET +#define pcibios_assign_all_busses() 1 + /* Macros to make managing spinlocks a bit more controlled in terms of naming. */ /* See reg_gpio.h, reg_irq.h, arch.c, gpio.c for example usage. */ #if defined(__KERNEL__) diff --git a/arch/arm/mach-cns3xxx/cns3420vb.c b/arch/arm/mach-cns3xxx/cns3420vb.c index 3e7d1496cb4..08e5c875950 100644 --- a/arch/arm/mach-cns3xxx/cns3420vb.c +++ b/arch/arm/mach-cns3xxx/cns3420vb.c @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include "core.h" @@ -169,8 +170,6 @@ static struct platform_device *cns3420_pdevs[] __initdata = { static void __init cns3420_init(void) { - cns3xxx_l2x0_init(); - platform_add_devices(cns3420_pdevs, ARRAY_SIZE(cns3420_pdevs)); cns3xxx_ahci_init(); diff --git a/arch/arm/mach-cns3xxx/core.c b/arch/arm/mach-cns3xxx/core.c index 941a308e125..da30078a80c 100644 --- a/arch/arm/mach-cns3xxx/core.c +++ b/arch/arm/mach-cns3xxx/core.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include "core.h" @@ -245,45 +244,3 @@ static void __init cns3xxx_timer_init(void) struct sys_timer cns3xxx_timer = { .init = cns3xxx_timer_init, }; - -#ifdef CONFIG_CACHE_L2X0 - -void __init cns3xxx_l2x0_init(void) -{ - void __iomem *base = ioremap(CNS3XXX_L2C_BASE, SZ_4K); - u32 val; - - if (WARN_ON(!base)) - return; - - /* - * Tag RAM Control register - * - * bit[10:8] - 1 cycle of write accesses latency - * bit[6:4] - 1 cycle of read accesses latency - * bit[3:0] - 1 cycle of setup latency - * - * 1 cycle of latency for setup, read and write accesses - */ - val = readl(base + L2X0_TAG_LATENCY_CTRL); - val &= 0xfffff888; - writel(val, base + L2X0_TAG_LATENCY_CTRL); - - /* - * Data RAM Control register - * - * bit[10:8] - 1 cycles of write accesses latency - * bit[6:4] - 1 cycles of read accesses latency - * bit[3:0] - 1 cycle of setup latency - * - * 1 cycle of latency for setup, read and write accesses - */ - val = readl(base + L2X0_DATA_LATENCY_CTRL); - val &= 0xfffff888; - writel(val, base + L2X0_DATA_LATENCY_CTRL); - - /* 32 KiB, 8-way, parity disable */ - l2x0_init(base, 0x00540000, 0xfe000fff); -} - -#endif /* CONFIG_CACHE_L2X0 */ diff --git a/arch/arm/mach-cns3xxx/core.h b/arch/arm/mach-cns3xxx/core.h index fcd225343c6..ffeb3a8b73b 100644 --- a/arch/arm/mach-cns3xxx/core.h +++ b/arch/arm/mach-cns3xxx/core.h @@ -13,12 +13,6 @@ extern struct sys_timer cns3xxx_timer; -#ifdef CONFIG_CACHE_L2X0 -void __init cns3xxx_l2x0_init(void); -#else -static inline void cns3xxx_l2x0_init(void) {} -#endif /* CONFIG_CACHE_L2X0 */ - void __init cns3xxx_map_io(void); void __init cns3xxx_init_irq(void); void cns3xxx_power_off(void); diff --git a/arch/arm/mach-cns3xxx/include/mach/hardware.h b/arch/arm/mach-cns3xxx/include/mach/hardware.h new file mode 100644 index 00000000000..57e09836f9d --- /dev/null +++ b/arch/arm/mach-cns3xxx/include/mach/hardware.h @@ -0,0 +1,22 @@ +/* + * This file contains the hardware definitions of the Cavium Networks boards. + * + * Copyright 2003 ARM Limited. + * Copyright 2008 Cavium Networks + * + * This file is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License, Version 2, as + * published by the Free Software Foundation. + */ + +#ifndef __MACH_HARDWARE_H +#define __MACH_HARDWARE_H + +#include + +/* macro to get at IO space when running virtually */ +#define PCIBIOS_MIN_IO 0x00000000 +#define PCIBIOS_MIN_MEM 0x00000000 +#define pcibios_assign_all_busses() 1 + +#endif diff --git a/arch/arm/mach-cns3xxx/include/mach/vmalloc.h b/arch/arm/mach-cns3xxx/include/mach/vmalloc.h index 1dd231d2f77..4d381ec0527 100644 --- a/arch/arm/mach-cns3xxx/include/mach/vmalloc.h +++ b/arch/arm/mach-cns3xxx/include/mach/vmalloc.h @@ -8,4 +8,4 @@ * published by the Free Software Foundation. */ -#define VMALLOC_END 0xd8000000UL +#define VMALLOC_END 0xd8000000 diff --git a/arch/arm/mach-cns3xxx/pcie.c b/arch/arm/mach-cns3xxx/pcie.c index a4ec080908b..78defd71a82 100644 --- a/arch/arm/mach-cns3xxx/pcie.c +++ b/arch/arm/mach-cns3xxx/pcie.c @@ -369,9 +369,6 @@ static int __init cns3xxx_pcie_init(void) { int i; - pcibios_min_io = 0; - pcibios_min_mem = 0; - hook_fault_code(16 + 6, cns3xxx_pcie_abort_handler, SIGBUS, 0, "imprecise external abort"); diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c index bd5394537c8..29671ef0715 100644 --- a/arch/arm/mach-davinci/board-da850-evm.c +++ b/arch/arm/mach-davinci/board-da850-evm.c @@ -1117,8 +1117,6 @@ static __init int da850_evm_init_cpufreq(void) static __init int da850_evm_init_cpufreq(void) { return 0; } #endif -#define DA850EVM_SATA_REFCLKPN_RATE (100 * 1000 * 1000) - static __init void da850_evm_init(void) { int ret; @@ -1239,11 +1237,6 @@ static __init void da850_evm_init(void) if (ret) pr_warning("da850_evm_init: spi 1 registration failed: %d\n", ret); - - ret = da850_register_sata(DA850EVM_SATA_REFCLKPN_RATE); - if (ret) - pr_warning("da850_evm_init: sata registration failed: %d\n", - ret); } #ifdef CONFIG_SERIAL_8250_CONSOLE diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c index 993a3146fd3..6d03643b9bd 100644 --- a/arch/arm/mach-davinci/board-dm646x-evm.c +++ b/arch/arm/mach-davinci/board-dm646x-evm.c @@ -719,15 +719,9 @@ static void __init cdce_clk_init(void) } } -#define DM6467T_EVM_REF_FREQ 33000000 - static void __init davinci_map_io(void) { dm646x_init(); - - if (machine_is_davinci_dm6467tevm()) - davinci_set_refclk_rate(DM6467T_EVM_REF_FREQ); - cdce_clk_init(); } @@ -791,6 +785,17 @@ static __init void evm_init(void) soc_info->emac_pdata->phy_id = DM646X_EVM_PHY_ID; } +#define DM646X_EVM_REF_FREQ 27000000 +#define DM6467T_EVM_REF_FREQ 33000000 + +void __init dm646x_board_setup_refclk(struct clk *clk) +{ + if (machine_is_davinci_dm6467tevm()) + clk->rate = DM6467T_EVM_REF_FREQ; + else + clk->rate = DM646X_EVM_REF_FREQ; +} + MACHINE_START(DAVINCI_DM6467_EVM, "DaVinci DM646x EVM") .boot_params = (0x80000100), .map_io = davinci_map_io, diff --git a/arch/arm/mach-davinci/clock.c b/arch/arm/mach-davinci/clock.c index 00861139101..e4e3af179f0 100644 --- a/arch/arm/mach-davinci/clock.c +++ b/arch/arm/mach-davinci/clock.c @@ -44,7 +44,7 @@ static void __clk_enable(struct clk *clk) __clk_enable(clk->parent); if (clk->usecount++ == 0 && (clk->flags & CLK_PSC)) davinci_psc_config(psc_domain(clk), clk->gpsc, clk->lpsc, - true, clk->flags); + PSC_STATE_ENABLE); } static void __clk_disable(struct clk *clk) @@ -54,7 +54,8 @@ static void __clk_disable(struct clk *clk) if (--clk->usecount == 0 && !(clk->flags & CLK_PLL) && (clk->flags & CLK_PSC)) davinci_psc_config(psc_domain(clk), clk->gpsc, clk->lpsc, - false, clk->flags); + (clk->flags & PSC_SWRSTDISABLE) ? + PSC_STATE_SWRSTDISABLE : PSC_STATE_DISABLE); if (clk->parent) __clk_disable(clk->parent); } @@ -238,7 +239,8 @@ static int __init clk_disable_unused(void) pr_debug("Clocks: disable unused %s\n", ck->name); davinci_psc_config(psc_domain(ck), ck->gpsc, ck->lpsc, - false, ck->flags); + (ck->flags & PSC_SWRSTDISABLE) ? + PSC_STATE_SWRSTDISABLE : PSC_STATE_DISABLE); } spin_unlock_irq(&clockfw_lock); @@ -366,12 +368,6 @@ static unsigned long clk_leafclk_recalc(struct clk *clk) return clk->parent->rate; } -int davinci_simple_set_rate(struct clk *clk, unsigned long rate) -{ - clk->rate = rate; - return 0; -} - static unsigned long clk_pllclk_recalc(struct clk *clk) { u32 ctrl, mult = 1, prediv = 1, postdiv = 1; @@ -510,38 +506,6 @@ int davinci_set_pllrate(struct pll_data *pll, unsigned int prediv, } EXPORT_SYMBOL(davinci_set_pllrate); -/** - * davinci_set_refclk_rate() - Set the reference clock rate - * @rate: The new rate. - * - * Sets the reference clock rate to a given value. This will most likely - * result in the entire clock tree getting updated. - * - * This is used to support boards which use a reference clock different - * than that used by default in .c file. The reference clock rate - * should be updated early in the boot process; ideally soon after the - * clock tree has been initialized once with the default reference clock - * rate (davinci_common_init()). - * - * Returns 0 on success, error otherwise. - */ -int davinci_set_refclk_rate(unsigned long rate) -{ - struct clk *refclk; - - refclk = clk_get(NULL, "ref"); - if (IS_ERR(refclk)) { - pr_err("%s: failed to get reference clock.\n", __func__); - return PTR_ERR(refclk); - } - - clk_set_rate(refclk, rate); - - clk_put(refclk); - - return 0; -} - int __init davinci_clk_init(struct clk_lookup *clocks) { struct clk_lookup *c; diff --git a/arch/arm/mach-davinci/clock.h b/arch/arm/mach-davinci/clock.h index a705f367a84..0dd22031ec6 100644 --- a/arch/arm/mach-davinci/clock.h +++ b/arch/arm/mach-davinci/clock.h @@ -111,7 +111,6 @@ struct clk { #define CLK_PLL BIT(4) /* PLL-derived clock */ #define PRE_PLL BIT(5) /* source is before PLL mult/div */ #define PSC_SWRSTDISABLE BIT(6) /* Disable state is SwRstDisable */ -#define PSC_FORCE BIT(7) /* Force module state transtition */ #define CLK(dev, con, ck) \ { \ @@ -124,8 +123,6 @@ int davinci_clk_init(struct clk_lookup *clocks); int davinci_set_pllrate(struct pll_data *pll, unsigned int prediv, unsigned int mult, unsigned int postdiv); int davinci_set_sysclk_rate(struct clk *clk, unsigned long rate); -int davinci_set_refclk_rate(unsigned long rate); -int davinci_simple_set_rate(struct clk *clk, unsigned long rate); extern struct platform_device davinci_wdt_device; extern void davinci_watchdog_reset(struct platform_device *); diff --git a/arch/arm/mach-davinci/da850.c b/arch/arm/mach-davinci/da850.c index 935dbed5c54..133aac40585 100644 --- a/arch/arm/mach-davinci/da850.c +++ b/arch/arm/mach-davinci/da850.c @@ -58,7 +58,6 @@ static struct pll_data pll0_data = { static struct clk ref_clk = { .name = "ref_clk", .rate = DA850_REF_FREQ, - .set_rate = davinci_simple_set_rate, }; static struct clk pll0_clk = { @@ -374,14 +373,6 @@ static struct clk spi1_clk = { .flags = DA850_CLK_ASYNC3, }; -static struct clk sata_clk = { - .name = "sata", - .parent = &pll0_sysclk2, - .lpsc = DA850_LPSC1_SATA, - .gpsc = 1, - .flags = PSC_FORCE, -}; - static struct clk_lookup da850_clks[] = { CLK(NULL, "ref", &ref_clk), CLK(NULL, "pll0", &pll0_clk), @@ -428,7 +419,6 @@ static struct clk_lookup da850_clks[] = { CLK(NULL, "usb20", &usb20_clk), CLK("spi_davinci.0", NULL, &spi0_clk), CLK("spi_davinci.1", NULL, &spi1_clk), - CLK("ahci", NULL, &sata_clk), CLK(NULL, NULL, NULL), }; diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c index 2f7e719636f..fc4e98ea754 100644 --- a/arch/arm/mach-davinci/devices-da8xx.c +++ b/arch/arm/mach-davinci/devices-da8xx.c @@ -14,8 +14,6 @@ #include #include #include -#include -#include #include #include @@ -35,7 +33,6 @@ #define DA8XX_SPI0_BASE 0x01c41000 #define DA830_SPI1_BASE 0x01e12000 #define DA8XX_LCD_CNTRL_BASE 0x01e13000 -#define DA850_SATA_BASE 0x01e18000 #define DA850_MMCSD1_BASE 0x01e1b000 #define DA8XX_EMAC_CPPI_PORT_BASE 0x01e20000 #define DA8XX_EMAC_CPGMACSS_BASE 0x01e22000 @@ -845,126 +842,3 @@ int __init da8xx_register_spi(int instance, struct spi_board_info *info, return platform_device_register(&da8xx_spi_device[instance]); } - -#ifdef CONFIG_ARCH_DAVINCI_DA850 - -static struct resource da850_sata_resources[] = { - { - .start = DA850_SATA_BASE, - .end = DA850_SATA_BASE + 0x1fff, - .flags = IORESOURCE_MEM, - }, - { - .start = IRQ_DA850_SATAINT, - .flags = IORESOURCE_IRQ, - }, -}; - -/* SATA PHY Control Register offset from AHCI base */ -#define SATA_P0PHYCR_REG 0x178 - -#define SATA_PHY_MPY(x) ((x) << 0) -#define SATA_PHY_LOS(x) ((x) << 6) -#define SATA_PHY_RXCDR(x) ((x) << 10) -#define SATA_PHY_RXEQ(x) ((x) << 13) -#define SATA_PHY_TXSWING(x) ((x) << 19) -#define SATA_PHY_ENPLL(x) ((x) << 31) - -static struct clk *da850_sata_clk; -static unsigned long da850_sata_refclkpn; - -/* Supported DA850 SATA crystal frequencies */ -#define KHZ_TO_HZ(freq) ((freq) * 1000) -static unsigned long da850_sata_xtal[] = { - KHZ_TO_HZ(300000), - KHZ_TO_HZ(250000), - 0, /* Reserved */ - KHZ_TO_HZ(187500), - KHZ_TO_HZ(150000), - KHZ_TO_HZ(125000), - KHZ_TO_HZ(120000), - KHZ_TO_HZ(100000), - KHZ_TO_HZ(75000), - KHZ_TO_HZ(60000), -}; - -static int da850_sata_init(struct device *dev, void __iomem *addr) -{ - int i, ret; - unsigned int val; - - da850_sata_clk = clk_get(dev, NULL); - if (IS_ERR(da850_sata_clk)) - return PTR_ERR(da850_sata_clk); - - ret = clk_enable(da850_sata_clk); - if (ret) - goto err0; - - /* Enable SATA clock receiver */ - val = __raw_readl(DA8XX_SYSCFG1_VIRT(DA8XX_PWRDN_REG)); - val &= ~BIT(0); - __raw_writel(val, DA8XX_SYSCFG1_VIRT(DA8XX_PWRDN_REG)); - - /* Get the multiplier needed for 1.5GHz PLL output */ - for (i = 0; i < ARRAY_SIZE(da850_sata_xtal); i++) - if (da850_sata_xtal[i] == da850_sata_refclkpn) - break; - - if (i == ARRAY_SIZE(da850_sata_xtal)) { - ret = -EINVAL; - goto err1; - } - - val = SATA_PHY_MPY(i + 1) | - SATA_PHY_LOS(1) | - SATA_PHY_RXCDR(4) | - SATA_PHY_RXEQ(1) | - SATA_PHY_TXSWING(3) | - SATA_PHY_ENPLL(1); - - __raw_writel(val, addr + SATA_P0PHYCR_REG); - - return 0; - -err1: - clk_disable(da850_sata_clk); -err0: - clk_put(da850_sata_clk); - return ret; -} - -static void da850_sata_exit(struct device *dev) -{ - clk_disable(da850_sata_clk); - clk_put(da850_sata_clk); -} - -static struct ahci_platform_data da850_sata_pdata = { - .init = da850_sata_init, - .exit = da850_sata_exit, -}; - -static u64 da850_sata_dmamask = DMA_BIT_MASK(32); - -static struct platform_device da850_sata_device = { - .name = "ahci", - .id = -1, - .dev = { - .platform_data = &da850_sata_pdata, - .dma_mask = &da850_sata_dmamask, - .coherent_dma_mask = DMA_BIT_MASK(32), - }, - .num_resources = ARRAY_SIZE(da850_sata_resources), - .resource = da850_sata_resources, -}; - -int __init da850_register_sata(unsigned long refclkpn) -{ - da850_sata_refclkpn = refclkpn; - if (!da850_sata_refclkpn) - return -EINVAL; - - return platform_device_register(&da850_sata_device); -} -#endif diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c index 46739c96cd3..1e0f809644b 100644 --- a/arch/arm/mach-davinci/dm646x.c +++ b/arch/arm/mach-davinci/dm646x.c @@ -42,7 +42,6 @@ /* * Device specific clocks */ -#define DM646X_REF_FREQ 27000000 #define DM646X_AUX_FREQ 24000000 static struct pll_data pll1_data = { @@ -57,8 +56,6 @@ static struct pll_data pll2_data = { static struct clk ref_clk = { .name = "ref_clk", - .rate = DM646X_REF_FREQ, - .set_rate = davinci_simple_set_rate, }; static struct clk aux_clkin = { @@ -904,6 +901,7 @@ int __init dm646x_init_edma(struct edma_rsv_info *rsv) void __init dm646x_init(void) { + dm646x_board_setup_refclk(&ref_clk); davinci_common_init(&davinci_soc_info_dm646x); } diff --git a/arch/arm/mach-davinci/include/mach/da8xx.h b/arch/arm/mach-davinci/include/mach/da8xx.h index eaca7d8b9d6..ad64da713fc 100644 --- a/arch/arm/mach-davinci/include/mach/da8xx.h +++ b/arch/arm/mach-davinci/include/mach/da8xx.h @@ -57,7 +57,6 @@ extern unsigned int da850_max_speed; #define DA8XX_SYSCFG1_BASE (IO_PHYS + 0x22C000) #define DA8XX_SYSCFG1_VIRT(x) (da8xx_syscfg1_base + (x)) #define DA8XX_DEEPSLEEP_REG 0x8 -#define DA8XX_PWRDN_REG 0x18 #define DA8XX_PSC0_BASE 0x01c10000 #define DA8XX_PLL0_BASE 0x01c11000 @@ -90,7 +89,6 @@ int da850_register_cpufreq(char *async_clk); int da8xx_register_cpuidle(void); void __iomem * __init da8xx_get_mem_ctlr(void); int da850_register_pm(struct platform_device *pdev); -int __init da850_register_sata(unsigned long refclkpn); extern struct platform_device da8xx_serial_device; extern struct emac_platform_data da8xx_emac_pdata; diff --git a/arch/arm/mach-davinci/include/mach/dm646x.h b/arch/arm/mach-davinci/include/mach/dm646x.h index 2a00fe5ac25..7a27f3f1391 100644 --- a/arch/arm/mach-davinci/include/mach/dm646x.h +++ b/arch/arm/mach-davinci/include/mach/dm646x.h @@ -15,6 +15,7 @@ #include #include #include +#include #include #define DM646X_EMAC_BASE (0x01C80000) @@ -30,6 +31,7 @@ void __init dm646x_init(void); void __init dm646x_init_mcasp0(struct snd_platform_data *pdata); void __init dm646x_init_mcasp1(struct snd_platform_data *pdata); +void __init dm646x_board_setup_refclk(struct clk *clk); int __init dm646x_init_edma(struct edma_rsv_info *rsv); void dm646x_video_init(void); diff --git a/arch/arm/mach-davinci/include/mach/psc.h b/arch/arm/mach-davinci/include/mach/psc.h index 47fd0bc3d3e..a47e6f29206 100644 --- a/arch/arm/mach-davinci/include/mach/psc.h +++ b/arch/arm/mach-davinci/include/mach/psc.h @@ -30,47 +30,47 @@ #define DAVINCI_PWR_SLEEP_CNTRL_BASE 0x01C41000 /* Power and Sleep Controller (PSC) Domains */ -#define DAVINCI_GPSC_ARMDOMAIN 0 -#define DAVINCI_GPSC_DSPDOMAIN 1 +#define DAVINCI_GPSC_ARMDOMAIN 0 +#define DAVINCI_GPSC_DSPDOMAIN 1 -#define DAVINCI_LPSC_VPSSMSTR 0 -#define DAVINCI_LPSC_VPSSSLV 1 -#define DAVINCI_LPSC_TPCC 2 -#define DAVINCI_LPSC_TPTC0 3 -#define DAVINCI_LPSC_TPTC1 4 -#define DAVINCI_LPSC_EMAC 5 -#define DAVINCI_LPSC_EMAC_WRAPPER 6 -#define DAVINCI_LPSC_USB 9 -#define DAVINCI_LPSC_ATA 10 -#define DAVINCI_LPSC_VLYNQ 11 -#define DAVINCI_LPSC_UHPI 12 -#define DAVINCI_LPSC_DDR_EMIF 13 -#define DAVINCI_LPSC_AEMIF 14 -#define DAVINCI_LPSC_MMC_SD 15 -#define DAVINCI_LPSC_McBSP 17 -#define DAVINCI_LPSC_I2C 18 -#define DAVINCI_LPSC_UART0 19 -#define DAVINCI_LPSC_UART1 20 -#define DAVINCI_LPSC_UART2 21 -#define DAVINCI_LPSC_SPI 22 -#define DAVINCI_LPSC_PWM0 23 -#define DAVINCI_LPSC_PWM1 24 -#define DAVINCI_LPSC_PWM2 25 -#define DAVINCI_LPSC_GPIO 26 -#define DAVINCI_LPSC_TIMER0 27 -#define DAVINCI_LPSC_TIMER1 28 -#define DAVINCI_LPSC_TIMER2 29 -#define DAVINCI_LPSC_SYSTEM_SUBSYS 30 -#define DAVINCI_LPSC_ARM 31 -#define DAVINCI_LPSC_SCR2 32 -#define DAVINCI_LPSC_SCR3 33 -#define DAVINCI_LPSC_SCR4 34 -#define DAVINCI_LPSC_CROSSBAR 35 -#define DAVINCI_LPSC_CFG27 36 -#define DAVINCI_LPSC_CFG3 37 -#define DAVINCI_LPSC_CFG5 38 -#define DAVINCI_LPSC_GEM 39 -#define DAVINCI_LPSC_IMCOP 40 +#define DAVINCI_LPSC_VPSSMSTR 0 +#define DAVINCI_LPSC_VPSSSLV 1 +#define DAVINCI_LPSC_TPCC 2 +#define DAVINCI_LPSC_TPTC0 3 +#define DAVINCI_LPSC_TPTC1 4 +#define DAVINCI_LPSC_EMAC 5 +#define DAVINCI_LPSC_EMAC_WRAPPER 6 +#define DAVINCI_LPSC_USB 9 +#define DAVINCI_LPSC_ATA 10 +#define DAVINCI_LPSC_VLYNQ 11 +#define DAVINCI_LPSC_UHPI 12 +#define DAVINCI_LPSC_DDR_EMIF 13 +#define DAVINCI_LPSC_AEMIF 14 +#define DAVINCI_LPSC_MMC_SD 15 +#define DAVINCI_LPSC_McBSP 17 +#define DAVINCI_LPSC_I2C 18 +#define DAVINCI_LPSC_UART0 19 +#define DAVINCI_LPSC_UART1 20 +#define DAVINCI_LPSC_UART2 21 +#define DAVINCI_LPSC_SPI 22 +#define DAVINCI_LPSC_PWM0 23 +#define DAVINCI_LPSC_PWM1 24 +#define DAVINCI_LPSC_PWM2 25 +#define DAVINCI_LPSC_GPIO 26 +#define DAVINCI_LPSC_TIMER0 27 +#define DAVINCI_LPSC_TIMER1 28 +#define DAVINCI_LPSC_TIMER2 29 +#define DAVINCI_LPSC_SYSTEM_SUBSYS 30 +#define DAVINCI_LPSC_ARM 31 +#define DAVINCI_LPSC_SCR2 32 +#define DAVINCI_LPSC_SCR3 33 +#define DAVINCI_LPSC_SCR4 34 +#define DAVINCI_LPSC_CROSSBAR 35 +#define DAVINCI_LPSC_CFG27 36 +#define DAVINCI_LPSC_CFG3 37 +#define DAVINCI_LPSC_CFG5 38 +#define DAVINCI_LPSC_GEM 39 +#define DAVINCI_LPSC_IMCOP 40 #define DM355_LPSC_TIMER3 5 #define DM355_LPSC_SPI1 6 @@ -102,39 +102,39 @@ /* * LPSC Assignments */ -#define DM646X_LPSC_ARM 0 -#define DM646X_LPSC_C64X_CPU 1 -#define DM646X_LPSC_HDVICP0 2 -#define DM646X_LPSC_HDVICP1 3 -#define DM646X_LPSC_TPCC 4 -#define DM646X_LPSC_TPTC0 5 -#define DM646X_LPSC_TPTC1 6 -#define DM646X_LPSC_TPTC2 7 -#define DM646X_LPSC_TPTC3 8 -#define DM646X_LPSC_PCI 13 -#define DM646X_LPSC_EMAC 14 -#define DM646X_LPSC_VDCE 15 -#define DM646X_LPSC_VPSSMSTR 16 -#define DM646X_LPSC_VPSSSLV 17 -#define DM646X_LPSC_TSIF0 18 -#define DM646X_LPSC_TSIF1 19 -#define DM646X_LPSC_DDR_EMIF 20 -#define DM646X_LPSC_AEMIF 21 -#define DM646X_LPSC_McASP0 22 -#define DM646X_LPSC_McASP1 23 -#define DM646X_LPSC_CRGEN0 24 -#define DM646X_LPSC_CRGEN1 25 -#define DM646X_LPSC_UART0 26 -#define DM646X_LPSC_UART1 27 -#define DM646X_LPSC_UART2 28 -#define DM646X_LPSC_PWM0 29 -#define DM646X_LPSC_PWM1 30 -#define DM646X_LPSC_I2C 31 -#define DM646X_LPSC_SPI 32 -#define DM646X_LPSC_GPIO 33 -#define DM646X_LPSC_TIMER0 34 -#define DM646X_LPSC_TIMER1 35 -#define DM646X_LPSC_ARM_INTC 45 +#define DM646X_LPSC_ARM 0 +#define DM646X_LPSC_C64X_CPU 1 +#define DM646X_LPSC_HDVICP0 2 +#define DM646X_LPSC_HDVICP1 3 +#define DM646X_LPSC_TPCC 4 +#define DM646X_LPSC_TPTC0 5 +#define DM646X_LPSC_TPTC1 6 +#define DM646X_LPSC_TPTC2 7 +#define DM646X_LPSC_TPTC3 8 +#define DM646X_LPSC_PCI 13 +#define DM646X_LPSC_EMAC 14 +#define DM646X_LPSC_VDCE 15 +#define DM646X_LPSC_VPSSMSTR 16 +#define DM646X_LPSC_VPSSSLV 17 +#define DM646X_LPSC_TSIF0 18 +#define DM646X_LPSC_TSIF1 19 +#define DM646X_LPSC_DDR_EMIF 20 +#define DM646X_LPSC_AEMIF 21 +#define DM646X_LPSC_McASP0 22 +#define DM646X_LPSC_McASP1 23 +#define DM646X_LPSC_CRGEN0 24 +#define DM646X_LPSC_CRGEN1 25 +#define DM646X_LPSC_UART0 26 +#define DM646X_LPSC_UART1 27 +#define DM646X_LPSC_UART2 28 +#define DM646X_LPSC_PWM0 29 +#define DM646X_LPSC_PWM1 30 +#define DM646X_LPSC_I2C 31 +#define DM646X_LPSC_SPI 32 +#define DM646X_LPSC_GPIO 33 +#define DM646X_LPSC_TIMER0 34 +#define DM646X_LPSC_TIMER1 35 +#define DM646X_LPSC_ARM_INTC 45 /* PSC0 defines */ #define DA8XX_LPSC0_TPCC 0 @@ -243,14 +243,13 @@ #define PSC_STATE_DISABLE 2 #define PSC_STATE_ENABLE 3 -#define MDSTAT_STATE_MASK 0x1f -#define MDCTL_FORCE BIT(31) +#define MDSTAT_STATE_MASK 0x1f #ifndef __ASSEMBLER__ extern int davinci_psc_is_clk_active(unsigned int ctlr, unsigned int id); extern void davinci_psc_config(unsigned int domain, unsigned int ctlr, - unsigned int id, bool enable, u32 flags); + unsigned int id, u32 next_state); #endif diff --git a/arch/arm/mach-davinci/psc.c b/arch/arm/mach-davinci/psc.c index 1fb6bdff38c..a4158040070 100644 --- a/arch/arm/mach-davinci/psc.c +++ b/arch/arm/mach-davinci/psc.c @@ -25,8 +25,6 @@ #include #include -#include "clock.h" - /* Return nonzero iff the domain's clock is active */ int __init davinci_psc_is_clk_active(unsigned int ctlr, unsigned int id) { @@ -50,12 +48,11 @@ int __init davinci_psc_is_clk_active(unsigned int ctlr, unsigned int id) /* Enable or disable a PSC domain */ void davinci_psc_config(unsigned int domain, unsigned int ctlr, - unsigned int id, bool enable, u32 flags) + unsigned int id, u32 next_state) { u32 epcpr, ptcmd, ptstat, pdstat, pdctl1, mdstat, mdctl; void __iomem *psc_base; struct davinci_soc_info *soc_info = &davinci_soc_info; - u32 next_state = PSC_STATE_ENABLE; if (!soc_info->psc_bases || (ctlr >= soc_info->psc_bases_num)) { pr_warning("PSC: Bad psc data: 0x%x[%d]\n", @@ -65,18 +62,9 @@ void davinci_psc_config(unsigned int domain, unsigned int ctlr, psc_base = ioremap(soc_info->psc_bases[ctlr], SZ_4K); - if (!enable) { - if (flags & PSC_SWRSTDISABLE) - next_state = PSC_STATE_SWRSTDISABLE; - else - next_state = PSC_STATE_DISABLE; - } - mdctl = __raw_readl(psc_base + MDCTL + 4 * id); mdctl &= ~MDSTAT_STATE_MASK; mdctl |= next_state; - if (flags & PSC_FORCE) - mdctl |= MDCTL_FORCE; __raw_writel(mdctl, psc_base + MDCTL + 4 * id); pdstat = __raw_readl(psc_base + PDSTAT); diff --git a/arch/arm/mach-dove/include/mach/hardware.h b/arch/arm/mach-dove/include/mach/hardware.h index f1368b9a8ec..32b0826e787 100644 --- a/arch/arm/mach-dove/include/mach/hardware.h +++ b/arch/arm/mach-dove/include/mach/hardware.h @@ -11,6 +11,13 @@ #include "dove.h" +#define pcibios_assign_all_busses() 1 + +#define PCIBIOS_MIN_IO 0x1000 +#define PCIBIOS_MIN_MEM 0x01000000 +#define PCIMEM_BASE DOVE_PCIE0_MEM_PHYS_BASE + + /* Macros below are required for compatibility with PXA AC'97 driver. */ #define __REG(x) (*((volatile u32 *)((x) - DOVE_SB_REGS_PHYS_BASE + \ DOVE_SB_REGS_VIRT_BASE))) diff --git a/arch/arm/mach-dove/pcie.c b/arch/arm/mach-dove/pcie.c index c2f1c4767f2..502d1ca2f4b 100644 --- a/arch/arm/mach-dove/pcie.c +++ b/arch/arm/mach-dove/pcie.c @@ -11,7 +11,6 @@ #include #include #include -#include