01f3cbb296
The devicetree changes contain exactly 1000 non-merge changesets, including a number of new arm64 SoC variants from Qualcomm and Apple, as well as the Renesas r9a07g043f/u chip in both arm64 and riscv variants While we have occasionally merged support for non-arm SoCs in the past, this is now the normal path for riscv devicetree files. The most notable changes, by SoC platform, are: - The Apple T6000 (M1 Pro), T6001 (M1 Max) and T6002 (M2 Ultra) chips now have initial support. This is particularly nice as I am typing this on a T6002 Mac Studio with only a small number of driver patches. - Qualcomm MSM8996 Pro (Snapdragon 821), SM6115 (Snapdragon 662), SM4250 (Snapdragon 460), SM6375 (Snapdragon 695), SDM670 (Snapdragon 670), MSM8976 (Snapdragon 652) and MSM8956 (Snapdragon 650) are all mobile phone chips that are closely related to others we already support. Adding those helps support more phones and we add several models from Sony (Xperia 10 IV, 5 IV, X, and X compact), OnePlus (One, 3, 3T, and Nord N100), Xiaomi (Poco F1, Mi6), Huawei (Watch) and Google (Pixel 3a). There are also new variants of the Herobrine and Trogdor chromebook motherboards. SA8540P is an automotive SoC used in the Qdrive-3 development platform - Rockchips gains no new SoC variants, but a lot of new boards: three mobile gaming systems based on RK3326 Odroid-Go/rg351 family, two more Anbernic gaming systems based on RK3566 and a number of other RK356x based single-board computers. - Renesas RZ/G2UL (r9a07g043) was already supported for arm64, but as the newly added RZ/Five is based on the same design, this now gets reorganized in order to share most of the dts description between the two and add the RZ/Five SMARC EVK board support. Aside from that, there are the usual changes all over the tree: - New boards on other platforms contain two ASpeed BMC users, two Broadcom based Wifi routers, Zyxel NSA310S NAS, the i.MX6 based Kobo Aura2 ebook reader, two i.MX8 based development boards, two Uniphier Pro5 development boards, the STM32MP1 testbench board from DHCOR, the TI K3 based BeagleBone AI-64 board, and the Mediatek Helio X10 based Sony Xperia M5 phone. - The Starfive JH7100 source gets reorganized in order to support the VisionFive V1 board. - Minor updates and cleanups for Intel SoCFPGA, Marvell PXA168, TI, ST, NXP, Apple, Broadcom, Juno, Marvell MVEBU, at91, nuvoton, Tegra, Mediatek, Renesas, Hisilicon, Allwinner, Samsung, ux500, spear, ... The treewide cleanups now have a lot of fixes for cache nodes and other binding violoations. - Somewhat larger sets of reworks for NVIDIA Tegra, Qualcomm and Renesas platforms, adding a lot more on-chip device support - A rework of the way that DTB overlays are built. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmOSFNQACgkQmmx57+YA GNnAIg/+KAiUHpSI02V2sQyDXout2laM8fxl8pW4qREQLKV7U+fi74vbd297HSsv yxOrrvD6aU9QUzWvdYEezqZxUEoOAibEAE3qMaJZrCjzdtmQvIeUJQuNhhg/oGFP ZcSN8E+60qxsYwfXw9OHp5TTLi5X/ejRmJoPkC/DHbxbpu07YKT0aHf9qoeD8ntM 8Y+qRiC9AYMnK49rw/HSsQIOXKC0tUQrfsavnJGKFE2wUAdD1ZFf34VtMu580USo eVX++hun/AKKhdU/ZV9xZKUCQTU405SwscGdP5OFtkjNqHCHwdcU10Kp/PxR3XNq t5Zmfg9PO/OfV17K91t60hkgfZsNojP6mvGwGhYSuIEYKbya3o4YrPJZb/8jd2Vr QclwN94m53zDTEfhdW4sJ1HGFV8FhQGjQ1PNBuUf2YXIztpuhd4PnCc/R31K4Yr8 O0S2tl/PxUPB2ouHzpuB+4QMGYZjK3OmFNIEZ8tucIuwOeagkZmDUPuq6o1Nj0Je 9XDJVAZf0wFztnbnAKdJkF15Fs8wT8wZLIZOnzy4Zp2HhKHkCKQ0EFSyN37WmM6l fKktQ/U7sULwrEGSz9cBuYjrq7uOsCnRZD2R6MbB0rs16oHIl4OrVSSzoqYQSTlo JOAimJJo2mLsslzaKr4TrqhUj9zkrYaWgOLPXD3c4MSLRK/Tqnk= =WCFd -----END PGP SIGNATURE----- Merge tag 'soc-dt-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc Pull ARM SoC DT updates from Arnd Bergmann: "The devicetree changes contain exactly 1000 non-merge changesets, including a number of new arm64 SoC variants from Qualcomm and Apple, as well as the Renesas r9a07g043f/u chip in both arm64 and riscv variants. While we have occasionally merged support for non-arm SoCs in the past, this is now the normal path for riscv devicetree files. The most notable changes, by SoC platform, are: - The Apple T6000 (M1 Pro), T6001 (M1 Max) and T6002 (M1 Ultra) chips now have initial support. This is particularly nice as I am typing this on a T6002 Mac Studio with only a small number of driver patches. - Qualcomm MSM8996 Pro (Snapdragon 821), SM6115 (Snapdragon 662), SM4250 (Snapdragon 460), SM6375 (Snapdragon 695), SDM670 (Snapdragon 670), MSM8976 (Snapdragon 652) and MSM8956 (Snapdragon 650) are all mobile phone chips that are closely related to others we already support. Adding those helps support more phones and we add several models from Sony (Xperia 10 IV, 5 IV, X, and X compact), OnePlus (One, 3, 3T, and Nord N100), Xiaomi (Poco F1, Mi6), Huawei (Watch) and Google (Pixel 3a). There are also new variants of the Herobrine and Trogdor chromebook motherboards. SA8540P is an automotive SoC used in the Qdrive-3 development platform - Rockchips gains no new SoC variants, but a lot of new boards: three mobile gaming systems based on RK3326 Odroid-Go/rg351 family, two more Anbernic gaming systems based on RK3566 and a number of other RK356x based single-board computers. - Renesas RZ/G2UL (r9a07g043) was already supported for arm64, but as the newly added RZ/Five is based on the same design, this now gets reorganized in order to share most of the dts description between the two and add the RZ/Five SMARC EVK board support. Aside from that, there are the usual changes all over the tree: - New boards on other platforms contain two ASpeed BMC users, two Broadcom based Wifi routers, Zyxel NSA310S NAS, the i.MX6 based Kobo Aura2 ebook reader, two i.MX8 based development boards, two Uniphier Pro5 development boards, the STM32MP1 testbench board from DHCOR, the TI K3 based BeagleBone AI-64 board, and the Mediatek Helio X10 based Sony Xperia M5 phone. - The Starfive JH7100 source gets reorganized in order to support the VisionFive V1 board. - Minor updates and cleanups for Intel SoCFPGA, Marvell PXA168, TI, ST, NXP, Apple, Broadcom, Juno, Marvell MVEBU, at91, nuvoton, Tegra, Mediatek, Renesas, Hisilicon, Allwinner, Samsung, ux500, spear, ... The treewide cleanups now have a lot of fixes for cache nodes and other binding violoations. - Somewhat larger sets of reworks for NVIDIA Tegra, Qualcomm and Renesas platforms, adding a lot more on-chip device support - A rework of the way that DTB overlays are built" * tag 'soc-dt-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (979 commits) arm64: dts: apple: t6002: Fix GPU power domains arm64: dts: apple: t600x-pmgr: Fix search & replace typo arm64: dts: apple: Add t8103 L1/L2 cache properties and nodes arm64: dts: apple: Rename dart-sio* to sio-dart* arch: arm64: apple: t600x: Use standard "iommu" node name arch: arm64: apple: t8103: Use standard "iommu" node name ARM: dts: socfpga: Fix pca9548 i2c-mux node name dt-bindings: iio: adc: qcom,spmi-vadc: fix PM8350 define dt-bindings: iio: adc: qcom,spmi-vadc: extend example arm64: dts: qcom: sc8280xp: fix UFS DMA coherency arm64: dts: qcom: sc7280: Add DT for sc7280-herobrine-zombie arm64: dts: qcom: sm8250-sony-xperia-edo: fix no-mmc property for SDHCI arm64: dts: qcom: sdm845-sony-xperia-tama: fix no-mmc property for SDHCI arm64: dts: qcom: sda660-inforce-ifc6560: fix no-mmc property for SDHCI arm64: dts: qcom: sa8155p-adp: fix no-mmc property for SDHCI arm64: dts: qcom: qrb5165-rb: fix no-mmc property for SDHCI arm64: dts: qcom: sm8450: align MMC node names with dtschema arm64: dts: qcom: sc7180-trogdor: use generic node names arm64: dts: qcom: sm8450-hdk: add sound support arm64: dts: qcom: sm8450: add Soundwire and LPASS ...
238 lines
7.0 KiB
Plaintext
238 lines
7.0 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0+
|
|
/*
|
|
* Copyright 2018-2019 NXP
|
|
* Dong Aisheng <aisheng.dong@nxp.com>
|
|
*/
|
|
|
|
#include <dt-bindings/clock/imx8-lpcg.h>
|
|
#include <dt-bindings/firmware/imx/rsrc.h>
|
|
|
|
conn_subsys: bus@5b000000 {
|
|
compatible = "simple-bus";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges = <0x5b000000 0x0 0x5b000000 0x1000000>;
|
|
|
|
conn_axi_clk: clock-conn-axi {
|
|
compatible = "fixed-clock";
|
|
#clock-cells = <0>;
|
|
clock-frequency = <333333333>;
|
|
clock-output-names = "conn_axi_clk";
|
|
};
|
|
|
|
conn_ahb_clk: clock-conn-ahb {
|
|
compatible = "fixed-clock";
|
|
#clock-cells = <0>;
|
|
clock-frequency = <166666666>;
|
|
clock-output-names = "conn_ahb_clk";
|
|
};
|
|
|
|
conn_ipg_clk: clock-conn-ipg {
|
|
compatible = "fixed-clock";
|
|
#clock-cells = <0>;
|
|
clock-frequency = <83333333>;
|
|
clock-output-names = "conn_ipg_clk";
|
|
};
|
|
|
|
usbotg1: usb@5b0d0000 {
|
|
compatible = "fsl,imx7ulp-usb";
|
|
reg = <0x5b0d0000 0x200>;
|
|
interrupt-parent = <&gic>;
|
|
interrupts = <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
|
|
fsl,usbphy = <&usbphy1>;
|
|
fsl,usbmisc = <&usbmisc1 0>;
|
|
clocks = <&usb2_lpcg 0>;
|
|
ahb-burst-config = <0x0>;
|
|
tx-burst-size-dword = <0x10>;
|
|
rx-burst-size-dword = <0x10>;
|
|
power-domains = <&pd IMX_SC_R_USB_0>;
|
|
status = "disabled";
|
|
};
|
|
|
|
usbmisc1: usbmisc@5b0d0200 {
|
|
#index-cells = <1>;
|
|
compatible = "fsl,imx7ulp-usbmisc", "fsl,imx6q-usbmisc";
|
|
reg = <0x5b0d0200 0x200>;
|
|
};
|
|
|
|
usbphy1: usbphy@5b100000 {
|
|
compatible = "fsl,imx7ulp-usbphy";
|
|
reg = <0x5b100000 0x1000>;
|
|
clocks = <&usb2_lpcg 1>;
|
|
power-domains = <&pd IMX_SC_R_USB_0_PHY>;
|
|
status = "disabled";
|
|
};
|
|
|
|
usdhc1: mmc@5b010000 {
|
|
interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
|
|
reg = <0x5b010000 0x10000>;
|
|
clocks = <&sdhc0_lpcg IMX_LPCG_CLK_4>,
|
|
<&sdhc0_lpcg IMX_LPCG_CLK_0>,
|
|
<&sdhc0_lpcg IMX_LPCG_CLK_5>;
|
|
clock-names = "ipg", "ahb", "per";
|
|
power-domains = <&pd IMX_SC_R_SDHC_0>;
|
|
status = "disabled";
|
|
};
|
|
|
|
usdhc2: mmc@5b020000 {
|
|
interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
|
|
reg = <0x5b020000 0x10000>;
|
|
clocks = <&sdhc1_lpcg IMX_LPCG_CLK_4>,
|
|
<&sdhc1_lpcg IMX_LPCG_CLK_0>,
|
|
<&sdhc1_lpcg IMX_LPCG_CLK_5>;
|
|
clock-names = "ipg", "ahb", "per";
|
|
power-domains = <&pd IMX_SC_R_SDHC_1>;
|
|
fsl,tuning-start-tap = <20>;
|
|
fsl,tuning-step = <2>;
|
|
status = "disabled";
|
|
};
|
|
|
|
usdhc3: mmc@5b030000 {
|
|
interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
|
|
reg = <0x5b030000 0x10000>;
|
|
clocks = <&sdhc2_lpcg IMX_LPCG_CLK_4>,
|
|
<&sdhc2_lpcg IMX_LPCG_CLK_0>,
|
|
<&sdhc2_lpcg IMX_LPCG_CLK_5>;
|
|
clock-names = "ipg", "ahb", "per";
|
|
power-domains = <&pd IMX_SC_R_SDHC_2>;
|
|
status = "disabled";
|
|
};
|
|
|
|
fec1: ethernet@5b040000 {
|
|
reg = <0x5b040000 0x10000>;
|
|
interrupts = <GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 259 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&enet0_lpcg IMX_LPCG_CLK_4>,
|
|
<&enet0_lpcg IMX_LPCG_CLK_2>,
|
|
<&enet0_lpcg IMX_LPCG_CLK_3>,
|
|
<&enet0_lpcg IMX_LPCG_CLK_0>;
|
|
clock-names = "ipg", "ahb", "enet_clk_ref", "ptp";
|
|
assigned-clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>,
|
|
<&clk IMX_SC_R_ENET_0 IMX_SC_C_CLKDIV>;
|
|
assigned-clock-rates = <250000000>, <125000000>;
|
|
fsl,num-tx-queues = <3>;
|
|
fsl,num-rx-queues = <3>;
|
|
power-domains = <&pd IMX_SC_R_ENET_0>;
|
|
status = "disabled";
|
|
};
|
|
|
|
fec2: ethernet@5b050000 {
|
|
reg = <0x5b050000 0x10000>;
|
|
interrupts = <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&enet1_lpcg IMX_LPCG_CLK_4>,
|
|
<&enet1_lpcg IMX_LPCG_CLK_2>,
|
|
<&enet1_lpcg IMX_LPCG_CLK_3>,
|
|
<&enet1_lpcg IMX_LPCG_CLK_0>;
|
|
clock-names = "ipg", "ahb", "enet_clk_ref", "ptp";
|
|
assigned-clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>,
|
|
<&clk IMX_SC_R_ENET_1 IMX_SC_C_CLKDIV>;
|
|
assigned-clock-rates = <250000000>, <125000000>;
|
|
fsl,num-tx-queues = <3>;
|
|
fsl,num-rx-queues = <3>;
|
|
power-domains = <&pd IMX_SC_R_ENET_1>;
|
|
status = "disabled";
|
|
};
|
|
|
|
/* LPCG clocks */
|
|
sdhc0_lpcg: clock-controller@5b200000 {
|
|
compatible = "fsl,imx8qxp-lpcg";
|
|
reg = <0x5b200000 0x10000>;
|
|
#clock-cells = <1>;
|
|
clocks = <&clk IMX_SC_R_SDHC_0 IMX_SC_PM_CLK_PER>,
|
|
<&conn_ipg_clk>, <&conn_axi_clk>;
|
|
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>,
|
|
<IMX_LPCG_CLK_5>;
|
|
clock-output-names = "sdhc0_lpcg_per_clk",
|
|
"sdhc0_lpcg_ipg_clk",
|
|
"sdhc0_lpcg_ahb_clk";
|
|
power-domains = <&pd IMX_SC_R_SDHC_0>;
|
|
};
|
|
|
|
sdhc1_lpcg: clock-controller@5b210000 {
|
|
compatible = "fsl,imx8qxp-lpcg";
|
|
reg = <0x5b210000 0x10000>;
|
|
#clock-cells = <1>;
|
|
clocks = <&clk IMX_SC_R_SDHC_1 IMX_SC_PM_CLK_PER>,
|
|
<&conn_ipg_clk>, <&conn_axi_clk>;
|
|
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>,
|
|
<IMX_LPCG_CLK_5>;
|
|
clock-output-names = "sdhc1_lpcg_per_clk",
|
|
"sdhc1_lpcg_ipg_clk",
|
|
"sdhc1_lpcg_ahb_clk";
|
|
power-domains = <&pd IMX_SC_R_SDHC_1>;
|
|
};
|
|
|
|
sdhc2_lpcg: clock-controller@5b220000 {
|
|
compatible = "fsl,imx8qxp-lpcg";
|
|
reg = <0x5b220000 0x10000>;
|
|
#clock-cells = <1>;
|
|
clocks = <&clk IMX_SC_R_SDHC_2 IMX_SC_PM_CLK_PER>,
|
|
<&conn_ipg_clk>, <&conn_axi_clk>;
|
|
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>,
|
|
<IMX_LPCG_CLK_5>;
|
|
clock-output-names = "sdhc2_lpcg_per_clk",
|
|
"sdhc2_lpcg_ipg_clk",
|
|
"sdhc2_lpcg_ahb_clk";
|
|
power-domains = <&pd IMX_SC_R_SDHC_2>;
|
|
};
|
|
|
|
enet0_lpcg: clock-controller@5b230000 {
|
|
compatible = "fsl,imx8qxp-lpcg";
|
|
reg = <0x5b230000 0x10000>;
|
|
#clock-cells = <1>;
|
|
clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>,
|
|
<&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>,
|
|
<&conn_axi_clk>,
|
|
<&clk IMX_SC_R_ENET_0 IMX_SC_C_TXCLK>,
|
|
<&conn_ipg_clk>,
|
|
<&conn_ipg_clk>;
|
|
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
|
|
<IMX_LPCG_CLK_2>, <IMX_LPCG_CLK_3>,
|
|
<IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>;
|
|
clock-output-names = "enet0_lpcg_timer_clk",
|
|
"enet0_lpcg_txc_sampling_clk",
|
|
"enet0_lpcg_ahb_clk",
|
|
"enet0_lpcg_rgmii_txc_clk",
|
|
"enet0_lpcg_ipg_clk",
|
|
"enet0_lpcg_ipg_s_clk";
|
|
power-domains = <&pd IMX_SC_R_ENET_0>;
|
|
};
|
|
|
|
enet1_lpcg: clock-controller@5b240000 {
|
|
compatible = "fsl,imx8qxp-lpcg";
|
|
reg = <0x5b240000 0x10000>;
|
|
#clock-cells = <1>;
|
|
clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>,
|
|
<&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>,
|
|
<&conn_axi_clk>,
|
|
<&clk IMX_SC_R_ENET_1 IMX_SC_C_TXCLK>,
|
|
<&conn_ipg_clk>,
|
|
<&conn_ipg_clk>;
|
|
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
|
|
<IMX_LPCG_CLK_2>, <IMX_LPCG_CLK_3>,
|
|
<IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>;
|
|
clock-output-names = "enet1_lpcg_timer_clk",
|
|
"enet1_lpcg_txc_sampling_clk",
|
|
"enet1_lpcg_ahb_clk",
|
|
"enet1_lpcg_rgmii_txc_clk",
|
|
"enet1_lpcg_ipg_clk",
|
|
"enet1_lpcg_ipg_s_clk";
|
|
power-domains = <&pd IMX_SC_R_ENET_1>;
|
|
};
|
|
|
|
usb2_lpcg: clock-controller@5b270000 {
|
|
compatible = "fsl,imx8qxp-lpcg";
|
|
reg = <0x5b270000 0x10000>;
|
|
#clock-cells = <1>;
|
|
clocks = <&conn_ahb_clk>, <&conn_ipg_clk>;
|
|
clock-indices = <IMX_LPCG_CLK_6>, <IMX_LPCG_CLK_7>;
|
|
clock-output-names = "usboh3_ahb_clk", "usboh3_phy_ipg_clk";
|
|
power-domains = <&pd IMX_SC_R_USB_0_PHY>;
|
|
};
|
|
};
|