Amlogkc 32-bit platforms: DT updates for v4.15

- add SDIO MMC controller
 - reserved memory fixes
 - SoC info driver nodes
 - enable USB host contnroller
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEe4dGDhaSf6n1v/EMWTcYmtP7xmUFAlnsbnIACgkQWTcYmtP7
 xmW62xAAn9uJeEnSAmJlscNEs0FbhtPyPFjiRaynzKlC9EWHL6VnONWppucS8jNN
 jKuWphFlGpBMKiPHXn7OrHEBlsblPQeUeV2iyrCtbDha/XwfJeZbIFuIhOpdI6b4
 /16i6+4PNtvx+sfQ4HwIQbybOztyVb0ZblZEo32C0cGmw6LYcj/+mAo7wteQDnt+
 dOy20CjjlkzrzPHM0vnu08n2WAIilik95QtFkZDsW/vrFS+6xp8VkHIHsUaTkZTD
 HGra8O/p/oifkYqaQQKYIj4iQRw1tiHx7kV1Q5+f6RD6Kgxo1XVhPVkoOcgT0T48
 zpKTh04NhG7pXmT3LQd6TOIbWHY0zxgkn2ndJjcA700OK3tfPW4cuKCsNNLgwT80
 V7tbgGSz4RWkohQA+Eag8oioO9B/fZhdK/tCeow15BaKvfnxViuHl9pOApxOr1tV
 n+UkxBWVayNvwHdNrhEmK5oDMkgvOPmlKF6FqwDIP0lF3jxDyVxRUGh8njQ8JM5g
 lC5xLnXD9cNkC0s0z7J6mcv6dqKMPoQNHTFH+pXrxVA9F2eY+Rp6unrjZCCnDm1h
 OuAp5iC9fWjwaVs6Xr56uOXF+GFsUMG/guW4xeNAVFIuQ5WVoLrpq8a50poIST5v
 oevaebm2rXoIOc9GB/KpO8EmdQ4lgg6JxgbwP+S68jRo2ybRC2M=
 =TG/7
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into next/dt

Pull "Amlogic 32-bit platforms: DT updates for v4.15"

- add SDIO MMC controller
- reserved memory fixes
- SoC info driver nodes
- enable USB host controller

* tag 'amlogic-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
  ARM: dts: meson: add the SDIO MMC controller
  ARM: dts: meson8b: add reserved memory zone to fix silent freezes
  ARM: dts: meson: add SoC information nodes
  dt-bindings: Amlogic: add documentation for the SoC info register areas
  ARM: dts: meson: fixing USB support on Meson6, Meson8 and Meson8b
  ARM: dts: meson: enabling the USB Host controller on Odroid-C1/C1+ board
This commit is contained in:
Arnd Bergmann 2017-10-30 13:19:09 +01:00
commit 2132910ec9
7 changed files with 132 additions and 2 deletions

View File

@ -0,0 +1,20 @@
Amlogic Meson8 and Meson8b "analog top" registers:
--------------------------------------------------
The analog top registers contain information about the so-called
"metal revision" (which encodes the "minor version") of the SoC.
Required properties:
- reg: the register range of the analog top registers
- compatible: depending on the SoC this should be one of:
- "amlogic,meson8-analog-top"
- "amlogic,meson8b-analog-top"
along with "syscon"
Example:
analog_top: analog-top@81a8 {
compatible = "amlogic,meson8-analog-top", "syscon";
reg = <0x81a8 0x14>;
};

View File

@ -0,0 +1,17 @@
Amlogic Meson6/Meson8/Meson8b assist registers:
-----------------------------------------------
The assist registers contain basic information about the SoC,
for example the encoded SoC part number.
Required properties:
- reg: the register range of the assist registers
- compatible: should be "amlogic,meson-mx-assist" along with "syscon"
Example:
assist: assist@7c00 {
compatible = "amlogic,meson-mx-assist", "syscon";
reg = <0x7c00 0x200>;
};

View File

@ -0,0 +1,17 @@
Amlogic Meson6/Meson8/Meson8b bootrom:
--------------------------------------
The bootrom register area can be used to access SoC specific
information, such as the "misc version".
Required properties:
- reg: the register range of the bootrom registers
- compatible: should be "amlogic,meson-mx-bootrom" along with "syscon"
Example:
bootrom: bootrom@d9040000 {
compatible = "amlogic,meson-mx-bootrom", "syscon";
reg = <0xd9040000 0x10000>;
};

View File

@ -80,6 +80,11 @@
#size-cells = <1>;
ranges = <0x0 0xc1100000 0x200000>;
assist: assist@7c00 {
compatible = "amlogic,meson-mx-assist", "syscon";
reg = <0x7c00 0x200>;
};
hwrng: rng@8100 {
compatible = "amlogic,meson-rng";
reg = <0x8100 0x8>;
@ -160,6 +165,15 @@
status = "disabled";
};
sdio: mmc@8c20 {
compatible = "amlogic,meson-mx-sdio";
reg = <0x8c20 0x20>;
interrupts = <GIC_SPI 28 IRQ_TYPE_EDGE_RISING>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
spifc: spi@8c80 {
compatible = "amlogic,meson6-spifc";
reg = <0x8c80 0x80>;
@ -217,7 +231,7 @@
#address-cells = <1>;
#size-cells = <0>;
reg = <0xc9040000 0x40000>;
interrupts = <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>;
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
phys = <&usb0_phy>;
phy-names = "usb2-phy";
dr_mode = "host";
@ -229,7 +243,7 @@
#address-cells = <1>;
#size-cells = <0>;
reg = <0xc90c0000 0x40000>;
interrupts = <GIC_SPI 31 IRQ_TYPE_EDGE_RISING>;
interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
phys = <&usb1_phy>;
phy-names = "usb2-phy";
dr_mode = "host";
@ -252,5 +266,10 @@
#size-cells = <1>;
ranges = <0 0xd9000000 0x20000>;
};
bootrom: bootrom@d9040000 {
compatible = "amlogic,meson-mx-bootrom", "syscon";
reg = <0xd9040000 0x10000>;
};
};
}; /* end of / */

View File

@ -173,6 +173,11 @@
reg = <0x8000 0x4>, <0x4000 0x460>;
};
analog_top: analog-top@81a8 {
compatible = "amlogic,meson8-analog-top", "syscon";
reg = <0x81a8 0x14>;
};
pwm_ef: pwm@86c0 {
compatible = "amlogic,meson8-pwm", "amlogic,meson8b-pwm";
reg = <0x86c0 0x10>;
@ -294,6 +299,12 @@
clock-names = "clkin", "core", "sana";
};
&sdio {
compatible = "amlogic,meson8-sdio", "amlogic,meson-mx-sdio";
clocks = <&clkc CLKID_SDIO>, <&clkc CLKID_CLK81>;
clock-names = "core", "clkin";
};
&spifc {
clocks = <&clkc CLKID_CLK81>;
};

View File

@ -76,3 +76,26 @@
pinctrl-0 = <&uart_ao_a_pins>;
pinctrl-names = "default";
};
&gpio_ao {
/*
* WARNING: The USB Hub on the Odroid-C1/C1+ needs a reset signal
* to be turned high in order to be detected by the USB Controller.
* This signal should be handled by a USB specific power sequence
* in order to reset the Hub when USB bus is powered down.
*/
usb-hub {
gpio-hog;
gpios = <GPIOAO_4 GPIO_ACTIVE_HIGH>;
output-high;
line-name = "usb-hub-reset";
};
};
&usb1_phy {
status = "okay";
};
&usb1 {
status = "okay";
};

View File

@ -83,6 +83,18 @@
};
};
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
/* 2 MiB reserved for Hardware ROM Firmware? */
hwrom@0 {
reg = <0x0 0x200000>;
no-map;
};
};
scu@c4300000 {
compatible = "arm,cortex-a5-scu";
reg = <0xc4300000 0x100>;
@ -130,6 +142,11 @@
#reset-cells = <1>;
};
analog_top: analog-top@81a8 {
compatible = "amlogic,meson8b-analog-top", "syscon";
reg = <0x81a8 0x14>;
};
pwm_ef: pwm@86c0 {
compatible = "amlogic,meson8b-pwm";
reg = <0x86c0 0x10>;
@ -190,6 +207,12 @@
clock-names = "clkin", "core", "sana";
};
&sdio {
compatible = "amlogic,meson8b-sdio", "amlogic,meson-mx-sdio";
clocks = <&clkc CLKID_SDIO>, <&clkc CLKID_CLK81>;
clock-names = "core", "clkin";
};
&uart_AO {
clocks = <&clkc CLKID_CLK81>;
};