Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 16 Nov 2017 23:48:26 +0000 (15:48 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 16 Nov 2017 23:48:26 +0000 (15:48 -0800)
Pull ARM device-tree updates from Arnd Bergmann:
 "We add device tree files for a couple of additional SoCs in various
  areas:

  Allwinner R40/V40 for entertainment, Broadcom Hurricane 2 for
  networking, Amlogic A113D for audio, and Renesas R-Car V3M for
  automotive.

  As usual, lots of new boards get added based on those and other SoCs:

   - Actions S500 based CubieBoard6 single-board computer

   - Amlogic Meson-AXG A113D based development board
   - Amlogic S912 based Khadas VIM2 single-board computer
   - Amlogic S912 based Tronsmart Vega S96 set-top-box

   - Allwinner H5 based NanoPi NEO Plus2 single-board computer
   - Allwinner R40 based Banana Pi M2 Ultra and Berry single-board computers
   - Allwinner A83T based TBS A711 Tablet

   - Broadcom Hurricane 2 based Ubiquiti UniFi Switch 8
   - Broadcom bcm47xx based Luxul XAP-1440/XAP-810/ABR-4500/XBR-4500
     wireless access points and routers

   - NXP i.MX51 based Zodiac Inflight Innovations RDU1 board
   - NXP i.MX53 based GE Healthcare PPD biometric monitor
   - NXP i.MX6 based Pistachio single-board computer
   - NXP i.MX6 based Vining-2000 automotive diagnostic interface
   - NXP i.MX6 based Ka-Ro TX6 Computer-on-Module in additional variants

   - Qualcomm MSM8974 (Snapdragon 800) based Fairphone 2 phone
   - Qualcomm MSM8974pro (Snapdragon 801) based Sony Xperia Z2 Tablet

   - Realtek RTD1295 based set-top-boxes MeLE V9 and PROBOX2 AVA

   - Renesas R-Car V3M (R8A77970) SoC and "Eagle" reference board
   - Renesas H3ULCB and M3ULCB "Kingfisher" extension infotainment boards
   - Renasas r8a7745 based iWave G22D-SODIMM SoM

   - Rockchip rk3288 based Amarula Vyasa single-board computer

   - Samsung Exynos5800 based Odroid HC1 single-board computer

  For existing SoC support, there was a lot of ongoing work, as usual
  most of that concentrated on the Renesas, Rockchip, OMAP, i.MX,
  Amlogic and Allwinner platforms, but others were also active.

  Rob Herring and many others worked on reducing the number of issues
  that the latest version of 'dtc' now warns about. Unfortunately there
  is still a lot left to do.

  A rework of the ARM foundation model introduced several new files for
  common variations of the model"

* tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (599 commits)
  arm64: dts: uniphier: route on-board device IRQ to GPIO controller for PXs3
  dt-bindings: bus: Add documentation for the Technologic Systems NBUS
  arm64: dts: actions: s900-bubblegum-96: Add fake uart5 clock
  ARM: dts: owl-s500: Add CubieBoard6
  dt-bindings: arm: actions: Add CubieBoard6
  ARM: dts: owl-s500-guitar-bb-rev-b: Add fake uart3 clock
  ARM: dts: owl-s500: Set power domains for CPU2 and CPU3
  arm: dts: mt7623: remove unused compatible string for pio node
  arm: dts: mt7623: update usb related nodes
  arm: dts: mt7623: update crypto node
  ARM: dts: sun8i: a711: Enable USB OTG
  ARM: dts: sun8i: a711: Add regulator support
  ARM: dts: sun8i: a83t: bananapi-m3: Enable AP6212 WiFi on mmc1
  ARM: dts: sun8i: a83t: cubietruck-plus: Enable AP6330 WiFi on mmc1
  ARM: dts: sun8i: a83t: Move mmc1 pinctrl setting to dtsi file
  ARM: dts: sun8i: a83t: allwinner-h8homlet-v2: Add AXP818 regulator nodes
  ARM: dts: sun8i: a83t: bananapi-m3: Add AXP813 regulator nodes
  ARM: dts: sun8i: a83t: cubietruck-plus: Add AXP818 regulator nodes
  ARM: dts: sunxi: Add dtsi for AXP81x PMIC
  arm64: dts: allwinner: H5: Restore EMAC changes
  ...

62 files changed:
1  2 
Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
Documentation/devicetree/bindings/dma/sun6i-dma.txt
Documentation/devicetree/bindings/vendor-prefixes.txt
MAINTAINERS
arch/arm/boot/dts/Makefile
arch/arm/boot/dts/aspeed-ast2500-evb.dts
arch/arm/boot/dts/aspeed-bmc-opp-palmetto.dts
arch/arm/boot/dts/aspeed-bmc-opp-romulus.dts
arch/arm/boot/dts/aspeed-g4.dtsi
arch/arm/boot/dts/aspeed-g5.dtsi
arch/arm/boot/dts/at91-ariettag25.dts
arch/arm/boot/dts/at91-sama5d2_xplained.dts
arch/arm/boot/dts/bcm2837-rpi-3-b.dts
arch/arm/boot/dts/dove.dtsi
arch/arm/boot/dts/gemini.dtsi
arch/arm/boot/dts/imx28-apx4devkit.dts
arch/arm/boot/dts/integrator.dtsi
arch/arm/boot/dts/integratorap.dts
arch/arm/boot/dts/kirkwood-ts219.dtsi
arch/arm/boot/dts/kirkwood.dtsi
arch/arm/boot/dts/omap2420-n8x0-common.dtsi
arch/arm/boot/dts/omap3-panel-sharp-ls037v7dw01.dtsi
arch/arm/boot/dts/qcom-apq8064.dtsi
arch/arm/boot/dts/qcom-msm8660.dtsi
arch/arm/boot/dts/qcom-msm8974.dtsi
arch/arm/boot/dts/sama5d2.dtsi
arch/arm/boot/dts/stm32f746.dtsi
arch/arm/boot/dts/stm32h743.dtsi
arch/arm/boot/dts/tango4-common.dtsi
arch/arm/boot/dts/tegra124-jetson-tk1.dts
arch/arm/boot/dts/tegra124.dtsi
arch/arm/boot/dts/uniphier-ld4.dtsi
arch/arm/boot/dts/uniphier-pro4.dtsi
arch/arm/boot/dts/uniphier-sld8.dtsi
arch/arm/boot/dts/zx296702.dtsi
arch/arm64/Kconfig.platforms
arch/arm64/boot/dts/allwinner/Makefile
arch/arm64/boot/dts/amlogic/Makefile
arch/arm64/boot/dts/arm/Makefile
arch/arm64/boot/dts/arm/foundation-v8-gicv3.dts
arch/arm64/boot/dts/arm/foundation-v8.dts
arch/arm64/boot/dts/arm/foundation-v8.dtsi
arch/arm64/boot/dts/arm/rtsm_ve-aemv8a.dts
arch/arm64/boot/dts/arm/rtsm_ve-motherboard.dtsi
arch/arm64/boot/dts/arm/vexpress-v2f-1xv7-ca53x2.dts
arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
arch/arm64/boot/dts/hisilicon/hi3660-hikey960.dts
arch/arm64/boot/dts/hisilicon/hi3660.dtsi
arch/arm64/boot/dts/hisilicon/hi6220.dtsi
arch/arm64/boot/dts/marvell/armada-cp110-master.dtsi
arch/arm64/boot/dts/marvell/armada-cp110-slave.dtsi
arch/arm64/boot/dts/nvidia/tegra186-p2771-0000.dts
arch/arm64/boot/dts/nvidia/tegra186.dtsi
arch/arm64/boot/dts/realtek/Makefile
arch/arm64/boot/dts/renesas/Makefile
arch/arm64/boot/dts/renesas/salvator-common.dtsi
arch/arm64/boot/dts/rockchip/rk3368.dtsi
arch/arm64/boot/dts/rockchip/rk3399-firefly.dts
arch/arm64/boot/dts/socionext/uniphier-ld11.dtsi
include/dt-bindings/clock/tegra210-car.h
include/dt-bindings/pinctrl/am43xx.h

@@@ -57,6 -57,7 +57,7 @@@ Required root node properties
        - "hardkernel,odroid-xu3-lite" - for Exynos5422-based Hardkernel
                                         Odroid XU3 Lite board.
        - "hardkernel,odroid-xu4" - for Exynos5422-based Hardkernel Odroid XU4.
+       - "hardkernel,odroid-hc1" - for Exynos5422-based Hardkernel Odroid HC1.
  
    * Insignal
        - "insignal,arndale"      - for Exynos5250-based Insignal Arndale board.
@@@ -71,7 -72,7 +72,7 @@@ Optional nodes
          - compatible: only "samsung,secure-firmware" is currently supported
          - reg: address of non-secure SYSRAM used for communication with firmware
  
 -      firmware@0203F000 {
 +      firmware@203F000 {
                compatible = "samsung,secure-firmware";
                reg = <0x0203F000 0x1000>;
        };
@@@ -18,7 -18,7 +18,7 @@@ Required properties
  - #dma-cells :        Should be 1, a single cell holding a line request number
  
  Example:
-       dma: dma-controller@01c02000 {
+       dma: dma-controller@1c02000 {
                compatible = "allwinner,sun6i-a31-dma";
                reg = <0x01c02000 0x1000>;
                interrupts = <0 50 4>;
                #dma-cells = <1>;
        };
  
 +------------------------------------------------------------------------------
 +For A64 DMA controller:
 +
 +Required properties:
 +- compatible: "allwinner,sun50i-a64-dma"
 +- dma-channels: Number of DMA channels supported by the controller.
 +              Refer to Documentation/devicetree/bindings/dma/dma.txt
 +- all properties above, i.e. reg, interrupts, clocks, resets and #dma-cells
 +
 +Optional properties:
 +- dma-requests: Number of DMA request signals supported by the controller.
 +              Refer to Documentation/devicetree/bindings/dma/dma.txt
 +
 +Example:
 +      dma: dma-controller@1c02000 {
 +              compatible = "allwinner,sun50i-a64-dma";
 +              reg = <0x01c02000 0x1000>;
 +              interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
 +              clocks = <&ccu CLK_BUS_DMA>;
 +              dma-channels = <8>;
 +              dma-requests = <27>;
 +              resets = <&ccu RST_BUS_DMA>;
 +              #dma-cells = <1>;
 +      };
 +------------------------------------------------------------------------------
 +
  Clients:
  
  DMA clients connected to the A31 DMA controller must use the format
@@@ -64,7 -38,7 +64,7 @@@ The two cells in order are
  2. The port ID as specified in the datasheet
  
  Example:
 -spi2: spi@01c6a000 {
 +spi2: spi@1c6a000 {
        compatible = "allwinner,sun6i-a31-spi";
        reg = <0x01c6a000 0x1000>;
        interrupts = <0 67 4>;
@@@ -18,6 -18,7 +18,7 @@@ al    Annapurna Lab
  allwinner     Allwinner Technology Co., Ltd.
  alphascale    AlphaScale Integrated Circuits Systems, Inc.
  altr  Altera Corp.
+ amarula       Amarula Solutions
  amazon        Amazon.com, Inc.
  amcc  Applied Micro Circuits Corporation (APM, formally AMCC)
  amd   Advanced Micro Devices (AMD), Inc.
@@@ -83,7 -84,6 +84,7 @@@ davicom       DAVICOM Semiconductor, Inc
  delta Delta Electronics, Inc.
  denx  Denx Software Engineering
  devantech     Devantech, Ltd.
 +dh    DH electronics GmbH
  digi  Digi International Inc.
  digilent      Diglent, Inc.
  dioo  Dioo Microcircuit Co., Ltd
@@@ -114,6 -114,7 +115,7 @@@ everspin   Everspin Technologies, Inc
  exar  Exar Corporation
  excito        Excito
  ezchip        EZchip Semiconductor
+ fairphone     Fairphone B.V.
  faraday       Faraday Technology Corporation
  fcs   Fairchild Semiconductor
  firefly       Firefly
@@@ -138,7 -139,6 +140,7 @@@ gw Gateworks Corporatio
  hannstar      HannStar Display Corporation
  haoyu Haoyu Microelectronic Co. Ltd.
  hardkernel    Hardkernel Co., Ltd
 +hideep        HiDeep Inc.
  himax Himax Technologies, Inc.
  hisilicon     Hisilicon Limited.
  hit   Hitachi Ltd.
@@@ -199,6 -199,7 +201,7 @@@ mcube      mCub
  meas  Measurement Specialties
  mediatek      MediaTek Inc.
  megachips     MegaChips
+ mele  Shenzhen MeLE Digital Technology Ltd.
  melexis       Melexis N.V.
  melfas        MELFAS Inc.
  mellanox      Mellanox Technologies
@@@ -231,14 -232,12 +234,14 @@@ netlogic        Broadcom Corporation (formerl
  netron-dy     Netron DY
  netxeon               Shenzhen Netxeon Technology CO., LTD
  nexbox        Nexbox
 +nextthing     Next Thing Co.
  newhaven      Newhaven Display International
  ni    National Instruments
  nintendo      Nintendo
  nlt   NLT Technologies, Ltd.
  nokia Nokia
  nordic        Nordic Semiconductor
 +nutsboard     NutsBoard
  nuvoton       Nuvoton Technology Corporation
  nvd   New Vision Display
  nvidia        NVIDIA
@@@ -249,12 -248,9 +252,12 @@@ olimex   OLIMEX Ltd
  onion Onion Corporation
  onnn  ON Semiconductor Corp.
  ontat On Tat Industrial Company
 +opalkelly     Opal Kelly Incorporated
  opencores     OpenCores.org
 +openrisc      OpenRISC.io
  option        Option NV
  ORCL  Oracle Corporation
 +orisetech     Orise Technology
  ortustech     Ortus Technology Co., Ltd.
  ovti  OmniVision Technologies
  oxsemi        Oxford Semiconductor, Ltd.
@@@ -270,6 -266,7 +273,7 @@@ plathome   Plat'Home Co., Ltd
  plda  PLDA
  poslab        Poslab Technology Co., Ltd.
  powervr       PowerVR (deprecated, use img)
+ probox2       PROBOX2 (by W2COMP Co., Ltd.)
  pulsedlight   PulsedLight, Inc
  qca   Qualcomm Atheros, Inc.
  qcom  Qualcomm Technologies, Inc
@@@ -303,7 -300,6 +307,7 @@@ sensirion  Sensirion A
  sff   Small Form Factor Committee
  sgx   SGX Sensortech
  sharp Sharp Corporation
 +shimafuji     Shimafuji Electric, Inc.
  si-en Si-En Technology Ltd.
  sigma Sigma Designs, Inc.
  sii   Seiko Instruments, Inc.
@@@ -325,7 -321,6 +329,7 @@@ solomon        Solomon Systech Limite
  sony  Sony Corporation
  spansion      Spansion Inc.
  sprd  Spreadtrum Communications Inc.
 +sst   Silicon Storage Technology, Inc.
  st    STMicroelectronics
  starry        Starry Electronic Technology (ShenZhen) Co., LTD
  startek       Startek
@@@ -338,6 -333,7 +342,7 @@@ swir       Sierra Wireles
  syna  Synaptics Inc.
  synology      Synology, Inc.
  tbs   TBS Technologies
+ tbs-biometrics        Touchless Biometric Systems AG
  tcg   Trusted Computing Group
  tcl   Toby Churchill Ltd.
  technexion    TechNexion
@@@ -347,7 -343,6 +352,7 @@@ thine      THine Electronics, Inc
  ti    Texas Instruments
  tianma        Tianma Micro-electronics Co., Ltd.
  tlm   Trusted Logic Mobility
 +tmt   Tecon Microprocessor Technologies, LLC.
  topeet  Topeet
  toradex       Toradex AG
  toshiba       Toshiba Corporation
@@@ -361,6 -356,7 +366,7 @@@ truly      Truly Semiconductors Limite
  tsd   Theobroma Systems Design und Consulting GmbH
  tyan  Tyan Computer Corporation
  ucrobotics    uCRobotics
+ ubnt  Ubiquiti Networks
  udoo  Udoo
  uniwest       United Western Technologies Corp (UniWest)
  upisemi       uPI Semiconductor Corp.
diff --combined MAINTAINERS
@@@ -527,6 -527,11 +527,6 @@@ W:        http://ez.analog.com/community/linux
  S:    Supported
  F:    drivers/input/misc/adxl34x.c
  
 -AEDSP16 DRIVER
 -M:    Riccardo Facchetti <fizban@tin.it>
 -S:    Maintained
 -F:    sound/oss/aedsp16.c
 -
  AF9013 MEDIA DRIVER
  M:    Antti Palosaari <crope@iki.fi>
  L:    linux-media@vger.kernel.org
@@@ -695,9 -700,9 +695,9 @@@ F: include/linux/altera_uart.
  F:    include/linux/altera_jtaguart.h
  
  AMAZON ETHERNET DRIVERS
 -M:    Netanel Belgazal <netanel@annapurnalabs.com>
 -R:    Saeed Bishara <saeed@annapurnalabs.com>
 -R:    Zorik Machulsky <zorik@annapurnalabs.com>
 +M:    Netanel Belgazal <netanel@amazon.com>
 +R:    Saeed Bishara <saeedb@amazon.com>
 +R:    Zorik Machulsky <zorik@amazon.com>
  L:    netdev@vger.kernel.org
  S:    Supported
  F:    Documentation/networking/ena.txt
@@@ -754,6 -759,8 +754,6 @@@ F: drivers/gpu/drm/amd/amdkfd
  F:    drivers/gpu/drm/amd/include/cik_structs.h
  F:    drivers/gpu/drm/amd/include/kgd_kfd_interface.h
  F:    drivers/gpu/drm/amd/include/vi_structs.h
 -F:    drivers/gpu/drm/radeon/radeon_kfd.c
 -F:    drivers/gpu/drm/radeon/radeon_kfd.h
  F:    include/uapi/linux/kfd_ioctl.h
  
  AMD SEATTLE DEVICE TREE SUPPORT
@@@ -866,7 -873,7 +866,7 @@@ F: drivers/android
  F:    drivers/staging/android/
  
  ANDROID GOLDFISH RTC DRIVER
 -M:    Miodrag Dinic <miodrag.dinic@imgtec.com>
 +M:    Miodrag Dinic <miodrag.dinic@mips.com>
  S:    Supported
  F:    Documentation/devicetree/bindings/rtc/google,goldfish-rtc.txt
  F:    drivers/rtc/rtc-goldfish.c
@@@ -1761,6 -1768,7 +1761,7 @@@ Q:      http://patchwork.kernel.org/project/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git next
  S:    Supported
  F:    arch/arm64/boot/dts/renesas/
+ F:    Documentation/devicetree/bindings/arm/shmobile.txt
  F:    drivers/soc/renesas/
  F:    include/linux/soc/renesas/
  
@@@ -1880,6 -1888,7 +1881,7 @@@ F:      arch/arm/boot/dts/sh
  F:    arch/arm/configs/shmobile_defconfig
  F:    arch/arm/include/debug/renesas-scif.S
  F:    arch/arm/mach-shmobile/
+ F:    Documentation/devicetree/bindings/arm/shmobile.txt
  F:    drivers/soc/renesas/
  F:    include/linux/soc/renesas/
  
@@@ -1954,14 -1963,6 +1956,14 @@@ M:    Lennert Buytenhek <kernel@wantstofly
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  S:    Maintained
  
 +ARM/TEGRA HDMI CEC SUBSYSTEM SUPPORT
 +M:    Hans Verkuil <hans.verkuil@cisco.com>
 +L:    linux-tegra@vger.kernel.org
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/media/platform/tegra-cec/
 +F:    Documentation/devicetree/bindings/media/tegra-cec.txt
 +
  ARM/TETON BGA MACHINE SUPPORT
  M:    "Mark F. Brown" <mark.brown314@gmail.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
@@@ -2030,7 -2031,6 +2032,7 @@@ M:      Masahiro Yamada <yamada.masahiro@soc
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier.git
  S:    Maintained
 +F:    Documentation/devicetree/bindings/gpio/gpio-uniphier.txt
  F:    arch/arm/boot/dts/uniphier*
  F:    arch/arm/include/asm/hardware/cache-uniphier.h
  F:    arch/arm/mach-uniphier/
@@@ -2038,7 -2038,6 +2040,7 @@@ F:      arch/arm/mm/cache-uniphier.
  F:    arch/arm64/boot/dts/socionext/
  F:    drivers/bus/uniphier-system-bus.c
  F:    drivers/clk/uniphier/
 +F:    drivers/gpio/gpio-uniphier.c
  F:    drivers/i2c/busses/i2c-uniphier*
  F:    drivers/irqchip/irq-uniphier-aidet.c
  F:    drivers/pinctrl/uniphier/
@@@ -2162,6 -2161,7 +2164,6 @@@ F:      sound/soc/zte
  
  ARM/ZYNQ ARCHITECTURE
  M:    Michal Simek <michal.simek@xilinx.com>
 -R:    Sören Brinkmann <soren.brinkmann@xilinx.com>
  L:    linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
  W:    http://wiki.xilinx.com
  T:    git https://github.com/Xilinx/linux-xlnx.git
@@@ -2249,7 -2249,7 +2251,7 @@@ F:      include/linux/dmaengine.
  F:    include/linux/async_tx.h
  
  AT24 EEPROM DRIVER
 -M:    Wolfram Sang <wsa@the-dreams.de>
 +M:    Bartosz Golaszewski <brgl@bgdev.pl>
  L:    linux-i2c@vger.kernel.org
  S:    Maintained
  F:    drivers/misc/eeprom/at24.c
@@@ -2564,12 -2564,10 +2566,12 @@@ S:   Maintaine
  F:    drivers/net/hamradio/baycom*
  
  BCACHE (BLOCK LAYER CACHE)
 +M:    Michael Lyle <mlyle@lyle.org>
  M:    Kent Overstreet <kent.overstreet@gmail.com>
  L:    linux-bcache@vger.kernel.org
  W:    http://bcache.evilpiepirate.org
 -S:    Orphan
 +C:    irc://irc.oftc.net/bcache
 +S:    Maintained
  F:    drivers/md/bcache/
  
  BDISP ST MEDIA DRIVER
@@@ -2717,7 -2715,6 +2719,7 @@@ L:      linux-kernel@vger.kernel.or
  S:    Supported
  F:    arch/x86/net/bpf_jit*
  F:    Documentation/networking/filter.txt
 +F:    Documentation/bpf/
  F:    include/linux/bpf*
  F:    include/linux/filter.h
  F:    include/uapi/linux/bpf*
@@@ -2730,7 -2727,7 +2732,7 @@@ F:      net/core/filter.
  F:    net/sched/act_bpf.c
  F:    net/sched/cls_bpf.c
  F:    samples/bpf/
 -F:    tools/net/bpf*
 +F:    tools/bpf/
  F:    tools/testing/selftests/bpf/
  
  BROADCOM B44 10/100 ETHERNET DRIVER
@@@ -2901,15 -2898,7 +2903,15 @@@ S:    Supporte
  F:    drivers/gpio/gpio-brcmstb.c
  F:    Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.txt
  
 +BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER
 +M:    Al Cooper <alcooperx@gmail.com>
 +L:    linux-kernel@vger.kernel.org
 +L:    bcm-kernel-feedback-list@broadcom.com
 +S:    Maintained
 +F:    drivers/phy/broadcom/phy-brcm-usb*
 +
  BROADCOM GENET ETHERNET DRIVER
 +M:    Doug Berger <opendmb@gmail.com>
  M:    Florian Fainelli <f.fainelli@gmail.com>
  L:    netdev@vger.kernel.org
  S:    Supported
@@@ -2936,7 -2925,6 +2938,7 @@@ N:      bcm583
  N:    bcm585*
  N:    bcm586*
  N:    bcm88312
 +N:    hr2
  F:    arch/arm64/boot/dts/broadcom/ns2*
  F:    drivers/clk/bcm/clk-ns*
  F:    drivers/pinctrl/bcm/pinctrl-ns*
@@@ -3096,6 -3084,7 +3098,6 @@@ F:      arch/c6x
  
  CA8210 IEEE-802.15.4 RADIO DRIVER
  M:    Harry Morris <h.morris@cascoda.com>
 -M:    linuxdev@cascoda.com
  L:    linux-wpan@vger.kernel.org
  W:    https://github.com/Cascoda/ca8210-linux.git
  S:    Maintained
@@@ -3270,15 -3259,6 +3272,15 @@@ F:    include/uapi/linux/cec.
  F:    include/uapi/linux/cec-funcs.h
  F:    Documentation/devicetree/bindings/media/cec.txt
  
 +CEC GPIO DRIVER
 +M:    Hans Verkuil <hans.verkuil@cisco.com>
 +L:    linux-media@vger.kernel.org
 +T:    git git://linuxtv.org/media_tree.git
 +W:    http://linuxtv.org
 +S:    Supported
 +F:    drivers/media/platform/cec-gpio/
 +F:    Documentation/devicetree/bindings/media/cec-gpio.txt
 +
  CELL BROADBAND ENGINE ARCHITECTURE
  M:    Arnd Bergmann <arnd@arndb.de>
  L:    linuxppc-dev@lists.ozlabs.org
@@@ -3351,22 -3331,17 +3353,22 @@@ S:   Maintaine
  F:    drivers/auxdisplay/cfag12864bfb.c
  F:    include/linux/cfag12864b.h
  
 -CFG80211 and NL80211
 +802.11 (including CFG80211/NL80211)
  M:    Johannes Berg <johannes@sipsolutions.net>
  L:    linux-wireless@vger.kernel.org
  W:    http://wireless.kernel.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
  S:    Maintained
 +F:    net/wireless/
  F:    include/uapi/linux/nl80211.h
 +F:    include/linux/ieee80211.h
 +F:    include/net/wext.h
  F:    include/net/cfg80211.h
 -F:    net/wireless/*
 -X:    net/wireless/wext*
 +F:    include/net/iw_handler.h
 +F:    include/net/ieee80211_radiotap.h
 +F:    Documentation/driver-api/80211/cfg80211.rst
 +F:    Documentation/networking/regulatory.txt
  
  CHAR and MISC DRIVERS
  M:    Arnd Bergmann <arnd@arndb.de>
@@@ -3442,7 -3417,7 +3444,7 @@@ F:      drivers/scsi/snic
  CISCO VIC ETHERNET NIC DRIVER
  M:    Christian Benvenuti <benve@cisco.com>
  M:    Govindarajulu Varadarajan <_govind@gmx.com>
 -M:    Neel Patel <neepatel@cisco.com>
 +M:    Parvi Kaustubhi <pkaustub@cisco.com>
  S:    Supported
  F:    drivers/net/ethernet/cisco/enic/
  
@@@ -3471,8 -3446,7 +3473,8 @@@ M:      Thomas Gleixner <tglx@linutronix.de
  L:    linux-kernel@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/core
  S:    Supported
 -F:    drivers/clocksource
 +F:    drivers/clocksource/
 +F:    Documentation/devicetree/bindings/timer/
  
  CMPC ACPI DRIVER
  M:    Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
@@@ -3493,7 -3467,7 +3495,7 @@@ COCCINELLE/Semantic Patches (SmPL
  M:    Julia Lawall <Julia.Lawall@lip6.fr>
  M:    Gilles Muller <Gilles.Muller@lip6.fr>
  M:    Nicolas Palix <nicolas.palix@imag.fr>
 -M:    Michal Marek <mmarek@suse.com>
 +M:    Michal Marek <michal.lkml@markovi.net>
  L:    cocci@systeme.lip6.fr (moderated for non-subscribers)
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild.git misc
  W:    http://coccinelle.lip6.fr/
@@@ -3607,7 -3581,7 +3609,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  S:    Maintained
  F:    Documentation/cgroup-v1/cpusets.txt
  F:    include/linux/cpuset.h
 -F:    kernel/cpuset.c
 +F:    kernel/cgroup/cpuset.c
  
  CONTROL GROUP - MEMORY RESOURCE CONTROLLER (MEMCG)
  M:    Johannes Weiner <hannes@cmpxchg.org>
@@@ -3664,8 -3638,6 +3666,8 @@@ F:      drivers/cpufreq/arm_big_little_dt.
  
  CPU POWER MONITORING SUBSYSTEM
  M:    Thomas Renninger <trenn@suse.com>
 +M:    Shuah Khan <shuahkh@osg.samsung.com>
 +M:    Shuah Khan <shuah@kernel.org>
  L:    linux-pm@vger.kernel.org
  S:    Maintained
  F:    tools/power/cpupower/
@@@ -4121,8 -4093,6 +4123,8 @@@ T:      git git://git.kernel.org/pub/scm/lin
  T:    quilt http://people.redhat.com/agk/patches/linux/editing/
  S:    Maintained
  F:    Documentation/device-mapper/
 +F:    drivers/md/Makefile
 +F:    drivers/md/Kconfig
  F:    drivers/md/dm*
  F:    drivers/md/persistent-data/
  F:    include/linux/device-mapper.h
@@@ -4146,7 -4116,7 +4148,7 @@@ F:      Documentation/devicetree/bindings/mf
  F:    Documentation/devicetree/bindings/input/da90??-onkey.txt
  F:    Documentation/devicetree/bindings/thermal/da90??-thermal.txt
  F:    Documentation/devicetree/bindings/regulator/da92*.txt
 -F:    Documentation/devicetree/bindings/watchdog/da92??-wdt.txt
 +F:    Documentation/devicetree/bindings/watchdog/da90??-wdt.txt
  F:    Documentation/devicetree/bindings/sound/da[79]*.txt
  F:    drivers/gpio/gpio-da90??.c
  F:    drivers/hwmon/da90??-hwmon.c
@@@ -4266,7 -4236,7 +4268,7 @@@ S:      Maintaine
  F:    drivers/dma/
  F:    include/linux/dmaengine.h
  F:    Documentation/devicetree/bindings/dma/
 -F:    Documentation/dmaengine/
 +F:    Documentation/driver-api/dmaengine/
  T:    git git://git.infradead.org/users/vkoul/slave-dma.git
  
  DMA MAPPING HELPERS
@@@ -4398,12 -4368,6 +4400,12 @@@ T:    git git://anongit.freedesktop.org/dr
  S:    Maintained
  F:    drivers/gpu/drm/bochs/
  
 +DRM DRIVER FOR FARADAY TVE200 TV ENCODER
 +M:    Linus Walleij <linus.walleij@linaro.org>
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
 +S:    Maintained
 +F:    drivers/gpu/drm/tve200/
 +
  DRM DRIVER FOR INTEL I810 VIDEO CARDS
  S:    Orphan / Obsolete
  F:    drivers/gpu/drm/i810/
@@@ -4547,7 -4511,7 +4549,7 @@@ L:      dri-devel@lists.freedesktop.or
  S:    Supported
  F:    drivers/gpu/drm/sun4i/
  F:    Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux.git
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
  
  DRM DRIVERS FOR AMLOGIC SOCS
  M:    Neil Armstrong <narmstrong@baylibre.com>
@@@ -4731,7 -4695,7 +4733,7 @@@ T:      git git://anongit.freedesktop.org/dr
  DRM PANEL DRIVERS
  M:    Thierry Reding <thierry.reding@gmail.com>
  L:    dri-devel@lists.freedesktop.org
 -T:    git git://anongit.freedesktop.org/tegra/linux.git
 +T:    git git://anongit.freedesktop.org/drm/drm-misc
  S:    Maintained
  F:    drivers/gpu/drm/drm_panel.c
  F:    drivers/gpu/drm/panel/
@@@ -4944,19 -4908,13 +4946,19 @@@ L:   linux-edac@vger.kernel.or
  S:    Maintained
  F:    drivers/edac/highbank*
  
 -EDAC-CAVIUM
 +EDAC-CAVIUM OCTEON
  M:    Ralf Baechle <ralf@linux-mips.org>
  M:    David Daney <david.daney@cavium.com>
  L:    linux-edac@vger.kernel.org
  L:    linux-mips@linux-mips.org
  S:    Supported
  F:    drivers/edac/octeon_edac*
 +
 +EDAC-CAVIUM THUNDERX
 +M:    David Daney <david.daney@cavium.com>
 +M:    Jan Glauber <jglauber@cavium.com>
 +L:    linux-edac@vger.kernel.org
 +S:    Supported
  F:    drivers/edac/thunderx_edac*
  
  EDAC-CORE
@@@ -5257,7 -5215,8 +5259,7 @@@ F:      fs/ext4
  
  Extended Verification Module (EVM)
  M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 -L:    linux-ima-devel@lists.sourceforge.net
 -L:    linux-security-module@vger.kernel.org
 +L:    linux-integrity@vger.kernel.org
  S:    Supported
  F:    security/integrity/evm/
  
@@@ -5389,7 -5348,9 +5391,7 @@@ M:      "J. Bruce Fields" <bfields@fieldses.
  L:    linux-fsdevel@vger.kernel.org
  S:    Maintained
  F:    include/linux/fcntl.h
 -F:    include/linux/fs.h
  F:    include/uapi/linux/fcntl.h
 -F:    include/uapi/linux/fs.h
  F:    fs/fcntl.c
  F:    fs/locks.c
  
@@@ -5398,8 -5359,6 +5400,8 @@@ M:      Alexander Viro <viro@zeniv.linux.org
  L:    linux-fsdevel@vger.kernel.org
  S:    Maintained
  F:    fs/*
 +F:    include/linux/fs.h
 +F:    include/uapi/linux/fs.h
  
  FINTEK F75375S HARDWARE MONITOR AND FAN CONTROLLER DRIVER
  M:    Riku Voipio <riku.voipio@iki.fi>
@@@ -5474,7 -5433,7 +5476,7 @@@ K:      fmc_d.*registe
  
  FPGA MANAGER FRAMEWORK
  M:    Alan Tull <atull@kernel.org>
 -R:    Moritz Fischer <mdf@kernel.org>
 +M:    Moritz Fischer <mdf@kernel.org>
  L:    linux-fpga@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/atull/linux-fpga.git
@@@ -5499,7 -5458,6 +5501,7 @@@ F:      drivers/net/wan/sdla.
  
  FRAMEBUFFER LAYER
  M:    Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
 +L:    dri-devel@lists.freedesktop.org
  L:    linux-fbdev@vger.kernel.org
  T:    git git://github.com/bzolnier/linux.git
  Q:    http://patchwork.kernel.org/project/linux-fbdev/list/
@@@ -5513,7 -5471,7 +5515,7 @@@ F:      include/uapi/linux/fb.
  
  FREESCALE CAAM (Cryptographic Acceleration and Assurance Module) DRIVER
  M:    Horia Geantă <horia.geanta@nxp.com>
 -M:    Dan Douglass <dan.douglass@nxp.com>
 +M:    Aymen Sghaier <aymen.sghaier@nxp.com>
  L:    linux-crypto@vger.kernel.org
  S:    Maintained
  F:    drivers/crypto/caam/
@@@ -5693,7 -5651,6 +5695,7 @@@ T:      git git://git.kernel.org/pub/scm/lin
  S:    Supported
  F:    fs/crypto/
  F:    include/linux/fscrypt*.h
 +F:    Documentation/filesystems/fscrypt.rst
  
  FUJITSU FR-V (FRV) PORT
  S:    Orphan
@@@ -6287,13 -6244,6 +6289,13 @@@ S:    Maintaine
  F:    drivers/net/ethernet/hisilicon/
  F:    Documentation/devicetree/bindings/net/hisilicon*.txt
  
 +HISILICON PMU DRIVER
 +M:    Shaokun Zhang <zhangshaokun@hisilicon.com>
 +W:    http://www.hisilicon.com
 +S:    Supported
 +F:    drivers/perf/hisilicon
 +F:    Documentation/perf/hisi-pmu.txt
 +
  HISILICON ROCE DRIVER
  M:    Lijun Ou <oulijun@huawei.com>
  M:    Wei Hu(Xavier) <xavier.huwei@huawei.com>
@@@ -6723,7 -6673,7 +6725,7 @@@ F:      include/net/ieee802154_netdev.
  F:    Documentation/networking/ieee802154.txt
  
  IFE PROTOCOL
 -M:    Yotam Gigi <yotamg@mellanox.com>
 +M:    Yotam Gigi <yotam.gi@gmail.com>
  M:    Jamal Hadi Salim <jhs@mojatatu.com>
  F:    net/ife
  F:    include/net/ife.h
@@@ -6785,7 -6735,7 +6787,7 @@@ S:      Maintaine
  F:    drivers/usb/atm/ueagle-atm.c
  
  IMGTEC ASCII LCD DRIVER
 -M:    Paul Burton <paul.burton@imgtec.com>
 +M:    Paul Burton <paul.burton@mips.com>
  S:    Maintained
  F:    Documentation/devicetree/bindings/auxdisplay/img-ascii-lcd.txt
  F:    drivers/auxdisplay/img-ascii-lcd.c
@@@ -6827,6 -6777,8 +6829,6 @@@ F:      drivers/ipack
  
  INFINIBAND SUBSYSTEM
  M:    Doug Ledford <dledford@redhat.com>
 -M:    Sean Hefty <sean.hefty@intel.com>
 -M:    Hal Rosenstock <hal.rosenstock@gmail.com>
  L:    linux-rdma@vger.kernel.org
  W:    http://www.openfabrics.org/
  Q:    http://patchwork.kernel.org/project/linux-rdma/list/
@@@ -6891,7 -6843,9 +6893,7 @@@ L:      linux-crypto@vger.kernel.or
  INTEGRITY MEASUREMENT ARCHITECTURE (IMA)
  M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
  M:    Dmitry Kasatkin <dmitry.kasatkin@gmail.com>
 -L:    linux-ima-devel@lists.sourceforge.net
 -L:    linux-ima-user@lists.sourceforge.net
 -L:    linux-security-module@vger.kernel.org
 +L:    linux-integrity@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git
  S:    Supported
  F:    security/integrity/ima/
@@@ -7481,8 -7435,10 +7483,8 @@@ F:     mm/kasan
  F:    scripts/Makefile.kasan
  
  KCONFIG
 -M:    "Yann E. MORIN" <yann.morin.1998@free.fr>
  L:    linux-kbuild@vger.kernel.org
 -T:    git git://gitorious.org/linux-kconfig/linux-kconfig
 -S:    Maintained
 +S:    Orphan
  F:    Documentation/kbuild/kconfig-language.txt
  F:    scripts/kconfig/
  
@@@ -7511,7 -7467,7 +7513,7 @@@ F:      fs/autofs4
  
  KERNEL BUILD + files below scripts/ (unless maintained elsewhere)
  M:    Masahiro Yamada <yamada.masahiro@socionext.com>
 -M:    Michal Marek <mmarek@suse.com>
 +M:    Michal Marek <michal.lkml@markovi.net>
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
  L:    linux-kbuild@vger.kernel.org
  S:    Maintained
@@@ -7617,7 -7573,7 +7619,7 @@@ F:      arch/mips/include/asm/kvm
  F:    arch/mips/kvm/
  
  KERNEL VIRTUAL MACHINE FOR POWERPC (KVM/powerpc)
 -M:    Alexander Graf <agraf@suse.com>
 +M:    Paul Mackerras <paulus@ozlabs.org>
  L:    kvm-ppc@vger.kernel.org
  W:    http://www.linux-kvm.org/
  T:    git git://github.com/agraf/linux-2.6.git
@@@ -7650,7 -7606,6 +7652,7 @@@ S:      Supporte
  F:    arch/x86/kvm/
  F:    arch/x86/include/uapi/asm/kvm*
  F:    arch/x86/include/asm/kvm*
 +F:    arch/x86/include/asm/pvclock-abi.h
  F:    arch/x86/kernel/kvm.c
  F:    arch/x86/kernel/kvmclock.c
  
@@@ -7673,7 -7628,8 +7675,7 @@@ F:      kernel/kexec
  
  KEYS-ENCRYPTED
  M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 -M:    David Safford <safford@us.ibm.com>
 -L:    linux-security-module@vger.kernel.org
 +L:    linux-integrity@vger.kernel.org
  L:    keyrings@vger.kernel.org
  S:    Supported
  F:    Documentation/security/keys/trusted-encrypted.rst
@@@ -7681,8 -7637,9 +7683,8 @@@ F:      include/keys/encrypted-type.
  F:    security/keys/encrypted-keys/
  
  KEYS-TRUSTED
 -M:    David Safford <safford@us.ibm.com>
  M:    Mimi Zohar <zohar@linux.vnet.ibm.com>
 -L:    linux-security-module@vger.kernel.org
 +L:    linux-integrity@vger.kernel.org
  L:    keyrings@vger.kernel.org
  S:    Supported
  F:    Documentation/security/keys/trusted-encrypted.rst
@@@ -7715,6 -7672,16 +7717,6 @@@ F:     include/linux/kdb.
  F:    include/linux/kgdb.h
  F:    kernel/debug/
  
 -KMEMCHECK
 -M:    Vegard Nossum <vegardno@ifi.uio.no>
 -M:    Pekka Enberg <penberg@kernel.org>
 -S:    Maintained
 -F:    Documentation/dev-tools/kmemcheck.rst
 -F:    arch/x86/include/asm/kmemcheck.h
 -F:    arch/x86/mm/kmemcheck/
 -F:    include/linux/kmemcheck.h
 -F:    mm/kmemcheck.c
 -
  KMEMLEAK
  M:    Catalin Marinas <catalin.marinas@arm.com>
  S:    Maintained
@@@ -7780,11 -7747,6 +7782,11 @@@ S:    Maintaine
  F:    Documentation/scsi/53c700.txt
  F:    drivers/scsi/53c700*
  
 +LEAKING_ADDRESSES
 +M:    Tobin C. Harding <me@tobin.cc>
 +S:    Maintained
 +F:    scripts/leaking_addresses.pl
 +
  LED SUBSYSTEM
  M:    Richard Purdie <rpurdie@rpsys.net>
  M:    Jacek Anaszewski <jacek.anaszewski@gmail.com>
@@@ -8248,7 -8210,6 +8250,7 @@@ F:      Documentation/networking/mac80211-in
  F:    include/net/mac80211.h
  F:    net/mac80211/
  F:    drivers/net/wireless/mac80211_hwsim.[ch]
 +F:    Documentation/networking/mac80211_hwsim/README
  
  MAILBOX API
  M:    Jassi Brar <jassisinghbrar@gmail.com>
@@@ -8784,7 -8745,7 +8786,7 @@@ Q:      http://patchwork.ozlabs.org/project/
  F:    drivers/net/ethernet/mellanox/mlxsw/
  
  MELLANOX FIRMWARE FLASH LIBRARY (mlxfw)
 -M:    Yotam Gigi <yotamg@mellanox.com>
 +M:    mlxsw@mellanox.com
  L:    netdev@vger.kernel.org
  S:    Supported
  W:    http://www.mellanox.com
@@@ -9034,7 -8995,7 +9036,7 @@@ F:      Documentation/mips
  F:    arch/mips/
  
  MIPS BOSTON DEVELOPMENT BOARD
 -M:    Paul Burton <paul.burton@imgtec.com>
 +M:    Paul Burton <paul.burton@mips.com>
  L:    linux-mips@linux-mips.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/clock/img,boston-clock.txt
@@@ -9044,7 -9005,7 +9046,7 @@@ F:      drivers/clk/imgtec/clk-boston.
  F:    include/dt-bindings/clock/boston-clock.h
  
  MIPS GENERIC PLATFORM
 -M:    Paul Burton <paul.burton@imgtec.com>
 +M:    Paul Burton <paul.burton@mips.com>
  L:    linux-mips@linux-mips.org
  S:    Supported
  F:    arch/mips/generic/
@@@ -9060,7 -9021,7 +9062,7 @@@ F:      drivers/*/*loongson1
  F:    drivers/*/*/*loongson1*
  
  MIPS RINT INSTRUCTION EMULATION
 -M:    Aleksandar Markovic <aleksandar.markovic@imgtec.com>
 +M:    Aleksandar Markovic <aleksandar.markovic@mips.com>
  L:    linux-mips@linux-mips.org
  S:    Supported
  F:    arch/mips/math-emu/sp_rint.c
@@@ -9240,6 -9201,12 +9242,6 @@@ F:     include/linux/dt-bindings/mux
  F:    include/linux/mux/
  F:    drivers/mux/
  
 -MULTISOUND SOUND DRIVER
 -M:    Andrew Veliath <andrewtv@usa.net>
 -S:    Maintained
 -F:    Documentation/sound/oss/MultiSound
 -F:    sound/oss/msnd*
 -
  MULTITECH MULTIPORT CARD (ISICOM)
  S:    Orphan
  F:    drivers/tty/isicom.c
@@@ -9248,6 -9215,7 +9250,6 @@@ F:      include/linux/isicom.
  MUSB MULTIPOINT HIGH SPEED DUAL-ROLE CONTROLLER
  M:    Bin Liu <b-liu@ti.com>
  L:    linux-usb@vger.kernel.org
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git
  S:    Maintained
  F:    drivers/usb/musb/
  
@@@ -9443,7 -9411,6 +9445,7 @@@ M:      Florian Fainelli <f.fainelli@gmail.c
  S:    Maintained
  F:    net/dsa/
  F:    include/net/dsa.h
 +F:    include/linux/dsa/
  F:    drivers/net/dsa/
  
  NETWORKING [GENERAL]
@@@ -9464,8 -9431,8 +9466,8 @@@ F:      include/uapi/linux/in.
  F:    include/uapi/linux/net.h
  F:    include/uapi/linux/netdevice.h
  F:    include/uapi/linux/net_namespace.h
 -F:    tools/net/
  F:    tools/testing/selftests/net/
 +F:    lib/net_utils.c
  F:    lib/random32.c
  
  NETWORKING [IPSEC]
@@@ -10067,11 -10034,7 +10069,11 @@@ T: git git://github.com/openrisc/linux.
  L:    openrisc@lists.librecores.org
  W:    http://openrisc.io
  S:    Maintained
 +F:    Documentation/devicetree/bindings/openrisc/
 +F:    Documentation/openrisc/
  F:    arch/openrisc/
 +F:    drivers/irqchip/irq-ompic.c
 +F:    drivers/irqchip/irq-or1k-*
  
  OPENVSWITCH
  M:    Pravin Shelar <pshelar@nicira.com>
@@@ -10089,7 -10052,7 +10091,7 @@@ M:   Stephen Boyd <sboyd@codeaurora.org
  L:    linux-pm@vger.kernel.org
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm.git
 -F:    drivers/base/power/opp/
 +F:    drivers/opp/
  F:    include/linux/pm_opp.h
  F:    Documentation/power/opp.txt
  F:    Documentation/devicetree/bindings/opp/
@@@ -10219,6 -10182,7 +10221,6 @@@ F:   Documentation/parport*.tx
  
  PARAVIRT_OPS INTERFACE
  M:    Juergen Gross <jgross@suse.com>
 -M:    Chris Wright <chrisw@sous-sol.org>
  M:    Alok Kataria <akataria@vmware.com>
  M:    Rusty Russell <rusty@rustcorp.com.au>
  L:    virtualization@lists.linux-foundation.org
@@@ -10376,6 -10340,7 +10378,6 @@@ F:   drivers/pci/host/vmd.
  
  PCI DRIVER FOR MICROSEMI SWITCHTEC
  M:    Kurt Schwemmer <kurt.schwemmer@microsemi.com>
 -M:    Stephen Bates <stephen.bates@microsemi.com>
  M:    Logan Gunthorpe <logang@deltatee.com>
  L:    linux-pci@vger.kernel.org
  S:    Maintained
@@@ -10440,7 -10405,6 +10442,7 @@@ F:   drivers/pci/dwc/*keystone
  
  PCI ENDPOINT SUBSYSTEM
  M:    Kishon Vijay Abraham I <kishon@ti.com>
 +M:    Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
  L:    linux-pci@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kishon/pci-endpoint.git
  S:    Supported
@@@ -10492,15 -10456,6 +10494,15 @@@ F: include/linux/pci
  F:    arch/x86/pci/
  F:    arch/x86/kernel/quirks.c
  
 +PCI NATIVE HOST BRIDGE AND ENDPOINT DRIVERS
 +M:    Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
 +L:    linux-pci@vger.kernel.org
 +Q:    http://patchwork.ozlabs.org/project/linux-pci/list/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git/
 +S:    Supported
 +F:    drivers/pci/host/
 +F:    drivers/pci/dwc/
 +
  PCIE DRIVER FOR AXIS ARTPEC
  M:    Niklas Cassel <niklas.cassel@axis.com>
  M:    Jesper Nilsson <jesper.nilsson@axis.com>
@@@ -10520,6 -10475,7 +10522,6 @@@ F:   drivers/pci/host/pci-thunder-
  
  PCIE DRIVER FOR HISILICON
  M:    Zhou Wang <wangzhou1@hisilicon.com>
 -M:    Gabriele Paoloni <gabriele.paoloni@huawei.com>
  L:    linux-pci@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/pci/hisilicon-pcie.txt
@@@ -10533,14 -10489,6 +10535,14 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/pci/pcie-kirin.txt
  F:    drivers/pci/dwc/pcie-kirin.c
  
 +PCIE DRIVER FOR HISILICON STB
 +M:    Jianguo Sun <sunjianguo1@huawei.com>
 +M:    Shawn Guo <shawn.guo@linaro.org>
 +L:    linux-pci@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/pci/hisilicon-histb-pcie.txt
 +F:    drivers/pci/dwc/pcie-histb.c
 +
  PCIE DRIVER FOR MEDIATEK
  M:    Ryder Lee <ryder.lee@mediatek.com>
  L:    linux-pci@vger.kernel.org
@@@ -10564,13 -10512,6 +10566,13 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/pci/rockchip-pcie.txt
  F:    drivers/pci/host/pcie-rockchip.c
  
 +PCI DRIVER FOR V3 SEMICONDUCTOR V360EPC
 +M:    Linus Walleij <linus.walleij@linaro.org>
 +L:    linux-pci@vger.kernel.org
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/pci/v3-v360epc-pci.txt
 +F:    drivers/pci/host/pci-v3-semi.c
 +
  PCIE DRIVER FOR ST SPEAR13XX
  M:    Pratyush Anand <pratyush.anand@gmail.com>
  L:    linux-pci@vger.kernel.org
@@@ -10621,8 -10562,6 +10623,8 @@@ M:   Peter Zijlstra <peterz@infradead.org
  M:    Ingo Molnar <mingo@redhat.com>
  M:    Arnaldo Carvalho de Melo <acme@kernel.org>
  R:    Alexander Shishkin <alexander.shishkin@linux.intel.com>
 +R:    Jiri Olsa <jolsa@redhat.com>
 +R:    Namhyung Kim <namhyung@kernel.org>
  L:    linux-kernel@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf/core
  S:    Supported
@@@ -10714,7 -10653,6 +10716,7 @@@ PIN CONTROLLER - RENESA
  M:    Laurent Pinchart <laurent.pinchart@ideasonboard.com>
  M:    Geert Uytterhoeven <geert+renesas@glider.be>
  L:    linux-renesas-soc@vger.kernel.org
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git sh-pfc
  S:    Maintained
  F:    drivers/pinctrl/sh-pfc/
  
@@@ -10747,9 -10685,10 +10749,9 @@@ S:  Maintaine
  F:    drivers/pinctrl/spear/
  
  PISTACHIO SOC SUPPORT
 -M:    James Hartley <james.hartley@imgtec.com>
 -M:    Ionela Voinescu <ionela.voinescu@imgtec.com>
 +M:    James Hartley <james.hartley@sondrel.com>
  L:    linux-mips@linux-mips.org
 -S:    Maintained
 +S:    Odd Fixes
  F:    arch/mips/pistachio/
  F:    arch/mips/include/asm/mach-pistachio/
  F:    arch/mips/boot/dts/img/pistachio*
@@@ -10953,7 -10892,7 +10955,7 @@@ S:   Maintaine
  F:    drivers/block/ps3vram.c
  
  PSAMPLE PACKET SAMPLING SUPPORT:
 -M:    Yotam Gigi <yotamg@mellanox.com>
 +M:    Yotam Gigi <yotam.gi@gmail.com>
  S:    Maintained
  F:    net/psample
  F:    include/net/psample.h
@@@ -11096,6 -11035,7 +11098,6 @@@ F:   drivers/mtd/nand/pxa3xx_nand.
  
  QAT DRIVER
  M:    Giovanni Cabiddu <giovanni.cabiddu@intel.com>
 -M:    Salvatore Benedetto <salvatore.benedetto@intel.com>
  L:    qat-linux@intel.com
  S:    Supported
  F:    drivers/crypto/qat/
@@@ -11143,7 -11083,6 +11145,7 @@@ F:   drivers/net/ethernet/qlogic/qede
  
  QLOGIC QL4xxx RDMA DRIVER
  M:    Ram Amrani <Ram.Amrani@cavium.com>
 +M:    Michal Kalderon <Michal.Kalderon@cavium.com>
  M:    Ariel Elior <Ariel.Elior@cavium.com>
  L:    linux-rdma@vger.kernel.org
  S:    Supported
@@@ -11556,7 -11495,6 +11558,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
  S:    Maintained
  F:    Documentation/rfkill.txt
 +F:    Documentation/ABI/stable/sysfs-class-rfkill
  F:    net/rfkill/
  
  RHASHTABLE
@@@ -11578,16 -11516,6 +11580,16 @@@ S: Maintaine
  F:    drivers/mtd/nand/r852.c
  F:    drivers/mtd/nand/r852.h
  
 +RISC-V ARCHITECTURE
 +M:    Palmer Dabbelt <palmer@sifive.com>
 +M:    Albert Ou <albert@sifive.com>
 +L:    patches@groups.riscv.org
 +T:    git https://github.com/riscv/riscv-linux
 +S:    Supported
 +F:    arch/riscv/
 +K:    riscv
 +N:    riscv
 +
  ROCCAT DRIVERS
  M:    Stefan Achatz <erazor_de@users.sourceforge.net>
  W:    http://sourceforge.net/projects/roccat/
@@@ -11596,13 -11524,6 +11598,13 @@@ F: drivers/hid/hid-roccat
  F:    include/linux/hid-roccat*
  F:    Documentation/ABI/*/sysfs-driver-hid-roccat*
  
 +ROCKCHIP RASTER 2D GRAPHIC ACCELERATION UNIT DRIVER
 +M:    Jacob chen <jacob2.chen@rock-chips.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/media/platform/rockchip/rga/
 +F:    Documentation/devicetree/bindings/media/rockchip-rga.txt
 +
  ROCKER DRIVER
  M:    Jiri Pirko <jiri@resnulli.us>
  L:    netdev@vger.kernel.org
@@@ -11847,7 -11768,7 +11849,7 @@@ L:   linux-crypto@vger.kernel.or
  L:    linux-samsung-soc@vger.kernel.org
  S:    Maintained
  F:    drivers/crypto/exynos-rng.c
 -F:    Documentation/devicetree/bindings/rng/samsung,exynos-rng4.txt
 +F:    Documentation/devicetree/bindings/crypto/samsung,exynos-rng4.txt
  
  SAMSUNG FRAMEBUFFER DRIVER
  M:    Jingoo Han <jingoohan1@gmail.com>
@@@ -12130,15 -12051,10 +12132,15 @@@ L:        linux-mmc@vger.kernel.or
  S:    Maintained
  F:    drivers/mmc/host/sdhci-spear.c
  
 +SECURE DIGITAL HOST CONTROLLER INTERFACE (SDHCI) TI OMAP DRIVER
 +M:    Kishon Vijay Abraham I <kishon@ti.com>
 +L:    linux-mmc@vger.kernel.org
 +S:    Maintained
 +F:    drivers/mmc/host/sdhci-omap.c
 +
  SECURE ENCRYPTING DEVICE (SED) OPAL DRIVER
  M:    Scott Bauer <scott.bauer@intel.com>
  M:    Jonathan Derrick <jonathan.derrick@intel.com>
 -M:    Rafael Antognolli <rafael.antognolli@intel.com>
  L:    linux-block@vger.kernel.org
  S:    Supported
  F:    block/sed*
@@@ -12539,10 -12455,7 +12541,10 @@@ M: Shaohua Li <shli@kernel.org
  L:    linux-raid@vger.kernel.org
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/shli/md.git
  S:    Supported
 -F:    drivers/md/
 +F:    drivers/md/Makefile
 +F:    drivers/md/Kconfig
 +F:    drivers/md/md*
 +F:    drivers/md/raid*
  F:    include/linux/raid/
  F:    include/uapi/linux/raid/
  
@@@ -12752,13 -12665,6 +12754,13 @@@ L: stable@vger.kernel.or
  S:    Supported
  F:    Documentation/process/stable-kernel-rules.rst
  
 +STAGING - ATOMISP DRIVER
 +M:    Alan Cox <alan@linux.intel.com>
 +M:    Sakari Ailus <sakari.ailus@linux.intel.com>
 +L:    linux-media@vger.kernel.org
 +S:    Maintained
 +F:    drivers/staging/media/atomisp/
 +
  STAGING - COMEDI
  M:    Ian Abbott <abbotti@mev.co.uk>
  M:    H Hartley Sweeten <hsweeten@visionengravers.com>
@@@ -13002,16 -12908,9 +13004,16 @@@ F: arch/arc/plat-axs10
  F:    arch/arc/boot/dts/ax*
  F:    Documentation/devicetree/bindings/arc/axs10*
  
 +SYNOPSYS DESIGNWARE APB GPIO DRIVER
 +M:    Hoan Tran <hotran@apm.com>
 +L:    linux-gpio@vger.kernel.org
 +S:    Maintained
 +F:    drivers/gpio/gpio-dwapb.c
 +F:    Documentation/devicetree/bindings/gpio/snps-dwapb-gpio.txt
 +
  SYNOPSYS DESIGNWARE DMAC DRIVER
  M:    Viresh Kumar <vireshk@kernel.org>
 -M:    Andy Shevchenko <andriy.shevchenko@linux.intel.com>
 +R:    Andy Shevchenko <andriy.shevchenko@linux.intel.com>
  S:    Maintained
  F:    include/linux/dma/dw.h
  F:    include/linux/platform_data/dma-dw.h
@@@ -13392,18 -13291,8 +13394,18 @@@ M: Andreas Noever <andreas.noever@gmail
  M:    Michael Jamet <michael.jamet@intel.com>
  M:    Mika Westerberg <mika.westerberg@linux.intel.com>
  M:    Yehezkel Bernat <yehezkel.bernat@intel.com>
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/westeri/thunderbolt.git
  S:    Maintained
  F:    drivers/thunderbolt/
 +F:    include/linux/thunderbolt.h
 +
 +THUNDERBOLT NETWORK DRIVER
 +M:    Michael Jamet <michael.jamet@intel.com>
 +M:    Mika Westerberg <mika.westerberg@linux.intel.com>
 +M:    Yehezkel Bernat <yehezkel.bernat@intel.com>
 +L:    netdev@vger.kernel.org
 +S:    Maintained
 +F:    drivers/net/thunderbolt.c
  
  THUNDERX GPIO DRIVER
  M:    David Daney <david.daney@cavium.com>
@@@ -13712,14 -13601,23 +13714,14 @@@ F:        drivers/platform/x86/toshiba-wmi.
  
  TPM DEVICE DRIVER
  M:    Peter Huewe <peterhuewe@gmx.de>
 -M:    Marcel Selhorst <tpmdd@selhorst.net>
  M:    Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
  R:    Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
 -W:    http://tpmdd.sourceforge.net
 -L:    tpmdd-devel@lists.sourceforge.net (moderated for non-subscribers)
 -Q:    https://patchwork.kernel.org/project/tpmdd-devel/list/
 +L:    linux-integrity@vger.kernel.org
 +Q:    https://patchwork.kernel.org/project/linux-integrity/list/
  T:    git git://git.infradead.org/users/jjs/linux-tpmdd.git
  S:    Maintained
  F:    drivers/char/tpm/
  
 -TPM IBM_VTPM DEVICE DRIVER
 -M:    Ashley Lai <ashleydlai@gmail.com>
 -W:    http://tpmdd.sourceforge.net
 -L:    tpmdd-devel@lists.sourceforge.net (moderated for non-subscribers)
 -S:    Maintained
 -F:    drivers/char/tpm/tpm_ibmvtpm*
 -
  TRACING
  M:    Steven Rostedt <rostedt@goodmis.org>
  M:    Ingo Molnar <mingo@redhat.com>
@@@ -13860,7 -13758,7 +13862,7 @@@ UDRAW TABLE
  M:    Bastien Nocera <hadess@hadess.net>
  L:    linux-input@vger.kernel.org
  S:    Maintained
 -F:    drivers/hid/hid-udraw.c
 +F:    drivers/hid/hid-udraw-ps3.c
  
  UFS FILESYSTEM
  M:    Evgeniy Dushistov <dushistov@mail.ru>
@@@ -14383,15 -14281,12 +14385,15 @@@ S:        Maintaine
  F:    include/linux/virtio_vsock.h
  F:    include/uapi/linux/virtio_vsock.h
  F:    include/uapi/linux/vsockmon.h
 +F:    include/uapi/linux/vm_sockets_diag.h
 +F:    net/vmw_vsock/diag.c
  F:    net/vmw_vsock/af_vsock_tap.c
  F:    net/vmw_vsock/virtio_transport_common.c
  F:    net/vmw_vsock/virtio_transport.c
  F:    drivers/net/vsockmon.c
  F:    drivers/vhost/vsock.c
  F:    drivers/vhost/vsock.h
 +F:    tools/testing/vsock/
  
  VIRTIO CONSOLE DRIVER
  M:    Amit Shah <amit@kernel.org>
@@@ -14432,7 -14327,6 +14434,7 @@@ L:   virtualization@lists.linux-foundatio
  L:    kvm@vger.kernel.org
  S:    Supported
  F:    drivers/s390/virtio/
 +F:    arch/s390/include/uapi/asm/virtio-ccw.h
  
  VIRTIO GPU DRIVER
  M:    David Airlie <airlied@linux.ie>
@@@ -14488,7 -14382,7 +14490,7 @@@ M:   Manohar Vanga <manohar.vanga@gmail.c
  M:    Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  L:    devel@driverdev.osuosl.org
  S:    Maintained
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
  F:    Documentation/driver-api/vme.rst
  F:    drivers/staging/vme/
  F:    drivers/vme/
@@@ -14655,6 -14549,7 +14657,6 @@@ L:   wil6210@qca.qualcomm.co
  S:    Supported
  W:    http://wireless.kernel.org/en/users/Drivers/wil6210
  F:    drivers/net/wireless/ath/wil6210/
 -F:    include/uapi/linux/wil6210_uapi.h
  
  WIMAX STACK
  M:    Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
@@@ -14705,7 -14600,6 +14707,7 @@@ F:   Documentation/devicetree/bindings/ex
  F:    Documentation/devicetree/bindings/regulator/arizona-regulator.txt
  F:    Documentation/devicetree/bindings/mfd/arizona.txt
  F:    Documentation/devicetree/bindings/mfd/wm831x.txt
 +F:    Documentation/devicetree/bindings/sound/wlf,arizona.txt
  F:    arch/arm/mach-s3c64xx/mach-crag6410*
  F:    drivers/clk/clk-wm83*.c
  F:    drivers/extcon/extcon-arizona.c
@@@ -14839,7 -14733,6 +14841,7 @@@ F:   arch/x86/xen
  F:    drivers/*/xen-*front.c
  F:    drivers/xen/
  F:    arch/x86/include/asm/xen/
 +F:    arch/x86/include/asm/pvclock-abi.h
  F:    include/xen/
  F:    include/uapi/xen/
  F:    Documentation/ABI/stable/sysfs-hypervisor-xen
@@@ -1,4 -1,3 +1,4 @@@
 +# SPDX-License-Identifier: GPL-2.0
  ifeq ($(CONFIG_OF),y)
  
  dtb-$(CONFIG_ARCH_ALPINE) += \
@@@ -101,6 -100,8 +101,8 @@@ dtb-$(CONFIG_ARCH_BCM_5301X) += 
        bcm4709-tplink-archer-c9-v1.dtb \
        bcm47094-dlink-dir-885l.dtb \
        bcm47094-linksys-panamera.dtb \
+       bcm47094-luxul-abr-4500.dtb \
+       bcm47094-luxul-xbr-4500.dtb \
        bcm47094-luxul-xwr-3100.dtb \
        bcm47094-netgear-r8500.dtb \
        bcm94708.dtb \
        bcm953012hr.dtb \
        bcm953012k.dtb
  dtb-$(CONFIG_ARCH_BCM_53573) += \
+       bcm47189-luxul-xap-1440.dtb \
+       bcm47189-luxul-xap-810.dtb \
        bcm47189-tenda-ac9.dtb \
        bcm947189acdbmr.dtb
  dtb-$(CONFIG_ARCH_BCM_63XX) += \
@@@ -118,6 -121,8 +122,8 @@@ dtb-$(CONFIG_ARCH_BCM_CYGNUS) += 
        bcm911360k.dtb \
        bcm958300k.dtb \
        bcm958305k.dtb
+ dtb-$(CONFIG_ARCH_BCM_HR2) += \
+       bcm53340-ubnt-unifi-switch8.dtb
  dtb-$(CONFIG_ARCH_BCM_MOBILE) += \
        bcm28155-ap.dtb \
        bcm21664-garnet.dtb \
@@@ -177,6 -182,7 +183,7 @@@ dtb-$(CONFIG_ARCH_EXYNOS5) += 
        exynos5420-arndale-octa.dtb \
        exynos5420-peach-pit.dtb \
        exynos5420-smdk5420.dtb \
+       exynos5422-odroidhc1.dtb \
        exynos5422-odroidxu3.dtb \
        exynos5422-odroidxu3-lite.dtb \
        exynos5422-odroidxu4.dtb \
@@@ -342,12 -348,14 +349,14 @@@ dtb-$(CONFIG_SOC_IMX51) += 
        imx51-babbage.dtb \
        imx51-digi-connectcore-jsk.dtb \
        imx51-eukrea-mbimxsd51-baseboard.dtb \
-       imx51-ts4800.dtb
+       imx51-ts4800.dtb \
+       imx51-zii-rdu1.dtb
  dtb-$(CONFIG_SOC_IMX53) += \
        imx53-ard.dtb \
        imx53-cx9020.dtb \
        imx53-m53evk.dtb \
        imx53-mba53.dtb \
+       imx53-ppd.dtb \
        imx53-qsb.dtb \
        imx53-qsrb.dtb \
        imx53-smd.dtb \
@@@ -389,14 -397,19 +398,19 @@@ dtb-$(CONFIG_SOC_IMX6Q) += 
        imx6dl-ts4900.dtb \
        imx6dl-tx6dl-comtft.dtb \
        imx6dl-tx6s-8034.dtb \
+       imx6dl-tx6s-8034-mb7.dtb \
        imx6dl-tx6s-8035.dtb \
+       imx6dl-tx6s-8035-mb7.dtb \
        imx6dl-tx6u-801x.dtb \
+       imx6dl-tx6u-80xx-mb7.dtb \
        imx6dl-tx6u-8033.dtb \
+       imx6dl-tx6u-8033-mb7.dtb \
        imx6dl-tx6u-811x.dtb \
        imx6dl-tx6u-81xx-mb7.dtb \
        imx6dl-udoo.dtb \
        imx6dl-wandboard.dtb \
        imx6dl-wandboard-revb1.dtb \
+       imx6dl-wandboard-revd1.dtb \
        imx6q-apalis-eval.dtb \
        imx6q-apalis-ixora.dtb \
        imx6q-apalis-ixora-v1.1.dtb \
        imx6q-cm-fx6.dtb \
        imx6q-cubox-i.dtb \
        imx6q-dfi-fs700-m60.dtb \
+       imx6q-display5-tianma-tm070-1280x768.dtb \
        imx6q-dmo-edmqmx6.dtb \
        imx6q-evi.dtb \
        imx6q-gk802.dtb \
        imx6q-nitrogen6_som2.dtb \
        imx6q-novena.dtb \
        imx6q-phytec-pbab01.dtb \
+       imx6q-pistachio.dtb \
        imx6q-rex-pro.dtb \
        imx6q-sabreauto.dtb \
        imx6q-sabrelite.dtb \
        imx6q-tx6q-1020.dtb \
        imx6q-tx6q-1020-comtft.dtb \
        imx6q-tx6q-1036.dtb \
+       imx6q-tx6q-1036-mb7.dtb \
+       imx6q-tx6q-10x0-mb7.dtb \
        imx6q-tx6q-1110.dtb \
        imx6q-tx6q-11x0-mb7.dtb \
        imx6q-udoo.dtb \
        imx6q-utilite-pro.dtb \
        imx6q-wandboard.dtb \
        imx6q-wandboard-revb1.dtb \
+       imx6q-wandboard-revd1.dtb \
        imx6q-zii-rdu2.dtb \
        imx6qp-nitrogen6_max.dtb \
        imx6qp-nitrogen6_som2.dtb \
        imx6qp-sabreauto.dtb \
        imx6qp-sabresd.dtb \
+       imx6qp-tx6qp-8037.dtb \
+       imx6qp-tx6qp-8037-mb7.dtb \
+       imx6qp-tx6qp-8137.dtb \
+       imx6qp-tx6qp-8137-mb7.dtb \
+       imx6qp-wandboard-revd1.dtb \
        imx6qp-zii-rdu2.dtb
  dtb-$(CONFIG_SOC_IMX6SL) += \
        imx6sl-evk.dtb \
@@@ -469,6 -492,7 +493,7 @@@ dtb-$(CONFIG_SOC_IMX6SX) += 
        imx6sx-sdb-reva.dtb \
        imx6sx-sdb-sai.dtb \
        imx6sx-sdb.dtb \
+       imx6sx-softing-vining-2000.dtb \
        imx6sx-udoo-neo-basic.dtb \
        imx6sx-udoo-neo-extended.dtb \
        imx6sx-udoo-neo-full.dtb
@@@ -681,6 -705,7 +706,7 @@@ dtb-$(CONFIG_ARCH_ORION5X) += 
        orion5x-netgear-wnr854t.dtb \
        orion5x-rd88f5182-nas.dtb
  dtb-$(CONFIG_ARCH_ACTIONS) += \
+       owl-s500-cubieboard6.dtb \
        owl-s500-guitar-bb-rev-b.dtb
  dtb-$(CONFIG_ARCH_PRIMA2) += \
        prima2-evb.dtb
@@@ -701,7 -726,9 +727,9 @@@ dtb-$(CONFIG_ARCH_QCOM) += 
        qcom-ipq8064-ap148.dtb \
        qcom-msm8660-surf.dtb \
        qcom-msm8960-cdp.dtb \
+       qcom-msm8974-fairphone-fp2.dtb \
        qcom-msm8974-lge-nexus5-hammerhead.dtb \
+       qcom-msm8974-sony-xperia-castor.dtb \
        qcom-msm8974-sony-xperia-honami.dtb \
        qcom-mdm9615-wp8548-mangoh-green.dtb
  dtb-$(CONFIG_ARCH_REALVIEW) += \
@@@ -725,7 -752,9 +753,9 @@@ dtb-$(CONFIG_ARCH_RENESAS) += 
        r8a73a4-ape6evm.dtb \
        r8a7740-armadillo800eva.dtb \
        r8a7743-iwg20d-q7.dtb \
+       r8a7743-iwg20d-q7-dbcm-ca.dtb \
        r8a7743-sk-rzg1m.dtb \
+       r8a7745-iwg22d-sodimm.dtb \
        r8a7745-sk-rzg1e.dtb \
        r8a7778-bockw.dtb \
        r8a7779-marzen.dtb \
@@@ -768,7 -797,8 +798,8 @@@ dtb-$(CONFIG_ARCH_ROCKCHIP) += 
        rk3288-veyron-mickey.dtb \
        rk3288-veyron-minnie.dtb \
        rk3288-veyron-pinky.dtb \
-       rk3288-veyron-speedy.dtb
+       rk3288-veyron-speedy.dtb \
+       rk3288-vyasa.dtb
  dtb-$(CONFIG_ARCH_S3C24XX) += \
        s3c2416-smdk2416.dtb
  dtb-$(CONFIG_ARCH_S3C64XX) += \
@@@ -891,6 -921,7 +922,7 @@@ dtb-$(CONFIG_MACH_SUN7I) += 
        sun7i-a20-olinuxino-lime2.dtb \
        sun7i-a20-olinuxino-lime2-emmc.dtb \
        sun7i-a20-olinuxino-micro.dtb \
+       sun7i-a20-olinuxino-micro-emmc.dtb \
        sun7i-a20-orangepi.dtb \
        sun7i-a20-orangepi-mini.dtb \
        sun7i-a20-pcduino3.dtb \
@@@ -916,6 -947,7 +948,7 @@@ dtb-$(CONFIG_MACH_SUN8I) += 
        sun8i-a83t-allwinner-h8homlet-v2.dtb \
        sun8i-a83t-bananapi-m3.dtb \
        sun8i-a83t-cubietruck-plus.dtb \
+       sun8i-a83t-tbs-a711.dtb \
        sun8i-h2-plus-orangepi-zero.dtb \
        sun8i-h3-bananapi-m2-plus.dtb \
        sun8i-h3-beelink-x2.dtb \
        sun8i-h3-orangepi-plus2e.dtb \
        sun8i-r16-bananapi-m2m.dtb \
        sun8i-r16-parrot.dtb \
+       sun8i-r40-bananapi-m2-ultra.dtb \
        sun8i-v3s-licheepi-zero.dtb \
-       sun8i-v3s-licheepi-zero-dock.dtb
+       sun8i-v3s-licheepi-zero-dock.dtb \
+       sun8i-v40-bananapi-m2-berry.dtb
  dtb-$(CONFIG_MACH_SUN9I) += \
        sun9i-a80-optimus.dtb \
        sun9i-a80-cubieboard4.dtb
@@@ -1070,3 -1104,9 +1105,3 @@@ dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc
        aspeed-bmc-opp-romulus.dtb \
        aspeed-ast2500-evb.dtb
  endif
 -
 -dtstree               := $(srctree)/$(src)
 -dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
 -
 -always                := $(dtb-y)
 -clean-files   := *.dtb
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include "aspeed-g5.dtsi"
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_rgmii2_default &pinctrl_mdio2_default>;
  };
+ &i2c3 {
+       status = "okay";
+       eeprom@50 {
+               compatible = "atmel,24c08";
+               reg = <0x50>;
+               pagesize = <16>;
+       };
+ };
+ &i2c7 {
+       status = "okay";
+       lm75@4d {
+               compatible = "national,lm75";
+               reg = <0x4d>;
+       };
+ };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include "aspeed-g4.dtsi"
@@@ -7,10 -6,6 +7,6 @@@
        model = "Palmetto BMC";
        compatible = "tyan,palmetto-bmc", "aspeed,ast2400";
  
-       aliases {
-               serial4 = &uart5;
-       };
        chosen {
                stdout-path = &uart5;
                bootargs = "console=ttyS4,115200 earlyprintk";
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_rmii1_default>;
  };
+ &i2c0 {
+       status = "okay";
+       eeprom@50 {
+               compatible = "atmel,24c256";
+               reg = <0x50>;
+               pagesize = <64>;
+       };
+       rtc@68 {
+               compatible = "dallas,ds3231";
+               reg = <0x68>;
+       };
+ };
+ &i2c1 {
+       status = "okay";
+ };
+ &i2c2 {
+       status = "okay";
+       tmp423@4c {
+               compatible = "ti,tmp423";
+               reg = <0x4c>;
+       };
+ };
+ &i2c3 {
+       status = "okay";
+ };
+ &i2c4 {
+       status = "okay";
+ };
+ &i2c5 {
+       status = "okay";
+ };
+ &i2c6 {
+       status = "okay";
+ };
+ &i2c7 {
+       status = "okay";
+ };
+ &vuart {
+       status = "okay";
+ };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include "aspeed-g5.dtsi"
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_rmii1_default>;
  };
+ &i2c2 {
+       status = "okay";
+ };
+ &i2c3 {
+       status = "okay";
+ };
+ &i2c4 {
+       status = "okay";
+ };
+ &i2c5 {
+       status = "okay";
+ };
+ &i2c6 {
+       /* PCIe slot 1 (x8) */
+       status = "okay";
+ };
+ &i2c7 {
+       /* PCIe slot 2 (x16) */
+       status = "okay";
+ };
+ &i2c8 {
+       /* PCIe slot 3 (x16) */
+       status = "okay";
+ };
+ &i2c9 {
+       /* PCIe slot 4 (x16) */
+       status = "okay";
+ };
+ &i2c10 {
+       /* PCIe slot 5 (x8) */
+       status = "okay";
+ };
+ &i2c11 {
+       status = "okay";
+       rtc@32 {
+               compatible = "epson,rx8900";
+               reg = <0x32>;
+       };
+ };
+ &i2c12 {
+       status = "okay";
+ };
+ &vuart {
+       status = "okay";
+ };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  #include "skeleton.dtsi"
  
  / {
@@@ -8,6 -7,29 +8,29 @@@
        #size-cells = <1>;
        interrupt-parent = <&vic>;
  
+       aliases {
+               i2c0 = &i2c0;
+               i2c1 = &i2c1;
+               i2c2 = &i2c2;
+               i2c3 = &i2c3;
+               i2c4 = &i2c4;
+               i2c5 = &i2c5;
+               i2c6 = &i2c6;
+               i2c7 = &i2c7;
+               i2c8 = &i2c8;
+               i2c9 = &i2c9;
+               i2c10 = &i2c10;
+               i2c11 = &i2c11;
+               i2c12 = &i2c12;
+               i2c13 = &i2c13;
+               serial0 = &uart1;
+               serial1 = &uart2;
+               serial2 = &uart3;
+               serial3 = &uart4;
+               serial4 = &uart5;
+               serial5 = &vuart;
+       };
        cpus {
                #address-cells = <1>;
                #size-cells = <0>;
                                          clock-frequency = <192000000>;
                                  };
  
-                                 clk_apb: clk_apb@08 {
+                                 clk_apb: clk_apb@8 {
                                          #clock-cells = <0>;
                                          compatible = "aspeed,g4-apb-clock", "fixed-clock";
                                          reg = <0x08>;
  
                                pinctrl: pinctrl {
                                        compatible = "aspeed,g4-pinctrl";
-                                       pinctrl_acpi_default: acpi_default {
-                                               function = "ACPI";
-                                               groups = "ACPI";
-                                       };
-                                       pinctrl_adc0_default: adc0_default {
-                                               function = "ADC0";
-                                               groups = "ADC0";
-                                       };
-                                       pinctrl_adc1_default: adc1_default {
-                                               function = "ADC1";
-                                               groups = "ADC1";
-                                       };
-                                       pinctrl_adc10_default: adc10_default {
-                                               function = "ADC10";
-                                               groups = "ADC10";
-                                       };
-                                       pinctrl_adc11_default: adc11_default {
-                                               function = "ADC11";
-                                               groups = "ADC11";
-                                       };
-                                       pinctrl_adc12_default: adc12_default {
-                                               function = "ADC12";
-                                               groups = "ADC12";
-                                       };
-                                       pinctrl_adc13_default: adc13_default {
-                                               function = "ADC13";
-                                               groups = "ADC13";
-                                       };
-                                       pinctrl_adc14_default: adc14_default {
-                                               function = "ADC14";
-                                               groups = "ADC14";
-                                       };
-                                       pinctrl_adc15_default: adc15_default {
-                                               function = "ADC15";
-                                               groups = "ADC15";
-                                       };
-                                       pinctrl_adc2_default: adc2_default {
-                                               function = "ADC2";
-                                               groups = "ADC2";
-                                       };
-                                       pinctrl_adc3_default: adc3_default {
-                                               function = "ADC3";
-                                               groups = "ADC3";
-                                       };
-                                       pinctrl_adc4_default: adc4_default {
-                                               function = "ADC4";
-                                               groups = "ADC4";
-                                       };
-                                       pinctrl_adc5_default: adc5_default {
-                                               function = "ADC5";
-                                               groups = "ADC5";
-                                       };
-                                       pinctrl_adc6_default: adc6_default {
-                                               function = "ADC6";
-                                               groups = "ADC6";
-                                       };
-                                       pinctrl_adc7_default: adc7_default {
-                                               function = "ADC7";
-                                               groups = "ADC7";
-                                       };
-                                       pinctrl_adc8_default: adc8_default {
-                                               function = "ADC8";
-                                               groups = "ADC8";
-                                       };
-                                       pinctrl_adc9_default: adc9_default {
-                                               function = "ADC9";
-                                               groups = "ADC9";
-                                       };
-                                       pinctrl_bmcint_default: bmcint_default {
-                                               function = "BMCINT";
-                                               groups = "BMCINT";
-                                       };
-                                       pinctrl_ddcclk_default: ddcclk_default {
-                                               function = "DDCCLK";
-                                               groups = "DDCCLK";
-                                       };
-                                       pinctrl_ddcdat_default: ddcdat_default {
-                                               function = "DDCDAT";
-                                               groups = "DDCDAT";
-                                       };
-                                       pinctrl_extrst_default: extrst_default {
-                                               function = "EXTRST";
-                                               groups = "EXTRST";
-                                       };
-                                       pinctrl_flack_default: flack_default {
-                                               function = "FLACK";
-                                               groups = "FLACK";
-                                       };
-                                       pinctrl_flbusy_default: flbusy_default {
-                                               function = "FLBUSY";
-                                               groups = "FLBUSY";
-                                       };
-                                       pinctrl_flwp_default: flwp_default {
-                                               function = "FLWP";
-                                               groups = "FLWP";
-                                       };
-                                       pinctrl_gpid_default: gpid_default {
-                                               function = "GPID";
-                                               groups = "GPID";
-                                       };
-                                       pinctrl_gpid0_default: gpid0_default {
-                                               function = "GPID0";
-                                               groups = "GPID0";
-                                       };
-                                       pinctrl_gpid2_default: gpid2_default {
-                                               function = "GPID2";
-                                               groups = "GPID2";
-                                       };
-                                       pinctrl_gpid4_default: gpid4_default {
-                                               function = "GPID4";
-                                               groups = "GPID4";
-                                       };
-                                       pinctrl_gpid6_default: gpid6_default {
-                                               function = "GPID6";
-                                               groups = "GPID6";
-                                       };
-                                       pinctrl_gpie0_default: gpie0_default {
-                                               function = "GPIE0";
-                                               groups = "GPIE0";
-                                       };
-                                       pinctrl_gpie2_default: gpie2_default {
-                                               function = "GPIE2";
-                                               groups = "GPIE2";
-                                       };
-                                       pinctrl_gpie4_default: gpie4_default {
-                                               function = "GPIE4";
-                                               groups = "GPIE4";
-                                       };
-                                       pinctrl_gpie6_default: gpie6_default {
-                                               function = "GPIE6";
-                                               groups = "GPIE6";
-                                       };
-                                       pinctrl_i2c10_default: i2c10_default {
-                                               function = "I2C10";
-                                               groups = "I2C10";
-                                       };
-                                       pinctrl_i2c11_default: i2c11_default {
-                                               function = "I2C11";
-                                               groups = "I2C11";
-                                       };
-                                       pinctrl_i2c12_default: i2c12_default {
-                                               function = "I2C12";
-                                               groups = "I2C12";
-                                       };
-                                       pinctrl_i2c13_default: i2c13_default {
-                                               function = "I2C13";
-                                               groups = "I2C13";
-                                       };
-                                       pinctrl_i2c14_default: i2c14_default {
-                                               function = "I2C14";
-                                               groups = "I2C14";
-                                       };
-                                       pinctrl_i2c3_default: i2c3_default {
-                                               function = "I2C3";
-                                               groups = "I2C3";
-                                       };
-                                       pinctrl_i2c4_default: i2c4_default {
-                                               function = "I2C4";
-                                               groups = "I2C4";
-                                       };
-                                       pinctrl_i2c5_default: i2c5_default {
-                                               function = "I2C5";
-                                               groups = "I2C5";
-                                       };
-                                       pinctrl_i2c6_default: i2c6_default {
-                                               function = "I2C6";
-                                               groups = "I2C6";
-                                       };
-                                       pinctrl_i2c7_default: i2c7_default {
-                                               function = "I2C7";
-                                               groups = "I2C7";
-                                       };
-                                       pinctrl_i2c8_default: i2c8_default {
-                                               function = "I2C8";
-                                               groups = "I2C8";
-                                       };
-                                       pinctrl_i2c9_default: i2c9_default {
-                                               function = "I2C9";
-                                               groups = "I2C9";
-                                       };
-                                       pinctrl_lpcpd_default: lpcpd_default {
-                                               function = "LPCPD";
-                                               groups = "LPCPD";
-                                       };
-                                       pinctrl_lpcpme_default: lpcpme_default {
-                                               function = "LPCPME";
-                                               groups = "LPCPME";
-                                       };
-                                       pinctrl_lpcrst_default: lpcrst_default {
-                                               function = "LPCRST";
-                                               groups = "LPCRST";
-                                       };
-                                       pinctrl_lpcsmi_default: lpcsmi_default {
-                                               function = "LPCSMI";
-                                               groups = "LPCSMI";
-                                       };
-                                       pinctrl_mac1link_default: mac1link_default {
-                                               function = "MAC1LINK";
-                                               groups = "MAC1LINK";
-                                       };
-                                       pinctrl_mac2link_default: mac2link_default {
-                                               function = "MAC2LINK";
-                                               groups = "MAC2LINK";
-                                       };
-                                       pinctrl_mdio1_default: mdio1_default {
-                                               function = "MDIO1";
-                                               groups = "MDIO1";
-                                       };
-                                       pinctrl_mdio2_default: mdio2_default {
-                                               function = "MDIO2";
-                                               groups = "MDIO2";
-                                       };
-                                       pinctrl_ncts1_default: ncts1_default {
-                                               function = "NCTS1";
-                                               groups = "NCTS1";
-                                       };
-                                       pinctrl_ncts2_default: ncts2_default {
-                                               function = "NCTS2";
-                                               groups = "NCTS2";
-                                       };
-                                       pinctrl_ncts3_default: ncts3_default {
-                                               function = "NCTS3";
-                                               groups = "NCTS3";
-                                       };
-                                       pinctrl_ncts4_default: ncts4_default {
-                                               function = "NCTS4";
-                                               groups = "NCTS4";
-                                       };
-                                       pinctrl_ndcd1_default: ndcd1_default {
-                                               function = "NDCD1";
-                                               groups = "NDCD1";
-                                       };
-                                       pinctrl_ndcd2_default: ndcd2_default {
-                                               function = "NDCD2";
-                                               groups = "NDCD2";
-                                       };
-                                       pinctrl_ndcd3_default: ndcd3_default {
-                                               function = "NDCD3";
-                                               groups = "NDCD3";
-                                       };
-                                       pinctrl_ndcd4_default: ndcd4_default {
-                                               function = "NDCD4";
-                                               groups = "NDCD4";
-                                       };
-                                       pinctrl_ndsr1_default: ndsr1_default {
-                                               function = "NDSR1";
-                                               groups = "NDSR1";
-                                       };
-                                       pinctrl_ndsr2_default: ndsr2_default {
-                                               function = "NDSR2";
-                                               groups = "NDSR2";
-                                       };
-                                       pinctrl_ndsr3_default: ndsr3_default {
-                                               function = "NDSR3";
-                                               groups = "NDSR3";
-                                       };
-                                       pinctrl_ndsr4_default: ndsr4_default {
-                                               function = "NDSR4";
-                                               groups = "NDSR4";
-                                       };
-                                       pinctrl_ndtr1_default: ndtr1_default {
-                                               function = "NDTR1";
-                                               groups = "NDTR1";
-                                       };
-                                       pinctrl_ndtr2_default: ndtr2_default {
-                                               function = "NDTR2";
-                                               groups = "NDTR2";
-                                       };
-                                       pinctrl_ndtr3_default: ndtr3_default {
-                                               function = "NDTR3";
-                                               groups = "NDTR3";
-                                       };
-                                       pinctrl_ndtr4_default: ndtr4_default {
-                                               function = "NDTR4";
-                                               groups = "NDTR4";
-                                       };
-                                       pinctrl_ndts4_default: ndts4_default {
-                                               function = "NDTS4";
-                                               groups = "NDTS4";
-                                       };
-                                       pinctrl_nri1_default: nri1_default {
-                                               function = "NRI1";
-                                               groups = "NRI1";
-                                       };
-                                       pinctrl_nri2_default: nri2_default {
-                                               function = "NRI2";
-                                               groups = "NRI2";
-                                       };
-                                       pinctrl_nri3_default: nri3_default {
-                                               function = "NRI3";
-                                               groups = "NRI3";
-                                       };
-                                       pinctrl_nri4_default: nri4_default {
-                                               function = "NRI4";
-                                               groups = "NRI4";
-                                       };
-                                       pinctrl_nrts1_default: nrts1_default {
-                                               function = "NRTS1";
-                                               groups = "NRTS1";
-                                       };
-                                       pinctrl_nrts2_default: nrts2_default {
-                                               function = "NRTS2";
-                                               groups = "NRTS2";
-                                       };
-                                       pinctrl_nrts3_default: nrts3_default {
-                                               function = "NRTS3";
-                                               groups = "NRTS3";
-                                       };
-                                       pinctrl_oscclk_default: oscclk_default {
-                                               function = "OSCCLK";
-                                               groups = "OSCCLK";
-                                       };
-                                       pinctrl_pwm0_default: pwm0_default {
-                                               function = "PWM0";
-                                               groups = "PWM0";
-                                       };
-                                       pinctrl_pwm1_default: pwm1_default {
-                                               function = "PWM1";
-                                               groups = "PWM1";
-                                       };
-                                       pinctrl_pwm2_default: pwm2_default {
-                                               function = "PWM2";
-                                               groups = "PWM2";
-                                       };
-                                       pinctrl_pwm3_default: pwm3_default {
-                                               function = "PWM3";
-                                               groups = "PWM3";
-                                       };
-                                       pinctrl_pwm4_default: pwm4_default {
-                                               function = "PWM4";
-                                               groups = "PWM4";
-                                       };
-                                       pinctrl_pwm5_default: pwm5_default {
-                                               function = "PWM5";
-                                               groups = "PWM5";
-                                       };
-                                       pinctrl_pwm6_default: pwm6_default {
-                                               function = "PWM6";
-                                               groups = "PWM6";
-                                       };
-                                       pinctrl_pwm7_default: pwm7_default {
-                                               function = "PWM7";
-                                               groups = "PWM7";
-                                       };
-                                       pinctrl_rgmii1_default: rgmii1_default {
-                                               function = "RGMII1";
-                                               groups = "RGMII1";
-                                       };
-                                       pinctrl_rgmii2_default: rgmii2_default {
-                                               function = "RGMII2";
-                                               groups = "RGMII2";
-                                       };
-                                       pinctrl_rmii1_default: rmii1_default {
-                                               function = "RMII1";
-                                               groups = "RMII1";
-                                       };
-                                       pinctrl_rmii2_default: rmii2_default {
-                                               function = "RMII2";
-                                               groups = "RMII2";
-                                       };
-                                       pinctrl_rom16_default: rom16_default {
-                                               function = "ROM16";
-                                               groups = "ROM16";
-                                       };
-                                       pinctrl_rom8_default: rom8_default {
-                                               function = "ROM8";
-                                               groups = "ROM8";
-                                       };
-                                       pinctrl_romcs1_default: romcs1_default {
-                                               function = "ROMCS1";
-                                               groups = "ROMCS1";
-                                       };
-                                       pinctrl_romcs2_default: romcs2_default {
-                                               function = "ROMCS2";
-                                               groups = "ROMCS2";
-                                       };
-                                       pinctrl_romcs3_default: romcs3_default {
-                                               function = "ROMCS3";
-                                               groups = "ROMCS3";
-                                       };
-                                       pinctrl_romcs4_default: romcs4_default {
-                                               function = "ROMCS4";
-                                               groups = "ROMCS4";
-                                       };
-                                       pinctrl_rxd1_default: rxd1_default {
-                                               function = "RXD1";
-                                               groups = "RXD1";
-                                       };
-                                       pinctrl_rxd2_default: rxd2_default {
-                                               function = "RXD2";
-                                               groups = "RXD2";
-                                       };
-                                       pinctrl_rxd3_default: rxd3_default {
-                                               function = "RXD3";
-                                               groups = "RXD3";
-                                       };
-                                       pinctrl_rxd4_default: rxd4_default {
-                                               function = "RXD4";
-                                               groups = "RXD4";
-                                       };
-                                       pinctrl_salt1_default: salt1_default {
-                                               function = "SALT1";
-                                               groups = "SALT1";
-                                       };
-                                       pinctrl_salt2_default: salt2_default {
-                                               function = "SALT2";
-                                               groups = "SALT2";
-                                       };
-                                       pinctrl_salt3_default: salt3_default {
-                                               function = "SALT3";
-                                               groups = "SALT3";
-                                       };
-                                       pinctrl_salt4_default: salt4_default {
-                                               function = "SALT4";
-                                               groups = "SALT4";
-                                       };
-                                       pinctrl_sd1_default: sd1_default {
-                                               function = "SD1";
-                                               groups = "SD1";
-                                       };
-                                       pinctrl_sd2_default: sd2_default {
-                                               function = "SD2";
-                                               groups = "SD2";
-                                       };
-                                       pinctrl_sgpmck_default: sgpmck_default {
-                                               function = "SGPMCK";
-                                               groups = "SGPMCK";
-                                       };
-                                       pinctrl_sgpmi_default: sgpmi_default {
-                                               function = "SGPMI";
-                                               groups = "SGPMI";
-                                       };
-                                       pinctrl_sgpmld_default: sgpmld_default {
-                                               function = "SGPMLD";
-                                               groups = "SGPMLD";
-                                       };
-                                       pinctrl_sgpmo_default: sgpmo_default {
-                                               function = "SGPMO";
-                                               groups = "SGPMO";
-                                       };
-                                       pinctrl_sgpsck_default: sgpsck_default {
-                                               function = "SGPSCK";
-                                               groups = "SGPSCK";
-                                       };
-                                       pinctrl_sgpsi0_default: sgpsi0_default {
-                                               function = "SGPSI0";
-                                               groups = "SGPSI0";
-                                       };
-                                       pinctrl_sgpsi1_default: sgpsi1_default {
-                                               function = "SGPSI1";
-                                               groups = "SGPSI1";
-                                       };
-                                       pinctrl_sgpsld_default: sgpsld_default {
-                                               function = "SGPSLD";
-                                               groups = "SGPSLD";
-                                       };
-                                       pinctrl_sioonctrl_default: sioonctrl_default {
-                                               function = "SIOONCTRL";
-                                               groups = "SIOONCTRL";
-                                       };
-                                       pinctrl_siopbi_default: siopbi_default {
-                                               function = "SIOPBI";
-                                               groups = "SIOPBI";
-                                       };
-                                       pinctrl_siopbo_default: siopbo_default {
-                                               function = "SIOPBO";
-                                               groups = "SIOPBO";
-                                       };
-                                       pinctrl_siopwreq_default: siopwreq_default {
-                                               function = "SIOPWREQ";
-                                               groups = "SIOPWREQ";
-                                       };
-                                       pinctrl_siopwrgd_default: siopwrgd_default {
-                                               function = "SIOPWRGD";
-                                               groups = "SIOPWRGD";
-                                       };
-                                       pinctrl_sios3_default: sios3_default {
-                                               function = "SIOS3";
-                                               groups = "SIOS3";
-                                       };
-                                       pinctrl_sios5_default: sios5_default {
-                                               function = "SIOS5";
-                                               groups = "SIOS5";
-                                       };
-                                       pinctrl_siosci_default: siosci_default {
-                                               function = "SIOSCI";
-                                               groups = "SIOSCI";
-                                       };
-                                       pinctrl_spi1_default: spi1_default {
-                                               function = "SPI1";
-                                               groups = "SPI1";
-                                       };
-                                       pinctrl_spi1debug_default: spi1debug_default {
-                                               function = "SPI1DEBUG";
-                                               groups = "SPI1DEBUG";
-                                       };
-                                       pinctrl_spi1passthru_default: spi1passthru_default {
-                                               function = "SPI1PASSTHRU";
-                                               groups = "SPI1PASSTHRU";
-                                       };
-                                       pinctrl_spics1_default: spics1_default {
-                                               function = "SPICS1";
-                                               groups = "SPICS1";
-                                       };
-                                       pinctrl_timer3_default: timer3_default {
-                                               function = "TIMER3";
-                                               groups = "TIMER3";
-                                       };
-                                       pinctrl_timer4_default: timer4_default {
-                                               function = "TIMER4";
-                                               groups = "TIMER4";
-                                       };
-                                       pinctrl_timer5_default: timer5_default {
-                                               function = "TIMER5";
-                                               groups = "TIMER5";
-                                       };
-                                       pinctrl_timer6_default: timer6_default {
-                                               function = "TIMER6";
-                                               groups = "TIMER6";
-                                       };
-                                       pinctrl_timer7_default: timer7_default {
-                                               function = "TIMER7";
-                                               groups = "TIMER7";
-                                       };
-                                       pinctrl_timer8_default: timer8_default {
-                                               function = "TIMER8";
-                                               groups = "TIMER8";
-                                       };
-                                       pinctrl_txd1_default: txd1_default {
-                                               function = "TXD1";
-                                               groups = "TXD1";
-                                       };
-                                       pinctrl_txd2_default: txd2_default {
-                                               function = "TXD2";
-                                               groups = "TXD2";
-                                       };
-                                       pinctrl_txd3_default: txd3_default {
-                                               function = "TXD3";
-                                               groups = "TXD3";
-                                       };
-                                       pinctrl_txd4_default: txd4_default {
-                                               function = "TXD4";
-                                               groups = "TXD4";
-                                       };
-                                       pinctrl_uart6_default: uart6_default {
-                                               function = "UART6";
-                                               groups = "UART6";
-                                       };
-                                       pinctrl_usbcki_default: usbcki_default {
-                                               function = "USBCKI";
-                                               groups = "USBCKI";
-                                       };
-                                       pinctrl_vgabios_rom_default: vgabios_rom_default {
-                                               function = "VGABIOS_ROM";
-                                               groups = "VGABIOS_ROM";
-                                       };
-                                       pinctrl_vgahs_default: vgahs_default {
-                                               function = "VGAHS";
-                                               groups = "VGAHS";
-                                       };
-                                       pinctrl_vgavs_default: vgavs_default {
-                                               function = "VGAVS";
-                                               groups = "VGAVS";
-                                       };
-                                       pinctrl_vpi18_default: vpi18_default {
-                                               function = "VPI18";
-                                               groups = "VPI18";
-                                       };
-                                       pinctrl_vpi24_default: vpi24_default {
-                                               function = "VPI24";
-                                               groups = "VPI24";
-                                       };
-                                       pinctrl_vpi30_default: vpi30_default {
-                                               function = "VPI30";
-                                               groups = "VPI30";
-                                       };
-                                       pinctrl_vpo12_default: vpo12_default {
-                                               function = "VPO12";
-                                               groups = "VPO12";
-                                       };
-                                       pinctrl_vpo24_default: vpo24_default {
-                                               function = "VPO24";
-                                               groups = "VPO24";
-                                       };
-                                       pinctrl_wdtrst1_default: wdtrst1_default {
-                                               function = "WDTRST1";
-                                               groups = "WDTRST1";
-                                       };
-                                       pinctrl_wdtrst2_default: wdtrst2_default {
-                                               function = "WDTRST2";
-                                               groups = "WDTRST2";
-                                       };
                                };
                        };
  
+                       adc: adc@1e6e9000 {
+                               compatible = "aspeed,ast2400-adc";
+                               reg = <0x1e6e9000 0xb0>;
+                               clocks = <&clk_apb>;
+                               #io-channel-cells = <1>;
+                               status = "disabled";
+                       };
                        sram@1e720000 {
                                compatible = "mmio-sram";
                                reg = <0x1e720000 0x8000>;      // 32K
                                clock-names = "PCLK";
                        };
  
-                       wdt1: wdt@1e785000 {
-                               compatible = "aspeed,ast2400-wdt";
-                               reg = <0x1e785000 0x1c>;
-                               interrupts = <27>;
-                       };
-                       wdt2: wdt@1e785020 {
-                               compatible = "aspeed,ast2400-wdt";
-                               reg = <0x1e785020 0x1c>;
-                               interrupts = <27>;
-                               clocks = <&clk_apb>;
-                               status = "disabled";
-                       };
                        uart1: serial@1e783000 {
                                compatible = "ns16550a";
-                               reg = <0x1e783000 0x1000>;
+                               reg = <0x1e783000 0x20>;
                                reg-shift = <2>;
                                interrupts = <9>;
                                clocks = <&clk_uart>;
                                status = "disabled";
                        };
  
-                       uart2: serial@1e78d000 {
+                       uart5: serial@1e784000 {
                                compatible = "ns16550a";
-                               reg = <0x1e78d000 0x1000>;
+                               reg = <0x1e784000 0x20>;
                                reg-shift = <2>;
-                               interrupts = <32>;
+                               interrupts = <10>;
                                clocks = <&clk_uart>;
                                no-loopback-test;
                                status = "disabled";
                        };
  
-                       uart3: serial@1e78e000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e78e000 0x1000>;
+                       wdt1: watchdog@1e785000 {
+                               compatible = "aspeed,ast2400-wdt";
+                               reg = <0x1e785000 0x1c>;
+                       };
+                       wdt2: watchdog@1e785020 {
+                               compatible = "aspeed,ast2400-wdt";
+                               reg = <0x1e785020 0x1c>;
+                       };
+                       vuart: serial@1e787000 {
+                               compatible = "aspeed,ast2400-vuart";
+                               reg = <0x1e787000 0x40>;
                                reg-shift = <2>;
-                               interrupts = <33>;
+                               interrupts = <10>;
                                clocks = <&clk_uart>;
                                no-loopback-test;
                                status = "disabled";
                        };
  
-                       uart4: serial@1e78f000 {
+                       uart2: serial@1e78d000 {
                                compatible = "ns16550a";
-                               reg = <0x1e78f000 0x1000>;
+                               reg = <0x1e78d000 0x20>;
                                reg-shift = <2>;
-                               interrupts = <34>;
+                               interrupts = <32>;
                                clocks = <&clk_uart>;
                                no-loopback-test;
                                status = "disabled";
                        };
  
-                       uart5: serial@1e784000 {
+                       uart3: serial@1e78e000 {
                                compatible = "ns16550a";
-                               reg = <0x1e784000 0x1000>;
+                               reg = <0x1e78e000 0x20>;
                                reg-shift = <2>;
-                               interrupts = <10>;
+                               interrupts = <33>;
                                clocks = <&clk_uart>;
-                               current-speed = <38400>;
                                no-loopback-test;
                                status = "disabled";
                        };
  
-                       uart6: serial@1e787000 {
+                       uart4: serial@1e78f000 {
                                compatible = "ns16550a";
-                               reg = <0x1e787000 0x1000>;
+                               reg = <0x1e78f000 0x20>;
                                reg-shift = <2>;
-                               interrupts = <10>;
+                               interrupts = <34>;
                                clocks = <&clk_uart>;
                                no-loopback-test;
                                status = "disabled";
                        };
  
-                       adc: adc@1e6e9000 {
-                               compatible = "aspeed,ast2400-adc";
-                               reg = <0x1e6e9000 0xb0>;
-                               clocks = <&clk_apb>;
-                               #io-channel-cells = <1>;
-                               status = "disabled";
+                       i2c: i2c@1e78a000 {
+                               compatible = "simple-bus";
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+                               ranges = <0 0x1e78a000 0x1000>;
                        };
                };
        };
  };
+ &i2c {
+       i2c_ic: interrupt-controller@0 {
+               #interrupt-cells = <1>;
+               compatible = "aspeed,ast2400-i2c-ic";
+               reg = <0x0 0x40>;
+               interrupts = <12>;
+               interrupt-controller;
+       };
+       i2c0: i2c-bus@40 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x40 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <0>;
+               interrupt-parent = <&i2c_ic>;
+               status = "disabled";
+               /* Does not need pinctrl properties */
+       };
+       i2c1: i2c-bus@80 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x80 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <1>;
+               interrupt-parent = <&i2c_ic>;
+               status = "disabled";
+               /* Does not need pinctrl properties */
+       };
+       i2c2: i2c-bus@c0 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0xc0 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <2>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c3_default>;
+               status = "disabled";
+       };
+       i2c3: i2c-bus@100 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x100 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <3>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c4_default>;
+               status = "disabled";
+       };
+       i2c4: i2c-bus@140 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x140 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <4>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c5_default>;
+               status = "disabled";
+       };
+       i2c5: i2c-bus@180 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x180 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <5>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c6_default>;
+               status = "disabled";
+       };
+       i2c6: i2c-bus@1c0 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x1c0 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <6>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c7_default>;
+               status = "disabled";
+       };
+       i2c7: i2c-bus@300 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x300 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <7>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c8_default>;
+               status = "disabled";
+       };
+       i2c8: i2c-bus@340 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x340 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <8>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c9_default>;
+               status = "disabled";
+       };
+       i2c9: i2c-bus@380 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x380 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <9>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c10_default>;
+               status = "disabled";
+       };
+       i2c10: i2c-bus@3c0 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x3c0 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <10>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c11_default>;
+               status = "disabled";
+       };
+       i2c11: i2c-bus@400 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x400 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <11>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c12_default>;
+               status = "disabled";
+       };
+       i2c12: i2c-bus@440 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x440 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <12>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c13_default>;
+               status = "disabled";
+       };
+       i2c13: i2c-bus@480 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x480 0x40>;
+               compatible = "aspeed,ast2400-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <13>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c14_default>;
+               status = "disabled";
+       };
+ };
+ &pinctrl {
+       pinctrl_acpi_default: acpi_default {
+               function = "ACPI";
+               groups = "ACPI";
+       };
+       pinctrl_adc0_default: adc0_default {
+               function = "ADC0";
+               groups = "ADC0";
+       };
+       pinctrl_adc1_default: adc1_default {
+               function = "ADC1";
+               groups = "ADC1";
+       };
+       pinctrl_adc10_default: adc10_default {
+               function = "ADC10";
+               groups = "ADC10";
+       };
+       pinctrl_adc11_default: adc11_default {
+               function = "ADC11";
+               groups = "ADC11";
+       };
+       pinctrl_adc12_default: adc12_default {
+               function = "ADC12";
+               groups = "ADC12";
+       };
+       pinctrl_adc13_default: adc13_default {
+               function = "ADC13";
+               groups = "ADC13";
+       };
+       pinctrl_adc14_default: adc14_default {
+               function = "ADC14";
+               groups = "ADC14";
+       };
+       pinctrl_adc15_default: adc15_default {
+               function = "ADC15";
+               groups = "ADC15";
+       };
+       pinctrl_adc2_default: adc2_default {
+               function = "ADC2";
+               groups = "ADC2";
+       };
+       pinctrl_adc3_default: adc3_default {
+               function = "ADC3";
+               groups = "ADC3";
+       };
+       pinctrl_adc4_default: adc4_default {
+               function = "ADC4";
+               groups = "ADC4";
+       };
+       pinctrl_adc5_default: adc5_default {
+               function = "ADC5";
+               groups = "ADC5";
+       };
+       pinctrl_adc6_default: adc6_default {
+               function = "ADC6";
+               groups = "ADC6";
+       };
+       pinctrl_adc7_default: adc7_default {
+               function = "ADC7";
+               groups = "ADC7";
+       };
+       pinctrl_adc8_default: adc8_default {
+               function = "ADC8";
+               groups = "ADC8";
+       };
+       pinctrl_adc9_default: adc9_default {
+               function = "ADC9";
+               groups = "ADC9";
+       };
+       pinctrl_bmcint_default: bmcint_default {
+               function = "BMCINT";
+               groups = "BMCINT";
+       };
+       pinctrl_ddcclk_default: ddcclk_default {
+               function = "DDCCLK";
+               groups = "DDCCLK";
+       };
+       pinctrl_ddcdat_default: ddcdat_default {
+               function = "DDCDAT";
+               groups = "DDCDAT";
+       };
+       pinctrl_extrst_default: extrst_default {
+               function = "EXTRST";
+               groups = "EXTRST";
+       };
+       pinctrl_flack_default: flack_default {
+               function = "FLACK";
+               groups = "FLACK";
+       };
+       pinctrl_flbusy_default: flbusy_default {
+               function = "FLBUSY";
+               groups = "FLBUSY";
+       };
+       pinctrl_flwp_default: flwp_default {
+               function = "FLWP";
+               groups = "FLWP";
+       };
+       pinctrl_gpid_default: gpid_default {
+               function = "GPID";
+               groups = "GPID";
+       };
+       pinctrl_gpid0_default: gpid0_default {
+               function = "GPID0";
+               groups = "GPID0";
+       };
+       pinctrl_gpid2_default: gpid2_default {
+               function = "GPID2";
+               groups = "GPID2";
+       };
+       pinctrl_gpid4_default: gpid4_default {
+               function = "GPID4";
+               groups = "GPID4";
+       };
+       pinctrl_gpid6_default: gpid6_default {
+               function = "GPID6";
+               groups = "GPID6";
+       };
+       pinctrl_gpie0_default: gpie0_default {
+               function = "GPIE0";
+               groups = "GPIE0";
+       };
+       pinctrl_gpie2_default: gpie2_default {
+               function = "GPIE2";
+               groups = "GPIE2";
+       };
+       pinctrl_gpie4_default: gpie4_default {
+               function = "GPIE4";
+               groups = "GPIE4";
+       };
+       pinctrl_gpie6_default: gpie6_default {
+               function = "GPIE6";
+               groups = "GPIE6";
+       };
+       pinctrl_i2c10_default: i2c10_default {
+               function = "I2C10";
+               groups = "I2C10";
+       };
+       pinctrl_i2c11_default: i2c11_default {
+               function = "I2C11";
+               groups = "I2C11";
+       };
+       pinctrl_i2c12_default: i2c12_default {
+               function = "I2C12";
+               groups = "I2C12";
+       };
+       pinctrl_i2c13_default: i2c13_default {
+               function = "I2C13";
+               groups = "I2C13";
+       };
+       pinctrl_i2c14_default: i2c14_default {
+               function = "I2C14";
+               groups = "I2C14";
+       };
+       pinctrl_i2c3_default: i2c3_default {
+               function = "I2C3";
+               groups = "I2C3";
+       };
+       pinctrl_i2c4_default: i2c4_default {
+               function = "I2C4";
+               groups = "I2C4";
+       };
+       pinctrl_i2c5_default: i2c5_default {
+               function = "I2C5";
+               groups = "I2C5";
+       };
+       pinctrl_i2c6_default: i2c6_default {
+               function = "I2C6";
+               groups = "I2C6";
+       };
+       pinctrl_i2c7_default: i2c7_default {
+               function = "I2C7";
+               groups = "I2C7";
+       };
+       pinctrl_i2c8_default: i2c8_default {
+               function = "I2C8";
+               groups = "I2C8";
+       };
+       pinctrl_i2c9_default: i2c9_default {
+               function = "I2C9";
+               groups = "I2C9";
+       };
+       pinctrl_lpcpd_default: lpcpd_default {
+               function = "LPCPD";
+               groups = "LPCPD";
+       };
+       pinctrl_lpcpme_default: lpcpme_default {
+               function = "LPCPME";
+               groups = "LPCPME";
+       };
+       pinctrl_lpcrst_default: lpcrst_default {
+               function = "LPCRST";
+               groups = "LPCRST";
+       };
+       pinctrl_lpcsmi_default: lpcsmi_default {
+               function = "LPCSMI";
+               groups = "LPCSMI";
+       };
+       pinctrl_mac1link_default: mac1link_default {
+               function = "MAC1LINK";
+               groups = "MAC1LINK";
+       };
+       pinctrl_mac2link_default: mac2link_default {
+               function = "MAC2LINK";
+               groups = "MAC2LINK";
+       };
+       pinctrl_mdio1_default: mdio1_default {
+               function = "MDIO1";
+               groups = "MDIO1";
+       };
+       pinctrl_mdio2_default: mdio2_default {
+               function = "MDIO2";
+               groups = "MDIO2";
+       };
+       pinctrl_ncts1_default: ncts1_default {
+               function = "NCTS1";
+               groups = "NCTS1";
+       };
+       pinctrl_ncts2_default: ncts2_default {
+               function = "NCTS2";
+               groups = "NCTS2";
+       };
+       pinctrl_ncts3_default: ncts3_default {
+               function = "NCTS3";
+               groups = "NCTS3";
+       };
+       pinctrl_ncts4_default: ncts4_default {
+               function = "NCTS4";
+               groups = "NCTS4";
+       };
+       pinctrl_ndcd1_default: ndcd1_default {
+               function = "NDCD1";
+               groups = "NDCD1";
+       };
+       pinctrl_ndcd2_default: ndcd2_default {
+               function = "NDCD2";
+               groups = "NDCD2";
+       };
+       pinctrl_ndcd3_default: ndcd3_default {
+               function = "NDCD3";
+               groups = "NDCD3";
+       };
+       pinctrl_ndcd4_default: ndcd4_default {
+               function = "NDCD4";
+               groups = "NDCD4";
+       };
+       pinctrl_ndsr1_default: ndsr1_default {
+               function = "NDSR1";
+               groups = "NDSR1";
+       };
+       pinctrl_ndsr2_default: ndsr2_default {
+               function = "NDSR2";
+               groups = "NDSR2";
+       };
+       pinctrl_ndsr3_default: ndsr3_default {
+               function = "NDSR3";
+               groups = "NDSR3";
+       };
+       pinctrl_ndsr4_default: ndsr4_default {
+               function = "NDSR4";
+               groups = "NDSR4";
+       };
+       pinctrl_ndtr1_default: ndtr1_default {
+               function = "NDTR1";
+               groups = "NDTR1";
+       };
+       pinctrl_ndtr2_default: ndtr2_default {
+               function = "NDTR2";
+               groups = "NDTR2";
+       };
+       pinctrl_ndtr3_default: ndtr3_default {
+               function = "NDTR3";
+               groups = "NDTR3";
+       };
+       pinctrl_ndtr4_default: ndtr4_default {
+               function = "NDTR4";
+               groups = "NDTR4";
+       };
+       pinctrl_ndts4_default: ndts4_default {
+               function = "NDTS4";
+               groups = "NDTS4";
+       };
+       pinctrl_nri1_default: nri1_default {
+               function = "NRI1";
+               groups = "NRI1";
+       };
+       pinctrl_nri2_default: nri2_default {
+               function = "NRI2";
+               groups = "NRI2";
+       };
+       pinctrl_nri3_default: nri3_default {
+               function = "NRI3";
+               groups = "NRI3";
+       };
+       pinctrl_nri4_default: nri4_default {
+               function = "NRI4";
+               groups = "NRI4";
+       };
+       pinctrl_nrts1_default: nrts1_default {
+               function = "NRTS1";
+               groups = "NRTS1";
+       };
+       pinctrl_nrts2_default: nrts2_default {
+               function = "NRTS2";
+               groups = "NRTS2";
+       };
+       pinctrl_nrts3_default: nrts3_default {
+               function = "NRTS3";
+               groups = "NRTS3";
+       };
+       pinctrl_oscclk_default: oscclk_default {
+               function = "OSCCLK";
+               groups = "OSCCLK";
+       };
+       pinctrl_pwm0_default: pwm0_default {
+               function = "PWM0";
+               groups = "PWM0";
+       };
+       pinctrl_pwm1_default: pwm1_default {
+               function = "PWM1";
+               groups = "PWM1";
+       };
+       pinctrl_pwm2_default: pwm2_default {
+               function = "PWM2";
+               groups = "PWM2";
+       };
+       pinctrl_pwm3_default: pwm3_default {
+               function = "PWM3";
+               groups = "PWM3";
+       };
+       pinctrl_pwm4_default: pwm4_default {
+               function = "PWM4";
+               groups = "PWM4";
+       };
+       pinctrl_pwm5_default: pwm5_default {
+               function = "PWM5";
+               groups = "PWM5";
+       };
+       pinctrl_pwm6_default: pwm6_default {
+               function = "PWM6";
+               groups = "PWM6";
+       };
+       pinctrl_pwm7_default: pwm7_default {
+               function = "PWM7";
+               groups = "PWM7";
+       };
+       pinctrl_rgmii1_default: rgmii1_default {
+               function = "RGMII1";
+               groups = "RGMII1";
+       };
+       pinctrl_rgmii2_default: rgmii2_default {
+               function = "RGMII2";
+               groups = "RGMII2";
+       };
+       pinctrl_rmii1_default: rmii1_default {
+               function = "RMII1";
+               groups = "RMII1";
+       };
+       pinctrl_rmii2_default: rmii2_default {
+               function = "RMII2";
+               groups = "RMII2";
+       };
+       pinctrl_rom16_default: rom16_default {
+               function = "ROM16";
+               groups = "ROM16";
+       };
+       pinctrl_rom8_default: rom8_default {
+               function = "ROM8";
+               groups = "ROM8";
+       };
+       pinctrl_romcs1_default: romcs1_default {
+               function = "ROMCS1";
+               groups = "ROMCS1";
+       };
+       pinctrl_romcs2_default: romcs2_default {
+               function = "ROMCS2";
+               groups = "ROMCS2";
+       };
+       pinctrl_romcs3_default: romcs3_default {
+               function = "ROMCS3";
+               groups = "ROMCS3";
+       };
+       pinctrl_romcs4_default: romcs4_default {
+               function = "ROMCS4";
+               groups = "ROMCS4";
+       };
+       pinctrl_rxd1_default: rxd1_default {
+               function = "RXD1";
+               groups = "RXD1";
+       };
+       pinctrl_rxd2_default: rxd2_default {
+               function = "RXD2";
+               groups = "RXD2";
+       };
+       pinctrl_rxd3_default: rxd3_default {
+               function = "RXD3";
+               groups = "RXD3";
+       };
+       pinctrl_rxd4_default: rxd4_default {
+               function = "RXD4";
+               groups = "RXD4";
+       };
+       pinctrl_salt1_default: salt1_default {
+               function = "SALT1";
+               groups = "SALT1";
+       };
+       pinctrl_salt2_default: salt2_default {
+               function = "SALT2";
+               groups = "SALT2";
+       };
+       pinctrl_salt3_default: salt3_default {
+               function = "SALT3";
+               groups = "SALT3";
+       };
+       pinctrl_salt4_default: salt4_default {
+               function = "SALT4";
+               groups = "SALT4";
+       };
+       pinctrl_sd1_default: sd1_default {
+               function = "SD1";
+               groups = "SD1";
+       };
+       pinctrl_sd2_default: sd2_default {
+               function = "SD2";
+               groups = "SD2";
+       };
+       pinctrl_sgpmck_default: sgpmck_default {
+               function = "SGPMCK";
+               groups = "SGPMCK";
+       };
+       pinctrl_sgpmi_default: sgpmi_default {
+               function = "SGPMI";
+               groups = "SGPMI";
+       };
+       pinctrl_sgpmld_default: sgpmld_default {
+               function = "SGPMLD";
+               groups = "SGPMLD";
+       };
+       pinctrl_sgpmo_default: sgpmo_default {
+               function = "SGPMO";
+               groups = "SGPMO";
+       };
+       pinctrl_sgpsck_default: sgpsck_default {
+               function = "SGPSCK";
+               groups = "SGPSCK";
+       };
+       pinctrl_sgpsi0_default: sgpsi0_default {
+               function = "SGPSI0";
+               groups = "SGPSI0";
+       };
+       pinctrl_sgpsi1_default: sgpsi1_default {
+               function = "SGPSI1";
+               groups = "SGPSI1";
+       };
+       pinctrl_sgpsld_default: sgpsld_default {
+               function = "SGPSLD";
+               groups = "SGPSLD";
+       };
+       pinctrl_sioonctrl_default: sioonctrl_default {
+               function = "SIOONCTRL";
+               groups = "SIOONCTRL";
+       };
+       pinctrl_siopbi_default: siopbi_default {
+               function = "SIOPBI";
+               groups = "SIOPBI";
+       };
+       pinctrl_siopbo_default: siopbo_default {
+               function = "SIOPBO";
+               groups = "SIOPBO";
+       };
+       pinctrl_siopwreq_default: siopwreq_default {
+               function = "SIOPWREQ";
+               groups = "SIOPWREQ";
+       };
+       pinctrl_siopwrgd_default: siopwrgd_default {
+               function = "SIOPWRGD";
+               groups = "SIOPWRGD";
+       };
+       pinctrl_sios3_default: sios3_default {
+               function = "SIOS3";
+               groups = "SIOS3";
+       };
+       pinctrl_sios5_default: sios5_default {
+               function = "SIOS5";
+               groups = "SIOS5";
+       };
+       pinctrl_siosci_default: siosci_default {
+               function = "SIOSCI";
+               groups = "SIOSCI";
+       };
+       pinctrl_spi1_default: spi1_default {
+               function = "SPI1";
+               groups = "SPI1";
+       };
+       pinctrl_spi1debug_default: spi1debug_default {
+               function = "SPI1DEBUG";
+               groups = "SPI1DEBUG";
+       };
+       pinctrl_spi1passthru_default: spi1passthru_default {
+               function = "SPI1PASSTHRU";
+               groups = "SPI1PASSTHRU";
+       };
+       pinctrl_spics1_default: spics1_default {
+               function = "SPICS1";
+               groups = "SPICS1";
+       };
+       pinctrl_timer3_default: timer3_default {
+               function = "TIMER3";
+               groups = "TIMER3";
+       };
+       pinctrl_timer4_default: timer4_default {
+               function = "TIMER4";
+               groups = "TIMER4";
+       };
+       pinctrl_timer5_default: timer5_default {
+               function = "TIMER5";
+               groups = "TIMER5";
+       };
+       pinctrl_timer6_default: timer6_default {
+               function = "TIMER6";
+               groups = "TIMER6";
+       };
+       pinctrl_timer7_default: timer7_default {
+               function = "TIMER7";
+               groups = "TIMER7";
+       };
+       pinctrl_timer8_default: timer8_default {
+               function = "TIMER8";
+               groups = "TIMER8";
+       };
+       pinctrl_txd1_default: txd1_default {
+               function = "TXD1";
+               groups = "TXD1";
+       };
+       pinctrl_txd2_default: txd2_default {
+               function = "TXD2";
+               groups = "TXD2";
+       };
+       pinctrl_txd3_default: txd3_default {
+               function = "TXD3";
+               groups = "TXD3";
+       };
+       pinctrl_txd4_default: txd4_default {
+               function = "TXD4";
+               groups = "TXD4";
+       };
+       pinctrl_uart6_default: uart6_default {
+               function = "UART6";
+               groups = "UART6";
+       };
+       pinctrl_usbcki_default: usbcki_default {
+               function = "USBCKI";
+               groups = "USBCKI";
+       };
+       pinctrl_vgabios_rom_default: vgabios_rom_default {
+               function = "VGABIOS_ROM";
+               groups = "VGABIOS_ROM";
+       };
+       pinctrl_vgahs_default: vgahs_default {
+               function = "VGAHS";
+               groups = "VGAHS";
+       };
+       pinctrl_vgavs_default: vgavs_default {
+               function = "VGAVS";
+               groups = "VGAVS";
+       };
+       pinctrl_vpi18_default: vpi18_default {
+               function = "VPI18";
+               groups = "VPI18";
+       };
+       pinctrl_vpi24_default: vpi24_default {
+               function = "VPI24";
+               groups = "VPI24";
+       };
+       pinctrl_vpi30_default: vpi30_default {
+               function = "VPI30";
+               groups = "VPI30";
+       };
+       pinctrl_vpo12_default: vpo12_default {
+               function = "VPO12";
+               groups = "VPO12";
+       };
+       pinctrl_vpo24_default: vpo24_default {
+               function = "VPO24";
+               groups = "VPO24";
+       };
+       pinctrl_wdtrst1_default: wdtrst1_default {
+               function = "WDTRST1";
+               groups = "WDTRST1";
+       };
+       pinctrl_wdtrst2_default: wdtrst2_default {
+               function = "WDTRST2";
+               groups = "WDTRST2";
+       };
+ };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  #include "skeleton.dtsi"
  
  / {
@@@ -8,6 -7,29 +8,29 @@@
        #size-cells = <1>;
        interrupt-parent = <&vic>;
  
+       aliases {
+               i2c0 = &i2c0;
+               i2c1 = &i2c1;
+               i2c2 = &i2c2;
+               i2c3 = &i2c3;
+               i2c4 = &i2c4;
+               i2c5 = &i2c5;
+               i2c6 = &i2c6;
+               i2c7 = &i2c7;
+               i2c8 = &i2c8;
+               i2c9 = &i2c9;
+               i2c10 = &i2c10;
+               i2c11 = &i2c11;
+               i2c12 = &i2c12;
+               i2c13 = &i2c13;
+               serial0 = &uart1;
+               serial1 = &uart2;
+               serial2 = &uart3;
+               serial3 = &uart4;
+               serial4 = &uart5;
+               serial5 = &vuart;
+       };
        cpus {
                #address-cells = <1>;
                #size-cells = <0>;
                                        clock-frequency = <198000000>;
                                };
  
-                               clk_apb: clk_apb@08 {
+                               clk_apb: clk_apb@8 {
                                        #clock-cells = <0>;
                                        compatible = "aspeed,g5-apb-clock", "fixed-clock";
                                        reg = <0x08>;
                                        compatible = "aspeed,g5-pinctrl";
                                        aspeed,external-nodes = <&gfx &lhc>;
  
-                                       pinctrl_acpi_default: acpi_default {
-                                               function = "ACPI";
-                                               groups = "ACPI";
-                                       };
+                               };
  
-                                       pinctrl_adc0_default: adc0_default {
-                                               function = "ADC0";
-                                               groups = "ADC0";
-                                       };
+                       };
  
-                                       pinctrl_adc1_default: adc1_default {
-                                               function = "ADC1";
-                                               groups = "ADC1";
-                                       };
+                       gfx: display@1e6e6000 {
+                               compatible = "aspeed,ast2500-gfx", "syscon";
+                               reg = <0x1e6e6000 0x1000>;
+                               reg-io-width = <4>;
+                       };
  
-                                       pinctrl_adc10_default: adc10_default {
-                                               function = "ADC10";
-                                               groups = "ADC10";
-                                       };
+                       adc: adc@1e6e9000 {
+                               compatible = "aspeed,ast2500-adc";
+                               reg = <0x1e6e9000 0xb0>;
+                               clocks = <&clk_apb>;
+                               #io-channel-cells = <1>;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_adc11_default: adc11_default {
-                                               function = "ADC11";
-                                               groups = "ADC11";
-                                       };
+                       sram@1e720000 {
+                               compatible = "mmio-sram";
+                               reg = <0x1e720000 0x9000>;      // 36K
+                       };
  
-                                       pinctrl_adc12_default: adc12_default {
-                                               function = "ADC12";
-                                               groups = "ADC12";
-                                       };
+                       gpio: gpio@1e780000 {
+                               #gpio-cells = <2>;
+                               gpio-controller;
+                               compatible = "aspeed,ast2500-gpio";
+                               reg = <0x1e780000 0x1000>;
+                               interrupts = <20>;
+                               gpio-ranges = <&pinctrl 0 0 220>;
+                               interrupt-controller;
+                       };
  
-                                       pinctrl_adc13_default: adc13_default {
-                                               function = "ADC13";
-                                               groups = "ADC13";
-                                       };
+                       timer: timer@1e782000 {
+                               /* This timer is a Faraday FTTMR010 derivative */
+                               compatible = "aspeed,ast2400-timer";
+                               reg = <0x1e782000 0x90>;
+                               interrupts = <16 17 18 35 36 37 38 39>;
+                               clocks = <&clk_apb>;
+                               clock-names = "PCLK";
+                       };
  
-                                       pinctrl_adc14_default: adc14_default {
-                                               function = "ADC14";
-                                               groups = "ADC14";
-                                       };
+                       uart1: serial@1e783000 {
+                               compatible = "ns16550a";
+                               reg = <0x1e783000 0x20>;
+                               reg-shift = <2>;
+                               interrupts = <9>;
+                               clocks = <&clk_uart>;
+                               no-loopback-test;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_adc15_default: adc15_default {
-                                               function = "ADC15";
-                                               groups = "ADC15";
-                                       };
+                       uart5: serial@1e784000 {
+                               compatible = "ns16550a";
+                               reg = <0x1e784000 0x20>;
+                               reg-shift = <2>;
+                               interrupts = <10>;
+                               clocks = <&clk_uart>;
+                               no-loopback-test;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_adc2_default: adc2_default {
-                                               function = "ADC2";
-                                               groups = "ADC2";
-                                       };
+                       wdt1: watchdog@1e785000 {
+                               compatible = "aspeed,ast2500-wdt";
+                               reg = <0x1e785000 0x20>;
+                       };
  
-                                       pinctrl_adc3_default: adc3_default {
-                                               function = "ADC3";
-                                               groups = "ADC3";
-                                       };
+                       wdt2: watchdog@1e785020 {
+                               compatible = "aspeed,ast2500-wdt";
+                               reg = <0x1e785020 0x20>;
+                       };
  
-                                       pinctrl_adc4_default: adc4_default {
-                                               function = "ADC4";
-                                               groups = "ADC4";
-                                       };
+                       wdt3: watchdog@1e785040 {
+                               compatible = "aspeed,ast2500-wdt";
+                               reg = <0x1e785040 0x20>;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_adc5_default: adc5_default {
-                                               function = "ADC5";
-                                               groups = "ADC5";
-                                       };
+                       lpc: lpc@1e789000 {
+                               compatible = "aspeed,ast2500-lpc", "simple-mfd";
+                               reg = <0x1e789000 0x1000>;
  
-                                       pinctrl_adc6_default: adc6_default {
-                                               function = "ADC6";
-                                               groups = "ADC6";
-                                       };
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+                               ranges = <0 0x1e789000 0x1000>;
  
-                                       pinctrl_adc7_default: adc7_default {
-                                               function = "ADC7";
-                                               groups = "ADC7";
-                                       };
+                               lpc_bmc: lpc-bmc@0 {
+                                       compatible = "aspeed,ast2500-lpc-bmc";
+                                       reg = <0x0 0x80>;
+                               };
  
-                                       pinctrl_adc8_default: adc8_default {
-                                               function = "ADC8";
-                                               groups = "ADC8";
-                                       };
+                               lpc_host: lpc-host@80 {
+                                       compatible = "aspeed,ast2500-lpc-host", "simple-mfd", "syscon";
+                                       reg = <0x80 0x1e0>;
  
-                                       pinctrl_adc9_default: adc9_default {
-                                               function = "ADC9";
-                                               groups = "ADC9";
-                                       };
+                                       #address-cells = <1>;
+                                       #size-cells = <1>;
+                                       ranges = <0 0x80 0x1e0>;
  
-                                       pinctrl_bmcint_default: bmcint_default {
-                                               function = "BMCINT";
-                                               groups = "BMCINT";
-                                       };
+                                       reg-io-width = <4>;
  
-                                       pinctrl_ddcclk_default: ddcclk_default {
-                                               function = "DDCCLK";
-                                               groups = "DDCCLK";
+                                       lhc: lhc@20 {
+                                               compatible = "aspeed,ast2500-lhc";
+                                               reg = <0x20 0x24 0x48 0x8>;
                                        };
+                               };
+                       };
  
-                                       pinctrl_ddcdat_default: ddcdat_default {
-                                               function = "DDCDAT";
-                                               groups = "DDCDAT";
-                                       };
+                       vuart: serial@1e787000 {
+                               compatible = "aspeed,ast2500-vuart";
+                               reg = <0x1e787000 0x40>;
+                               reg-shift = <2>;
+                               interrupts = <10>;
+                               clocks = <&clk_uart>;
+                               no-loopback-test;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_espi_default: espi_default {
-                                               function = "ESPI";
-                                               groups = "ESPI";
-                                       };
+                       uart2: serial@1e78d000 {
+                               compatible = "ns16550a";
+                               reg = <0x1e78d000 0x20>;
+                               reg-shift = <2>;
+                               interrupts = <32>;
+                               clocks = <&clk_uart>;
+                               no-loopback-test;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_fwspics1_default: fwspics1_default {
-                                               function = "FWSPICS1";
-                                               groups = "FWSPICS1";
-                                       };
+                       uart3: serial@1e78e000 {
+                               compatible = "ns16550a";
+                               reg = <0x1e78e000 0x20>;
+                               reg-shift = <2>;
+                               interrupts = <33>;
+                               clocks = <&clk_uart>;
+                               no-loopback-test;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_fwspics2_default: fwspics2_default {
-                                               function = "FWSPICS2";
-                                               groups = "FWSPICS2";
-                                       };
+                       uart4: serial@1e78f000 {
+                               compatible = "ns16550a";
+                               reg = <0x1e78f000 0x20>;
+                               reg-shift = <2>;
+                               interrupts = <34>;
+                               clocks = <&clk_uart>;
+                               no-loopback-test;
+                               status = "disabled";
+                       };
  
-                                       pinctrl_gpid0_default: gpid0_default {
-                                               function = "GPID0";
-                                               groups = "GPID0";
-                                       };
+                       i2c: i2c@1e78a000 {
+                               compatible = "simple-bus";
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+                               ranges = <0 0x1e78a000 0x1000>;
+                       };
+               };
+       };
+ };
  
-                                       pinctrl_gpid2_default: gpid2_default {
-                                               function = "GPID2";
-                                               groups = "GPID2";
-                                       };
+ &i2c {
+       i2c_ic: interrupt-controller@0 {
+               #interrupt-cells = <1>;
+               compatible = "aspeed,ast2500-i2c-ic";
+               reg = <0x0 0x40>;
+               interrupts = <12>;
+               interrupt-controller;
+       };
  
-                                       pinctrl_gpid4_default: gpid4_default {
-                                               function = "GPID4";
-                                               groups = "GPID4";
-                                       };
+       i2c0: i2c-bus@40 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x40 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <0>;
+               interrupt-parent = <&i2c_ic>;
+               status = "disabled";
+               /* Does not need pinctrl properties */
+       };
  
-                                       pinctrl_gpid6_default: gpid6_default {
-                                               function = "GPID6";
-                                               groups = "GPID6";
-                                       };
+       i2c1: i2c-bus@80 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x80 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <1>;
+               interrupt-parent = <&i2c_ic>;
+               status = "disabled";
+               /* Does not need pinctrl properties */
+       };
  
-                                       pinctrl_gpie0_default: gpie0_default {
-                                               function = "GPIE0";
-                                               groups = "GPIE0";
-                                       };
+       i2c2: i2c-bus@c0 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0xc0 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <2>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c3_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_gpie2_default: gpie2_default {
-                                               function = "GPIE2";
-                                               groups = "GPIE2";
-                                       };
+       i2c3: i2c-bus@100 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x100 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <3>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c4_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_gpie4_default: gpie4_default {
-                                               function = "GPIE4";
-                                               groups = "GPIE4";
-                                       };
+       i2c4: i2c-bus@140 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x140 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <4>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c5_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_gpie6_default: gpie6_default {
-                                               function = "GPIE6";
-                                               groups = "GPIE6";
-                                       };
+       i2c5: i2c-bus@180 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x180 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <5>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c6_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c10_default: i2c10_default {
-                                               function = "I2C10";
-                                               groups = "I2C10";
-                                       };
+       i2c6: i2c-bus@1c0 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x1c0 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <6>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c7_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c11_default: i2c11_default {
-                                               function = "I2C11";
-                                               groups = "I2C11";
-                                       };
+       i2c7: i2c-bus@300 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x300 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <7>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c8_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c12_default: i2c12_default {
-                                               function = "I2C12";
-                                               groups = "I2C12";
-                                       };
+       i2c8: i2c-bus@340 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x340 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <8>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c9_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c13_default: i2c13_default {
-                                               function = "I2C13";
-                                               groups = "I2C13";
-                                       };
+       i2c9: i2c-bus@380 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x380 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <9>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c10_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c14_default: i2c14_default {
-                                               function = "I2C14";
-                                               groups = "I2C14";
-                                       };
+       i2c10: i2c-bus@3c0 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x3c0 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <10>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c11_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c3_default: i2c3_default {
-                                               function = "I2C3";
-                                               groups = "I2C3";
-                                       };
+       i2c11: i2c-bus@400 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x400 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <11>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c12_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c4_default: i2c4_default {
-                                               function = "I2C4";
-                                               groups = "I2C4";
-                                       };
+       i2c12: i2c-bus@440 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x440 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <12>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c13_default>;
+               status = "disabled";
+       };
  
-                                       pinctrl_i2c5_default: i2c5_default {
-                                               function = "I2C5";
-                                               groups = "I2C5";
-                                       };
+       i2c13: i2c-bus@480 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               #interrupt-cells = <1>;
+               reg = <0x480 0x40>;
+               compatible = "aspeed,ast2500-i2c-bus";
+               clocks = <&clk_apb>;
+               bus-frequency = <100000>;
+               interrupts = <13>;
+               interrupt-parent = <&i2c_ic>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c14_default>;
+               status = "disabled";
+       };
+ };
  
-                                       pinctrl_i2c6_default: i2c6_default {
-                                               function = "I2C6";
-                                               groups = "I2C6";
-                                       };
+ &pinctrl {
+       pinctrl_acpi_default: acpi_default {
+               function = "ACPI";
+               groups = "ACPI";
+       };
  
-                                       pinctrl_i2c7_default: i2c7_default {
-                                               function = "I2C7";
-                                               groups = "I2C7";
-                                       };
+       pinctrl_adc0_default: adc0_default {
+               function = "ADC0";
+               groups = "ADC0";
+       };
  
-                                       pinctrl_i2c8_default: i2c8_default {
-                                               function = "I2C8";
-                                               groups = "I2C8";
-                                       };
+       pinctrl_adc1_default: adc1_default {
+               function = "ADC1";
+               groups = "ADC1";
+       };
  
-                                       pinctrl_i2c9_default: i2c9_default {
-                                               function = "I2C9";
-                                               groups = "I2C9";
-                                       };
+       pinctrl_adc10_default: adc10_default {
+               function = "ADC10";
+               groups = "ADC10";
+       };
  
-                                       pinctrl_lad0_default: lad0_default {
-                                               function = "LAD0";
-                                               groups = "LAD0";
-                                       };
-                                       pinctrl_lad1_default: lad1_default {
-                                               function = "LAD1";
-                                               groups = "LAD1";
-                                       };
+       pinctrl_adc11_default: adc11_default {
+               function = "ADC11";
+               groups = "ADC11";
+       };
  
-                                       pinctrl_lad2_default: lad2_default {
-                                               function = "LAD2";
-                                               groups = "LAD2";
-                                       };
+       pinctrl_adc12_default: adc12_default {
+               function = "ADC12";
+               groups = "ADC12";
+       };
  
-                                       pinctrl_lad3_default: lad3_default {
-                                               function = "LAD3";
-                                               groups = "LAD3";
-                                       };
+       pinctrl_adc13_default: adc13_default {
+               function = "ADC13";
+               groups = "ADC13";
+       };
  
-                                       pinctrl_lclk_default: lclk_default {
-                                               function = "LCLK";
-                                               groups = "LCLK";
-                                       };
+       pinctrl_adc14_default: adc14_default {
+               function = "ADC14";
+               groups = "ADC14";
+       };
  
-                                       pinctrl_lframe_default: lframe_default {
-                                               function = "LFRAME";
-                                               groups = "LFRAME";
-                                       };
+       pinctrl_adc15_default: adc15_default {
+               function = "ADC15";
+               groups = "ADC15";
+       };
  
-                                       pinctrl_lpchc_default: lpchc_default {
-                                               function = "LPCHC";
-                                               groups = "LPCHC";
-                                       };
+       pinctrl_adc2_default: adc2_default {
+               function = "ADC2";
+               groups = "ADC2";
+       };
  
-                                       pinctrl_lpcpd_default: lpcpd_default {
-                                               function = "LPCPD";
-                                               groups = "LPCPD";
-                                       };
+       pinctrl_adc3_default: adc3_default {
+               function = "ADC3";
+               groups = "ADC3";
+       };
  
-                                       pinctrl_lpcplus_default: lpcplus_default {
-                                               function = "LPCPLUS";
-                                               groups = "LPCPLUS";
-                                       };
+       pinctrl_adc4_default: adc4_default {
+               function = "ADC4";
+               groups = "ADC4";
+       };
  
-                                       pinctrl_lpcpme_default: lpcpme_default {
-                                               function = "LPCPME";
-                                               groups = "LPCPME";
-                                       };
+       pinctrl_adc5_default: adc5_default {
+               function = "ADC5";
+               groups = "ADC5";
+       };
  
-                                       pinctrl_lpcrst_default: lpcrst_default {
-                                               function = "LPCRST";
-                                               groups = "LPCRST";
-                                       };
+       pinctrl_adc6_default: adc6_default {
+               function = "ADC6";
+               groups = "ADC6";
+       };
  
-                                       pinctrl_lpcsmi_default: lpcsmi_default {
-                                               function = "LPCSMI";
-                                               groups = "LPCSMI";
-                                       };
+       pinctrl_adc7_default: adc7_default {
+               function = "ADC7";
+               groups = "ADC7";
+       };
  
-                                       pinctrl_lsirq_default: lsirq_default {
-                                               function = "LSIRQ";
-                                               groups = "LSIRQ";
-                                       };
+       pinctrl_adc8_default: adc8_default {
+               function = "ADC8";
+               groups = "ADC8";
+       };
  
-                                       pinctrl_mac1link_default: mac1link_default {
-                                               function = "MAC1LINK";
-                                               groups = "MAC1LINK";
-                                       };
+       pinctrl_adc9_default: adc9_default {
+               function = "ADC9";
+               groups = "ADC9";
+       };
  
-                                       pinctrl_mac2link_default: mac2link_default {
-                                               function = "MAC2LINK";
-                                               groups = "MAC2LINK";
-                                       };
+       pinctrl_bmcint_default: bmcint_default {
+               function = "BMCINT";
+               groups = "BMCINT";
+       };
  
-                                       pinctrl_mdio1_default: mdio1_default {
-                                               function = "MDIO1";
-                                               groups = "MDIO1";
-                                       };
+       pinctrl_ddcclk_default: ddcclk_default {
+               function = "DDCCLK";
+               groups = "DDCCLK";
+       };
  
-                                       pinctrl_mdio2_default: mdio2_default {
-                                               function = "MDIO2";
-                                               groups = "MDIO2";
-                                       };
+       pinctrl_ddcdat_default: ddcdat_default {
+               function = "DDCDAT";
+               groups = "DDCDAT";
+       };
  
-                                       pinctrl_ncts1_default: ncts1_default {
-                                               function = "NCTS1";
-                                               groups = "NCTS1";
-                                       };
+       pinctrl_espi_default: espi_default {
+               function = "ESPI";
+               groups = "ESPI";
+       };
  
-                                       pinctrl_ncts2_default: ncts2_default {
-                                               function = "NCTS2";
-                                               groups = "NCTS2";
-                                       };
+       pinctrl_fwspics1_default: fwspics1_default {
+               function = "FWSPICS1";
+               groups = "FWSPICS1";
+       };
  
-                                       pinctrl_ncts3_default: ncts3_default {
-                                               function = "NCTS3";
-                                               groups = "NCTS3";
-                                       };
+       pinctrl_fwspics2_default: fwspics2_default {
+               function = "FWSPICS2";
+               groups = "FWSPICS2";
+       };
  
-                                       pinctrl_ncts4_default: ncts4_default {
-                                               function = "NCTS4";
-                                               groups = "NCTS4";
-                                       };
+       pinctrl_gpid0_default: gpid0_default {
+               function = "GPID0";
+               groups = "GPID0";
+       };
  
-                                       pinctrl_ndcd1_default: ndcd1_default {
-                                               function = "NDCD1";
-                                               groups = "NDCD1";
-                                       };
+       pinctrl_gpid2_default: gpid2_default {
+               function = "GPID2";
+               groups = "GPID2";
+       };
  
-                                       pinctrl_ndcd2_default: ndcd2_default {
-                                               function = "NDCD2";
-                                               groups = "NDCD2";
-                                       };
+       pinctrl_gpid4_default: gpid4_default {
+               function = "GPID4";
+               groups = "GPID4";
+       };
  
-                                       pinctrl_ndcd3_default: ndcd3_default {
-                                               function = "NDCD3";
-                                               groups = "NDCD3";
-                                       };
+       pinctrl_gpid6_default: gpid6_default {
+               function = "GPID6";
+               groups = "GPID6";
+       };
  
-                                       pinctrl_ndcd4_default: ndcd4_default {
-                                               function = "NDCD4";
-                                               groups = "NDCD4";
-                                       };
+       pinctrl_gpie0_default: gpie0_default {
+               function = "GPIE0";
+               groups = "GPIE0";
+       };
  
-                                       pinctrl_ndsr1_default: ndsr1_default {
-                                               function = "NDSR1";
-                                               groups = "NDSR1";
-                                       };
+       pinctrl_gpie2_default: gpie2_default {
+               function = "GPIE2";
+               groups = "GPIE2";
+       };
  
-                                       pinctrl_ndsr2_default: ndsr2_default {
-                                               function = "NDSR2";
-                                               groups = "NDSR2";
-                                       };
+       pinctrl_gpie4_default: gpie4_default {
+               function = "GPIE4";
+               groups = "GPIE4";
+       };
  
-                                       pinctrl_ndsr3_default: ndsr3_default {
-                                               function = "NDSR3";
-                                               groups = "NDSR3";
-                                       };
+       pinctrl_gpie6_default: gpie6_default {
+               function = "GPIE6";
+               groups = "GPIE6";
+       };
  
-                                       pinctrl_ndsr4_default: ndsr4_default {
-                                               function = "NDSR4";
-                                               groups = "NDSR4";
-                                       };
+       pinctrl_i2c10_default: i2c10_default {
+               function = "I2C10";
+               groups = "I2C10";
+       };
  
-                                       pinctrl_ndtr1_default: ndtr1_default {
-                                               function = "NDTR1";
-                                               groups = "NDTR1";
-                                       };
+       pinctrl_i2c11_default: i2c11_default {
+               function = "I2C11";
+               groups = "I2C11";
+       };
  
-                                       pinctrl_ndtr2_default: ndtr2_default {
-                                               function = "NDTR2";
-                                               groups = "NDTR2";
-                                       };
+       pinctrl_i2c12_default: i2c12_default {
+               function = "I2C12";
+               groups = "I2C12";
+       };
  
-                                       pinctrl_ndtr3_default: ndtr3_default {
-                                               function = "NDTR3";
-                                               groups = "NDTR3";
-                                       };
+       pinctrl_i2c13_default: i2c13_default {
+               function = "I2C13";
+               groups = "I2C13";
+       };
  
-                                       pinctrl_ndtr4_default: ndtr4_default {
-                                               function = "NDTR4";
-                                               groups = "NDTR4";
-                                       };
+       pinctrl_i2c14_default: i2c14_default {
+               function = "I2C14";
+               groups = "I2C14";
+       };
  
-                                       pinctrl_nri1_default: nri1_default {
-                                               function = "NRI1";
-                                               groups = "NRI1";
-                                       };
+       pinctrl_i2c3_default: i2c3_default {
+               function = "I2C3";
+               groups = "I2C3";
+       };
  
-                                       pinctrl_nri2_default: nri2_default {
-                                               function = "NRI2";
-                                               groups = "NRI2";
-                                       };
+       pinctrl_i2c4_default: i2c4_default {
+               function = "I2C4";
+               groups = "I2C4";
+       };
  
-                                       pinctrl_nri3_default: nri3_default {
-                                               function = "NRI3";
-                                               groups = "NRI3";
-                                       };
+       pinctrl_i2c5_default: i2c5_default {
+               function = "I2C5";
+               groups = "I2C5";
+       };
  
-                                       pinctrl_nri4_default: nri4_default {
-                                               function = "NRI4";
-                                               groups = "NRI4";
-                                       };
+       pinctrl_i2c6_default: i2c6_default {
+               function = "I2C6";
+               groups = "I2C6";
+       };
  
-                                       pinctrl_nrts1_default: nrts1_default {
-                                               function = "NRTS1";
-                                               groups = "NRTS1";
-                                       };
+       pinctrl_i2c7_default: i2c7_default {
+               function = "I2C7";
+               groups = "I2C7";
+       };
  
-                                       pinctrl_nrts2_default: nrts2_default {
-                                               function = "NRTS2";
-                                               groups = "NRTS2";
-                                       };
+       pinctrl_i2c8_default: i2c8_default {
+               function = "I2C8";
+               groups = "I2C8";
+       };
  
-                                       pinctrl_nrts3_default: nrts3_default {
-                                               function = "NRTS3";
-                                               groups = "NRTS3";
-                                       };
+       pinctrl_i2c9_default: i2c9_default {
+               function = "I2C9";
+               groups = "I2C9";
+       };
  
-                                       pinctrl_nrts4_default: nrts4_default {
-                                               function = "NRTS4";
-                                               groups = "NRTS4";
-                                       };
+       pinctrl_lad0_default: lad0_default {
+               function = "LAD0";
+               groups = "LAD0";
+       };
  
-                                       pinctrl_oscclk_default: oscclk_default {
-                                               function = "OSCCLK";
-                                               groups = "OSCCLK";
-                                       };
+       pinctrl_lad1_default: lad1_default {
+               function = "LAD1";
+               groups = "LAD1";
+       };
  
-                                       pinctrl_pewake_default: pewake_default {
-                                               function = "PEWAKE";
-                                               groups = "PEWAKE";
-                                       };
+       pinctrl_lad2_default: lad2_default {
+               function = "LAD2";
+               groups = "LAD2";
+       };
  
-                                       pinctrl_pnor_default: pnor_default {
-                                               function = "PNOR";
-                                               groups = "PNOR";
-                                       };
+       pinctrl_lad3_default: lad3_default {
+               function = "LAD3";
+               groups = "LAD3";
+       };
  
-                                       pinctrl_pwm0_default: pwm0_default {
-                                               function = "PWM0";
-                                               groups = "PWM0";
-                                       };
+       pinctrl_lclk_default: lclk_default {
+               function = "LCLK";
+               groups = "LCLK";
+       };
  
-                                       pinctrl_pwm1_default: pwm1_default {
-                                               function = "PWM1";
-                                               groups = "PWM1";
-                                       };
+       pinctrl_lframe_default: lframe_default {
+               function = "LFRAME";
+               groups = "LFRAME";
+       };
  
-                                       pinctrl_pwm2_default: pwm2_default {
-                                               function = "PWM2";
-                                               groups = "PWM2";
-                                       };
+       pinctrl_lpchc_default: lpchc_default {
+               function = "LPCHC";
+               groups = "LPCHC";
+       };
  
-                                       pinctrl_pwm3_default: pwm3_default {
-                                               function = "PWM3";
-                                               groups = "PWM3";
-                                       };
+       pinctrl_lpcpd_default: lpcpd_default {
+               function = "LPCPD";
+               groups = "LPCPD";
+       };
  
-                                       pinctrl_pwm4_default: pwm4_default {
-                                               function = "PWM4";
-                                               groups = "PWM4";
-                                       };
+       pinctrl_lpcplus_default: lpcplus_default {
+               function = "LPCPLUS";
+               groups = "LPCPLUS";
+       };
  
-                                       pinctrl_pwm5_default: pwm5_default {
-                                               function = "PWM5";
-                                               groups = "PWM5";
-                                       };
+       pinctrl_lpcpme_default: lpcpme_default {
+               function = "LPCPME";
+               groups = "LPCPME";
+       };
  
-                                       pinctrl_pwm6_default: pwm6_default {
-                                               function = "PWM6";
-                                               groups = "PWM6";
-                                       };
+       pinctrl_lpcrst_default: lpcrst_default {
+               function = "LPCRST";
+               groups = "LPCRST";
+       };
  
-                                       pinctrl_pwm7_default: pwm7_default {
-                                               function = "PWM7";
-                                               groups = "PWM7";
-                                       };
+       pinctrl_lpcsmi_default: lpcsmi_default {
+               function = "LPCSMI";
+               groups = "LPCSMI";
+       };
  
-                                       pinctrl_rgmii1_default: rgmii1_default {
-                                               function = "RGMII1";
-                                               groups = "RGMII1";
-                                       };
+       pinctrl_lsirq_default: lsirq_default {
+               function = "LSIRQ";
+               groups = "LSIRQ";
+       };
  
-                                       pinctrl_rgmii2_default: rgmii2_default {
-                                               function = "RGMII2";
-                                               groups = "RGMII2";
-                                       };
+       pinctrl_mac1link_default: mac1link_default {
+               function = "MAC1LINK";
+               groups = "MAC1LINK";
+       };
  
-                                       pinctrl_rmii1_default: rmii1_default {
-                                               function = "RMII1";
-                                               groups = "RMII1";
-                                       };
+       pinctrl_mac2link_default: mac2link_default {
+               function = "MAC2LINK";
+               groups = "MAC2LINK";
+       };
  
-                                       pinctrl_rmii2_default: rmii2_default {
-                                               function = "RMII2";
-                                               groups = "RMII2";
-                                       };
+       pinctrl_mdio1_default: mdio1_default {
+               function = "MDIO1";
+               groups = "MDIO1";
+       };
  
-                                       pinctrl_rxd1_default: rxd1_default {
-                                               function = "RXD1";
-                                               groups = "RXD1";
-                                       };
+       pinctrl_mdio2_default: mdio2_default {
+               function = "MDIO2";
+               groups = "MDIO2";
+       };
  
-                                       pinctrl_rxd2_default: rxd2_default {
-                                               function = "RXD2";
-                                               groups = "RXD2";
-                                       };
+       pinctrl_ncts1_default: ncts1_default {
+               function = "NCTS1";
+               groups = "NCTS1";
+       };
  
-                                       pinctrl_rxd3_default: rxd3_default {
-                                               function = "RXD3";
-                                               groups = "RXD3";
-                                       };
+       pinctrl_ncts2_default: ncts2_default {
+               function = "NCTS2";
+               groups = "NCTS2";
+       };
  
-                                       pinctrl_rxd4_default: rxd4_default {
-                                               function = "RXD4";
-                                               groups = "RXD4";
-                                       };
+       pinctrl_ncts3_default: ncts3_default {
+               function = "NCTS3";
+               groups = "NCTS3";
+       };
  
-                                       pinctrl_salt1_default: salt1_default {
-                                               function = "SALT1";
-                                               groups = "SALT1";
-                                       };
+       pinctrl_ncts4_default: ncts4_default {
+               function = "NCTS4";
+               groups = "NCTS4";
+       };
  
-                                       pinctrl_salt10_default: salt10_default {
-                                               function = "SALT10";
-                                               groups = "SALT10";
-                                       };
+       pinctrl_ndcd1_default: ndcd1_default {
+               function = "NDCD1";
+               groups = "NDCD1";
+       };
  
-                                       pinctrl_salt11_default: salt11_default {
-                                               function = "SALT11";
-                                               groups = "SALT11";
-                                       };
+       pinctrl_ndcd2_default: ndcd2_default {
+               function = "NDCD2";
+               groups = "NDCD2";
+       };
  
-                                       pinctrl_salt12_default: salt12_default {
-                                               function = "SALT12";
-                                               groups = "SALT12";
-                                       };
+       pinctrl_ndcd3_default: ndcd3_default {
+               function = "NDCD3";
+               groups = "NDCD3";
+       };
  
-                                       pinctrl_salt13_default: salt13_default {
-                                               function = "SALT13";
-                                               groups = "SALT13";
-                                       };
+       pinctrl_ndcd4_default: ndcd4_default {
+               function = "NDCD4";
+               groups = "NDCD4";
+       };
  
-                                       pinctrl_salt14_default: salt14_default {
-                                               function = "SALT14";
-                                               groups = "SALT14";
-                                       };
+       pinctrl_ndsr1_default: ndsr1_default {
+               function = "NDSR1";
+               groups = "NDSR1";
+       };
  
-                                       pinctrl_salt2_default: salt2_default {
-                                               function = "SALT2";
-                                               groups = "SALT2";
-                                       };
+       pinctrl_ndsr2_default: ndsr2_default {
+               function = "NDSR2";
+               groups = "NDSR2";
+       };
  
-                                       pinctrl_salt3_default: salt3_default {
-                                               function = "SALT3";
-                                               groups = "SALT3";
-                                       };
+       pinctrl_ndsr3_default: ndsr3_default {
+               function = "NDSR3";
+               groups = "NDSR3";
+       };
  
-                                       pinctrl_salt4_default: salt4_default {
-                                               function = "SALT4";
-                                               groups = "SALT4";
-                                       };
+       pinctrl_ndsr4_default: ndsr4_default {
+               function = "NDSR4";
+               groups = "NDSR4";
+       };
  
-                                       pinctrl_salt5_default: salt5_default {
-                                               function = "SALT5";
-                                               groups = "SALT5";
-                                       };
+       pinctrl_ndtr1_default: ndtr1_default {
+               function = "NDTR1";
+               groups = "NDTR1";
+       };
  
-                                       pinctrl_salt6_default: salt6_default {
-                                               function = "SALT6";
-                                               groups = "SALT6";
-                                       };
+       pinctrl_ndtr2_default: ndtr2_default {
+               function = "NDTR2";
+               groups = "NDTR2";
+       };
  
-                                       pinctrl_salt7_default: salt7_default {
-                                               function = "SALT7";
-                                               groups = "SALT7";
-                                       };
+       pinctrl_ndtr3_default: ndtr3_default {
+               function = "NDTR3";
+               groups = "NDTR3";
+       };
  
-                                       pinctrl_salt8_default: salt8_default {
-                                               function = "SALT8";
-                                               groups = "SALT8";
-                                       };
+       pinctrl_ndtr4_default: ndtr4_default {
+               function = "NDTR4";
+               groups = "NDTR4";
+       };
  
-                                       pinctrl_salt9_default: salt9_default {
-                                               function = "SALT9";
-                                               groups = "SALT9";
-                                       };
+       pinctrl_nri1_default: nri1_default {
+               function = "NRI1";
+               groups = "NRI1";
+       };
  
-                                       pinctrl_scl1_default: scl1_default {
-                                               function = "SCL1";
-                                               groups = "SCL1";
-                                       };
+       pinctrl_nri2_default: nri2_default {
+               function = "NRI2";
+               groups = "NRI2";
+       };
  
-                                       pinctrl_scl2_default: scl2_default {
-                                               function = "SCL2";
-                                               groups = "SCL2";
-                                       };
+       pinctrl_nri3_default: nri3_default {
+               function = "NRI3";
+               groups = "NRI3";
+       };
  
-                                       pinctrl_sd1_default: sd1_default {
-                                               function = "SD1";
-                                               groups = "SD1";
-                                       };
+       pinctrl_nri4_default: nri4_default {
+               function = "NRI4";
+               groups = "NRI4";
+       };
  
-                                       pinctrl_sd2_default: sd2_default {
-                                               function = "SD2";
-                                               groups = "SD2";
-                                       };
+       pinctrl_nrts1_default: nrts1_default {
+               function = "NRTS1";
+               groups = "NRTS1";
+       };
  
-                                       pinctrl_sda1_default: sda1_default {
-                                               function = "SDA1";
-                                               groups = "SDA1";
-                                       };
+       pinctrl_nrts2_default: nrts2_default {
+               function = "NRTS2";
+               groups = "NRTS2";
+       };
  
-                                       pinctrl_sda2_default: sda2_default {
-                                               function = "SDA2";
-                                               groups = "SDA2";
-                                       };
+       pinctrl_nrts3_default: nrts3_default {
+               function = "NRTS3";
+               groups = "NRTS3";
+       };
  
-                                       pinctrl_sgps1_default: sgps1_default {
-                                               function = "SGPS1";
-                                               groups = "SGPS1";
-                                       };
+       pinctrl_nrts4_default: nrts4_default {
+               function = "NRTS4";
+               groups = "NRTS4";
+       };
  
-                                       pinctrl_sgps2_default: sgps2_default {
-                                               function = "SGPS2";
-                                               groups = "SGPS2";
-                                       };
+       pinctrl_oscclk_default: oscclk_default {
+               function = "OSCCLK";
+               groups = "OSCCLK";
+       };
  
-                                       pinctrl_sioonctrl_default: sioonctrl_default {
-                                               function = "SIOONCTRL";
-                                               groups = "SIOONCTRL";
-                                       };
+       pinctrl_pewake_default: pewake_default {
+               function = "PEWAKE";
+               groups = "PEWAKE";
+       };
  
-                                       pinctrl_siopbi_default: siopbi_default {
-                                               function = "SIOPBI";
-                                               groups = "SIOPBI";
-                                       };
+       pinctrl_pnor_default: pnor_default {
+               function = "PNOR";
+               groups = "PNOR";
+       };
  
-                                       pinctrl_siopbo_default: siopbo_default {
-                                               function = "SIOPBO";
-                                               groups = "SIOPBO";
-                                       };
+       pinctrl_pwm0_default: pwm0_default {
+               function = "PWM0";
+               groups = "PWM0";
+       };
  
-                                       pinctrl_siopwreq_default: siopwreq_default {
-                                               function = "SIOPWREQ";
-                                               groups = "SIOPWREQ";
-                                       };
+       pinctrl_pwm1_default: pwm1_default {
+               function = "PWM1";
+               groups = "PWM1";
+       };
  
-                                       pinctrl_siopwrgd_default: siopwrgd_default {
-                                               function = "SIOPWRGD";
-                                               groups = "SIOPWRGD";
-                                       };
+       pinctrl_pwm2_default: pwm2_default {
+               function = "PWM2";
+               groups = "PWM2";
+       };
  
-                                       pinctrl_sios3_default: sios3_default {
-                                               function = "SIOS3";
-                                               groups = "SIOS3";
-                                       };
+       pinctrl_pwm3_default: pwm3_default {
+               function = "PWM3";
+               groups = "PWM3";
+       };
  
-                                       pinctrl_sios5_default: sios5_default {
-                                               function = "SIOS5";
-                                               groups = "SIOS5";
-                                       };
+       pinctrl_pwm4_default: pwm4_default {
+               function = "PWM4";
+               groups = "PWM4";
+       };
  
-                                       pinctrl_siosci_default: siosci_default {
-                                               function = "SIOSCI";
-                                               groups = "SIOSCI";
-                                       };
+       pinctrl_pwm5_default: pwm5_default {
+               function = "PWM5";
+               groups = "PWM5";
+       };
  
-                                       pinctrl_spi1_default: spi1_default {
-                                               function = "SPI1";
-                                               groups = "SPI1";
-                                       };
+       pinctrl_pwm6_default: pwm6_default {
+               function = "PWM6";
+               groups = "PWM6";
+       };
  
-                                       pinctrl_spi1cs1_default: spi1cs1_default {
-                                               function = "SPI1CS1";
-                                               groups = "SPI1CS1";
-                                       };
+       pinctrl_pwm7_default: pwm7_default {
+               function = "PWM7";
+               groups = "PWM7";
+       };
  
-                                       pinctrl_spi1debug_default: spi1debug_default {
-                                               function = "SPI1DEBUG";
-                                               groups = "SPI1DEBUG";
-                                       };
+       pinctrl_rgmii1_default: rgmii1_default {
+               function = "RGMII1";
+               groups = "RGMII1";
+       };
  
-                                       pinctrl_spi1passthru_default: spi1passthru_default {
-                                               function = "SPI1PASSTHRU";
-                                               groups = "SPI1PASSTHRU";
-                                       };
+       pinctrl_rgmii2_default: rgmii2_default {
+               function = "RGMII2";
+               groups = "RGMII2";
+       };
  
-                                       pinctrl_spi2ck_default: spi2ck_default {
-                                               function = "SPI2CK";
-                                               groups = "SPI2CK";
-                                       };
+       pinctrl_rmii1_default: rmii1_default {
+               function = "RMII1";
+               groups = "RMII1";
+       };
  
-                                       pinctrl_spi2cs0_default: spi2cs0_default {
-                                               function = "SPI2CS0";
-                                               groups = "SPI2CS0";
-                                       };
+       pinctrl_rmii2_default: rmii2_default {
+               function = "RMII2";
+               groups = "RMII2";
+       };
  
-                                       pinctrl_spi2cs1_default: spi2cs1_default {
-                                               function = "SPI2CS1";
-                                               groups = "SPI2CS1";
-                                       };
+       pinctrl_rxd1_default: rxd1_default {
+               function = "RXD1";
+               groups = "RXD1";
+       };
  
-                                       pinctrl_spi2miso_default: spi2miso_default {
-                                               function = "SPI2MISO";
-                                               groups = "SPI2MISO";
-                                       };
+       pinctrl_rxd2_default: rxd2_default {
+               function = "RXD2";
+               groups = "RXD2";
+       };
  
-                                       pinctrl_spi2mosi_default: spi2mosi_default {
-                                               function = "SPI2MOSI";
-                                               groups = "SPI2MOSI";
-                                       };
+       pinctrl_rxd3_default: rxd3_default {
+               function = "RXD3";
+               groups = "RXD3";
+       };
  
-                                       pinctrl_timer3_default: timer3_default {
-                                               function = "TIMER3";
-                                               groups = "TIMER3";
-                                       };
+       pinctrl_rxd4_default: rxd4_default {
+               function = "RXD4";
+               groups = "RXD4";
+       };
  
-                                       pinctrl_timer4_default: timer4_default {
-                                               function = "TIMER4";
-                                               groups = "TIMER4";
-                                       };
+       pinctrl_salt1_default: salt1_default {
+               function = "SALT1";
+               groups = "SALT1";
+       };
  
-                                       pinctrl_timer5_default: timer5_default {
-                                               function = "TIMER5";
-                                               groups = "TIMER5";
-                                       };
+       pinctrl_salt10_default: salt10_default {
+               function = "SALT10";
+               groups = "SALT10";
+       };
  
-                                       pinctrl_timer6_default: timer6_default {
-                                               function = "TIMER6";
-                                               groups = "TIMER6";
-                                       };
+       pinctrl_salt11_default: salt11_default {
+               function = "SALT11";
+               groups = "SALT11";
+       };
  
-                                       pinctrl_timer7_default: timer7_default {
-                                               function = "TIMER7";
-                                               groups = "TIMER7";
-                                       };
+       pinctrl_salt12_default: salt12_default {
+               function = "SALT12";
+               groups = "SALT12";
+       };
  
-                                       pinctrl_timer8_default: timer8_default {
-                                               function = "TIMER8";
-                                               groups = "TIMER8";
-                                       };
+       pinctrl_salt13_default: salt13_default {
+               function = "SALT13";
+               groups = "SALT13";
+       };
  
-                                       pinctrl_txd1_default: txd1_default {
-                                               function = "TXD1";
-                                               groups = "TXD1";
-                                       };
+       pinctrl_salt14_default: salt14_default {
+               function = "SALT14";
+               groups = "SALT14";
+       };
  
-                                       pinctrl_txd2_default: txd2_default {
-                                               function = "TXD2";
-                                               groups = "TXD2";
-                                       };
+       pinctrl_salt2_default: salt2_default {
+               function = "SALT2";
+               groups = "SALT2";
+       };
  
-                                       pinctrl_txd3_default: txd3_default {
-                                               function = "TXD3";
-                                               groups = "TXD3";
-                                       };
+       pinctrl_salt3_default: salt3_default {
+               function = "SALT3";
+               groups = "SALT3";
+       };
  
-                                       pinctrl_txd4_default: txd4_default {
-                                               function = "TXD4";
-                                               groups = "TXD4";
-                                       };
+       pinctrl_salt4_default: salt4_default {
+               function = "SALT4";
+               groups = "SALT4";
+       };
  
-                                       pinctrl_uart6_default: uart6_default {
-                                               function = "UART6";
-                                               groups = "UART6";
-                                       };
+       pinctrl_salt5_default: salt5_default {
+               function = "SALT5";
+               groups = "SALT5";
+       };
  
-                                       pinctrl_usbcki_default: usbcki_default {
-                                               function = "USBCKI";
-                                               groups = "USBCKI";
-                                       };
+       pinctrl_salt6_default: salt6_default {
+               function = "SALT6";
+               groups = "SALT6";
+       };
  
-                                       pinctrl_vgabiosrom_default: vgabiosrom_default {
-                                               function = "VGABIOSROM";
-                                               groups = "VGABIOSROM";
-                                       };
+       pinctrl_salt7_default: salt7_default {
+               function = "SALT7";
+               groups = "SALT7";
+       };
  
-                                       pinctrl_vgahs_default: vgahs_default {
-                                               function = "VGAHS";
-                                               groups = "VGAHS";
-                                       };
+       pinctrl_salt8_default: salt8_default {
+               function = "SALT8";
+               groups = "SALT8";
+       };
  
-                                       pinctrl_vgavs_default: vgavs_default {
-                                               function = "VGAVS";
-                                               groups = "VGAVS";
-                                       };
+       pinctrl_salt9_default: salt9_default {
+               function = "SALT9";
+               groups = "SALT9";
+       };
  
-                                       pinctrl_vpi24_default: vpi24_default {
-                                               function = "VPI24";
-                                               groups = "VPI24";
-                                       };
+       pinctrl_scl1_default: scl1_default {
+               function = "SCL1";
+               groups = "SCL1";
+       };
  
-                                       pinctrl_vpo_default: vpo_default {
-                                               function = "VPO";
-                                               groups = "VPO";
-                                       };
+       pinctrl_scl2_default: scl2_default {
+               function = "SCL2";
+               groups = "SCL2";
+       };
  
-                                       pinctrl_wdtrst1_default: wdtrst1_default {
-                                               function = "WDTRST1";
-                                               groups = "WDTRST1";
-                                       };
+       pinctrl_sd1_default: sd1_default {
+               function = "SD1";
+               groups = "SD1";
+       };
  
-                                       pinctrl_wdtrst2_default: wdtrst2_default {
-                                               function = "WDTRST2";
-                                               groups = "WDTRST2";
-                                       };
+       pinctrl_sd2_default: sd2_default {
+               function = "SD2";
+               groups = "SD2";
+       };
  
-                               };
+       pinctrl_sda1_default: sda1_default {
+               function = "SDA1";
+               groups = "SDA1";
+       };
  
-                       };
+       pinctrl_sda2_default: sda2_default {
+               function = "SDA2";
+               groups = "SDA2";
+       };
  
-                       gfx: display@1e6e6000 {
-                               compatible = "aspeed,ast2500-gfx", "syscon";
-                               reg = <0x1e6e6000 0x1000>;
-                               reg-io-width = <4>;
-                       };
+       pinctrl_sgps1_default: sgps1_default {
+               function = "SGPS1";
+               groups = "SGPS1";
+       };
  
-                       sram@1e720000 {
-                               compatible = "mmio-sram";
-                               reg = <0x1e720000 0x9000>;      // 36K
-                       };
+       pinctrl_sgps2_default: sgps2_default {
+               function = "SGPS2";
+               groups = "SGPS2";
+       };
  
-                       gpio: gpio@1e780000 {
-                               #gpio-cells = <2>;
-                               gpio-controller;
-                               compatible = "aspeed,ast2500-gpio";
-                               reg = <0x1e780000 0x1000>;
-                               interrupts = <20>;
-                               gpio-ranges = <&pinctrl 0 0 220>;
-                               interrupt-controller;
-                       };
+       pinctrl_sioonctrl_default: sioonctrl_default {
+               function = "SIOONCTRL";
+               groups = "SIOONCTRL";
+       };
  
-                       timer: timer@1e782000 {
-                               /* This timer is a Faraday FTTMR010 derivative */
-                               compatible = "aspeed,ast2400-timer";
-                               reg = <0x1e782000 0x90>;
-                               interrupts = <16 17 18 35 36 37 38 39>;
-                               clocks = <&clk_apb>;
-                               clock-names = "PCLK";
-                       };
+       pinctrl_siopbi_default: siopbi_default {
+               function = "SIOPBI";
+               groups = "SIOPBI";
+       };
  
+       pinctrl_siopbo_default: siopbo_default {
+               function = "SIOPBO";
+               groups = "SIOPBO";
+       };
  
-                       wdt1: wdt@1e785000 {
-                               compatible = "aspeed,ast2500-wdt";
-                               reg = <0x1e785000 0x20>;
-                               interrupts = <27>;
-                       };
+       pinctrl_siopwreq_default: siopwreq_default {
+               function = "SIOPWREQ";
+               groups = "SIOPWREQ";
+       };
  
-                       wdt2: wdt@1e785020 {
-                               compatible = "aspeed,ast2500-wdt";
-                               reg = <0x1e785020 0x20>;
-                               interrupts = <27>;
-                               status = "disabled";
-                       };
+       pinctrl_siopwrgd_default: siopwrgd_default {
+               function = "SIOPWRGD";
+               groups = "SIOPWRGD";
+       };
  
-                       wdt3: wdt@1e785040 {
-                               compatible = "aspeed,ast2500-wdt";
-                               reg = <0x1e785040 0x20>;
-                               status = "disabled";
-                       };
+       pinctrl_sios3_default: sios3_default {
+               function = "SIOS3";
+               groups = "SIOS3";
+       };
  
-                       uart1: serial@1e783000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e783000 0x1000>;
-                               reg-shift = <2>;
-                               interrupts = <9>;
-                               clocks = <&clk_uart>;
-                               no-loopback-test;
-                               status = "disabled";
-                       };
+       pinctrl_sios5_default: sios5_default {
+               function = "SIOS5";
+               groups = "SIOS5";
+       };
  
-                       lpc: lpc@1e789000 {
-                               compatible = "aspeed,ast2500-lpc", "simple-mfd";
-                               reg = <0x1e789000 0x1000>;
+       pinctrl_siosci_default: siosci_default {
+               function = "SIOSCI";
+               groups = "SIOSCI";
+       };
  
-                               #address-cells = <1>;
-                               #size-cells = <1>;
-                               ranges = <0 0x1e789000 0x1000>;
+       pinctrl_spi1_default: spi1_default {
+               function = "SPI1";
+               groups = "SPI1";
+       };
  
-                               lpc_bmc: lpc-bmc@0 {
-                                       compatible = "aspeed,ast2500-lpc-bmc";
-                                       reg = <0x0 0x80>;
-                               };
+       pinctrl_spi1cs1_default: spi1cs1_default {
+               function = "SPI1CS1";
+               groups = "SPI1CS1";
+       };
  
-                               lpc_host: lpc-host@80 {
-                                       compatible = "aspeed,ast2500-lpc-host", "simple-mfd", "syscon";
-                                       reg = <0x80 0x1e0>;
+       pinctrl_spi1debug_default: spi1debug_default {
+               function = "SPI1DEBUG";
+               groups = "SPI1DEBUG";
+       };
  
-                                       #address-cells = <1>;
-                                       #size-cells = <1>;
-                                       ranges = <0 0x80 0x1e0>;
+       pinctrl_spi1passthru_default: spi1passthru_default {
+               function = "SPI1PASSTHRU";
+               groups = "SPI1PASSTHRU";
+       };
  
-                                       reg-io-width = <4>;
+       pinctrl_spi2ck_default: spi2ck_default {
+               function = "SPI2CK";
+               groups = "SPI2CK";
+       };
  
-                                       lhc: lhc@20 {
-                                               compatible = "aspeed,ast2500-lhc";
-                                               reg = <0x20 0x24 0x48 0x8>;
-                                       };
-                               };
-                       };
+       pinctrl_spi2cs0_default: spi2cs0_default {
+               function = "SPI2CS0";
+               groups = "SPI2CS0";
+       };
  
-                       uart2: serial@1e78d000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e78d000 0x1000>;
-                               reg-shift = <2>;
-                               interrupts = <32>;
-                               clocks = <&clk_uart>;
-                               no-loopback-test;
-                               status = "disabled";
-                       };
+       pinctrl_spi2cs1_default: spi2cs1_default {
+               function = "SPI2CS1";
+               groups = "SPI2CS1";
+       };
  
-                       uart3: serial@1e78e000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e78e000 0x1000>;
-                               reg-shift = <2>;
-                               interrupts = <33>;
-                               clocks = <&clk_uart>;
-                               no-loopback-test;
-                               status = "disabled";
-                       };
+       pinctrl_spi2miso_default: spi2miso_default {
+               function = "SPI2MISO";
+               groups = "SPI2MISO";
+       };
  
-                       uart4: serial@1e78f000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e78f000 0x1000>;
-                               reg-shift = <2>;
-                               interrupts = <34>;
-                               clocks = <&clk_uart>;
-                               no-loopback-test;
-                               status = "disabled";
-                       };
+       pinctrl_spi2mosi_default: spi2mosi_default {
+               function = "SPI2MOSI";
+               groups = "SPI2MOSI";
+       };
  
-                       uart5: serial@1e784000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e784000 0x1000>;
-                               reg-shift = <2>;
-                               interrupts = <10>;
-                               clocks = <&clk_uart>;
-                               current-speed = <38400>;
-                               no-loopback-test;
-                               status = "disabled";
-                       };
+       pinctrl_timer3_default: timer3_default {
+               function = "TIMER3";
+               groups = "TIMER3";
+       };
  
-                       uart6: serial@1e787000 {
-                               compatible = "ns16550a";
-                               reg = <0x1e787000 0x1000>;
-                               reg-shift = <2>;
-                               interrupts = <10>;
-                               clocks = <&clk_uart>;
-                               no-loopback-test;
-                               status = "disabled";
-                       };
+       pinctrl_timer4_default: timer4_default {
+               function = "TIMER4";
+               groups = "TIMER4";
+       };
  
-                       adc: adc@1e6e9000 {
-                               compatible = "aspeed,ast2500-adc";
-                               reg = <0x1e6e9000 0xb0>;
-                               clocks = <&clk_apb>;
-                               #io-channel-cells = <1>;
-                               status = "disabled";
-                       };
-               };
+       pinctrl_timer5_default: timer5_default {
+               function = "TIMER5";
+               groups = "TIMER5";
+       };
+       pinctrl_timer6_default: timer6_default {
+               function = "TIMER6";
+               groups = "TIMER6";
+       };
+       pinctrl_timer7_default: timer7_default {
+               function = "TIMER7";
+               groups = "TIMER7";
+       };
+       pinctrl_timer8_default: timer8_default {
+               function = "TIMER8";
+               groups = "TIMER8";
+       };
+       pinctrl_txd1_default: txd1_default {
+               function = "TXD1";
+               groups = "TXD1";
+       };
+       pinctrl_txd2_default: txd2_default {
+               function = "TXD2";
+               groups = "TXD2";
+       };
+       pinctrl_txd3_default: txd3_default {
+               function = "TXD3";
+               groups = "TXD3";
+       };
+       pinctrl_txd4_default: txd4_default {
+               function = "TXD4";
+               groups = "TXD4";
+       };
+       pinctrl_uart6_default: uart6_default {
+               function = "UART6";
+               groups = "UART6";
+       };
+       pinctrl_usbcki_default: usbcki_default {
+               function = "USBCKI";
+               groups = "USBCKI";
+       };
+       pinctrl_vgabiosrom_default: vgabiosrom_default {
+               function = "VGABIOSROM";
+               groups = "VGABIOSROM";
+       };
+       pinctrl_vgahs_default: vgahs_default {
+               function = "VGAHS";
+               groups = "VGAHS";
+       };
+       pinctrl_vgavs_default: vgavs_default {
+               function = "VGAVS";
+               groups = "VGAVS";
+       };
+       pinctrl_vpi24_default: vpi24_default {
+               function = "VPI24";
+               groups = "VPI24";
+       };
+       pinctrl_vpo_default: vpo_default {
+               function = "VPO";
+               groups = "VPO";
+       };
+       pinctrl_wdtrst1_default: wdtrst1_default {
+               function = "WDTRST1";
+               groups = "WDTRST1";
+       };
+       pinctrl_wdtrst2_default: wdtrst2_default {
+               function = "WDTRST2";
+               groups = "WDTRST2";
        };
  };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * Device Tree file for Arietta G25
   * This device tree is minimal, to activate more peripherals, see:
                        };
                };
  
-               usb0: ohci@00600000 {
+               usb0: ohci@600000 {
                        status = "okay";
                        num-ports = <3>;
                };
  
-               usb1: ehci@00700000 {
+               usb1: ehci@700000 {
                        status = "okay";
                };
        };
        };
  
        ahb {
-               usb0: gadget@00300000 {
+               usb0: gadget@300000 {
                        atmel,vbus-gpio = <&pioA PIN_PA31 GPIO_ACTIVE_HIGH>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usba_vbus>;
                        status = "okay";
                };
  
-               usb1: ohci@00400000 {
+               usb1: ohci@400000 {
                        num-ports = <3>;
                        atmel,vbus-gpio = <0 /* &pioA PIN_PB9 GPIO_ACTIVE_HIGH */
                                           &pioA PIN_PB10 GPIO_ACTIVE_HIGH
@@@ -85,7 -85,7 +85,7 @@@
                        status = "okay";
                };
  
-               usb2: ehci@00500000 {
+               usb2: ehci@500000 {
                        status = "okay";
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_sdmmc1_default>;
                        status = "okay"; /* conflict with qspi0 */
+                       vqmmc-supply = <&vdd_3v3_reg>;
+                       vmmc-supply = <&vdd_3v3_reg>;
                };
  
                apb {
                                        compatible = "active-semi,act8945a";
                                        reg = <0x5b>;
                                        active-semi,vsel-high;
-                                       active-semi,chglev-gpios = <&pioA PIN_PA12 GPIO_ACTIVE_HIGH>;
-                                       active-semi,lbo-gpios = <&pioA PIN_PC8 GPIO_ACTIVE_LOW>;
-                                       active-semi,irq_gpios = <&pioA PIN_PB13 GPIO_ACTIVE_LOW>;
-                                       active-semi,input-voltage-threshold-microvolt = <6600>;
-                                       active-semi,precondition-timeout = <40>;
-                                       active-semi,total-timeout = <3>;
-                                       pinctrl-names = "default";
-                                       pinctrl-0 = <&pinctrl_charger_chglev &pinctrl_charger_lbo &pinctrl_charger_irq>;
                                        status = "okay";
  
                                        regulators {
                                                        regulator-always-on;
                                                };
                                        };
+                                       charger {
+                                               compatible = "active-semi,act8945a-charger";
+                                               pinctrl-names = "default";
+                                               pinctrl-0 = <&pinctrl_charger_chglev &pinctrl_charger_lbo &pinctrl_charger_irq>;
+                                               interrupt-parent = <&pioA>;
+                                               interrupts = <PIN_PB13 GPIO_ACTIVE_LOW>;
+                                               active-semi,chglev-gpios = <&pioA PIN_PA12 GPIO_ACTIVE_HIGH>;
+                                               active-semi,lbo-gpios = <&pioA PIN_PC8 GPIO_ACTIVE_LOW>;
+                                               active-semi,input-voltage-threshold-microvolt = <6600>;
+                                               active-semi,precondition-timeout = <40>;
+                                               active-semi,total-timeout = <3>;
+                                               status = "okay";
+                                       };
                                };
                        };
  
                        pwm0: pwm@f802c000 {
-                               status = "okay";
+                               pinctrl-names = "default";
+                               pinctrl-0 = <&pinctrl_pwm0_pwm2_default>;
+                               status = "disabled"; /* conflict with leds */
                        };
  
                        flx0: flexcom@f8034000 {
                                vddana-supply = <&vdd_3v3_lp_reg>;
                                vref-supply = <&vdd_3v3_lp_reg>;
                                pinctrl-names = "default";
 -                              pinctrl-0 = <&pinctrl_adc_default>;
 +                              pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>;
                                status = "okay";
                        };
  
                                        bias-disable;
                                };
  
 +                              /*
 +                               * The ADTRG pin can work on any edge type.
 +                               * In here it's being pulled up, so need to
 +                               * connect it to ground to get an edge e.g.
 +                               * Trigger can be configured on falling, rise
 +                               * or any edge, and the pull-up can be changed
 +                               * to pull-down or left floating according to
 +                               * needs.
 +                               */
 +                              pinctrl_adtrg_default: adtrg_default {
 +                                      pinmux = <PIN_PD31__ADTRG>;
 +                                      bias-pull-up;
 +                              };
 +
                                pinctrl_charger_chglev: charger_chglev {
                                        pinmux = <PIN_PA12__GPIO>;
                                        bias-disable;
                                                         <PIN_PA7__SDMMC0_DAT5>,
                                                         <PIN_PA8__SDMMC0_DAT6>,
                                                         <PIN_PA9__SDMMC0_DAT7>;
-                                               bias-pull-up;
+                                               bias-disable;
                                        };
  
                                        ck_cd_rstn_vddsel {
                                                         <PIN_PA19__SDMMC1_DAT1>,
                                                         <PIN_PA20__SDMMC1_DAT2>,
                                                         <PIN_PA21__SDMMC1_DAT3>;
-                                               bias-pull-up;
+                                               bias-disable;
                                        };
  
                                        conf-ck_cd {
                                        bias-disable;
                                };
  
+                               pinctrl_pwm0_pwm2_default: pwm0_pwm2_default {
+                                       pinmux = <PIN_PB5__PWMH2>,
+                                                <PIN_PB6__PWML2>;
+                                       bias-pull-up;
+                               };
                        };
  
                        classd: classd@fc048000 {
                        label = "PB_USER";
                        gpios = <&pioA PIN_PB9 GPIO_ACTIVE_LOW>;
                        linux,code = <0x104>;
+                       wakeup-source;
                };
        };
  
                compatible = "gpio-leds";
                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_led_gpio_default>;
-               status = "okay";
+               status = "okay"; /* conflict with pwm0 */
  
                red {
                        label = "red";
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  #include "bcm2837.dtsi"
  #include "bcm2835-rpi.dtsi"
        pinctrl-names = "default";
        pinctrl-0 = <&uart0_gpio32 &gpclk2_gpio43>;
        status = "okay";
+       bluetooth {
+               compatible = "brcm,bcm43438-bt";
+               max-speed = <2000000>;
+       };
  };
  
  /* uart1 is mapped to the pin header */
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /include/ "skeleton.dtsi"
  
  #include <dt-bindings/gpio/gpio.h>
                                        };
                                };
  
-                               thermal: thermal-diode@001c {
+                               thermal: thermal-diode@1c {
                                        compatible = "marvell,dove-thermal";
                                        reg = <0x001c 0x0c>, <0x005c 0x08>;
                                };
  
-                               gate_clk: clock-gating-ctrl@0038 {
+                               gate_clk: clock-gating-ctrl@38 {
                                        compatible = "marvell,dove-gating-clock";
                                        reg = <0x0038 0x4>;
                                        clocks = <&core_clk 0>;
                                        #clock-cells = <1>;
                                };
  
-                               divider_clk: core-clock@0064 {
+                               divider_clk: core-clock@64 {
                                        compatible = "marvell,dove-divider-clock";
                                        reg = <0x0064 0x8>;
                                        #clock-cells = <1>;
                                };
  
-                               pinctrl: pin-ctrl@0200 {
+                               pinctrl: pin-ctrl@200 {
                                        compatible = "marvell,dove-pinctrl";
                                        reg = <0x0200 0x14>,
                                              <0x0440 0x04>;
                                        };
                                };
  
-                               core_clk: core-clocks@0214 {
+                               core_clk: core-clocks@214 {
                                        compatible = "marvell,dove-core-clock";
                                        reg = <0x0214 0x4>;
                                        #clock-cells = <1>;
                                };
  
-                               gpio0: gpio-ctrl@0400 {
+                               gpio0: gpio-ctrl@400 {
                                        compatible = "marvell,orion-gpio";
                                        #gpio-cells = <2>;
                                        gpio-controller;
                                        interrupts = <12>, <13>, <14>, <60>;
                                };
  
-                               gpio1: gpio-ctrl@0420 {
+                               gpio1: gpio-ctrl@420 {
                                        compatible = "marvell,orion-gpio";
                                        #gpio-cells = <2>;
                                        gpio-controller;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * Device Tree file for Cortina systems Gemini SoC
   */
                                                groups = "idegrp";
                                        };
                                };
+                               tvc_default_pins: pinctrl-tvc {
+                                       mux {
+                                               function = "tvc";
+                                               groups = "tvcgrp";
+                                       };
+                               };
                        };
                };
  
                watchdog@41000000 {
 -                      compatible = "cortina,gemini-watchdog";
 +                      compatible = "cortina,gemini-watchdog", "faraday,ftwdt010";
                        reg = <0x41000000 0x1000>;
                        interrupts = <3 IRQ_TYPE_LEVEL_HIGH>;
                        resets = <&syscon GEMINI_RESET_WDOG>;
                        clocks = <&syscon GEMINI_CLK_APB>;
 +                      clock-names = "PCLK";
                };
  
                uart0: serial@42000000 {
                        memcpy-bus-width = <32>;
                        #dma-cells = <2>;
                };
+               display-controller@6a000000 {
+                       compatible = "cortina,gemini-tvc", "faraday,tve200";
+                       reg = <0x6a000000 0x1000>;
+                       interrupts = <13 IRQ_TYPE_EDGE_RISING>;
+                       resets = <&syscon GEMINI_RESET_TVC>;
+                       clocks = <&syscon GEMINI_CLK_GATE_TVC>,
+                                <&syscon GEMINI_CLK_TVC>;
+                       clock-names = "PCLK", "TVE";
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&tvc_default_pins>;
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       status = "disabled";
+               };
        };
  };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  #include "imx28.dtsi"
  
                                pinctrl-0 = <&i2c0_pins_a>;
                                status = "okay";
  
-                               sgtl5000: codec@0a {
+                               sgtl5000: codec@a {
                                        compatible = "fsl,sgtl5000";
                                        reg = <0x0a>;
                                        VDDA-supply = <&reg_3p3v>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * SoC core Device Tree for the ARM Integrator platforms
   */
@@@ -11,7 -10,7 +11,7 @@@
                reg = <0x10000000 0x200>;
  
                /* Use core module LED to indicate CPU load */
-               led@0c.0 {
+               led@c.0 {
                        compatible = "register-bit-led";
                        offset = <0x0c>;
                        mask = <0x01>;
                        compatible = "syscon", "simple-mfd";
                        reg = <0x1a000000 0x10>;
  
-                       led@04.0 {
+                       led@4.0 {
                                compatible = "register-bit-led";
                                offset = <0x04>;
                                mask = <0x01>;
                                linux,default-trigger = "heartbeat";
                                default-state = "on";
                        };
-                       led@04.1 {
+                       led@4.1 {
                                compatible = "register-bit-led";
                                offset = <0x04>;
                                mask = <0x02>;
                                label = "integrator:yellow";
                                default-state = "off";
                        };
-                       led@04.2 {
+                       led@4.2 {
                                compatible = "register-bit-led";
                                offset = <0x04>;
                                mask = <0x04>;
                                label = "integrator:red";
                                default-state = "off";
                        };
-                       led@04.3 {
+                       led@4.3 {
                                compatible = "register-bit-led";
                                offset = <0x04>;
                                mask = <0x08>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * Device Tree for the ARM Integrator/AP platform
   */
        };
  
        pci: pciv3@62000000 {
-               compatible = "v3,v360epc-pci";
+               compatible = "arm,integrator-ap-pci", "v3,v360epc-pci";
                #interrupt-cells = <1>;
                #size-cells = <2>;
                #address-cells = <3>;
-               reg = <0x62000000 0x10000>;
+               /* Bridge registers and config access space */
+               reg = <0x62000000 0x10000>, <0x61000000 0x01000000>;
                interrupt-parent = <&pic>;
                interrupts = <17>; /* Bus error IRQ */
-               ranges = <0x00000000 0 0x61000000 /* config space */
-                       0x61000000 0 0x00100000 /* 16 MiB @ 61000000 */
-                       0x01000000 0 0x0 /* I/O space */
-                       0x60000000 0 0x00100000 /* 16 MiB @ 60000000 */
-                       0x02000000 0 0x00000000 /* non-prefectable memory */
-                       0x40000000 0 0x10000000 /* 256 MiB @ 40000000 */
-                       0x42000000 0 0x10000000 /* prefetchable memory */
-                       0x50000000 0 0x10000000>; /* 256 MiB @ 50000000 */
+               clocks = <&pciclk>;
+               bus-range = <0x00 0xff>;
+               ranges = <0x01000000 0 0x0000000 /* I/O space @00000000 */
+                       0x60000000 0 0x00010000 /* 64 KB @ LB 60000000 */
+                       0x02000000 0 0x40000000 /* non-prefectable memory @40000000 */
+                       0x40000000 0 0x10000000 /* 256 MiB @ LB 40000000 1:1 */
+                       0x42000000 0 0x50000000 /* prefetchable memory @50000000 */
+                       0x50000000 0 0x10000000>; /* 256 MiB @ LB 50000000 1:1 */
+               dma-ranges = <0x02000000 0 0x20000000 /* EBI memory space */
+                       0x20000000 0 0x20000000 /* 512 MB @ LB 20000000 1:1 */
+                       0x02000000 0 0x80000000 /* Core module alias memory */
+                       0x80000000 0 0x40000000>; /* 1GB @ LB 80000000 */
                interrupt-map-mask = <0xf800 0 0 0x7>;
                interrupt-map = <
                /* IDSEL 9 */
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  / {
        model = "QNAP TS219 family";
        compatible = "qnap,ts219", "marvell,kirkwood";
                                spi-max-frequency = <20000000>;
                                mode = <0>;
  
-                               partition@0000000 {
+                               partition@0 {
                                        reg = <0x00000000 0x00080000>;
                                        label = "U-Boot";
                                };
  
-                               partition@00200000 {
+                               partition@200000 {
                                        reg = <0x00200000 0x00200000>;
                                        label = "Kernel";
                                };
  
-                               partition@00400000 {
+                               partition@400000 {
                                        reg = <0x00400000 0x00900000>;
                                        label = "RootFS1";
                                };
-                               partition@00d00000 {
+                               partition@d00000 {
                                        reg = <0x00d00000 0x00300000>;
                                        label = "RootFS2";
                                };
-                               partition@00040000 {
+                               partition@40000 {
                                        reg = <0x00080000 0x00040000>;
                                        label = "U-Boot Config";
                                };
-                               partition@000c0000 {
+                               partition@c0000 {
                                        reg = <0x000c0000 0x00140000>;
                                        label = "NAS Config";
                                };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /include/ "skeleton.dtsi"
  #include <dt-bindings/input/input.h>
  #include <dt-bindings/gpio/gpio.h>
@@@ -41,7 -40,7 +41,7 @@@
                pcie-mem-aperture = <0xe0000000 0x10000000>; /* 256 MiB memory space */
                pcie-io-aperture  = <0xf2000000 0x100000>;   /*   1 MiB    I/O space */
  
-               nand: nand@012f {
+               nand: nand@12f {
                        #address-cells = <1>;
                        #size-cells = <1>;
                        cle = <0>;
@@@ -57,7 -56,7 +57,7 @@@
                        status = "disabled";
                };
  
-               crypto_sram: sa-sram@0301 {
+               crypto_sram: sa-sram@301 {
                        compatible = "mmio-sram";
                        reg = <MBUS_ID(0x03, 0x01) 0x0 0x800>;
                        clocks = <&gate_clk 17>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  #include "omap2420.dtsi"
  
  / {
@@@ -7,6 -6,10 +7,10 @@@
                reg = <0x80000000 0x8000000>; /* 128 MB */
        };
  
+       chosen {
+               stdout-path = &uart3;
+       };
        ocp {
                i2c0 {
                        compatible = "i2c-cbus-gpio";
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * Common file for omap dpi panels with QVGA and reset pins
   *
@@@ -30,6 -29,7 +30,7 @@@
                compatible = "sharp,ls037v7dw01";
                label = "lcd";
                power-supply = <&lcd_3v3>;
+               envdd-supply = <&lcd_3v3>;
  
                port {
                        lcd_in: endpoint {
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include "skeleton.dtsi"
                                clocks = <&gcc GSBI6_QUP_CLK>,
                                         <&gcc GSBI6_H_CLK>;
                                clock-names = "core", "iface";
+                               status = "disabled";
                        };
                };
  
                                usb_hs1_phy: phy {
                                        compatible = "qcom,usb-hs-phy-apq8064",
                                                     "qcom,usb-hs-phy";
-                                       #phy-cells = <0>;
                                        clocks = <&sleep_clk>, <&cxo_board>;
                                        clock-names = "sleep", "ref";
                                        resets = <&usb1 0>;
                                        reset-names = "por";
+                                       #phy-cells = <0>;
                                };
                        };
                };
                dsi0_phy: dsi-phy@4700200 {
                        compatible = "qcom,dsi-phy-28nm-8960";
                        #clock-cells = <1>;
+                       #phy-cells = <0>;
  
                        reg = <0x04700200 0x100>,
                                <0x04700300 0x200>,
  
                        clocks = <&mmcc HDMI_S_AHB_CLK>;
                        clock-names = "slave_iface_clk";
+                       #phy-cells = <0>;
                };
  
                mdp: mdp@5100000 {
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  /include/ "skeleton.dtsi"
                        reg = <0x900000 0x4000>;
                };
  
+               gsbi6: gsbi@16500000 {
+                       compatible = "qcom,gsbi-v1.0.0";
+                       cell-index = <12>;
+                       reg = <0x16500000 0x100>;
+                       clocks = <&gcc GSBI6_H_CLK>;
+                       clock-names = "iface";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+                       ranges;
+                       syscon-tcsr = <&tcsr>;
+                       gsbi6_serial: serial@16540000 {
+                               compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
+                               reg = <0x16540000 0x1000>,
+                                     <0x16500000 0x1000>;
+                               interrupts = <GIC_SPI 156 IRQ_TYPE_NONE>;
+                               clocks = <&gcc GSBI6_UART_CLK>, <&gcc GSBI6_H_CLK>;
+                               clock-names = "core", "iface";
+                               status = "disabled";
+                       };
+                       gsbi6_i2c: i2c@16580000 {
+                               compatible = "qcom,i2c-qup-v1.1.1";
+                               reg = <0x16580000 0x1000>;
+                               interrupts = <GIC_SPI 157 IRQ_TYPE_NONE>;
+                               clocks = <&gcc GSBI6_QUP_CLK>, <&gcc GSBI6_H_CLK>;
+                               clock-names = "core", "iface";
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               status = "disabled";
+                       };
+               };
+               gsbi7: gsbi@16600000 {
+                       compatible = "qcom,gsbi-v1.0.0";
+                       cell-index = <12>;
+                       reg = <0x16600000 0x100>;
+                       clocks = <&gcc GSBI7_H_CLK>;
+                       clock-names = "iface";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+                       ranges;
+                       syscon-tcsr = <&tcsr>;
+                       gsbi7_serial: serial@16640000 {
+                               compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
+                               reg = <0x16640000 0x1000>,
+                                     <0x16600000 0x1000>;
+                               interrupts = <GIC_SPI 158 IRQ_TYPE_NONE>;
+                               clocks = <&gcc GSBI7_UART_CLK>, <&gcc GSBI7_H_CLK>;
+                               clock-names = "core", "iface";
+                               status = "disabled";
+                       };
+                       gsbi7_i2c: i2c@16680000 {
+                               compatible = "qcom,i2c-qup-v1.1.1";
+                               reg = <0x16680000 0x1000>;
+                               interrupts = <GIC_SPI 159 IRQ_TYPE_NONE>;
+                               clocks = <&gcc GSBI7_QUP_CLK>, <&gcc GSBI7_H_CLK>;
+                               clock-names = "core", "iface";
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               status = "disabled";
+                       };
+               };
  
                gsbi8: gsbi@19800000 {
                        compatible = "qcom,gsbi-v1.0.0";
                                        #size-cells = <0>;
                                        #io-channel-cells = <2>;
  
-                                       vcoin: adc-channel@00 {
+                                       vcoin: adc-channel@0 {
                                                reg = <0x00 0x00>;
                                        };
-                                       vbat: adc-channel@01 {
+                                       vbat: adc-channel@1 {
                                                reg = <0x00 0x01>;
                                        };
-                                       dcin: adc-channel@02 {
+                                       dcin: adc-channel@2 {
                                                reg = <0x00 0x02>;
                                        };
-                                       ichg: adc-channel@03 {
+                                       ichg: adc-channel@3 {
                                                reg = <0x00 0x03>;
                                        };
-                                       vph_pwr: adc-channel@04 {
+                                       vph_pwr: adc-channel@4 {
                                                reg = <0x00 0x04>;
                                        };
-                                       usb_vbus: adc-channel@0a {
+                                       usb_vbus: adc-channel@a {
                                                reg = <0x00 0x0a>;
                                        };
-                                       die_temp: adc-channel@0b {
+                                       die_temp: adc-channel@b {
                                                reg = <0x00 0x0b>;
                                        };
-                                       ref_625mv: adc-channel@0c {
+                                       ref_625mv: adc-channel@c {
                                                reg = <0x00 0x0c>;
                                        };
-                                       ref_1250mv: adc-channel@0d {
+                                       ref_1250mv: adc-channel@d {
                                                reg = <0x00 0x0d>;
                                        };
-                                       ref_325mv: adc-channel@0e {
+                                       ref_325mv: adc-channel@e {
                                                reg = <0x00 0x0e>;
                                        };
-                                       ref_muxoff: adc-channel@0f {
+                                       ref_muxoff: adc-channel@f {
                                                reg = <0x00 0x0f>;
                                        };
                                };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include <dt-bindings/interrupt-controller/arm-gic.h>
                #size-cells = <1>;
                ranges;
  
-               mpss@08000000 {
+               mpss@8000000 {
                        reg = <0x08000000 0x5100000>;
                        no-map;
                };
  
-               mba@00d100000 {
+               mba@d100000 {
                        reg = <0x0d100000 0x100000>;
                        no-map;
                };
  
-               reserved@0d200000 {
+               reserved@d200000 {
                        reg = <0x0d200000 0xa00000>;
                        no-map;
                };
  
-               adsp_region: adsp@0dc00000 {
+               adsp_region: adsp@dc00000 {
                        reg = <0x0dc00000 0x1900000>;
                        no-map;
                };
  
-               venus@0f500000 {
+               venus@f500000 {
                        reg = <0x0f500000 0x500000>;
                        no-map;
                };
                        no-map;
                };
  
-               tz@0fc00000 {
+               tz@fc00000 {
                        reg = <0x0fc00000 0x160000>;
                        no-map;
                };
  
-               rfsa@0fd60000 {
+               rfsa@fd60000 {
                        reg = <0x0fd60000 0x20000>;
                        no-map;
                };
  
-               rmtfs@0fd80000 {
+               rmtfs@fd80000 {
                        reg = <0x0fd80000 0x180000>;
                        no-map;
                };
                        status = "disabled";
                };
  
+               sdhci@f9864900 {
+                       compatible = "qcom,sdhci-msm-v4";
+                       reg = <0xf9864900 0x11c>, <0xf9864000 0x800>;
+                       reg-names = "hc_mem", "core_mem";
+                       interrupts = <GIC_SPI 127 IRQ_TYPE_NONE>,
+                                    <GIC_SPI 224 IRQ_TYPE_NONE>;
+                       interrupt-names = "hc_irq", "pwr_irq";
+                       clocks = <&gcc GCC_SDCC3_APPS_CLK>,
+                                <&gcc GCC_SDCC3_AHB_CLK>,
+                                <&xo_board>;
+                       clock-names = "core", "iface", "xo";
+                       status = "disabled";
+               };
                sdhci@f98a4900 {
                        compatible = "qcom,sdhci-msm-v4";
                        reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
                };
        };
  
-       ns_sram: sram@00200000 {
+       ns_sram: sram@200000 {
                compatible = "mmio-sram";
                reg = <0x00200000 0x20000>;
        };
                #size-cells = <1>;
                ranges;
  
-               nfc_sram: sram@00100000 {
+               nfc_sram: sram@100000 {
                        compatible = "mmio-sram";
                        no-memory-wc;
                        reg = <0x00100000 0x2400>;
                };
  
-               usb0: gadget@00300000 {
+               usb0: gadget@300000 {
                        #address-cells = <1>;
                        #size-cells = <0>;
                        compatible = "atmel,sama5d3-udc";
                        };
                };
  
-               usb1: ohci@00400000 {
+               usb1: ohci@400000 {
                        compatible = "atmel,at91rm9200-ohci", "usb-ohci";
                        reg = <0x00400000 0x100000>;
                        interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;
                        status = "disabled";
                };
  
-               usb2: ehci@00500000 {
+               usb2: ehci@500000 {
                        compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
                        reg = <0x00500000 0x100000>;
                        interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;
                        status = "disabled";
                };
  
-               L2: cache-controller@00a00000 {
+               L2: cache-controller@a00000 {
                        compatible = "arm,pl310-cache";
                        reg = <0x00a00000 0x1000>;
                        interrupts = <63 IRQ_TYPE_LEVEL_HIGH 4>;
                                atmel,min-sample-rate-hz = <200000>;
                                atmel,max-sample-rate-hz = <20000000>;
                                atmel,startup-time-ms = <4>;
 +                              atmel,trigger-edge-type = <IRQ_TYPE_EDGE_RISING>;
                                status = "disabled";
                        };
  
@@@ -42,7 -42,7 +42,7 @@@
  
  #include "skeleton.dtsi"
  #include "armv7-m.dtsi"
- #include <dt-bindings/pinctrl/stm32f746-pinfunc.h>
+ #include <dt-bindings/pinctrl/stm32-pinfunc.h>
  #include <dt-bindings/clock/stm32fx-clock.h>
  #include <dt-bindings/mfd/stm32f7-rcc.h>
  
                        status = "disabled";
                };
  
+               timers2: timers@40000000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40000000 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM2)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@1 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <1>;
+                               status = "disabled";
+                       };
+               };
                timer3: timer@40000400 {
                        compatible = "st,stm32-timer";
                        reg = <0x40000400 0x400>;
                        status = "disabled";
                };
  
+               timers3: timers@40000400 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40000400 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM3)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@2 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <2>;
+                               status = "disabled";
+                       };
+               };
                timer4: timer@40000800 {
                        compatible = "st,stm32-timer";
                        reg = <0x40000800 0x400>;
                        status = "disabled";
                };
  
+               timers4: timers@40000800 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40000800 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM4)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@3 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <3>;
+                               status = "disabled";
+                       };
+               };
                timer5: timer@40000c00 {
                        compatible = "st,stm32-timer";
                        reg = <0x40000c00 0x400>;
                        clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM5)>;
                };
  
+               timers5: timers@40000c00 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40000C00 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM5)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@4 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <4>;
+                               status = "disabled";
+                       };
+               };
                timer6: timer@40001000 {
                        compatible = "st,stm32-timer";
                        reg = <0x40001000 0x400>;
                        status = "disabled";
                };
  
+               timers6: timers@40001000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40001000 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM6)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       timer@5 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <5>;
+                               status = "disabled";
+                       };
+               };
                timer7: timer@40001400 {
                        compatible = "st,stm32-timer";
                        reg = <0x40001400 0x400>;
                        status = "disabled";
                };
  
+               timers7: timers@40001400 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40001400 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM7)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       timer@6 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <6>;
+                               status = "disabled";
+                       };
+               };
+               timers12: timers@40001800 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40001800 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM12)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@11 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <11>;
+                               status = "disabled";
+                       };
+               };
+               timers13: timers@40001c00 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40001C00 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM13)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+               };
+               timers14: timers@40002000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40002000 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM14)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+               };
                rtc: rtc@40002800 {
                        compatible = "st,stm32-rtc";
                        reg = <0x40002800 0x400>;
                };
  
                usart2: serial@40004400 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40004400 0x400>;
                        interrupts = <38>;
                        clocks = <&rcc 1 CLK_USART2>;
                };
  
                usart3: serial@40004800 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40004800 0x400>;
                        interrupts = <39>;
                        clocks = <&rcc 1 CLK_USART3>;
                        status = "disabled";
                };
  
+               i2c1: i2c@40005400 {
+                       compatible = "st,stm32f7-i2c";
+                       reg = <0x40005400 0x400>;
+                       interrupts = <31>,
+                                    <32>;
+                       resets = <&rcc STM32F7_APB1_RESET(I2C1)>;
+                       clocks = <&rcc 1 CLK_I2C1>;
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       status = "disabled";
+               };
                cec: cec@40006c00 {
                        compatible = "st,stm32-cec";
                        reg = <0x40006C00 0x400>;
                };
  
                usart7: serial@40007800 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40007800 0x400>;
                        interrupts = <82>;
                        clocks = <&rcc 1 CLK_UART7>;
                };
  
                usart8: serial@40007c00 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40007c00 0x400>;
                        interrupts = <83>;
                        clocks = <&rcc 1 CLK_UART8>;
                        status = "disabled";
                };
  
+               timers1: timers@40010000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40010000 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM1)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@0 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <0>;
+                               status = "disabled";
+                       };
+               };
+               timers8: timers@40010400 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40010400 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM8)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@7 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <7>;
+                               status = "disabled";
+                       };
+               };
                usart1: serial@40011000 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40011000 0x400>;
                        interrupts = <37>;
                        clocks = <&rcc 1 CLK_USART1>;
                };
  
                usart6: serial@40011400 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40011400 0x400>;
                        interrupts = <71>;
                        clocks = <&rcc 1 CLK_USART6>;
                        interrupts = <1>, <2>, <3>, <6>, <7>, <8>, <9>, <10>, <23>, <40>, <41>, <42>, <62>, <76>;
                };
  
+               timers9: timers@40014000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40014000 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM9)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+                       timer@8 {
+                               compatible = "st,stm32-timer-trigger";
+                               reg = <8>;
+                               status = "disabled";
+                       };
+               };
+               timers10: timers@40014400 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40014400 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM10)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+               };
+               timers11: timers@40014800 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-timers";
+                       reg = <0x40014800 0x400>;
+                       clocks = <&rcc 0 STM32F7_APB2_CLOCK(TIM11)>;
+                       clock-names = "int";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm";
+                               status = "disabled";
+                       };
+               };
                pwrcfg: power-config@40007000 {
                        compatible = "syscon";
                        reg = <0x40007000 0x400>;
  
                        cec_pins_a: cec@0 {
                                pins {
-                                       pinmux = <STM32F746_PA15_FUNC_HDMI_CEC>;
+                                       pinmux = <STM32_PINMUX('A', 15, AF4)>; /* HDMI CEC */
                                        slew-rate = <0>;
                                        drive-open-drain;
                                        bias-disable;
  
                        usart1_pins_a: usart1@0 {
                                pins1 {
-                                       pinmux = <STM32F746_PA9_FUNC_USART1_TX>;
+                                       pinmux = <STM32_PINMUX('A', 9, AF7)>; /* USART1_TX */
                                        bias-disable;
                                        drive-push-pull;
                                        slew-rate = <0>;
                                };
                                pins2 {
-                                       pinmux = <STM32F746_PA10_FUNC_USART1_RX>;
+                                       pinmux = <STM32_PINMUX('A', 10, AF7)>; /* USART1_RX */
                                        bias-disable;
                                };
                        };
  
                        usart1_pins_b: usart1@1 {
                                pins1 {
-                                       pinmux = <STM32F746_PA9_FUNC_USART1_TX>;
+                                       pinmux = <STM32_PINMUX('A', 9, AF7)>; /* USART1_TX */
                                        bias-disable;
                                        drive-push-pull;
                                        slew-rate = <0>;
                                };
                                pins2 {
-                                       pinmux = <STM32F746_PB7_FUNC_USART1_RX>;
+                                       pinmux = <STM32_PINMUX('B', 7, AF7)>; /* USART1_RX */
+                                       bias-disable;
+                               };
+                       };
+                       i2c1_pins_b: i2c1@0 {
+                               pins {
+                                       pinmux = <STM32_PINMUX('B', 9, AF4)>, /* I2C1 SDA */
+                                                <STM32_PINMUX('B', 8, AF4)>; /* I2C1 SCL */
+                                       bias-disable;
+                                       drive-open-drain;
+                                       slew-rate = <0>;
+                               };
+                       };
+                       usbotg_hs_pins_a: usbotg-hs@0 {
+                               pins {
+                                       pinmux = <STM32_PINMUX('H', 4, AF10)>, /* OTG_HS_ULPI_NXT */
+                                                <STM32_PINMUX('I', 11, AF10)>, /* OTG_HS_ULPI_DIR */
+                                                <STM32_PINMUX('C', 0, AF10)>, /* OTG_HS_ULPI_STP */
+                                                <STM32_PINMUX('A', 5, AF10)>, /* OTG_HS_ULPI_CK */
+                                                <STM32_PINMUX('A', 3, AF10)>, /* OTG_HS_ULPI_D0 */
+                                                <STM32_PINMUX('B', 0, AF10)>, /* OTG_HS_ULPI_D1 */
+                                                <STM32_PINMUX('B', 1, AF10)>, /* OTG_HS_ULPI_D2 */
+                                                <STM32_PINMUX('B', 10, AF10)>, /* OTG_HS_ULPI_D3 */
+                                                <STM32_PINMUX('B', 11, AF10)>, /* OTG_HS_ULPI_D4 */
+                                                <STM32_PINMUX('B', 12, AF10)>, /* OTG_HS_ULPI_D5 */
+                                                <STM32_PINMUX('B', 13, AF10)>, /* OTG_HS_ULPI_D6 */
+                                                <STM32_PINMUX('B', 5, AF10)>; /* OTG_HS_ULPI_D7 */
+                                       bias-disable;
+                                       drive-push-pull;
+                                       slew-rate = <2>;
+                               };
+                       };
+                       usbotg_hs_pins_b: usbotg-hs@1 {
+                               pins {
+                                       pinmux = <STM32_PINMUX('H', 4, AF10)>, /* OTG_HS_ULPI_NXT */
+                                                <STM32_PINMUX('C', 2, AF10)>, /* OTG_HS_ULPI_DIR */
+                                                <STM32_PINMUX('C', 0, AF10)>, /* OTG_HS_ULPI_STP */
+                                                <STM32_PINMUX('A', 5, AF10)>, /* OTG_HS_ULPI_CK */
+                                                <STM32_PINMUX('A', 3, AF10)>, /* OTG_HS_ULPI_D0 */
+                                                <STM32_PINMUX('B', 0, AF10)>, /* OTG_HS_ULPI_D1 */
+                                                <STM32_PINMUX('B', 1, AF10)>, /* OTG_HS_ULPI_D2 */
+                                                <STM32_PINMUX('B', 10, AF10)>, /* OTG_HS_ULPI_D3 */
+                                                <STM32_PINMUX('B', 11, AF10)>, /* OTG_HS_ULPI_D4 */
+                                                <STM32_PINMUX('B', 12, AF10)>, /* OTG_HS_ULPI_D5 */
+                                                <STM32_PINMUX('B', 13, AF10)>, /* OTG_HS_ULPI_D6 */
+                                                <STM32_PINMUX('B', 5, AF10)>; /* OTG_HS_ULPI_D7 */
+                                       bias-disable;
+                                       drive-push-pull;
+                                       slew-rate = <2>;
+                               };
+                       };
+                       usbotg_fs_pins_a: usbotg-fs@0 {
+                               pins {
+                                       pinmux = <STM32_PINMUX('A', 10, AF10)>, /* OTG_FS_ID */
+                                                <STM32_PINMUX('A', 11, AF10)>, /* OTG_FS_DM */
+                                                <STM32_PINMUX('A', 12, AF10)>; /* OTG_FS_DP */
                                        bias-disable;
+                                       drive-push-pull;
+                                       slew-rate = <2>;
                                };
                        };
                };
                        st,mem2mem;
                        status = "disabled";
                };
+               usbotg_hs: usb@40040000 {
+                       compatible = "st,stm32f7-hsotg";
+                       reg = <0x40040000 0x40000>;
+                       interrupts = <77>;
+                       clocks = <&rcc 0 STM32F7_AHB1_CLOCK(OTGHS)>;
+                       clock-names = "otg";
+                       status = "disabled";
+               };
+               usbotg_fs: usb@50000000 {
+                       compatible = "st,stm32f4x9-fsotg";
+                       reg = <0x50000000 0x40000>;
+                       interrupts = <67>;
+                       clocks = <&rcc 0 STM32F7_AHB2_CLOCK(OTGFS)>;
+                       clock-names = "otg";
+                       status = "disabled";
+               };
        };
  };
  
@@@ -42,6 -42,8 +42,8 @@@
  
  #include "skeleton.dtsi"
  #include "armv7-m.dtsi"
+ #include <dt-bindings/clock/stm32h7-clks.h>
+ #include <dt-bindings/mfd/stm32h7-rcc.h>
  
  / {
        clocks {
                        clock-frequency = <0>;
                };
  
-               timer_clk: timer-clk {
+               clk_lse: clk-lse {
                        #clock-cells = <0>;
                        compatible = "fixed-clock";
-                       clock-frequency = <125000000>;
+                       clock-frequency = <32768>;
+               };
+               clk_i2s: i2s_ckin {
+                       #clock-cells = <0>;
+                       compatible = "fixed-clock";
+                       clock-frequency = <0>;
                };
        };
  
                        compatible = "st,stm32-timer";
                        reg = <0x40000c00 0x400>;
                        interrupts = <50>;
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc TIM5_CK>;
+               };
+               lptimer1: timer@40002400 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-lptimer";
+                       reg = <0x40002400 0x400>;
+                       clocks = <&rcc LPTIM1_CK>;
+                       clock-names = "mux";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm-lp";
+                               status = "disabled";
+                       };
+                       trigger@0 {
+                               compatible = "st,stm32-lptimer-trigger";
+                               reg = <0>;
+                               status = "disabled";
+                       };
+                       counter {
+                               compatible = "st,stm32-lptimer-counter";
+                               status = "disabled";
+                       };
                };
  
                usart2: serial@40004400 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40004400 0x400>;
                        interrupts = <38>;
                        status = "disabled";
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc USART2_CK>;
                };
  
                dac: dac@40007400 {
                        compatible = "st,stm32h7-dac-core";
                        reg = <0x40007400 0x400>;
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc DAC12_CK>;
                        clock-names = "pclk";
                        #address-cells = <1>;
                        #size-cells = <0>;
                };
  
                usart1: serial@40011000 {
 -                      compatible = "st,stm32f7-usart", "st,stm32f7-uart";
 +                      compatible = "st,stm32f7-uart";
                        reg = <0x40011000 0x400>;
                        interrupts = <37>;
                        status = "disabled";
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc USART1_CK>;
                };
  
                dma1: dma@40020000 {
                                     <16>,
                                     <17>,
                                     <47>;
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc DMA1_CK>;
                        #dma-cells = <4>;
                        st,mem2mem;
+                       dma-requests = <8>;
                        status = "disabled";
                };
  
                                     <68>,
                                     <69>,
                                     <70>;
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc DMA2_CK>;
                        #dma-cells = <4>;
                        st,mem2mem;
+                       dma-requests = <8>;
                        status = "disabled";
                };
  
+               dmamux1: dma-router@40020800 {
+                       compatible = "st,stm32h7-dmamux";
+                       reg = <0x40020800 0x1c>;
+                       #dma-cells = <3>;
+                       dma-channels = <16>;
+                       dma-requests = <128>;
+                       dma-masters = <&dma1 &dma2>;
+                       clocks = <&rcc DMA1_CK>;
+               };
                adc_12: adc@40022000 {
                        compatible = "st,stm32h7-adc-core";
                        reg = <0x40022000 0x400>;
                        interrupts = <18>;
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc ADC12_CK>;
                        clock-names = "bus";
                        interrupt-controller;
                        #interrupt-cells = <1>;
                        };
                };
  
+               mdma1: dma@52000000 {
+                       compatible = "st,stm32h7-mdma";
+                       reg = <0x52000000 0x1000>;
+                       interrupts = <122>;
+                       clocks = <&rcc MDMA_CK>;
+                       #dma-cells = <5>;
+                       dma-channels = <16>;
+                       dma-requests = <32>;
+               };
+               lptimer2: timer@58002400 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-lptimer";
+                       reg = <0x58002400 0x400>;
+                       clocks = <&rcc LPTIM2_CK>;
+                       clock-names = "mux";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm-lp";
+                               status = "disabled";
+                       };
+                       trigger@1 {
+                               compatible = "st,stm32-lptimer-trigger";
+                               reg = <1>;
+                               status = "disabled";
+                       };
+                       counter {
+                               compatible = "st,stm32-lptimer-counter";
+                               status = "disabled";
+                       };
+               };
+               lptimer3: timer@58002800 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-lptimer";
+                       reg = <0x58002800 0x400>;
+                       clocks = <&rcc LPTIM3_CK>;
+                       clock-names = "mux";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm-lp";
+                               status = "disabled";
+                       };
+                       trigger@2 {
+                               compatible = "st,stm32-lptimer-trigger";
+                               reg = <2>;
+                               status = "disabled";
+                       };
+               };
+               lptimer4: timer@58002c00 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-lptimer";
+                       reg = <0x58002c00 0x400>;
+                       clocks = <&rcc LPTIM4_CK>;
+                       clock-names = "mux";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm-lp";
+                               status = "disabled";
+                       };
+               };
+               lptimer5: timer@58003000 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "st,stm32-lptimer";
+                       reg = <0x58003000 0x400>;
+                       clocks = <&rcc LPTIM5_CK>;
+                       clock-names = "mux";
+                       status = "disabled";
+                       pwm {
+                               compatible = "st,stm32-pwm-lp";
+                               status = "disabled";
+                       };
+               };
+               vrefbuf: regulator@58003C00 {
+                       compatible = "st,stm32-vrefbuf";
+                       reg = <0x58003C00 0x8>;
+                       clocks = <&rcc VREF_CK>;
+                       regulator-min-microvolt = <1500000>;
+                       regulator-max-microvolt = <2500000>;
+                       status = "disabled";
+               };
+               rcc: reset-clock-controller@58024400 {
+                       compatible = "st,stm32h743-rcc", "st,stm32-rcc";
+                       reg = <0x58024400 0x400>;
+                       #clock-cells = <1>;
+                       #reset-cells = <1>;
+                       clocks = <&clk_hse>, <&clk_lse>, <&clk_i2s>;
+                       st,syscfg = <&pwrcfg>;
+               };
+               pwrcfg: power-config@58024800 {
+                       compatible = "syscon";
+                       reg = <0x58024800 0x400>;
+               };
                adc_3: adc@58026000 {
                        compatible = "st,stm32h7-adc-core";
                        reg = <0x58026000 0x400>;
                        interrupts = <127>;
-                       clocks = <&timer_clk>;
+                       clocks = <&rcc ADC3_CK>;
                        clock-names = "bus";
                        interrupt-controller;
                        #interrupt-cells = <1>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * Based on Mans Rullgard's Tango3 DT
   * https://github.com/mansr/linux-tangox
                        #address-cells = <1>;
                        #size-cells = <1>;
  
-                       irq0: irq0@000 {
+                       irq0: irq0@0 {
                                reg = <0x000 0x100>;
                                interrupt-controller;
                                #interrupt-cells = <2>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include <dt-bindings/input/input.h>
                };
        };
  
+       cec@70015000 {
+               status = "okay";
+       };
        gpu@0,57000000 {
                /*
                 * Node left disabled on purpose - the bootloader will enable
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  #include <dt-bindings/clock/tegra124-car.h>
  #include <dt-bindings/gpio/tegra-gpio.h>
  #include <dt-bindings/memory/tegra124-mc.h>
                        nvidia,head = <1>;
                };
  
-               hdmi@54280000 {
+               hdmi: hdmi@54280000 {
                        compatible = "nvidia,tegra124-hdmi";
                        reg = <0x0 0x54280000 0x0 0x00040000>;
                        interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
                status = "disabled";
        };
  
+       cec@70015000 {
+               compatible = "nvidia,tegra124-cec";
+               reg = <0x0 0x70015000 0x0 0x00001000>;
+               interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
+               clocks = <&tegra_car TEGRA124_CLK_CEC>;
+               clock-names = "cec";
+               status = "disabled";
+               hdmi-phandle = <&hdmi>;
+       };
        soctherm: thermal-sensor@700e2000 {
                compatible = "nvidia,tegra124-soctherm";
                reg = <0x0 0x700e2000 0x0 0x600 /* SOC_THERM reg_base */
@@@ -37,7 -37,7 +37,7 @@@
                        clock-frequency = <24576000>;
                };
  
-               arm_timer_clk: arm_timer_clk {
+               arm_timer_clk: arm-timer {
                        #clock-cells = <0>;
                        compatible = "fixed-clock";
                        clock-frequency = <50000000>;
@@@ -71,6 -71,7 +71,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart0>;
                        clocks = <&peri_clk 0>;
+                       resets = <&peri_rst 0>;
                };
  
                serial1: serial@54006900 {
@@@ -81,6 -82,7 +82,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart1>;
                        clocks = <&peri_clk 1>;
+                       resets = <&peri_rst 1>;
                };
  
                serial2: serial@54006a00 {
@@@ -91,6 -93,7 +93,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart2>;
                        clocks = <&peri_clk 2>;
+                       resets = <&peri_rst 2>;
                };
  
                serial3: serial@54006b00 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart3>;
                        clocks = <&peri_clk 3>;
+                       resets = <&peri_rst 3>;
+               };
+               gpio: gpio@55000000 {
+                       compatible = "socionext,uniphier-gpio";
+                       reg = <0x55000000 0x200>;
+                       interrupt-parent = <&aidet>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-ranges = <&pinctrl 0 0 0>;
+                       gpio-ranges-group-names = "gpio_range";
+                       ngpios = <136>;
+                       socionext,interrupt-ranges = <0 48 13>, <14 62 2>;
                };
  
                i2c0: i2c@58400000 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c0>;
                        clocks = <&peri_clk 4>;
+                       resets = <&peri_rst 4>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c1>;
                        clocks = <&peri_clk 5>;
+                       resets = <&peri_rst 5>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c2>;
                        clocks = <&peri_clk 6>;
+                       resets = <&peri_rst 6>;
                        clock-frequency = <400000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c3>;
                        clocks = <&peri_clk 7>;
+                       resets = <&peri_rst 7>;
                        clock-frequency = <100000>;
                };
  
                        interrupts = <0 80 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb0>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
 +                               <&mio_clk 12>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
                                 <&mio_rst 12>;
                };
                        interrupts = <0 81 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb1>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
 +                               <&mio_clk 13>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
                                 <&mio_rst 13>;
                };
                        interrupts = <0 82 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb2>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 10>, <&mio_clk 14>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 10>,
 +                               <&mio_clk 14>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 10>,
                                 <&mio_rst 14>;
                };
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_nand2cs>;
                        clocks = <&sys_clk 2>;
+                       resets = <&sys_rst 2>;
                };
        };
  };
@@@ -45,7 -45,7 +45,7 @@@
                        clock-frequency = <25000000>;
                };
  
-               arm_timer_clk: arm_timer_clk {
+               arm_timer_clk: arm-timer {
                        #clock-cells = <0>;
                        compatible = "fixed-clock";
                        clock-frequency = <50000000>;
@@@ -79,6 -79,7 +79,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart0>;
                        clocks = <&peri_clk 0>;
+                       resets = <&peri_rst 0>;
                };
  
                serial1: serial@54006900 {
@@@ -89,6 -90,7 +90,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart1>;
                        clocks = <&peri_clk 1>;
+                       resets = <&peri_rst 1>;
                };
  
                serial2: serial@54006a00 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart2>;
                        clocks = <&peri_clk 2>;
+                       resets = <&peri_rst 2>;
                };
  
                serial3: serial@54006b00 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart3>;
                        clocks = <&peri_clk 3>;
+                       resets = <&peri_rst 3>;
+               };
+               gpio: gpio@55000000 {
+                       compatible = "socionext,uniphier-gpio";
+                       reg = <0x55000000 0x200>;
+                       interrupt-parent = <&aidet>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-ranges = <&pinctrl 0 0 0>;
+                       gpio-ranges-group-names = "gpio_range";
+                       ngpios = <248>;
+                       socionext,interrupt-ranges = <0 48 16>, <16 154 5>;
                };
  
                i2c0: i2c@58780000 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c0>;
                        clocks = <&peri_clk 4>;
+                       resets = <&peri_rst 4>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c1>;
                        clocks = <&peri_clk 5>;
+                       resets = <&peri_rst 5>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c2>;
                        clocks = <&peri_clk 6>;
+                       resets = <&peri_rst 6>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c3>;
                        clocks = <&peri_clk 7>;
+                       resets = <&peri_rst 7>;
                        clock-frequency = <100000>;
                };
  
                        #size-cells = <0>;
                        interrupts = <0 25 4>;
                        clocks = <&peri_clk 9>;
+                       resets = <&peri_rst 9>;
                        clock-frequency = <400000>;
                };
  
                        #size-cells = <0>;
                        interrupts = <0 26 4>;
                        clocks = <&peri_clk 10>;
+                       resets = <&peri_rst 10>;
                        clock-frequency = <400000>;
                };
  
                        interrupts = <0 80 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb2>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
 +                               <&mio_clk 12>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
                                 <&mio_rst 12>;
                };
                        interrupts = <0 81 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb3>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
 +                               <&mio_clk 13>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
                                 <&mio_rst 13>;
                };
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_nand>;
                        clocks = <&sys_clk 2>;
+                       resets = <&sys_rst 2>;
                };
        };
  };
@@@ -37,7 -37,7 +37,7 @@@
                        clock-frequency = <25000000>;
                };
  
-               arm_timer_clk: arm_timer_clk {
+               arm_timer_clk: arm-timer {
                        #clock-cells = <0>;
                        compatible = "fixed-clock";
                        clock-frequency = <50000000>;
@@@ -71,6 -71,7 +71,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart0>;
                        clocks = <&peri_clk 0>;
+                       resets = <&peri_rst 0>;
                };
  
                serial1: serial@54006900 {
@@@ -81,6 -82,7 +82,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart1>;
                        clocks = <&peri_clk 1>;
+                       resets = <&peri_rst 1>;
                };
  
                serial2: serial@54006a00 {
@@@ -91,6 -93,7 +93,7 @@@
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart2>;
                        clocks = <&peri_clk 2>;
+                       resets = <&peri_rst 2>;
                };
  
                serial3: serial@54006b00 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart3>;
                        clocks = <&peri_clk 3>;
+                       resets = <&peri_rst 3>;
+               };
+               gpio: gpio@55000000 {
+                       compatible = "socionext,uniphier-gpio";
+                       reg = <0x55000000 0x200>;
+                       interrupt-parent = <&aidet>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-ranges = <&pinctrl 0 0 0>,
+                                     <&pinctrl 104 0 0>,
+                                     <&pinctrl 112 0 0>;
+                       gpio-ranges-group-names = "gpio_range0",
+                                                 "gpio_range1",
+                                                 "gpio_range2";
+                       ngpios = <136>;
+                       socionext,interrupt-ranges = <0 48 13>, <14 62 2>;
                };
  
                i2c0: i2c@58400000 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c0>;
                        clocks = <&peri_clk 4>;
+                       resets = <&peri_rst 4>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c1>;
                        clocks = <&peri_clk 5>;
+                       resets = <&peri_rst 5>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c2>;
                        clocks = <&peri_clk 6>;
+                       resets = <&peri_rst 6>;
                        clock-frequency = <400000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c3>;
                        clocks = <&peri_clk 7>;
+                       resets = <&peri_rst 7>;
                        clock-frequency = <100000>;
                };
  
                        interrupts = <0 80 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb0>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
 +                               <&mio_clk 12>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
                                 <&mio_rst 12>;
                };
                        interrupts = <0 81 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb1>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
 +                               <&mio_clk 13>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
                                 <&mio_rst 13>;
                };
                        interrupts = <0 82 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb2>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 10>, <&mio_clk 14>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 10>,
 +                               <&mio_clk 14>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 10>,
                                 <&mio_rst 14>;
                };
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_nand2cs>;
                        clocks = <&sys_clk 2>;
+                       resets = <&sys_rst 2>;
                };
        };
  };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  
  #include "skeleton.dtsi"
  #include <dt-bindings/clock/zx296702-clock.h>
@@@ -38,7 -37,7 +38,7 @@@
                        reg = <0x00400000 0x1000>;
                };
  
-               intc: interrupt-controller@00801000 {
+               intc: interrupt-controller@801000 {
                        compatible = "arm,cortex-a9-gic";
                        #interrupt-cells = <3>;
                        #address-cells = <1>;
@@@ -48,7 -47,7 +48,7 @@@
                              <0x00800100 0x100>;
                };
  
-               global_timer: timer@008000200 {
+               global_timer: timer@8000200 {
                        compatible = "arm,cortex-a9-global-timer";
                        reg = <0x00800200 0x20>;
                        interrupts = <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>;
@@@ -104,6 -104,7 +104,7 @@@ config ARCH_MESO
        select PINCTRL_MESON
        select COMMON_CLK_AMLOGIC
        select COMMON_CLK_GXBB
+       select MESON_IRQ_GPIO
        help
          This enables support for the Amlogic S905 SoCs.
  
@@@ -161,9 -162,6 +162,9 @@@ config ARCH_SEATTL
  config ARCH_SHMOBILE
        bool
  
 +config ARCH_SYNQUACER
 +      bool "Socionext SynQuacer SoC Family"
 +
  config ARCH_RENESAS
        bool "Renesas SoC Platforms"
        select ARCH_SHMOBILE
@@@ -187,6 -185,12 +188,12 @@@ config ARCH_R8A779
        help
          This enables support for the Renesas R-Car M3-W SoC.
  
+ config ARCH_R8A77970
+       bool "Renesas R-Car V3M SoC Platform"
+       depends on ARCH_RENESAS
+       help
+         This enables support for the Renesas R-Car V3M SoC.
  config ARCH_R8A77995
        bool "Renesas R-Car D3 SoC Platform"
        depends on ARCH_RENESAS
@@@ -1,4 -1,3 +1,4 @@@
 +# SPDX-License-Identifier: GPL-2.0
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-bananapi-m64.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-nanopi-a64.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-a64-olinuxino.dtb
@@@ -9,3 -8,8 +9,4 @@@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-o
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus2.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb
 -
 -always                := $(dtb-y)
 -subdir-y      := $(dts-dirs)
 -clean-files   := *.dtb
+ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb
@@@ -1,4 -1,4 +1,5 @@@
 +# SPDX-License-Identifier: GPL-2.0
+ dtb-$(CONFIG_ARCH_MESON) += meson-axg-s400.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-nanopi-k2.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-nexbox-a95x.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-odroidc2.dtb
@@@ -16,7 -16,13 +17,9 @@@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s
  dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905x-p212.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p230.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905d-p231.dtb
+ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-khadas-vim2.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxm-nexbox-a1.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb
  dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
 -
 -always                := $(dtb-y)
 -subdir-y      := $(dts-dirs)
 -clean-files   := *.dtb
+ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-vega-s96.dtb
@@@ -1,5 -1,10 +1,7 @@@
- dtb-$(CONFIG_ARCH_VEXPRESS) += foundation-v8.dtb foundation-v8-gicv3.dtb
 +# SPDX-License-Identifier: GPL-2.0
+ dtb-$(CONFIG_ARCH_VEXPRESS) += \
+       foundation-v8.dtb foundation-v8-psci.dtb \
+       foundation-v8-gicv3.dtb foundation-v8-gicv3-psci.dtb
  dtb-$(CONFIG_ARCH_VEXPRESS) += juno.dtb juno-r1.dtb juno-r2.dtb
  dtb-$(CONFIG_ARCH_VEXPRESS) += rtsm_ve-aemv8a.dtb
  dtb-$(CONFIG_ARCH_VEXPRESS) += vexpress-v2f-1xv7-ca53x2.dtb
 -
 -always                := $(dtb-y)
 -subdir-y      := $(dts-dirs)
 -clean-files   := *.dtb
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * ARM Ltd.
   *
@@@ -6,26 -5,5 +6,5 @@@
   */
  
  #include "foundation-v8.dtsi"
- / {
-       gic: interrupt-controller@2f000000 {
-               compatible = "arm,gic-v3";
-               #interrupt-cells = <3>;
-               #address-cells = <2>;
-               #size-cells = <2>;
-               ranges;
-               interrupt-controller;
-               reg =   <0x0 0x2f000000 0x0 0x10000>,
-                       <0x0 0x2f100000 0x0 0x200000>,
-                       <0x0 0x2c000000 0x0 0x2000>,
-                       <0x0 0x2c010000 0x0 0x2000>,
-                       <0x0 0x2c02f000 0x0 0x2000>;
-               interrupts = <1 9 4>;
-               its: its@2f020000 {
-                       compatible = "arm,gic-v3-its";
-                       msi-controller;
-                       reg = <0x0 0x2f020000 0x0 0x20000>;
-               };
-       };
- };
+ #include "foundation-v8-gicv3.dtsi"
+ #include "foundation-v8-spin-table.dtsi"
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * ARM Ltd.
   *
@@@ -6,17 -5,5 +6,5 @@@
   */
  
  #include "foundation-v8.dtsi"
- / {
-       gic: interrupt-controller@2c001000 {
-               compatible = "arm,cortex-a15-gic", "arm,cortex-a9-gic";
-               #interrupt-cells = <3>;
-               #address-cells = <2>;
-               interrupt-controller;
-               reg = <0x0 0x2c001000 0 0x1000>,
-                     <0x0 0x2c002000 0 0x2000>,
-                     <0x0 0x2c004000 0 0x2000>,
-                     <0x0 0x2c006000 0 0x2000>;
-               interrupts = <1 9 0xf04>;
-       };
- };
+ #include "foundation-v8-gicv2.dtsi"
+ #include "foundation-v8-spin-table.dtsi"
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * ARM Ltd.
   *
                #address-cells = <2>;
                #size-cells = <0>;
  
-               cpu@0 {
+               cpu0: cpu@0 {
                        device_type = "cpu";
                        compatible = "arm,armv8";
                        reg = <0x0 0x0>;
-                       enable-method = "spin-table";
-                       cpu-release-addr = <0x0 0x8000fff8>;
                        next-level-cache = <&L2_0>;
                };
-               cpu@1 {
+               cpu1: cpu@1 {
                        device_type = "cpu";
                        compatible = "arm,armv8";
                        reg = <0x0 0x1>;
-                       enable-method = "spin-table";
-                       cpu-release-addr = <0x0 0x8000fff8>;
                        next-level-cache = <&L2_0>;
                };
-               cpu@2 {
+               cpu2: cpu@2 {
                        device_type = "cpu";
                        compatible = "arm,armv8";
                        reg = <0x0 0x2>;
-                       enable-method = "spin-table";
-                       cpu-release-addr = <0x0 0x8000fff8>;
                        next-level-cache = <&L2_0>;
                };
-               cpu@3 {
+               cpu3: cpu@3 {
                        device_type = "cpu";
                        compatible = "arm,armv8";
                        reg = <0x0 0x3>;
-                       enable-method = "spin-table";
-                       cpu-release-addr = <0x0 0x8000fff8>;
                        next-level-cache = <&L2_0>;
                };
  
@@@ -98,7 -89,7 +90,7 @@@
                timeout-sec = <30>;
        };
  
-       smb@08000000 {
+       smb@8000000 {
                compatible = "arm,vexpress,v2m-p1", "simple-bus";
                arm,v2m-memory-map = "rs1";
                #address-cells = <2>; /* SMB chipselect number and offset */
                        #size-cells = <1>;
                        ranges = <0 3 0 0x200000>;
  
-                       v2m_sysreg: sysreg@010000 {
+                       v2m_sysreg: sysreg@10000 {
                                compatible = "arm,vexpress-sysreg";
                                reg = <0x010000 0x1000>;
                        };
  
-                       v2m_serial0: uart@090000 {
+                       v2m_serial0: uart@90000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x090000 0x1000>;
                                interrupts = <5>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       v2m_serial1: uart@0a0000 {
+                       v2m_serial1: uart@a0000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x0a0000 0x1000>;
                                interrupts = <6>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       v2m_serial2: uart@0b0000 {
+                       v2m_serial2: uart@b0000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x0b0000 0x1000>;
                                interrupts = <7>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       v2m_serial3: uart@0c0000 {
+                       v2m_serial3: uart@c0000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x0c0000 0x1000>;
                                interrupts = <8>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       virtio-block@0130000 {
+                       virtio-block@130000 {
                                compatible = "virtio,mmio";
                                reg = <0x130000 0x200>;
                                interrupts = <42>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * ARM Ltd. Fast Models
   *
                             <0 63 4>;
        };
  
-       smb@08000000 {
+       smb@8000000 {
                compatible = "simple-bus";
  
                #address-cells = <2>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * ARM Ltd. Fast Models
   *
                        #size-cells = <1>;
                        ranges = <0 3 0 0x200000>;
  
-                       v2m_sysreg: sysreg@010000 {
+                       v2m_sysreg: sysreg@10000 {
                                compatible = "arm,vexpress-sysreg";
                                reg = <0x010000 0x1000>;
                                gpio-controller;
                                #gpio-cells = <2>;
                        };
  
-                       v2m_sysctl: sysctl@020000 {
+                       v2m_sysctl: sysctl@20000 {
                                compatible = "arm,sp810", "arm,primecell";
                                reg = <0x020000 0x1000>;
                                clocks = <&v2m_refclk32khz>, <&v2m_refclk1mhz>, <&v2m_clk24mhz>;
@@@ -79,7 -78,7 +79,7 @@@
                                assigned-clock-parents = <&v2m_refclk1mhz>, <&v2m_refclk1mhz>, <&v2m_refclk1mhz>, <&v2m_refclk1mhz>;
                        };
  
-                       aaci@040000 {
+                       aaci@40000 {
                                compatible = "arm,pl041", "arm,primecell";
                                reg = <0x040000 0x1000>;
                                interrupts = <11>;
@@@ -87,7 -86,7 +87,7 @@@
                                clock-names = "apb_pclk";
                        };
  
-                       mmci@050000 {
+                       mmci@50000 {
                                compatible = "arm,pl180", "arm,primecell";
                                reg = <0x050000 0x1000>;
                                interrupts = <9 10>;
@@@ -99,7 -98,7 +99,7 @@@
                                clock-names = "mclk", "apb_pclk";
                        };
  
-                       kmi@060000 {
+                       kmi@60000 {
                                compatible = "arm,pl050", "arm,primecell";
                                reg = <0x060000 0x1000>;
                                interrupts = <12>;
                                clock-names = "KMIREFCLK", "apb_pclk";
                        };
  
-                       kmi@070000 {
+                       kmi@70000 {
                                compatible = "arm,pl050", "arm,primecell";
                                reg = <0x070000 0x1000>;
                                interrupts = <13>;
                                clock-names = "KMIREFCLK", "apb_pclk";
                        };
  
-                       v2m_serial0: uart@090000 {
+                       v2m_serial0: uart@90000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x090000 0x1000>;
                                interrupts = <5>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       v2m_serial1: uart@0a0000 {
+                       v2m_serial1: uart@a0000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x0a0000 0x1000>;
                                interrupts = <6>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       v2m_serial2: uart@0b0000 {
+                       v2m_serial2: uart@b0000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x0b0000 0x1000>;
                                interrupts = <7>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       v2m_serial3: uart@0c0000 {
+                       v2m_serial3: uart@c0000 {
                                compatible = "arm,pl011", "arm,primecell";
                                reg = <0x0c0000 0x1000>;
                                interrupts = <8>;
                                clock-names = "uartclk", "apb_pclk";
                        };
  
-                       wdt@0f0000 {
+                       wdt@f0000 {
                                compatible = "arm,sp805", "arm,primecell";
                                reg = <0x0f0000 0x1000>;
                                interrupts = <0>;
                                };
                        };
  
-                       virtio-block@0130000 {
+                       virtio-block@130000 {
                                compatible = "virtio,mmio";
                                reg = <0x130000 0x200>;
                                interrupts = <42>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * ARM Ltd. Versatile Express
   *
                };
        };
  
-       smb@08000000 {
+       smb@8000000 {
                compatible = "simple-bus";
  
                #address-cells = <2>;
                        status = "disabled";
                };
  
+               dspi: dspi@2100000 {
+                       compatible = "fsl,ls1012a-dspi", "fsl,ls1021a-v1.0-dspi";
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       reg = <0x0 0x2100000 0x0 0x10000>;
+                       interrupts = <0 64 IRQ_TYPE_LEVEL_HIGH>;
+                       clock-names = "dspi";
+                       clocks = <&clockgen 4 0>;
+                       spi-num-chipselects = <5>;
+                       big-endian;
+                       status = "disabled";
+               };
                duart0: serial@21c0500 {
                        compatible = "fsl,ns16550", "ns16550a";
                        reg = <0x00 0x21c0500 0x0 0x100>;
                        dr_mode = "host";
                        phy_type = "ulpi";
                };
 +
 +              msi: msi-controller1@1572000 {
 +                      compatible = "fsl,ls1012a-msi";
 +                      reg = <0x0 0x1572000 0x0 0x8>;
 +                      msi-controller;
 +                      interrupts = <0 126 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
 +              pcie@3400000 {
 +                      compatible = "fsl,ls1012a-pcie", "snps,dw-pcie";
 +                      reg = <0x00 0x03400000 0x0 0x00100000   /* controller registers */
 +                             0x40 0x00000000 0x0 0x00002000>; /* configuration space */
 +                      reg-names = "regs", "config";
 +                      interrupts = <0 118 0x4>, /* controller interrupt */
 +                                   <0 117 0x4>; /* PME interrupt */
 +                      interrupt-names = "aer", "pme";
 +                      #address-cells = <3>;
 +                      #size-cells = <2>;
 +                      device_type = "pci";
 +                      num-lanes = <4>;
 +                      bus-range = <0x0 0xff>;
 +                      ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000   /* downstream I/O */
 +                                0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
 +                      msi-parent = <&msi>;
 +                      #interrupt-cells = <1>;
 +                      interrupt-map-mask = <0 0 0 7>;
 +                      interrupt-map = <0000 0 0 1 &gic 0 110 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 2 &gic 0 111 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 3 &gic 0 112 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 4 &gic 0 113 IRQ_TYPE_LEVEL_HIGH>;
 +              };
        };
+       firmware {
+               optee {
+                       compatible = "linaro,optee-tz";
+                       method = "smc";
+               };
+       };
  };
                qman: qman@1880000 {
                        compatible = "fsl,qman";
                        reg = <0x0 0x1880000 0x0 0x10000>;
-                       interrupts = <0 45 0x4>;
+                       interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
                        memory-region = <&qman_fqd &qman_pfdr>;
  
                };
                bman: bman@1890000 {
                        compatible = "fsl,bman";
                        reg = <0x0 0x1890000 0x0 0x10000>;
-                       interrupts = <0 45 0x4>;
+                       interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
                        memory-region = <&bman_fbpr>;
  
                };
                                     <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
                };
  
 +              pcie@3400000 {
 +                      compatible = "fsl,ls1046a-pcie", "snps,dw-pcie";
 +                      reg = <0x00 0x03400000 0x0 0x00100000   /* controller registers */
 +                             0x40 0x00000000 0x0 0x00002000>; /* configuration space */
 +                      reg-names = "regs", "config";
 +                      interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
 +                                   <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; /* PME interrupt */
 +                      interrupt-names = "aer", "pme";
 +                      #address-cells = <3>;
 +                      #size-cells = <2>;
 +                      device_type = "pci";
 +                      dma-coherent;
 +                      num-lanes = <4>;
 +                      bus-range = <0x0 0xff>;
 +                      ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000   /* downstream I/O */
 +                                0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
 +                      msi-parent = <&msi1>, <&msi2>, <&msi3>;
 +                      #interrupt-cells = <1>;
 +                      interrupt-map-mask = <0 0 0 7>;
 +                      interrupt-map = <0000 0 0 1 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 2 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 3 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 4 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
 +              pcie@3500000 {
 +                      compatible = "fsl,ls1046a-pcie", "snps,dw-pcie";
 +                      reg = <0x00 0x03500000 0x0 0x00100000   /* controller registers */
 +                             0x48 0x00000000 0x0 0x00002000>; /* configuration space */
 +                      reg-names = "regs", "config";
 +                      interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
 +                                   <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; /* PME interrupt */
 +                      interrupt-names = "aer", "pme";
 +                      #address-cells = <3>;
 +                      #size-cells = <2>;
 +                      device_type = "pci";
 +                      dma-coherent;
 +                      num-lanes = <2>;
 +                      bus-range = <0x0 0xff>;
 +                      ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000   /* downstream I/O */
 +                                0x82000000 0x0 0x40000000 0x48 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
 +                      msi-parent = <&msi2>, <&msi3>, <&msi1>;
 +                      #interrupt-cells = <1>;
 +                      interrupt-map-mask = <0 0 0 7>;
 +                      interrupt-map = <0000 0 0 1 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 2 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 3 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 4 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
 +              pcie@3600000 {
 +                      compatible = "fsl,ls1046a-pcie", "snps,dw-pcie";
 +                      reg = <0x00 0x03600000 0x0 0x00100000   /* controller registers */
 +                             0x50 0x00000000 0x0 0x00002000>; /* configuration space */
 +                      reg-names = "regs", "config";
 +                      interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
 +                                   <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>; /* PME interrupt */
 +                      interrupt-names = "aer", "pme";
 +                      #address-cells = <3>;
 +                      #size-cells = <2>;
 +                      device_type = "pci";
 +                      dma-coherent;
 +                      num-lanes = <2>;
 +                      bus-range = <0x0 0xff>;
 +                      ranges = <0x81000000 0x0 0x00000000 0x50 0x00010000 0x0 0x00010000   /* downstream I/O */
 +                                0x82000000 0x0 0x40000000 0x50 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
 +                      msi-parent = <&msi3>, <&msi1>, <&msi2>;
 +                      #interrupt-cells = <1>;
 +                      interrupt-map-mask = <0 0 0 7>;
 +                      interrupt-map = <0000 0 0 1 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 2 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 3 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
 +                                      <0000 0 0 4 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
 +              };
 +
        };
  
        reserved-memory {
                        no-map;
                };
        };
+       firmware {
+               optee {
+                       compatible = "linaro,optee-tz";
+                       method = "smc";
+               };
+       };
  };
  
  #include "qoriq-qman-portals.dtsi"
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * dts file for Hisilicon HiKey960 Development Board
   *
        };
  };
  
+ /*
+  * Legend: proper name = the GPIO line is used as GPIO
+  *         NC = not connected (pin out but not routed from the chip to
+  *              anything the board)
+  *         "[PER]" = pin is muxed for [peripheral] (not GPIO)
+  *         "" = no idea, schematic doesn't say, could be
+  *              unrouted (not connected to any external pin)
+  *         LSEC = Low Speed External Connector
+  *         HSEC = High Speed External Connector
+  *
+  * Line names are taken from "HiKey 960 Board ver A" schematics
+  * from Huawei. The 40 pin low speed expansion connector is named
+  * J2002 63453-140LF.
+  *
+  * For the lines routed to the external connectors the
+  * lines are named after the 96Boards CE Specification 1.0,
+  * Appendix "Expansion Connector Signal Description".
+  *
+  * When the 96Board naming of a line and the schematic name of
+  * the same line are in conflict, the 96Board specification
+  * takes precedence, which means that the external UART on the
+  * LSEC is named UART0 while the schematic and SoC names this
+  * UART3. This is only for the informational lines i.e. "[FOO]",
+  * the GPIO named lines "GPIO-A" thru "GPIO-L" are the only
+  * ones actually used for GPIO.
+  */
+ &gpio0 {
+       /* GPIO_000-GPIO_007 */
+       gpio-line-names =
+               "",
+               "TP901", /* TEST_MODE connected to TP901 */
+               "[PMU0_SSI]",
+               "[PMU1_SSI]",
+               "[PMU2_SSI]",
+               "[PMU0_CLKOUT]",
+               "[JTAG_TCK]",
+               "[JTAG_TMS]";
+ };
+ &gpio1 {
+       /* GPIO_008-GPIO_015 */
+       gpio-line-names =
+               "[JTAG_TRST_N]",
+               "[JTAG_TDI]",
+               "[JTAG_TDO]",
+               "NC", "NC",
+               "[I2C3_SCL]",
+               "[I2C3_SDA]",
+               "NC";
+ };
+ &gpio2 {
+       /* GPIO_016-GPIO_023 */
+       gpio-line-names =
+               "NC", "NC", "NC",
+               "GPIO-J", /* LSEC pin 32: GPIO_019 */
+               "GPIO_020_HDMI_SEL",
+               "GPIO-L", /* LSEC pin 34: GPIO_021 */
+               "GPIO_022_UFSBUCK_INT_N",
+               "GPIO-G"; /* LSEC pin 29: LCD_TE0 */
+ };
+ &gpio3 {
+       /* GPIO_024-GPIO_031 */
+       /* The rail from pin BK36 is named LCD_TE0, we assume to be muxed as GPIO for GPIO-G */
+       gpio-line-names =
+               "[CSI0_MCLK]", /* HSEC pin 15: ISP_CCLK0_MCAM */
+               "[CSI1_MCLK]", /* HSEC pin 17: ISP_CCLK1_SCAM */
+               "NC",
+               "[I2C2_SCL]", /* HSEC pin 32: ISP_SCL0 */
+               "[I2C2_SDA]", /* HSEC pin 34: ISP_SDA0 */
+               "[I2C3_SCL]", /* HSEC pin 36: ISP_SCL1 */
+               "[I2C3_SDA]", /* HSEC pin 38: ISP_SDA1 */
+               "NC";
+ };
+ &gpio4 {
+       /* GPIO_032-GPIO_039 */
+       gpio-line-names =
+               "NC", "NC",
+               "PWR_BTN_N", /* LSEC pin 4: GPIO_034_PWRON_DET */
+               "GPIO_035_PMU2_EN",
+               "GPIO_036_USB_HUB_RESET",
+               "NC", "NC", "NC";
+ };
+ &gpio5 {
+       /* GPIO_040-GPIO_047 */
+       gpio-line-names =
+               "GPIO-H", /* LSEC pin 30: GPIO_040_LCD_RST_N */
+               "GPIO_041_HDMI_PD",
+               "TP904", /* Test point */
+               "TP905", /* Test point */
+               "NC", "NC",
+               "GPIO_046_HUB_VDD33_EN",
+               "GPIO_047_PMU1_EN";
+ };
+ &gpio6 {
+       /* GPIO_048-GPIO_055 */
+       gpio-line-names =
+               "NC", "NC", "NC",
+               "GPIO_051_WIFI_EN",
+               "GPIO-I", /* LSEC pin 31: GPIO_052_CAM0_RST_N */
+               /*
+                * These two pins should be used for SD(IO) data according to the
+                * 96boards specification but seems to be repurposed for a IRDA UART.
+                * They are however named according to the spec.
+                */
+               "[SD_DAT1]", /* HSEC pin 3: UART0_IRDA_RXD */
+               "[SD_DAT2]", /* HSEC pin 5: UART0_IRDA_TXD */
+               "[UART1_RXD]"; /* LSEC pin 13: DEBUG_UART6_RXD */
+ };
+ &gpio7 {
+       /* GPIO_056-GPIO_063 */
+       gpio-line-names =
+               "[UART1_TXD]", /* LSEC pin 11: DEBUG_UART6_TXD */
+               "[UART0_CTS]", /* LSEC pin 3: UART3_CTS_N */
+               "[UART0_RTS]", /* LSEC pin 9: UART3_RTS_N */
+               "[UART0_RXD]", /* LSEC pin 7: UART3_RXD */
+               "[UART0_TXD]", /* LSEC pin 5: UART3_TXD */
+               "[SOC_BT_UART4_CTS_N]",
+               "[SOC_BT_UART4_RTS_N]",
+               "[SOC_BT_UART4_RXD]";
+ };
+ &gpio8 {
+       /* GPIO_064-GPIO_071 */
+       gpio-line-names =
+               "[SOC_BT_UART4_TXD]",
+               "NC",
+               "[PMU_HKADC_SSI]",
+               "NC",
+               "GPIO_068_SEL",
+               "NC", "NC", "NC";
+ };
+ &gpio9 {
+       /* GPIO_072-GPIO_079 */
+       gpio-line-names =
+               "NC", "NC", "NC",
+               "GPIO-K", /* LSEC pin 33: GPIO_075_CAM1_RST_N */
+               "NC", "NC", "NC", "NC";
+ };
+ &gpio10 {
+       /* GPIO_080-GPIO_087 */
+       gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
+ };
+ &gpio11 {
+       /* GPIO_088-GPIO_095 */
+       gpio-line-names =
+               "NC",
+               "[PCIE_PERST_N]",
+               "NC", "NC", "NC", "NC", "NC", "NC";
+ };
+ &gpio12 {
+       /* GPIO_096-GPIO_103 */
+       gpio-line-names = "NC", "NC", "NC", "", "", "", "", "NC";
+ };
+ &gpio13 {
+       /* GPIO_104-GPIO_111 */
+       gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
+ };
+ &gpio14 {
+       /* GPIO_112-GPIO_119 */
+       gpio-line-names = "NC", "NC", "NC", "NC", "NC", "NC", "NC", "NC";
+ };
+ &gpio15 {
+       /* GPIO_120-GPIO_127 */
+       gpio-line-names =
+               "NC", "NC", "NC", "NC", "NC", "NC",
+               "GPIO_126_BT_EN",
+               "TP902"; /* GPIO_127_JTAG_SEL0 */
+ };
+ &gpio16 {
+       /* GPIO_128-GPIO_135 */
+       gpio-line-names = "", "", "", "", "", "", "", "";
+ };
+ &gpio17 {
+       /* GPIO_136-GPIO_143 */
+       gpio-line-names = "", "", "", "", "", "", "", "";
+ };
+ &gpio18 {
+       /* GPIO_144-GPIO_151 */
+       gpio-line-names =
+               "[UFS_REF_CLK]",
+               "[UFS_RST_N]",
+               "[SPI1_SCLK]", /* HSEC pin 9: GPIO_146_SPI3_CLK */
+               "[SPI1_DIN]", /* HSEC pin 11: GPIO_147_SPI3_DI */
+               "[SPI1_DOUT]", /* HSEC pin 1: GPIO_148_SPI3_DO */
+               "[SPI1_CS]", /* HSEC pin 7: GPIO_149_SPI3_CS0_N */
+               "GPIO_150_USER_LED1",
+               "GPIO_151_USER_LED2";
+ };
+ &gpio19 {
+       /* GPIO_152-GPIO_159 */
+       gpio-line-names = "NC", "NC", "NC", "NC", "", "", "", "";
+ };
+ &gpio20 {
+       /* GPIO_160-GPIO_167 */
+       gpio-line-names =
+               "[SD_CLK]",
+               "[SD_CMD]",
+               "[SD_DATA0]",
+               "[SD_DATA1]",
+               "[SD_DATA2]",
+               "[SD_DATA3]",
+               "", "";
+ };
+ &gpio21 {
+       /* GPIO_168-GPIO_175 */
+       gpio-line-names =
+               "[WL_SDIO_CLK]",
+               "[WL_SDIO_CMD]",
+               "[WL_SDIO_DATA0]",
+               "[WL_SDIO_DATA1]",
+               "[WL_SDIO_DATA2]",
+               "[WL_SDIO_DATA3]",
+               "", "";
+ };
+ &gpio22 {
+       /* GPIO_176-GPIO_183 */
+       gpio-line-names =
+               "[GPIO_176_PMU_PWR_HOLD]",
+               "NA",
+               "[SYSCLK_EN]",
+               "GPIO_179_WL_WAKEUP_AP",
+               "GPIO_180_HDMI_INT",
+               "NA",
+               "GPIO-F", /* LSEC pin 28: LCD_BL_PWM */
+               "[I2C0_SCL]"; /* LSEC pin 15 */
+ };
+ &gpio23 {
+       /* GPIO_184-GPIO_191 */
+       gpio-line-names =
+               "[I2C0_SDA]", /* LSEC pin 17 */
+               "[I2C1_SCL]", /* Actual SoC I2C1 */
+               "[I2C1_SDA]", /* Actual SoC I2C1 */
+               "[I2C1_SCL]", /* LSEC pin 19: I2C7_SCL */
+               "[I2C1_SDA]", /* LSEC pin 21: I2C7_SDA */
+               "GPIO_189_USER_LED3",
+               "GPIO_190_USER_LED4",
+               "";
+ };
+ &gpio24 {
+       /* GPIO_192-GPIO_199 */
+       gpio-line-names =
+               "[PCM_DI]", /* LSEC pin 22: GPIO_192_I2S0_DI */
+               "[PCM_DO]", /* LSEC pin 20: GPIO_193_I2S0_DO */
+               "[PCM_CLK]", /* LSEC pin 18: GPIO_194_I2S0_XCLK */
+               "[PCM_FS]", /* LSEC pin 16: GPIO_195_I2S0_XFS */
+               "[GPIO_196_I2S2_DI]",
+               "[GPIO_197_I2S2_DO]",
+               "[GPIO_198_I2S2_XCLK]",
+               "[GPIO_199_I2S2_XFS]";
+ };
+ &gpio25 {
+       /* GPIO_200-GPIO_207 */
+       gpio-line-names =
+               "NC",
+               "NC",
+               "GPIO_202_VBUS_TYPEC",
+               "GPIO_203_SD_DET",
+               "GPIO_204_PMU12_IRQ_N",
+               "GPIO_205_WIFI_ACTIVE",
+               "GPIO_206_USBSW_SEL",
+               "GPIO_207_BT_ACTIVE";
+ };
+ &gpio26 {
+       /* GPIO_208-GPIO_215 */
+       gpio-line-names =
+               "GPIO-A", /* LSEC pin 23: GPIO_208 */
+               "GPIO-B", /* LSEC pin 24: GPIO_209 */
+               "GPIO-C", /* LSEC pin 25: GPIO_210 */
+               "GPIO-D", /* LSEC pin 26: GPIO_211 */
+               "GPIO-E", /* LSEC pin 27: GPIO_212 */
+               "[PCIE_CLKREQ_N]",
+               "[PCIE_WAKE_N]",
+               "[SPI0_CLK]"; /* LSEC pin 8: SPI2_CLK */
+ };
+ &gpio27 {
+       /* GPIO_216-GPIO_223 */
+       gpio-line-names =
+               "[SPI0_DIN]", /* LSEC pin 10: SPI2_DI */
+               "[SPI0_DOUT]", /* LSEC pin 14: SPI2_DO */
+               "[SPI0_CS]", /* LSEC pin 12: SPI2_CS0_N */
+               "GPIO_219_CC_INT",
+               "NC",
+               "NC",
+               "[PMU_INT]",
+               "";
+ };
+ &gpio28 {
+       /* GPIO_224-GPIO_231 */
+       gpio-line-names =
+               "", "", "", "", "", "", "", "";
+ };
  &i2c0 {
        /* On Low speed expansion */
        label = "LS-I2C0";
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * dts file for Hisilicon Hi3660 SoC
   *
                        clocks = <&crg_ctrl HI3660_OSC32K>;
                        clock-names = "apb_pclk";
                };
+               tsensor: tsensor@fff30000 {
+                       compatible = "hisilicon,hi3660-tsensor";
+                       reg = <0x0 0xfff30000 0x0 0x1000>;
+                       interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
+                       #thermal-sensor-cells = <1>;
+               };
        };
  };
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /*
   * dts file for Hisilicon Hi6220 SoC
   *
                };
        };
  };
+ #include "hi6220-coresight.dtsi"
                                                     <ICU_GRP_NSR 43 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 47 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 51 IRQ_TYPE_LEVEL_HIGH>,
-                                                    <ICU_GRP_NSR 55 IRQ_TYPE_LEVEL_HIGH>;
+                                                    <ICU_GRP_NSR 55 IRQ_TYPE_LEVEL_HIGH>,
+                                                    <ICU_GRP_NSR 129 IRQ_TYPE_LEVEL_HIGH>;
                                        interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2",
-                                                         "tx-cpu3", "rx-shared";
+                                                         "tx-cpu3", "rx-shared", "link";
                                        port-id = <0>;
                                        gop-port-id = <0>;
                                        status = "disabled";
                                                     <ICU_GRP_NSR 44 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 48 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 52 IRQ_TYPE_LEVEL_HIGH>,
-                                                    <ICU_GRP_NSR 56 IRQ_TYPE_LEVEL_HIGH>;
+                                                    <ICU_GRP_NSR 56 IRQ_TYPE_LEVEL_HIGH>,
+                                                    <ICU_GRP_NSR 128 IRQ_TYPE_LEVEL_HIGH>;
                                        interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2",
-                                                         "tx-cpu3", "rx-shared";
+                                                         "tx-cpu3", "rx-shared", "link";
                                        port-id = <1>;
                                        gop-port-id = <2>;
                                        status = "disabled";
                                                     <ICU_GRP_NSR 45 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 49 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 53 IRQ_TYPE_LEVEL_HIGH>,
-                                                    <ICU_GRP_NSR 57 IRQ_TYPE_LEVEL_HIGH>;
+                                                    <ICU_GRP_NSR 57 IRQ_TYPE_LEVEL_HIGH>,
+                                                    <ICU_GRP_NSR 127 IRQ_TYPE_LEVEL_HIGH>;
                                        interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2",
-                                                         "tx-cpu3", "rx-shared";
+                                                         "tx-cpu3", "rx-shared", "link";
                                        port-id = <2>;
                                        gop-port-id = <3>;
                                        status = "disabled";
                                };
                        };
  
+                       cpm_comphy: phy@120000 {
+                               compatible = "marvell,comphy-cp110";
+                               reg = <0x120000 0x6000>;
+                               marvell,system-controller = <&cpm_syscon0>;
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               cpm_comphy0: phy@0 {
+                                       reg = <0>;
+                                       #phy-cells = <1>;
+                               };
+                               cpm_comphy1: phy@1 {
+                                       reg = <1>;
+                                       #phy-cells = <1>;
+                               };
+                               cpm_comphy2: phy@2 {
+                                       reg = <2>;
+                                       #phy-cells = <1>;
+                               };
+                               cpm_comphy3: phy@3 {
+                                       reg = <3>;
+                                       #phy-cells = <1>;
+                               };
+                               cpm_comphy4: phy@4 {
+                                       reg = <4>;
+                                       #phy-cells = <1>;
+                               };
+                               cpm_comphy5: phy@5 {
+                                       reg = <5>;
+                                       #phy-cells = <1>;
+                               };
+                       };
                        cpm_mdio: mdio@12a200 {
                                #address-cells = <1>;
                                #size-cells = <0>;
  
                        cpm_syscon0: system-controller@440000 {
                                compatible = "syscon", "simple-mfd";
-                               reg = <0x440000 0x1000>;
+                               reg = <0x440000 0x2000>;
  
                                cpm_clk: clock {
                                        compatible = "marvell,cp110-clock";
                                 * this controller is only usable on the CPM
                                 * for A7K and on the CPS for A8K.
                                 */
-                               compatible = "marvell,armada370-nand";
+                               compatible = "marvell,armada-8k-nand",
+                                            "marvell,armada370-nand";
                                reg = <0x720000 0x54>;
                                #address-cells = <1>;
                                #size-cells = <1>;
                                interrupts = <ICU_GRP_NSR 115 IRQ_TYPE_LEVEL_HIGH>;
                                clocks = <&cpm_clk 1 2>;
+                               marvell,system-controller = <&cpm_syscon0>;
                                status = "disabled";
                        };
  
                                /* non-prefetchable memory */
                                0x82000000 0 0xf6000000 0  0xf6000000 0 0xf00000>;
                        interrupt-map-mask = <0 0 0 0>;
 -                      interrupt-map = <0 0 0 0 &cpm_icu ICU_GRP_NSR 22 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-map = <0 0 0 0 &cpm_icu ICU_GRP_NSR 22 IRQ_TYPE_LEVEL_HIGH>;
                        interrupts = <ICU_GRP_NSR 22 IRQ_TYPE_LEVEL_HIGH>;
                        num-lanes = <1>;
                        clocks = <&cpm_clk 1 13>;
                                /* non-prefetchable memory */
                                0x82000000 0 0xf7000000 0  0xf7000000 0 0xf00000>;
                        interrupt-map-mask = <0 0 0 0>;
 -                      interrupt-map = <0 0 0 0 &cpm_icu ICU_GRP_NSR 24 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-map = <0 0 0 0 &cpm_icu ICU_GRP_NSR 24 IRQ_TYPE_LEVEL_HIGH>;
                        interrupts = <ICU_GRP_NSR 24 IRQ_TYPE_LEVEL_HIGH>;
  
                        num-lanes = <1>;
                                /* non-prefetchable memory */
                                0x82000000 0 0xf8000000 0  0xf8000000 0 0xf00000>;
                        interrupt-map-mask = <0 0 0 0>;
 -                      interrupt-map = <0 0 0 0 &cpm_icu ICU_GRP_NSR 23 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-map = <0 0 0 0 &cpm_icu ICU_GRP_NSR 23 IRQ_TYPE_LEVEL_HIGH>;
                        interrupts = <ICU_GRP_NSR 23 IRQ_TYPE_LEVEL_HIGH>;
  
                        num-lanes = <1>;
                                                     <ICU_GRP_NSR 43 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 47 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 51 IRQ_TYPE_LEVEL_HIGH>,
-                                                    <ICU_GRP_NSR 55 IRQ_TYPE_LEVEL_HIGH>;
+                                                    <ICU_GRP_NSR 55 IRQ_TYPE_LEVEL_HIGH>,
+                                                    <ICU_GRP_NSR 129 IRQ_TYPE_LEVEL_HIGH>;
                                        interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2",
-                                                         "tx-cpu3", "rx-shared";
+                                                         "tx-cpu3", "rx-shared", "link";
                                        port-id = <0>;
                                        gop-port-id = <0>;
                                        status = "disabled";
                                                     <ICU_GRP_NSR 44 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 48 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 52 IRQ_TYPE_LEVEL_HIGH>,
-                                                    <ICU_GRP_NSR 56 IRQ_TYPE_LEVEL_HIGH>;
+                                                    <ICU_GRP_NSR 56 IRQ_TYPE_LEVEL_HIGH>,
+                                                    <ICU_GRP_NSR 128 IRQ_TYPE_LEVEL_HIGH>;
                                        interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2",
-                                                         "tx-cpu3", "rx-shared";
+                                                         "tx-cpu3", "rx-shared", "link";
                                        port-id = <1>;
                                        gop-port-id = <2>;
                                        status = "disabled";
                                                     <ICU_GRP_NSR 45 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 49 IRQ_TYPE_LEVEL_HIGH>,
                                                     <ICU_GRP_NSR 53 IRQ_TYPE_LEVEL_HIGH>,
-                                                    <ICU_GRP_NSR 57 IRQ_TYPE_LEVEL_HIGH>;
+                                                    <ICU_GRP_NSR 57 IRQ_TYPE_LEVEL_HIGH>,
+                                                    <ICU_GRP_NSR 127 IRQ_TYPE_LEVEL_HIGH>;
                                        interrupt-names = "tx-cpu0", "tx-cpu1", "tx-cpu2",
-                                                         "tx-cpu3", "rx-shared";
+                                                         "tx-cpu3", "rx-shared", "link";
                                        port-id = <2>;
                                        gop-port-id = <3>;
                                        status = "disabled";
                                };
                        };
  
+                       cps_comphy: phy@120000 {
+                               compatible = "marvell,comphy-cp110";
+                               reg = <0x120000 0x6000>;
+                               marvell,system-controller = <&cps_syscon0>;
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               cps_comphy0: phy@0 {
+                                       reg = <0>;
+                                       #phy-cells = <1>;
+                               };
+                               cps_comphy1: phy@1 {
+                                       reg = <1>;
+                                       #phy-cells = <1>;
+                               };
+                               cps_comphy2: phy@2 {
+                                       reg = <2>;
+                                       #phy-cells = <1>;
+                               };
+                               cps_comphy3: phy@3 {
+                                       reg = <3>;
+                                       #phy-cells = <1>;
+                               };
+                               cps_comphy4: phy@4 {
+                                       reg = <4>;
+                                       #phy-cells = <1>;
+                               };
+                               cps_comphy5: phy@5 {
+                                       reg = <5>;
+                                       #phy-cells = <1>;
+                               };
+                       };
                        cps_mdio: mdio@12a200 {
                                #address-cells = <1>;
                                #size-cells = <0>;
  
                        cps_syscon0: system-controller@440000 {
                                compatible = "syscon", "simple-mfd";
-                               reg = <0x440000 0x1000>;
+                               reg = <0x440000 0x2000>;
  
                                cps_clk: clock {
                                        compatible = "marvell,cp110-clock";
                                 * this controller is only usable on the CPM
                                 * for A7K and on the CPS for A8K.
                                 */
-                               compatible = "marvell,armada370-nand";
+                               compatible = "marvell,armada370-nand",
+                                            "marvell,armada370-nand";
                                reg = <0x720000 0x54>;
                                #address-cells = <1>;
                                #size-cells = <1>;
                                /* non-prefetchable memory */
                                0x82000000 0 0xfa000000 0  0xfa000000 0 0xf00000>;
                        interrupt-map-mask = <0 0 0 0>;
 -                      interrupt-map = <0 0 0 0 &cps_icu ICU_GRP_NSR 22 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-map = <0 0 0 0 &cps_icu ICU_GRP_NSR 22 IRQ_TYPE_LEVEL_HIGH>;
                        interrupts = <ICU_GRP_NSR 22 IRQ_TYPE_LEVEL_HIGH>;
                        num-lanes = <1>;
                        clocks = <&cps_clk 1 13>;
                                /* non-prefetchable memory */
                                0x82000000 0 0xfb000000 0  0xfb000000 0 0xf00000>;
                        interrupt-map-mask = <0 0 0 0>;
 -                      interrupt-map = <0 0 0 0 &cps_icu ICU_GRP_NSR 24 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-map = <0 0 0 0 &cps_icu ICU_GRP_NSR 24 IRQ_TYPE_LEVEL_HIGH>;
                        interrupts = <ICU_GRP_NSR 24 IRQ_TYPE_LEVEL_HIGH>;
  
                        num-lanes = <1>;
                                /* non-prefetchable memory */
                                0x82000000 0 0xfc000000 0  0xfc000000 0 0xf00000>;
                        interrupt-map-mask = <0 0 0 0>;
 -                      interrupt-map = <0 0 0 0 &cps_icu ICU_GRP_NSR 23 IRQ_TYPE_LEVEL_HIGH>;
 +                      interrupt-map = <0 0 0 0 &cps_icu ICU_GRP_NSR 23 IRQ_TYPE_LEVEL_HIGH>;
                        interrupts = <ICU_GRP_NSR 23 IRQ_TYPE_LEVEL_HIGH>;
  
                        num-lanes = <1>;
@@@ -1,4 -1,3 +1,4 @@@
 +// SPDX-License-Identifier: GPL-2.0
  /dts-v1/;
  
  #include <dt-bindings/input/linux-event-codes.h>
                status = "okay";
  
                vmmc-supply = <&vdd_sd>;
+       };
+       pcie@10003000 {
+               status = "okay";
+               dvdd-pex-supply = <&vdd_pex>;
+               hvdd-pex-pll-supply = <&vdd_1v8>;
+               hvdd-pex-supply = <&vdd_1v8>;
+               vddio-pexctl-aud-supply = <&vdd_1v8>;
+               pci@1,0 {
+                       nvidia,num-lanes = <4>;
+                       status = "okay";
+               };
+               pci@2,0 {
+                       nvidia,num-lanes = <0>;
+                       status = "disabled";
+               };
+               pci@3,0 {
+                       nvidia,num-lanes = <1>;
+                       status = "disabled";
+               };
        };
  
        gpio-keys {
@@@ -1,10 -1,10 +1,11 @@@
 +// SPDX-License-Identifier: GPL-2.0
  #include <dt-bindings/clock/tegra186-clock.h>
  #include <dt-bindings/gpio/tegra186-gpio.h>
  #include <dt-bindings/interrupt-controller/arm-gic.h>
  #include <dt-bindings/mailbox/tegra186-hsp.h>
  #include <dt-bindings/power/tegra186-powergate.h>
  #include <dt-bindings/reset/tegra186-reset.h>
+ #include <dt-bindings/thermal/tegra186-bpmp-thermal.h>
  
  / {
        compatible = "nvidia,tegra186";
                nvidia,bpmp = <&bpmp>;
        };
  
+       pcie@10003000 {
+               compatible = "nvidia,tegra186-pcie";
+               power-domains = <&bpmp TEGRA186_POWER_DOMAIN_PCX>;
+               device_type = "pci";
+               reg = <0x0 0x10003000 0x0 0x00000800   /* PADS registers */
+                      0x0 0x10003800 0x0 0x00000800   /* AFI registers */
+                      0x0 0x40000000 0x0 0x10000000>; /* configuration space */
+               reg-names = "pads", "afi", "cs";
+               interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
+                            <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */
+               interrupt-names = "intr", "msi";
+               #interrupt-cells = <1>;
+               interrupt-map-mask = <0 0 0 0>;
+               interrupt-map = <0 0 0 0 &gic GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
+               bus-range = <0x00 0xff>;
+               #address-cells = <3>;
+               #size-cells = <2>;
+               ranges = <0x82000000 0 0x10000000 0x0 0x10000000 0 0x00001000   /* port 0 configuration space */
+                         0x82000000 0 0x10001000 0x0 0x10001000 0 0x00001000   /* port 1 configuration space */
+                         0x82000000 0 0x10004000 0x0 0x10004000 0 0x00001000   /* port 2 configuration space */
+                         0x81000000 0 0x0        0x0 0x50000000 0 0x00010000   /* downstream I/O (64 KiB) */
+                         0x82000000 0 0x50100000 0x0 0x50100000 0 0x07F00000   /* non-prefetchable memory (127 MiB) */
+                         0xc2000000 0 0x58000000 0x0 0x58000000 0 0x28000000>; /* prefetchable memory (640 MiB) */
+               clocks = <&bpmp TEGRA186_CLK_AFI>,
+                        <&bpmp TEGRA186_CLK_PCIE>,
+                        <&bpmp TEGRA186_CLK_PLLE>;
+               clock-names = "afi", "pex", "pll_e";
+               resets = <&bpmp TEGRA186_RESET_AFI>,
+                        <&bpmp TEGRA186_RESET_PCIE>,
+                        <&bpmp TEGRA186_RESET_PCIEXCLK>;
+               reset-names = "afi", "pex", "pcie_x";
+               status = "disabled";
+               pci@1,0 {
+                       device_type = "pci";
+                       assigned-addresses = <0x82000800 0 0x10000000 0 0x1000>;
+                       reg = <0x000800 0 0 0 0>;
+                       status = "disabled";
+                       #address-cells = <3>;
+                       #size-cells = <2>;
+                       ranges;
+                       nvidia,num-lanes = <2>;
+               };
+               pci@2,0 {
+                       device_type = "pci";
+                       assigned-addresses = <0x82001000 0 0x10001000 0 0x1000>;
+                       reg = <0x001000 0 0 0 0>;
+                       status = "disabled";
+                       #address-cells = <3>;
+                       #size-cells = <2>;
+                       ranges;
+                       nvidia,num-lanes = <1>;
+               };
+               pci@3,0 {
+                       device_type = "pci";
+                       assigned-addresses = <0x82001800 0 0x10004000 0 0x1000>;
+                       reg = <0x001800 0 0 0 0>;
+                       status = "disabled";
+                       #address-cells = <3>;
+                       #size-cells = <2>;
+                       ranges;
+                       nvidia,num-lanes = <1>;
+               };
+       };
+       host1x@13e00000 {
+               compatible = "nvidia,tegra186-host1x", "simple-bus";
+               reg = <0x0 0x13e00000 0x0 0x10000>,
+                     <0x0 0x13e10000 0x0 0x10000>;
+               reg-names = "hypervisor", "vm";
+               interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>,
+                            <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>;
+               clocks = <&bpmp TEGRA186_CLK_HOST1X>;
+               clock-names = "host1x";
+               resets = <&bpmp TEGRA186_RESET_HOST1X>;
+               reset-names = "host1x";
+               #address-cells = <1>;
+               #size-cells = <1>;
+               ranges = <0x15000000 0x0 0x15000000 0x01000000>;
+               vic@15340000 {
+                       compatible = "nvidia,tegra186-vic";
+                       reg = <0x15340000 0x40000>;
+                       interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
+                       clocks = <&bpmp TEGRA186_CLK_VIC>;
+                       clock-names = "vic";
+                       resets = <&bpmp TEGRA186_RESET_VIC>;
+                       reset-names = "vic";
+                       power-domains = <&bpmp TEGRA186_POWER_DOMAIN_VIC>;
+               };
+       };
        gpu@17000000 {
                compatible = "nvidia,gp10b";
                reg = <0x0 0x17000000 0x0 0x1000000>,
                shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>;
                #clock-cells = <1>;
                #reset-cells = <1>;
+               #power-domain-cells = <1>;
  
                bpmp_i2c: i2c {
                        compatible = "nvidia,tegra186-bpmp-i2c";
                        #size-cells = <0>;
                        status = "disabled";
                };
+               bpmp_thermal: thermal {
+                       compatible = "nvidia,tegra186-bpmp-thermal";
+                       #thermal-sensor-cells = <1>;
+               };
+       };
+       thermal-zones {
+               a57 {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_CPU>;
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+                       cooling-maps {
+                       };
+               };
+               denver {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AUX>;
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+                       cooling-maps {
+                       };
+               };
+               gpu {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_GPU>;
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+                       cooling-maps {
+                       };
+               };
+               pll {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_PLLX>;
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+                       cooling-maps {
+                       };
+               };
+               always_on {
+                       polling-delay = <0>;
+                       polling-delay-passive = <1000>;
+                       thermal-sensors =
+                               <&bpmp_thermal TEGRA186_BPMP_THERMAL_ZONE_AO>;
+                       trips {
+                               critical {
+                                       temperature = <101000>;
+                                       hysteresis = <0>;
+                                       type = "critical";
+                               };
+                       };
+                       cooling-maps {
+                       };
+               };
        };
  
        timer {
@@@ -1,1 -1,7 +1,3 @@@
+ dtb-$(CONFIG_ARCH_REALTEK) += rtd1295-mele-v9.dtb
+ dtb-$(CONFIG_ARCH_REALTEK) += rtd1295-probox2-ava.dtb
  dtb-$(CONFIG_ARCH_REALTEK) += rtd1295-zidoo-x9s.dtb
 -
 -always                := $(dtb-y)
 -subdir-y      := $(dts-dirs)
 -clean-files   := *.dtb
@@@ -1,6 -1,12 +1,10 @@@
 +# SPDX-License-Identifier: GPL-2.0
  dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-x.dtb r8a7795-h3ulcb.dtb
+ dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-h3ulcb-kf.dtb
  dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-salvator-xs.dtb
  dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-salvator-x.dtb r8a7795-es1-h3ulcb.dtb
+ dtb-$(CONFIG_ARCH_R8A7795) += r8a7795-es1-h3ulcb-kf.dtb
  dtb-$(CONFIG_ARCH_R8A7796) += r8a7796-salvator-x.dtb r8a7796-m3ulcb.dtb
+ dtb-$(CONFIG_ARCH_R8A7796) += r8a7796-m3ulcb-kf.dtb
+ dtb-$(CONFIG_ARCH_R8A77970) += r8a77970-eagle.dtb
  dtb-$(CONFIG_ARCH_R8A77995) += r8a77995-draak.dtb
 -
 -always                := $(dtb-y)
 -clean-files   := *.dtb
@@@ -52,7 -52,7 +52,7 @@@
                 */
                compatible = "fixed-clock";
                #clock-cells = <0>;
-               clock-frequency = <11289600>;
+               clock-frequency = <12288000>;
        };
  
        backlight: backlight {
@@@ -62,7 -62,6 +62,7 @@@
                brightness-levels = <256 128 64 16 8 4 0>;
                default-brightness-level = <6>;
  
 +              power-supply = <&reg_12v>;
                enable-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
        };
  
                regulator-always-on;
        };
  
 +      reg_12v: regulator2 {
 +              compatible = "regulator-fixed";
 +              regulator-name = "fixed-12V";
 +              regulator-min-microvolt = <12000000>;
 +              regulator-max-microvolt = <12000000>;
 +              regulator-boot-on;
 +              regulator-always-on;
 +      };
 +
        rsnd_ak4613: sound {
                compatible = "simple-audio-card";
  
  };
  
  &ehci0 {
+       dr_mode = "otg";
        status = "okay";
  };
  
  };
  
  &hsusb {
+       dr_mode = "otg";
        status = "okay";
  };
  
  };
  
  &ohci0 {
+       dr_mode = "otg";
        status = "okay";
  };
  
  
        avb_pins: avb {
                mux {
-                       groups = "avb_link", "avb_phy_int", "avb_mdc",
-                                "avb_mii";
+                       groups = "avb_link", "avb_mdc", "avb_mii";
                        function = "avb";
                };
  
                        bias-pull-down;
                };
        };
+       usb30_pins: usb30 {
+               groups = "usb30";
+               function = "usb30";
+       };
  };
  
  &pwm1 {
  };
  
  &xhci0 {
+       pinctrl-0 = <&usb30_pins>;
+       pinctrl-names = "default";
        status = "okay";
  };
        iep_mmu: iommu@ff900800 {
                compatible = "rockchip,iommu";
                reg = <0x0 0xff900800 0x0 0x100>;
 -              interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH 0>;
 +              interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
                interrupt-names = "iep_mmu";
                #iommu-cells = <0>;
                status = "disabled";
                status = "disabled";
        };
  
+       efuse256: efuse@ffb00000 {
+               compatible = "rockchip,rk3368-efuse";
+               reg = <0x0 0xffb00000 0x0 0x20>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+               clocks = <&cru PCLK_EFUSE256>;
+               clock-names = "pclk_efuse";
+               cpu_leakage: cpu-leakage@17 {
+                       reg = <0x17 0x1>;
+               };
+               temp_adjust: temp-adjust@1f {
+                       reg = <0x1f 0x1>;
+               };
+       };
        gic: interrupt-controller@ffb71000 {
                compatible = "arm,gic-400";
                interrupt-controller;
        model = "Firefly-RK3399 Board";
        compatible = "firefly,firefly-rk3399", "rockchip,rk3399";
  
+       chosen {
+               stdout-path = "serial2:1500000n8";
+       };
        backlight: backlight {
                compatible = "pwm-backlight";
                enable-gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>;
        status = "okay";
  };
  
+ &hdmi {
+       ddc-i2c-bus = <&i2c3>;
+       pinctrl-names = "default";
+       pinctrl-0 = <&hdmi_cec>;
+       status = "okay";
+ };
  &i2c0 {
        clock-frequency = <400000>;
        i2c-scl-rising-time-ns = <168>;
                                regulator-always-on;
                                regulator-boot-on;
                                regulator-min-microvolt = <1800000>;
 -                              regulator-max-microvolt = <3300000>;
 +                              regulator-max-microvolt = <3000000>;
                                regulator-state-mem {
                                        regulator-on-in-suspend;
 -                                      regulator-suspend-microvolt = <3300000>;
 +                                      regulator-suspend-microvolt = <3000000>;
                                };
                        };
  
        status = "okay";
        dr_mode = "host";
  };
+ &vopb {
+       status = "okay";
+ };
+ &vopb_mmu {
+       status = "okay";
+ };
+ &vopl {
+       status = "okay";
+ };
+ &vopl_mmu {
+       status = "okay";
+ };
@@@ -7,6 -7,8 +7,8 @@@
   * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
   */
  
+ #include <dt-bindings/gpio/gpio.h>
  /memreserve/ 0x80000000 0x02000000;
  
  / {
@@@ -49,7 -51,7 +51,7 @@@
                };
        };
  
-       cluster0_opp: opp_table {
+       cluster0_opp: opp-table {
                compatible = "operating-points-v2";
                opp-shared;
  
                };
        };
  
+       emmc_pwrseq: emmc-pwrseq {
+               compatible = "mmc-pwrseq-emmc";
+               reset-gpios = <&gpio 26 GPIO_ACTIVE_LOW>;
+       };
        timer {
                compatible = "arm,armv8-timer";
                interrupts = <1 13 4>,
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart0>;
                        clocks = <&peri_clk 0>;
+                       resets = <&peri_rst 0>;
                };
  
                serial1: serial@54006900 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart1>;
                        clocks = <&peri_clk 1>;
+                       resets = <&peri_rst 1>;
                };
  
                serial2: serial@54006a00 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart2>;
                        clocks = <&peri_clk 2>;
+                       resets = <&peri_rst 2>;
                };
  
                serial3: serial@54006b00 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_uart3>;
                        clocks = <&peri_clk 3>;
+                       resets = <&peri_rst 3>;
+               };
+               gpio: gpio@55000000 {
+                       compatible = "socionext,uniphier-gpio";
+                       reg = <0x55000000 0x200>;
+                       interrupt-parent = <&aidet>;
+                       interrupt-controller;
+                       #interrupt-cells = <2>;
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       gpio-ranges = <&pinctrl 0 0 0>,
+                                     <&pinctrl 43 0 0>,
+                                     <&pinctrl 51 0 0>,
+                                     <&pinctrl 96 0 0>,
+                                     <&pinctrl 160 0 0>,
+                                     <&pinctrl 184 0 0>;
+                       gpio-ranges-group-names = "gpio_range0",
+                                                 "gpio_range1",
+                                                 "gpio_range2",
+                                                 "gpio_range3",
+                                                 "gpio_range4",
+                                                 "gpio_range5";
+                       ngpios = <200>;
+                       socionext,interrupt-ranges = <0 48 16>, <16 154 5>,
+                                                    <21 217 3>;
                };
  
                adamv@57920000 {
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c0>;
                        clocks = <&peri_clk 4>;
+                       resets = <&peri_rst 4>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c1>;
                        clocks = <&peri_clk 5>;
+                       resets = <&peri_rst 5>;
                        clock-frequency = <100000>;
                };
  
                        #size-cells = <0>;
                        interrupts = <0 43 4>;
                        clocks = <&peri_clk 6>;
+                       resets = <&peri_rst 6>;
                        clock-frequency = <400000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c3>;
                        clocks = <&peri_clk 7>;
+                       resets = <&peri_rst 7>;
                        clock-frequency = <100000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_i2c4>;
                        clocks = <&peri_clk 8>;
+                       resets = <&peri_rst 8>;
                        clock-frequency = <100000>;
                };
  
                        #size-cells = <0>;
                        interrupts = <0 25 4>;
                        clocks = <&peri_clk 9>;
+                       resets = <&peri_rst 9>;
                        clock-frequency = <400000>;
                };
  
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_emmc>;
                        clocks = <&sys_clk 4>;
+                       resets = <&sys_rst 4>;
                        bus-width = <8>;
                        mmc-ddr-1_8v;
                        mmc-hs200-1_8v;
+                       mmc-pwrseq = <&emmc_pwrseq>;
                        cdns,phy-input-delay-legacy = <4>;
                        cdns,phy-input-delay-mmc-highspeed = <2>;
                        cdns,phy-input-delay-mmc-ddr = <3>;
                        interrupts = <0 243 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb0>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 8>, <&mio_clk 12>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
 +                               <&mio_clk 12>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
                                 <&mio_rst 12>;
                };
                        interrupts = <0 244 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb1>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 9>, <&mio_clk 13>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
 +                               <&mio_clk 13>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
                                 <&mio_rst 13>;
                };
                        interrupts = <0 245 4>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_usb2>;
 -                      clocks = <&mio_clk 7>, <&mio_clk 10>, <&mio_clk 14>;
 +                      clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 10>,
 +                               <&mio_clk 14>;
                        resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 10>,
                                 <&mio_rst 14>;
                };
                        };
                };
  
+               soc-glue@5f900000 {
+                       compatible = "socionext,uniphier-ld11-soc-glue-debug",
+                                    "simple-mfd";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+                       ranges = <0 0x5f900000 0x2000>;
+                       efuse@100 {
+                               compatible = "socionext,uniphier-efuse";
+                               reg = <0x100 0x28>;
+                       };
+                       efuse@200 {
+                               compatible = "socionext,uniphier-efuse";
+                               reg = <0x200 0x68>;
+                       };
+               };
                aidet: aidet@5fc20000 {
                        compatible = "socionext,uniphier-ld11-aidet";
                        reg = <0x5fc20000 0x200>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_nand>;
                        clocks = <&sys_clk 2>;
+                       resets = <&sys_rst 2>;
                };
        };
  };
@@@ -1,4 -1,3 +1,4 @@@
 +/* SPDX-License-Identifier: GPL-2.0 */
  /*
   * This header provides constants for binding nvidia,tegra210-car.
   *
  #define TEGRA210_CLK_BLINK 280
  /* 281 */
  #define TEGRA210_CLK_SOR1_SRC 282
+ #define TEGRA210_CLK_SOR1_OUT 282
  /* 283 */
  #define TEGRA210_CLK_XUSB_HOST_SRC 284
  #define TEGRA210_CLK_XUSB_FALCON_SRC 285
@@@ -1,4 -1,3 +1,4 @@@
 +/* SPDX-License-Identifier: GPL-2.0 */
  /*
   * This header provides constants specific to AM43XX pinctrl bindings.
   */
  #define INPUT_EN              (1 << 18)
  #define SLEWCTRL_SLOW         (1 << 19)
  #define SLEWCTRL_FAST         0
+ #define DS0_FORCE_OFF_MODE    (1 << 24)
+ #define DS0_INPUT             (1 << 25)
+ #define DS0_FORCE_OUT_HIGH    (1 << 26)
  #define DS0_PULL_UP_DOWN_EN   (1 << 27)
+ #define DS0_PULL_UP_SEL               (1 << 28)
  #define WAKEUP_ENABLE         (1 << 29)
  
+ #define DS0_PIN_OUTPUT                (DS0_FORCE_OFF_MODE)
+ #define DS0_PIN_OUTPUT_HIGH   (DS0_FORCE_OFF_MODE | DS0_FORCE_OUT_HIGH)
+ #define DS0_PIN_OUTPUT_PULLUP (DS0_FORCE_OFF_MODE | DS0_PULL_UP_DOWN_EN | DS0_PULL_UP_SEL)
+ #define DS0_PIN_OUTPUT_PULLDOWN       (DS0_FORCE_OFF_MODE | DS0_PULL_UP_DOWN_EN)
+ #define DS0_PIN_INPUT         (DS0_FORCE_OFF_MODE | DS0_INPUT)
+ #define DS0_PIN_INPUT_PULLUP  (DS0_FORCE_OFF_MODE | DS0_INPUT | DS0_PULL_UP_DOWN_EN | DS0_PULL_UP_SEL)
+ #define DS0_PIN_INPUT_PULLDOWN        (DS0_FORCE_OFF_MODE | DS0_INPUT | DS0_PULL_UP_DOWN_EN)
  #define PIN_OUTPUT            (PULL_DISABLE)
  #define PIN_OUTPUT_PULLUP     (PULL_UP)
  #define PIN_OUTPUT_PULLDOWN   0