tree d176562dcd3d0921571a920fc3d7cfe7818ff7fd
parent 8ee57b8182c4069e8b2939dde68a60536c663df1
parent df829b06f0079165d9dc7719af8f8a7da852fe51
author Arnd Bergmann <arnd@arndb.de> 1444838223 +0200
committer Arnd Bergmann <arnd@arndb.de> 1444838223 +0200
mergetag object df829b06f0079165d9dc7719af8f8a7da852fe51
 type commit
 tag samsung-dt-1
 tagger Kukjin Kim <kgene@kernel.org> 1444678979 +0900
 
 Samsung DT updates for v4.4
 
 - New board support
   : add exynos5250-snow-rev5 DT file to support Snow Rev5+ board
   : add exynos5422-odroidxu4 DT file to support Odroid XU4 board
   : split exynos5422-odroidxu3-audio DT file from odroidxu3-common
 
 - USE GPIO constants for flags cells for exynos boards
 - fix cpu compatible value to 'arm926ej-s' for s3c2416
 
 - add DMA support for serial ports for exynos4
 - add suspend opp for exynos4412
 - remove regulator-compatible usage for exynos4412-trats2
 
 - enable EC vboot context support for Peach boards
 - move display-timings node to DP for exynos5250-arndale, smdk5250 and smdk5420
 
 - for exynos4412-odroid/odroidu3
   : unify voltage regulator style and
   : remove redundant pinctrl settings
   : add pwm-fan node and use it as a colling device
 
 - for exynos5422-odroidxu3
   : fix power off method and LEDs
 
 - dt-bindings
   : grounded AC0KB pin on S2MPS11
   : entry how to use PWM FAN as a cooling device
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJWHBBhAAoJEA0Cl+kVi2xqTYEP/jutsYKeQE2/A3g3zOMHfuYv
 p6Q9m0RB5rug7KOmT10nqAJmBpj3FZZgSTWf3AUfPCNxzei1DY9LNknHPqOIHY4S
 HfbDx0qA2U5Jta02Bo9SE3pgkODJX/p1YAmiEbVOwiKS6vuFysykX0QvidBSCYbk
 tqfqb6LRsdglIItKs2acUyLoZeldaYdDOvkL6hrHiwjz8njUGoSYLITkorfrBSIv
 jcppiOXAZqxsjgmEho86u7jbqbC66a3yH9bMgge45t98rE5vu3WIoA8082jlQXpt
 JnGtNfaTb8DECwL7T0++Ohk8hsDHood3WEmuoYAHUEq5DMotS//LZ4n2xDNWXVbN
 s//cRrETBIMWk/AUZdNYbtbNGVOKYz78xL7EiJSBYby+YdYFi3tpRJ0/+9bHEglD
 URwxOUb1320S2QlFULN+50x6VxPPbbAU1EmFH708RXDFQIJMLFUIANGfck0CuFah
 PJaAChyAMLbqV9K7y/FfqDobxZAa1y2eAYWyL4eLYfxeOhY+PhhRfMD8pWgY1ZW4
 vgHqpVADJvuZ5d7U3JgYclTQ0J6ILrDoCP5/E5C9TvYkBP5SV4KiEqvZ2Hklzxv7
 9vdsfWppnYRTH2moo0tokLNRYXewzW7svq/gKYXY0VjERjnmCfrjMRXZ76q3WQ7Y
 gy2KJDH/jxwlIdsGEDG6
 =FqOp
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/dt

Merge "Samsung DT updates for v4.4" from Kukjin Kim:

- New board support
  : add exynos5250-snow-rev5 DT file to support Snow Rev5+ board
  : add exynos5422-odroidxu4 DT file to support Odroid XU4 board
  : split exynos5422-odroidxu3-audio DT file from odroidxu3-common

- USE GPIO constants for flags cells for exynos boards
- fix cpu compatible value to 'arm926ej-s' for s3c2416

- add DMA support for serial ports for exynos4
- add suspend opp for exynos4412
- remove regulator-compatible usage for exynos4412-trats2

- enable EC vboot context support for Peach boards
- move display-timings node to DP for exynos5250-arndale, smdk5250 and smdk5420

- for exynos4412-odroid/odroidu3
  : unify voltage regulator style and
  : remove redundant pinctrl settings
  : add pwm-fan node and use it as a colling device

- for exynos5422-odroidxu3
  : fix power off method and LEDs

- dt-bindings
  : grounded AC0KB pin on S2MPS11
  : entry how to use PWM FAN as a cooling device

* tag 'samsung-dt-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: (22 commits)
  ARM: dts: Use GPIO constants for flags cells in exynos5440 boards
  ARM: dts: Use GPIO constants for flags cells in exynos5420/5422/5800 boards
  ARM: dts: Use GPIO constants for flags cells in exynos4412 boards
  ARM: dts: Use GPIO constants for flags cells in exynos4120 boards
  ARM: dts: Use GPIO constants for flags cells in exynos3250 boards
  ARM: dts: Enable EC vboot context support on Peach boards
  ARM: dts: Remove regulator-compatible usage in exynos4412-trats2
  ARM: dts: Move display-timings node from fimd to dp in exynos5250-arndale, smdk5250 and smdk5420
  ARM: dts: Add Exynos5250 Snow Rev5+ support on exynos5250-snow-rev5
  ARM: dts: Unify voltage regulator style in exynos4412-odroid
  ARM: dts: Remove redundant pinctrl settings in exynos4412-odroid
  ARM: dts: Fix cpu compatible value for s3c2416
  ARM: dts: Add support Odroid XU4 board for exynos5422-odroidxu4
  ARM: dts: Split audio configuration to separate exynos5422-odroidxu3-audio
  ARM: dts: Fix power off method for exynos5422-odroidxu3-common
  dt-bindings: Document grounded ACOKB pin on S2MPS11
  ARM: dts: use pwm-fan device as a cooling device for exynos4412-odroidu3
  ARM: dts: Add pwm-fan node for exynos4412-odroidu3
  dt-bindings: Documentation entry to explain how to use PWM FAN as a cooling device
  ARM: dts: add suspend opp to exynos4412
  ...
