Commit graph

505880 commits

Author SHA1 Message Date
Arnd Bergmann 9705feacb7 The i.MX device tree updates for 4.1:
- Convert GPC controller to use stacked interrupt domains
  - Add power domain descriptions for i.MX6 platforms
  - Improve i.MX25 pin function defines
  - Disable PWM devices in <soc>.dtsi by default and enable it at board
    level dts where the device is actually available.
  - Define labels for SNVS RTC device to ease the board description,
    where an external RTC is available.
  - Add dr_mode host setting to all i.MX host-only USB instances
  - Support Miscellaneous System Control Module (MSCM) for VF610
  - Add initial i.MX6SL WaRP Board support
  - Add i.MX6SX SDB revision B board support
  - A bunch of imx28-apf28dev board updates, including gpio polarity
    correction and CAN, AUART device support.
  - SolidRun iMX6 platform updates: dual-license of GPLv2/X11, PWM
    setup, PCF8523 RTC, GPIO key and SGTL5000 audio support.
  - A number of random device additions for boards: SPI and CAN for
    vf-colibri, MAX7310 GPIO expander for imx6qdl-sabreauto and LCD
    support for imx25-pdk.
 
 Note: Branch imx/cleanup was merged as the base to solve conflict on
 imx25 iomux header.  Branch imx/soc was merged as the base to solve
 conflict on arch/arm/mach-imx/gpc.c.  And Jason Cooper's irqchip/vybrid
 branch was pulled into the base as a run-time dependency.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJVGUnPAAoJEFBXWFqHsHzOfU4H/2YtayumlbwhySiP7pAD0fty
 qmAUgJqZxvfS+Sxo1qnm5FEQrNS0bMswB1htWLKEJuPEe9kf+/iDw7g4SWXx3Ul0
 W2Lkk5jJl32P+SWCg+8BQKk46Tp3FASOeiA4TTCcQmjFJ9h6W5z/cY8zaEH/J7eH
 QRFC62A8NCvS3rlnyGumCpBtcDnWNV/LwSmGMtPOAmFrMmXpZOKRCArA3AoP50ml
 L6wPI+ZYGnn4PimwX9Fea5mBgecNdLiTEziBQYTsqeiE8vtU5AAqnmjYXEwAvM/f
 MeCxBcdDzwrsa5z/WfpOVw1ERMokMSBjJ/nYkRHIgMzDwRYTYW+M69mOIpyy+iM=
 =gKJl
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/late

Pull "The i.MX device tree updates for 4.1" from Shawn Guo:

 - Convert GPC controller to use stacked interrupt domains
 - Add power domain descriptions for i.MX6 platforms
 - Improve i.MX25 pin function defines
 - Disable PWM devices in <soc>.dtsi by default and enable it at board
   level dts where the device is actually available.
 - Define labels for SNVS RTC device to ease the board description,
   where an external RTC is available.
 - Add dr_mode host setting to all i.MX host-only USB instances
 - Support Miscellaneous System Control Module (MSCM) for VF610
 - Add initial i.MX6SL WaRP Board support
 - Add i.MX6SX SDB revision B board support
 - A bunch of imx28-apf28dev board updates, including gpio polarity
   correction and CAN, AUART device support.
 - SolidRun iMX6 platform updates: dual-license of GPLv2/X11, PWM
   setup, PCF8523 RTC, GPIO key and SGTL5000 audio support.
 - A number of random device additions for boards: SPI and CAN for
   vf-colibri, MAX7310 GPIO expander for imx6qdl-sabreauto and LCD
   support for imx25-pdk.

Note: Branch imx/cleanup was merged as the base to solve conflict on
imx25 iomux header.  Branch imx/soc was merged as the base to solve
conflict on arch/arm/mach-imx/gpc.c.  And Jason Cooper's irqchip/vybrid
branch was pulled into the base as a run-time dependency.

* tag 'imx-dt-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (69 commits)
  ARM: dts: hummingboard: add sgtl5000 support for Hummingboard Pro
  ARM: dts: imx25-pinfunc: Add several pinfunctions
  ARM: dts: vf610: fix missing irqs
  ARM: dts: cubox: Map gpio-keys to gpio3 8
  ARM: dts: hummingboard: Setup pwm lines
  ARM: dts: hummingboard: enable PCF8523 RTC support
  ARM: dts: Re-license SolidRun iMX6 platform DT GPL v2/X11
  ARM: dts: imx28: add alternative pinmuxing for spi3
  ARM: dts: imx6sx: Add label snvs_rtc
  ARM: dts: imx6sl: Add label snvs_rtc
  ARM: imx6: Warn when an old DT is detected
  ARM: imx6: Allow GPC interrupts affinity to be changed
  ARM: imx6qdl-sabreauto.dtsi: add max7310 support
  ARM: dts: imx6sl-warp: Add BCM4330 support
  ARM: dts: imx28-apf28dev: add wakeup function to user button
  ARM: dts: imx28-apf28dev: fix user button polarity
  ARM: dts: imx25-pinfunc: remove input values for pinfuncs without input register
  ARM: dts: vf610: add Miscellaneous System Control Module (MSCM)
  ARM: dts: imx6sl-warp: Pass 'bus-width' property
  ARM: dts: imx6qdl: disable PWMs by default
  ...
2015-04-14 01:18:44 +02:00
Arnd Bergmann 643ee0d50a Clean-up for omap PRCM (Power Reset Clock Management) and interconnects
from Tero Kristo <t-kristo@ti.com>.
 
 This sets gets us into a better position for further clean-up:
 
 - Gets PRCM code closer to being device drivers
 
 - Allows to move the remainig clock code to drivers/clk for v4.2
 
 - Starts enforcing interconnect hierarchy in the SoC specific .dts
   files to enforce device drivers are only accesing registers in
   the related hardware module
 
 This patchset has seen quite a few revisions but did not come into
 mergeable shape until recently. As other patchsets for clock specific
 device drivers depend on this, it would be good to get this merged
 although it's a bit late for the v4.1 merge window.
 
 Note that as the device entries in the .dts files are moved around,
 this is based on earlier non-urgent fixes to avoid a non-trivial
 merge conflict.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJVHyCWAAoJEBvUPslcq6VzCqkP/ROa+bzeENVzIquX1we6Jbdo
 vYtx5adyUKRw0+U3rWNpBCTqC4wuUU4ce/YM9gd1Gj2Zr6Dk0uJpqlM4Q1VT+XyZ
 fe9vi31LBiQKVDk7qbWQfrIdPeD9KsEhL3L0bncQxHPnx+5FdSEjsCWapm1JMp2d
 P7PjQ0o0v+GFURYCefcF8X513RXgbDFMw9Z4c+JhkCl1oVsGtb7Y+SIy6GVujzDK
 mz288aTmBKwL82UqaeoG73tIpxMUwOY0XqkkDgsQoZA7GWv4n1IiHiiTNUbdrAQH
 Ua4g7WmiKNgz6IwoKejdlUxujJhGlU6IpRzAaYydXSSo5RL8qR1XL0Q1IPEg/H3L
 lh6eiWj1hxGkoQWYA+0ixiEzW28xB43eAHtJwKOQWdLkBiOM/RSG42ahYvXvnLC6
 KUjZFOIqGjgZIZINLHNtHs0lgQ4C0If0cq4KYswvYf7reSDP5C/06C2Nzw8592y3
 wl0EBkyN6OIVuEVRifzQdTm7r5exBcF4f5DZKEshtkPFNnsjbBGp0CGhHXbJmMTy
 ZM4MQbPA7+wxHoBSee4WWlY05S6rVbkNi34fmzPlPDAxLQi0IgCyOI2mVtf3eJIs
 qdnaqQj0QelMfdnxDo5ujmpsVy5+PV/GL16LPyAU2dPTBWKQP0fT2oZfU3O9870M
 WUBfUle0PNaQOtAssYQj
 =jiqd
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v4.1/prcm-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/late

Pull "Clean-up for omap PRCM (Power Reset Clock Management) and interconnects" from Tony Lindgren
Patches originally from Tero Kristo <t-kristo@ti.com>.

This sets gets us into a better position for further clean-up:

- Gets PRCM code closer to being device drivers

- Allows to move the remainig clock code to drivers/clk for v4.2

- Starts enforcing interconnect hierarchy in the SoC specific .dts
  files to enforce device drivers are only accesing registers in
  the related hardware module

This patchset has seen quite a few revisions but did not come into
mergeable shape until recently. As other patchsets for clock specific
device drivers depend on this, it would be good to get this merged
although it's a bit late for the v4.1 merge window.

Note that as the device entries in the .dts files are moved around,
this is based on earlier non-urgent fixes to avoid a non-trivial
merge conflict.

* tag 'omap-for-v4.1/prcm-dts' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (44 commits)
  ARM: OMAP4+: control: add support for initializing control module via DT
  ARM: dts: dra7: add minimal l4 bus layout with control module support
  ARM: dts: omap5: add minimal l4 bus layout with control module support
  ARM: OMAP4+: control: remove support for legacy pad read/write
  ARM: OMAP4: display: convert display to use syscon for dsi muxing
  ARM: dts: omap4: add minimal l4 bus layout with control module support
  ARM: dts: am4372: add minimal l4 bus layout with control module support
  ARM: dts: am43xx-epos-evm: fix pinmux node layout
  ARM: dts: am33xx: add minimal l4 bus layout with control module support
  ARM: dts: omap3: add minimal l4 bus layout with control module support
  ARM: dts: omap24xx: add minimal l4 bus layout with control module support
  ARM: OMAP2+: control: add syscon support for register accesses
  ARM: OMAP2+: id: cache omap_type value
  ARM: OMAP2+: control: remove API for getting control module base address
  ARM: OMAP2+: clock: add low-level support for regmap
  ARM: OMAP4+: PRM: get rid of cpu_is_omap44xx calls from interrupt init
  ARM: OMAP4+: PRM: setup prm_features from the PRM init time flags
  ARM: OMAP2+: CM: move SoC specific init calls within a generic API
  ARM: OMAP4+: PRM: determine prm_device_inst based on DT compatibility
  ARM: OMAP2+: PRM: move SoC specific init calls within a generic API
  ...
2015-04-14 01:03:29 +02:00
Tony Lindgren 2129536836 Merge branch '4.0-rc1-prcm-cleanup-v6' of https://github.com/t-kristo/linux-pm into omap-for-v4.1/prcm-cleanup
Conflicts:
	arch/arm/boot/dts/dra7.dtsi
2015-04-01 12:24:29 -07:00
Tero Kristo ca125b5e31 ARM: OMAP4+: control: add support for initializing control module via DT
OMAP4, OMAP5 and DRA7 now parse DT entries for control module address spaces,
and set up syscon mappings appropriately. Low level IO init is updated to
remove the legacy control module mappings for these devices also.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:59 +03:00
Tero Kristo d919501fef ARM: dts: dra7: add minimal l4 bus layout with control module support
This patch creates the l4_cfg and l4_wkup interconnects for DRA7, and
moves some of the generic peripherals under it. System control module
support is added to the device tree also, and the existing SCM related
functionality is moved under it.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:59 +03:00
Tero Kristo ed8509eddd ARM: dts: omap5: add minimal l4 bus layout with control module support
This patch creates the l4_cfg and l4_wkup interconnects for OMAP5, and
moves some of the generic peripherals under it. System control module
support is added to the device tree also, and the existing SCM related
functionality is moved under it.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:58 +03:00
Tero Kristo efde234674 ARM: OMAP4+: control: remove support for legacy pad read/write
omap4_ctrl_pad_readl/writel are no longer used by anybody, so remove
these. Syscon / pinctrl should be used to access the padconf area
instead.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:58 +03:00
Tero Kristo 23d34981c7 ARM: OMAP4: display: convert display to use syscon for dsi muxing
The legacy control module APIs will be gone, thus convert the display
driver to use syscon. This change should eventually be moved to
display driver from the board directory.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-03-31 21:26:58 +03:00
Tero Kristo 7415b0b4c6 ARM: dts: omap4: add minimal l4 bus layout with control module support
This patch creates the l4_cfg and l4_wkup interconnects for OMAP4, and
moves some of the generic peripherals under it. System control module
support is added to the device tree also, and the existing SCM related
functionality is moved under it.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Reported-by: Tony Lindgren <tony@atomide.com>
2015-03-31 21:26:56 +03:00
Tero Kristo 83a5d6c98a ARM: dts: am4372: add minimal l4 bus layout with control module support
This patch creates an l4_wkup interconnect for AM43xx, and moves some of
the generic peripherals under it. System control module nodes are moved
under this new interconnect also, and the SCM clock layout is changed
to use the renamed SCM nodea as the clock provider.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:56 +03:00
Tero Kristo d7eaf3c40d ARM: dts: am43xx-epos-evm: fix pinmux node layout
Pinmux node should be a reference to the base one, not a complete re-write
of it. Having the node like this also prevents modifying the node layout
in the base am4372.dtsi file, which is needed for control module changes.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:56 +03:00
Tero Kristo e3bc5358e0 ARM: dts: am33xx: add minimal l4 bus layout with control module support
This patch creates an l4_wkup interconnect for AM33xx, and moves some of
the generic peripherals under it. System control module nodes are moved
under this new interconnect also, and the SCM clock layout is changed
to use the renamed SCM node as the clock provider.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:56 +03:00
Tero Kristo b8845074cf ARM: dts: omap3: add minimal l4 bus layout with control module support
This patch creates an l4_core interconnect for OMAP3, and moves some
of the generic peripherals under it. System control module nodes are
moved under this new interconnect also, and the SCM clock layout
is changed to use the renamed SCM node as the clock provider.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Reported-by: Tony Lindgren <tony@atomide.com>
2015-03-31 21:26:56 +03:00
Tero Kristo 72b10ac00e ARM: dts: omap24xx: add minimal l4 bus layout with control module support
This patch creates an l4 / l4-wkup interconnects for omap2420 / omap2430
SoCs, and moves some of the generic peripherals under it. System control
module nodes are moved under this new interconnect also, and the SCM
clock layout is changed to use the new SCM node as the clock provider.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:55 +03:00
Tero Kristo e5b635742e ARM: OMAP2+: control: add syscon support for register accesses
Control module driver needs to support syscon for register accesses, as
the DT hierarchy for control module driver is going to be changed. All
the control module related features will be moved under control module
node, including clocks, pinctrl, and generic configuration register
access. Temporary iomap is still provided very early in the boot for
access while syscon is not yet ready.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:55 +03:00
Tero Kristo 23d240d661 ARM: OMAP2+: id: cache omap_type value
There is no need to read the register with every invocation of the function,
as the value is constant. Thus, cache the value in a static variable.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:55 +03:00
Tero Kristo ae0f679847 ARM: OMAP2+: control: remove API for getting control module base address
This shall not be used anymore, as control module driver is converted
into using regmap.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:55 +03:00
Tero Kristo 80cbb224b7 ARM: OMAP2+: clock: add low-level support for regmap
Some of the TI clock providers will be converted to use syscon, thus
low-level regmap support is needed for the clock drivers also. This
patch adds this support, which can be enabled for individual drivers
in later patches.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:55 +03:00
Tero Kristo 219595b6ee ARM: OMAP4+: PRM: get rid of cpu_is_omap44xx calls from interrupt init
The compatible DT node is now passed with the prm init, so there is no
need to do node matching here again. Added a new flag to the init data
also, to detect default IRQ support for OMAP4. Also, any booting omap4
DT setup always has a PRM node, so there is no need to check against
the special case where it would be missing.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:53 +03:00
Tero Kristo 8b5b9a22b5 ARM: OMAP4+: PRM: setup prm_features from the PRM init time flags
Currently some cpu_is_X checks are used to setup prm_features, however
the same can be accomplished by just passing these flags from the PRM
init data. This is done in preparation to make PRM a separate driver.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:52 +03:00
Tero Kristo 425dc8b2df ARM: OMAP2+: CM: move SoC specific init calls within a generic API
This gets rid of need for some exported driver APIs, and simplifies the
initialization of the CM driver. Done in preparation to make CM a
separate driver. The init data is now also passed to the SoC specific
implementations, allowing future expansion to add feature flags etc.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:50 +03:00
Tero Kristo 48e0c1148d ARM: OMAP4+: PRM: determine prm_device_inst based on DT compatibility
PRM device instance offset is now provided through the prm_init_data.
This gets rid of some cpu_is_X / soc_is_X calls from PRM core code,
preparing for PRM to be its own separate driver.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:44 +03:00
Tero Kristo ab7b2ffcf5 ARM: OMAP2+: PRM: move SoC specific init calls within a generic API
This gets rid of need for some exported driver APIs, and simplifies the
initialization of the PRM driver. Done in preparation to make PRM a
separate driver. The init data is now also passed to the SoC specific
implementations, allowing future expansion to add feature flags etc.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
2015-03-31 21:26:36 +03:00
Russell King 8e047c120f ARM: dts: hummingboard: add sgtl5000 support for Hummingboard Pro
Add the DT description for the SGTL5000 found on the Hummingboard Pro
model.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 20:57:42 +08:00
Markus Pargmann 5c5506bdaf ARM: dts: imx25-pinfunc: Add several pinfunctions
This patch adds some not yet defined pinfunctions. It also adds two
comments about mistakes in the i.MX25 reference manual so it is easier
to spot the difference between reference manual and pinfunction
definitions.

Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 19:22:12 +08:00
Stefan Agner 53f643d23b ARM: dts: vf610: fix missing irqs
While adding the MSCM interrupt router, all interrupts have been moved
to vfxxx.dtsi again. However, some properties got lost. Readd the
missing interrupt properties.

Fixes: 97e6466ab9d0 ("ARM: dts: vf610: add Miscellaneous System Control
Module (MSCM)")
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 19:22:12 +08:00
George Joseph 3274af07c9 ARM: dts: cubox: Map gpio-keys to gpio3 8
The Cubox has a recessed button between the HDMI and RJ-45 connectors
that wasn't mapped in the device tree, so I've mapped it to gpio-keys
BTN_0.

Signed-off-by: George Joseph <george.joseph@fairview5.com>
Tested-by: George Joseph <george.joseph@fairview5.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 19:22:06 +08:00
Rabeeh Khoury ffbae6b719 ARM: dts: hummingboard: Setup pwm lines
Setup pwm lines as follows -
pwm1: In case HummingBoard base carrier; this pin drives through a serial
      capacitor the mono out of the audio jack.
      In case HummingBoard pro the this pad can be reached by wiring to
      C8 capacitors on the board.
pwm2: Setup pwm2 on gpio-1 but leave the default function of the iopad as
      a gpio.
      The user can change the io pad mux in user space and therefore use
      this function on gpio-1 (pin number 7 on the 26 pin header).
pwm3,pwm4: unused

Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com>
[tweaked alias for pwm pinctrl group --rmk]
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:53 +08:00
Russell King a931bbbc64 ARM: dts: hummingboard: enable PCF8523 RTC support
Enable the commented out PCF8523 RTC support for Hummingboard pro
base boards.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:53 +08:00
Russell King 42919c5c14 ARM: dts: Re-license SolidRun iMX6 platform DT GPL v2/X11
Update SolidRun iMX6 platforms DT descriptions to be dual-licensed.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Rabeeh Khoury <rabeeh@solid-run.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:52 +08:00
Uwe Kleine-König 8f0b07a428 ARM: dts: imx28: add alternative pinmuxing for spi3
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:52 +08:00
Fabio Estevam 6f9dbfda48 ARM: dts: imx6sx: Add label snvs_rtc
It may be useful to disable the internal snvs-rtc when an external rtc is
available. This patch adds a label so that dts files can disable it.

Based on a patch from Markus Pargmann for imx6qdl.dtsi.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:51 +08:00
Fabio Estevam 8716186f5c ARM: dts: imx6sl: Add label snvs_rtc
It may be useful to disable the internal snvs-rtc when an external rtc is
available. This patch adds a label so that dts files can disable it.

Based on a patch from Markus Pargmann for imx6qdl.dtsi.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:51 +08:00
Marc Zyngier 1451756479 ARM: imx6: Warn when an old DT is detected
Now that the GPC has been converted to be a full blown irqchip
(and not a mole on the side of the GIC), booting a new kernel
with an old DT is likely to result in a rough ride for the user.

This patch makes sure such a situation is promptly detected and
the user made aware that a DT update is in order.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Jason Cooper <jason@lakedaemon.net>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:51 +08:00
Marc Zyngier e33b67523f ARM: imx6: Allow GPC interrupts affinity to be changed
While converting the GPC code to a stacked irqchip, we lost the
possibility to change the CPU affinity of an interrupt routed
through the GPC.

This patch restore the expected behaviour by forwarding the
affinity setup to the underlying irqchip (GIC).

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:50 +08:00
Peter Chen 4e18a2243a ARM: imx6qdl-sabreauto.dtsi: add max7310 support
max7310 is an i2c interface gpio expander

Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:50 +08:00
Fabio Estevam 159097f86d ARM: dts: imx6sl-warp: Add BCM4330 support
Warp has a Murata chip based on a BCM4330 that provides Wifi and Bluetooth
functionality.

Add support for it.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:50 +08:00
Gwenhael Goavec-Merou e9b16e9cae ARM: dts: imx28-apf28dev: add wakeup function to user button
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@armadeus.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:49 +08:00
Gwenhael Goavec-Merou 816bd40186 ARM: dts: imx28-apf28dev: fix user button polarity
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@armadeus.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:49 +08:00
Markus Pargmann 6ada7bf59b ARM: dts: imx25-pinfunc: remove input values for pinfuncs without input register
input values are only useful for pin functions which define a input
register. This patch removes all input values of pin functions which do
not have an input configuration register.

Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:48 +08:00
Stefan Agner c09d0f7ce0 ARM: dts: vf610: add Miscellaneous System Control Module (MSCM)
Add the Miscellaneous System Control Module (MSCM) to the base
device tree for Vybrid SoC's. This module contains registers
to get information of the individual and current (accessing)
CPU. In a second block, there is an interrupt router, which
handles the routing of the interrupts between the two CPU cores
on VF6xx variants of the SoC. However, also on single core
variants the interrupt router needs to be configured in order
to receive interrupts on the CPU's interrupt controller. Almost
all peripheral interrupts are routed through the router, hence
the MSCM module is the default interrupt parent for this SoC.

In a earlier commit the interrupt nodes were moved out of the
peripheral nodes and specified in the CPU specific vf500.dtsi
device tree. This allowed to use the base device tree vfxxx.dtsi
also for a Cortex-M4 specific device tree, which uses different
interrupt nodes due to the NVIC interrupt controller. However,
since the interrupt parent for peripherals is the MSCM module
independently which CPU the device tree is used for, we can move
the interrupt nodes into the base device tree vfxxx.dtsi again.
Depending on which CPU this base device tree will be used with,
the correct parent interrupt controller has to be assigned to
the MSCM-IR node (GIC or NVIC). The driver takes care of the
parent interrupt controller specific needs (interrupt-cells).

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:48 +08:00
Fabio Estevam 649b1fe856 ARM: dts: imx6sl-warp: Pass 'bus-width' property
USDHC2 port uses all the 8 data signals, so pass the 'bus-width' property
accordingly.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:34 +08:00
Philipp Zabel e2675266b3 ARM: dts: imx6qdl: disable PWMs by default
Since PWMs are only useful if they are actually connected to an output pin,
let users enable them explicitly in their device trees where they should
also set up the pin configuration.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:34 +08:00
Philipp Zabel 7cdbec1f5d ARM: dts: hummingboard/cubox-i: enable front LED PWM explicitly
All PWM users should explicitly enable the used PWMs in their device tree
so they can be disabled by default in imx6qdl.dtsi.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:33 +08:00
Philipp Zabel 22c765b921 ARM: dts: imx6dl-aristainetos: enable backlight PWM explicitly
All PWM users should explicitly enable the used PWMs in their device tree
so they can be disabled by default in imx6qdl.dtsi.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:33 +08:00
Philipp Zabel 40130d327f ARM: dts: imx6qdl: Allow disabling the PU regulator, add a enable ramp delay
The PU regulator is enabled during boot, but not necessarily always-on.
It can be disabled by the generic pm domain framework when the PU power
domain is shut down. The ramp delay of 150 us might be a bit conservative,
the value is taken from the Freescale kernel.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:33 +08:00
Philipp Zabel 016dbd7ad5 ARM: dts: imx6sl: Add power-domain information to gpc node
The PGC that is part of GPC controls isolation and power sequencing of the
power domains. The PU power domain will be handled by the generic pm domain
framework. It needs a phandle to the PU regulator to turn off power when
the domain is disabled and a list of clocks to be enabled during powerup
for reset propagation.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:32 +08:00
Philipp Zabel 729c88812f ARM: dts: imx6qdl: Add power-domain information to gpc node
The PGC that is part of GPC controls isolation and power sequencing of the
power domains. The PU power domain will be handled by the generic pm domain
framework. It needs a phandle to the PU regulator to turn off power when
the domain is disabled, and a list of phandles to all clocks that must be
enabled during powerup for reset propagation.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:43:32 +08:00
Matt Porter 3ec481ed05 ARM: dts: imx: Add dr_mode host setting to all host-only usb instances
The chipidea driver adds an extra line of spam to the log when a
host-only chipidea instance is left set to the default of a dual role
controller.

[    2.010873] ci_hdrc ci_hdrc.1: doesn't support gadget

Set the dr_mode property to host on all the host-only nodes
to avoid this warning.

Signed-off-by: Matt Porter <mporter@konsulko.com>
Acked-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:42:23 +08:00
Otavio Salvador 27b0b9d851 ARM: dts: warp: Add initial WaRP Board support
The WaRP Board is a Wearable Reference Plaform. The board features:

 - Freescale i.MX6 SoloLite processor with 512MB of RAM
 - Freescale FXOS8700CQ 6-axis Xtrinsic sensor
 - Freescale Kinetis KL16 MCU
 - Freescale Xtrinsic MMA955xL intelligent motion sensing platform

The board implements a hybrid architecture to address the evolving
needs of the wearables market. The platform consists of a main board
and an example daughtercard with the ability to add additional
daughtercards for different usage models.

For more information about the project, visit:

 http://www.warpboard.org/

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2015-03-30 16:42:23 +08:00