Commit Graph

300295 Commits

Author SHA1 Message Date
Arnd Bergmann
deb88cc3c6 Merge branch 'drivers/mmc' into next/dt2
Changes in the dt2 branch move stuff around that gets changed
in the drivers/mmc branch. I chose a non-obvious resolution by
adding the new bus-width property into all the tegra sdhci device
nodes.

Conflicts:
	arch/arm/boot/dts/tegra-cardhu.dts
	arch/arm/boot/dts/tegra-harmony.dts
	arch/arm/boot/dts/tegra-ventana.dts

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-05-15 13:44:11 +02:00
Arnd Bergmann
7f217794ff mmc: dt: Consolidate DT bindings
This patch unifies the current DT MMC bindings documentation and code,
adds generic MMC DT bindings documentation, and updates .dts files for
consistency.

[cjb: typo fixes, addition of max-frequency property]
Signed-off-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-05-15 13:29:42 +02:00
Arnd Bergmann
ecf1b31834 Merge branch 'for-3.5/dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra into for-next
Stephen Warren <swarren@wwwdotorg.org> writes:
  This branch is based on the merge of the following branches from the
  Tegra repo, which are all already pulled into arm-soc:

  for-3.5/tegra30-audio
  for-3.5/usb-ulpi
  for-3.5/dt
  ... which are all based on for-3.5/gpio-pinmux

* 'for-3.5/dt2' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra:
  ARM: dt: tegra: invert status=disable vs status=okay
  ARM: dt: tegra: consistent basic property ordering
  ARM: dt: tegra: sort nodes based on bus order
  ARM: dt: tegra: remove duplicate device_type property
  ARM: dt: tegra: consistenly use lower-case for hex constants
  ARM: dt: tegra: format regs properties consistently
  ARM: dt: tegra: gpio comment cleanup
  ARM: dt: tegra: remove unnecessary unit addresses
  ARM: dt: tegra: whitespace cleanup
  ARM: dt: tegra cardhu: fix typo in SDHCI node name
  ARM: dt: tegra: cardhu: register core regulator tps62361
  ARM: dt: tegra30.dtsi: Add SMMU node
  ARM: dt: tegra20.dtsi: Add GART node
  ARM: dt: tegra30.dtsi: Add Memory Controller(MC) nodes
  ARM: dt: tegra20.dtsi: Add Memory Controller(MC) nodes
  ARM: dt: tegra: Add device tree support for AHB

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-05-14 22:16:17 +02:00
Arnd Bergmann
e6511df4f2 Merge branch 'omap/dt-missed-3.4' into drivers/mmc
The omap/dt branch adds a few instances of mmc device nodes that
need to get changed to use the common bindings. Pull that into
a new branch so we can apply the patch in a single run.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-05-14 21:46:01 +02:00
Stephen Warren
2a5fdc9add ARM: dt: tegra: invert status=disable vs status=okay
In tegra*.dtsi, set status="disable" for all HW modules that the board
design may choose not to use. Update all boards to specifically enable
any of those modules that are useful by setting status="okay".

This makes board files say which features they do use, rather than which
they don't, which feels more logical. It also makes the .dts files
slightly smaller, at least for existing content.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:23 -06:00
Stephen Warren
2eaab06ea6 ARM: dt: tegra: consistent basic property ordering
Put properties in order compatible, reg, interrupts, then anything else
the node has.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:19 -06:00
Stephen Warren
c04abb3a07 ARM: dt: tegra: sort nodes based on bus order
Sort the nodes according to the following rules:
* First, any overrides for properties or nodes created by included files,
  in the order they appeared in the include file.
* Second, any nodes with a reg property, in numerical order.
* Third, any nodes without a reg property, in alphabetical order of node
  name.

The second sorting rule at least will probably help if/when we need to
explicitly insert nodes for the various busses in Tegra; that will just
be an indentation change rather than also a node re-ordering.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:15 -06:00
Stephen Warren
2f32b1faa8 ARM: dt: tegra: remove duplicate device_type property
It's already specified in skeleton.dtsi, included via tegra20.dtsi.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:12 -06:00
Stephen Warren
ba04c289bc ARM: dt: tegra: consistenly use lower-case for hex constants
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:09 -06:00
Stephen Warren
5ff488875b ARM: dt: tegra: format regs properties consistently
Place each reg "entry" on its own line, and wrap the whole list in
<> rather than each individual entry.

The convention chosen here is slightly arbitrary, but is not consistent
throughout all Tegra files.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:06 -06:00
Stephen Warren
c44e438a7f ARM: dt: tegra: gpio comment cleanup
Ensure that all Tegraa GPIO specifiers contain a comment indicating which
GPIO name the number refers to.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:03 -06:00
Stephen Warren
f9eb26a4e1 ARM: dt: tegra: remove unnecessary unit addresses
DT node names only need to include the unit address if it's required to
make the node name unique. Remove the unnecessary unit addresses.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:55:00 -06:00
Stephen Warren
95decf8474 ARM: dt: tegra: whitespace cleanup
Consistently don't place a space after < or before >.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Olof Johansson <olof@lixom.net>
2012-05-14 10:54:55 -06:00
Stephen Warren
1dfebb426c ARM: dt: tegra cardhu: fix typo in SDHCI node name
Cardhu's eMMC controller is on sdhci@78000600, not sdhci@78000400.
Fix the typo. This roughly doubles the IO performance, since the
support-8bit property actually takes effect.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Cc: stable@kernel.org # v3.4
2012-05-14 10:53:01 -06:00
Laxman Dewangan
331da58ca1 ARM: dt: tegra: cardhu: register core regulator tps62361
Add device info for the core regulator tps62360 in tegra-cardhu
dts file.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
[swarren: fixed node name to reflect actual device type]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2012-05-14 10:52:52 -06:00
hdoyu@nvidia.com
54174a33da ARM: dt: tegra30.dtsi: Add SMMU node
Add a node for the Tegra30 SMMU

Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2012-05-14 10:52:00 -06:00
hdoyu@nvidia.com
6a943e0e13 ARM: dt: tegra20.dtsi: Add GART node
Add a node for the Tegra20 GART

Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2012-05-14 10:51:55 -06:00
hdoyu@nvidia.com
ecf4374273 ARM: dt: tegra30.dtsi: Add Memory Controller(MC) nodes
Add Tegra MC(Memory Controller) nodes for tegra30.dtsi.

Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2012-05-14 10:51:51 -06:00
hdoyu@nvidia.com
4a82f2b38e ARM: dt: tegra20.dtsi: Add Memory Controller(MC) nodes
Add Tegra MC(Memory Controller) nodes for tegra20.dtsi.

Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2012-05-14 10:51:46 -06:00
Hiroshi DOYU
7868a9bcac ARM: dt: tegra: Add device tree support for AHB
Add AHB entry for tegra20/30.

Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2012-05-14 10:51:28 -06:00
Stephen Warren
4b7e870590 Merge branch 'for-3.5/dt' into for-3.5/dt2-new 2012-05-14 10:48:24 -06:00
Stephen Warren
d9e33b593b Merge branch 'for-3.5/usb-ulpi' into for-3.5/dt2-new 2012-05-14 10:48:21 -06:00
Arnd Bergmann
304ea74770 Merge branch 'imx/dt/for-3.5' of git://git.linaro.org/people/shawnguo/linux-2.6.git into next/dt2
Shawn Guo <shawn.guo@linaro.org> writes:

  I chose to base it on Sascha's imx-common-clk series than -rc, because
  otherwise it will keep patching clock file that has been removed by
  imx-common-clk series.  It also depends on imx-pinctrl pull-request
  I just sent to be functional.

  Note: when imx-common-clk and imx-pinctrl get merged together, the
  following files will have conflicts.  But the conflicts should not be
  so hard to resolve.

[arnd: resolved those merge conflicts by pulling pinctrl branch]

* imx/dt: (24 commits)
  ARM: dts: imx53-qsb: enable audio support
  ARM: dts: imx51-babbage: enable audio support
  ARM: imx: add audio codec clk lookup for imx53-qsb
  ARM: imx: add audmux pad setting for imx51-babbage
  ARM: imx: add more imx5 ssi clocks
  ARM: dts: imx53-qsb: Add Dialog DA9053 PMIC support
  ARM: dts: imx6q-sabrelite: add serial2 pinctrl support
  ARM: dts: imx6q-sabrelite: add sound device imx6q-sabrelite-sgtl5000
  ARM: imx6q_sabrelite: clk_register_clkdev cko1 for sgtl5000
  ARM: imx6q: add ssi1_ipg clk_lookup
  ARM: dts: imx6q-sabrelite: add audmux pinctrl support
  ARM: dts: imx6q-sabrelite: add i2c1 pinctrl support
  ARM: dts: imx6q-sabrelite: add audmux device
  ARM: dts: imx6q-sabrelite: add ssi device
  ARM: dts: imx6q-arm2: add pinctrl state for usdhc
  ARM: imx6: Add UART2 for low-level debug
  ARM: imx6q: register phy fixup only when CONFIG_PHYLIB is enabled
  ARM: imx6q: move imx6q_sabrelite specific code to a dedicated function
  ARM: dts: imx6q-sabrelite: Add SPI NOR support
  ARM: dts: Add basic support for imx6q-sabresd
  ...

Pulls in imx/pinctrl and imx/clock as dependencies.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-05-14 15:28:19 +02:00
Arnd Bergmann
6b204283f2 Merge branch 'imx/pinctrl' into imx/dt
Conflicts:
	drivers/mmc/host/sdhci-esdhc-imx.c
	drivers/net/ethernet/freescale/fec.c
	drivers/spi/spi-imx.c
	drivers/tty/serial/imx.c

This resolves some simply but annoying conflicts.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2012-05-14 15:23:13 +02:00
Olof Johansson
e29402edf8 Merge branch 'mxs/dt/for-3.5' of git://git.linaro.org/people/shawnguo/linux-2.6 into next/dt2
* 'mxs/dt/for-3.5' of git://git.linaro.org/people/shawnguo/linux-2.6: (51 commits)
  ARM: dts: enable audio support for imx28-evk
  ARM: dts: enable i2c device for imx28-evk
  i2c: mxs: add device tree probe support
  ARM: dts: enable mmc for imx28-evk
  ARM: dts: enable mmc for imx23-evk
  mmc: mxs-mmc: add device tree support
  mmc: mxs-mmc: copy wp_gpio in struct mxs_mmc_host
  mmc: mxs-mmc: have dma_channel than dma_res in mxs_mmc_host
  mmc: mxs-mmc: use devm_* helper to make cleanup simpler
  mmc: mxs-mmc: move header from mach into linux folder
  mmc: mxs-mmc: get rid of the use of cpu_is_xxx
  mmc: mxs-mmc: let ssp_is_old take host as parameter
  mmc: mxs-mmc: use global stmp_device functionality
  ARM: mxs: add gpio support for device tree boot
  gpio/mxs: add device tree probe
  gpio/mxs: get rid of the use of cpu_is_xxx
  gpio/mxs: use devm_* helpers to make error handling simple
  ARM: mxs: add mxs-dma dt support
  ARM: mxs: do not add dma device by default
  dma: mxs-dma: add device tree probe support
  ...
2012-05-12 22:33:24 -07:00
Shawn Guo
530f1d4160 ARM: dts: enable audio support for imx28-evk
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2012-05-13 08:27:47 +08:00
Shawn Guo
2a96e3912b ARM: dts: enable i2c device for imx28-evk
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2012-05-13 08:27:45 +08:00
Shawn Guo
b237866848 i2c: mxs: add device tree probe support
Add device tree probe support for i2c-mxs driver.  So far, it's only
been tested on imx28.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
2012-05-13 08:27:44 +08:00
Shawn Guo
35d23047f8 ARM: dts: enable mmc for imx28-evk
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2012-05-13 08:27:43 +08:00
Shawn Guo
be1ce30869 ARM: dts: enable mmc for imx23-evk
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2012-05-13 08:27:40 +08:00
Shawn Guo
6de4d817aa mmc: mxs-mmc: add device tree support
It adds device tree probe support for mxs-mmc driver.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:27:37 +08:00
Shawn Guo
31b0ff5e73 mmc: mxs-mmc: copy wp_gpio in struct mxs_mmc_host
Copy wp_gpio from platform_data into struct mxs_mmc_host, so that
the use of platform_data can be limited in probe function, which
will ease the device tree probe.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:58 +08:00
Shawn Guo
b60188c820 mmc: mxs-mmc: have dma_channel than dma_res in mxs_mmc_host
It replaces dma_res with dma_channel in struct mxs_mmc_host, so that
the device tree support will be a little easier, since dma channel
can not be retrieved from "struct resource *dma_res".

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:51 +08:00
Shawn Guo
df06bfc724 mmc: mxs-mmc: use devm_* helper to make cleanup simpler
Use devm_request_and_ioremap and devm_request_irq helpers to clean up
the code a little bit.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:45 +08:00
Shawn Guo
81f38ee8e6 mmc: mxs-mmc: move header from mach into linux folder
Rename arch/arm/mach-mxs/include/mach/mmc.h to
include/linux/mmc/mxs-mmc.h, so that mxs-mmc driver becomes
<mach/*> inclusion free.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:38 +08:00
Shawn Guo
ef9b4d3996 mmc: mxs-mmc: get rid of the use of cpu_is_xxx
The register HW_SSP_VERSION is broken for ssp version detection,
as the address of the register is different between imx23 and imx28.
Let's use platform_device_id to detect the device, so that the use
of cpu_is_xxx can be removed.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:31 +08:00
Shawn Guo
e0bf141db2 mmc: mxs-mmc: let ssp_is_old take host as parameter
Let macro ssp_is_old take host as parameter to make the code easy
to read.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:25 +08:00
Shawn Guo
70e6020688 mmc: mxs-mmc: use global stmp_device functionality
Use global stmp_device functionality to reduce mach-dependency.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Chris Ball <cjb@laptop.org>
2012-05-13 08:05:07 +08:00
Shawn Guo
ce4c6f9b59 ARM: mxs: add gpio support for device tree boot
It adds gpio support for device tree boot.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
2012-05-12 13:32:19 +08:00
Shawn Guo
4052d45e80 gpio/mxs: add device tree probe
It adds device tree probe for gpio-mxs driver.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
2012-05-12 13:32:19 +08:00
Shawn Guo
164387d2b4 gpio/mxs: get rid of the use of cpu_is_xxx
It removes the use of cpu_is_xxx from gpio-mxs driver and instead use
platform_device_id to identify the device.  Accordingly, mxs platform
code is changed to register gpio device with different names, and
the registeration are done in soc specific initialization functions
now, so postcore_initcall(mxs_add_mxs_gpio) gets removed.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
2012-05-12 13:32:18 +08:00
Shawn Guo
940a4f7b51 gpio/mxs: use devm_* helpers to make error handling simple
It uses devm_* helpers to make the error handling of probe clean
and simple.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
2012-05-12 13:32:18 +08:00
Dong Aisheng
84f3570a96 ARM: mxs: add mxs-dma dt support
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Huang Shijie <b32955@freescale.com>
Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
2012-05-12 13:32:18 +08:00
Dong Aisheng
cb1be3c73d ARM: mxs: do not add dma device by default
This will cause conflict when dt is enabled.
So let each platform add dma devices respectively.

Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Huang Shijie <b32955@freescale.com>
Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
2012-05-12 13:32:18 +08:00
Dong Aisheng
90c9abc5b7 dma: mxs-dma: add device tree probe support
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Rob Landley <rob@landley.net>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Huang Shijie <b32955@freescale.com>
Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
2012-05-12 13:32:18 +08:00
Shawn Guo
8c92013643 dma: mxs-dma: make platform_device_id more generic
Rewrite mxs_dma_is_apbh and mxs_dma_is_apbx in order to support
other SoCs like imx6q and reform the platform_device_id for the
better further dt support.

Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Huang Shijie <b32955@freescale.com>
Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
2012-05-12 13:32:17 +08:00
Shawn Guo
bb11fb63fc dma: mxs-dma: let dma_is_apbh and apbh_is_old take parameter
Let macros dma_is_apbh and apbh_is_old take mxs_dma as parameter
to make the code easy to read.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2012-05-12 13:32:17 +08:00
Dong Aisheng
f5b7efccdb dma: mxs-dma: use global stmp_device functionality
This can get rid of the mach-dependency.

Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Huang Shijie <b32955@freescale.com>
Signed-off-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
2012-05-12 13:32:17 +08:00
Shawn Guo
6c4d4efb9d ARM: mxs: always build in device tree support
As the ultimate for mxs platform is to convert over to device tree,
let's start always building in device tree support for the platform.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
2012-05-12 13:32:17 +08:00
Shawn Guo
2954ff395b ARM: mxs: add initial device tree support for imx23-evk board
It adds initial device tree support for imx23-evk board, and only
serial console is enabled.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Marek Vasut <marex@denx.de>
2012-05-12 13:32:17 +08:00