meson-gxl: improve support for the P212 board
Subsystems (2)
Martin Blumenstingl
reviewercover meson-gxl: improve support for the P212 board
The P212 board is a reference design and re-used by other boards (similar to the meson-gxbb-p20x.dtsi which is inherited by the Wetek boards). Until now only very basic functionality was supported, but most of the interesting things (wifi, SD, eMMC, IR, etc.) are not enabled yet - which changes with this patch.
I have tested this with a Khadas VIM board (patch for this will follow) as I don't have a P212 board itself. Thus it would be nice if someone could test it on an actual P212 board.
Please also specifically review the copyright statements in meson-gxl-s905x-p212.dtsi - I want to make sure I didn't mess anything up there.
Martin Blumenstingl (1):
ARM64: dts: meson-gxl: improve support for the P212 reference design
.../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 214 +++++++++++++++++++++ 2 files changed, 226 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
Signature · 1 line
2.11.1
Martin Blumenstingl
reviewerPATCH 1/1 ARM64: dts: meson-gxl: improve support for the P212 reference design
The Amlogic P212 reference design is used by other devices as well, such as (for example) the Khadas VIM boards. Thus this patch adds and moves all common entries from meson-gxl-s905x-p212.dts to a new, separate meson-gxl-s905x-p212.dtsi (which can be re-used on boards such as the Khadas VIM).
Support for all boards based on the P212 reference design includes:
- enabling IR support
- enabling the SAR ADC (SARADC_CH1 is connected to a resistor which indicates the hardware revision, a similar design is found on the Khadas VIM boards)
- all MMC controllers (which means that SDIO wifi, the SD card and the eMMC are now supported)
- pwm_ef as dependency for the SDIO wifi module
- uart_A which is connected to the bluetooth module (the bluetooth module itself is not enabled yet due to missing devicetree bindings for the Broadcom serial bluetooth devices)
- uart_AO is moved to the .dtsi (as all known devices use it as their boot-console)
Specific to the P212 board:
- this also enables the CVBS connector (which is not available on the Khadas VIM boards for example)
--- .../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 214 +++++++++++++++++++++ 2 files changed, 226 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts +12 -9
@@ -43,23 +43,26 @@ /dts-v1/; -#include "meson-gxl-s905x.dtsi" +#include "meson-gxl-s905x-p212.dtsi" / { compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl"; model = "Amlogic Meson GXL (S905X) P212 Development Board"; - aliases { - serial0 = &uart_AO; - }; + cvbs-connector { + compatible = "composite-video-connector"; - chosen { - stdout-path = "serial0:115200n8"; + port { + cvbs_connector_in: endpoint { + remote-endpoint = <&cvbs_vdac_out>; + }; + }; }; +}; - memory at 0 { - device_type = "memory"; - reg = <0x0 0x0 0x0 0x80000000>; +&cvbs_vdac_port { + cvbs_vdac_out: endpoint { + remote-endpoint = <&cvbs_connector_in>; }; };
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +214 -0
214 lines not on this page · raw message
Signature · 1 line
2.11.1
PATCH 1/1 ARM64: dts: meson-gxl: improve support for the P212 reference design
Quoted 281 lines · Martin Blumenstingl
The Amlogic P212 reference design is used by other devices as well, such as (for example) the Khadas VIM boards. Thus this patch adds and moves all common entries from
meson-gxl-s905x-p212.dtsto a new, separatemeson-gxl-s905x-p212.dtsi(which can be re-used on boards such as the Khadas VIM).
Support for all boards based on the P212 reference design includes:
- enabling IR support
- enabling the SAR ADC (SARADC_CH1is connected to a resistor which indicates the hardware revision, a similar design is found on the Khadas VIM boards)
- all MMC controllers (which means that SDIO wifi, the SD card and the eMMC are now supported)
-pwm_efas dependency for the SDIO wifi module
-uart_Awhich is connected to the bluetooth module (the bluetooth module itself is not enabled yet due to missing devicetree bindings for the Broadcom serial bluetooth devices)
-uart_AOis moved to the .dtsi (as all known devices use it as their boot-console)Specific to the P212 board:
- this also enables the CVBS connector (which is not available on the Khadas VIM boards for example)Signed-off-by Martin Blumenstingl <[email protected]>--- .../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 214 +++++++++++++++++++++ 2 files changed, 226 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsiarch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts +12
-9@@ -43,23 +43,26 @@ /dts-v1/; -#include "meson-gxl-s905x.dtsi" +#include "meson-gxl-s905x-p212.dtsi" / { compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl"; model = "Amlogic Meson GXL (S905X) P212 Development Board"; - aliases { - serial0 = &uart_AO; - }; + cvbs-connector { + compatible = "composite-video-connector"; - chosen { - stdout-path = "serial0:115200n8"; + port { + cvbs_connector_in: endpoint { + remote-endpoint = <&cvbs_vdac_out>; + }; + }; }; +}; - memory at 0 { - device_type = "memory"; - reg = <0x0 0x0 0x0 0x80000000>; +&cvbs_vdac_port { + cvbs_vdac_out: endpoint { + remote-endpoint = <&cvbs_connector_in>; }; };arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +204
-0@@ -0,0 +1,214 @@ +/* + * Copyright (c) 2016 Martin Blumenstingl <[email protected]>. + * Based on meson-gx-p23x-q20x.dtsi: + * - Copyright (c) 2016 Endless Computers, Inc. + * Author: Carlo Caione <[email protected]> + * - Copyright (c) 2016 BayLibre, SAS. + * Author: Neil Armstrong <[email protected]> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +/* Common DTSI for devices which are based on the P212 reference board. */ + +#include "meson-gxl-s905x.dtsi" + +/ { + aliases { + serial0 = &uart_AO; + serial1 = &uart_A; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + memory at 0 { + device_type = "memory"; + reg = <0x0 0x0 0x0 0x80000000>; + }; + + vddio_boot: regulator-vddio_boot { + compatible = "regulator-fixed"; + regulator-name = "VDDIO_BOOT"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + vddao_3v3: regulator-vddao_3v3 { + compatible = "regulator-fixed"; + regulator-name = "VDDAO_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + vddio_ao18: regulator-vddio_ao18 { + compatible = "regulator-fixed"; + regulator-name = "VDDIO_AO18"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + vcc_3v3: regulator-vcc_3v3 { + compatible = "regulator-fixed"; + regulator-name = "VCC_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + emmc_pwrseq: emmc-pwrseq { + compatible = "mmc-pwrseq-emmc"; + reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>; + }; + + wifi32k: wifi32k { + compatible = "pwm-clock"; + #clock-cells = <0>; + clock-frequency = <32768>; + pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */ + }; + + sdio_pwrseq: sdio-pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>; + clocks = <&wifi32k>; + clock-names = "ext_clock"; + }; +}; + +ðmac { + status = "okay"; +}; + +&ir { + status = "okay"; + pinctrl-0 = <&remote_input_ao_pins>; + pinctrl-names = "default"; +}; + +&saradc { + status = "okay"; + vref-supply = <&vddio_ao18>; +}; + +/* Wireless SDIO Module */ +&sd_emmc_a { + status = "okay"; + pinctrl-0 = <&sdio_pins>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + + bus-width = <4>; + cap-sd-highspeed; + max-frequency = <100000000>; + + non-removable; + disable-wp; + + mmc-pwrseq = <&sdio_pwrseq>; + + vmmc-supply = <&vddao_3v3>; + vqmmc-supply = <&vddio_boot>; + + brcmf: bcrmf at 1 { + reg = <1>; + compatible = "brcm,bcm4329-fmac"; + }; +}; + +/* SD card */ +&sd_emmc_b { + status = "okay"; + pinctrl-0 = <&sdcard_pins>; + pinctrl-names = "default"; + + bus-width = <4>; + cap-sd-highspeed; + max-frequency = <100000000>; + disable-wp; + + cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; + cd-inverted; + + vmmc-supply = <&vddao_3v3>; + vqmmc-supply = <&vddio_boot>; +}; + +/* eMMC */ +&sd_emmc_c { + status = "okay"; + pinctrl-0 = <&emmc_pins>; + pinctrl-names = "default"; + + bus-width = <8>; + cap-sd-highspeed; + cap-mmc-highspeed; + max-frequency = <200000000>; + non-removable; + disable-wp; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + + mmc-pwrseq = <&emmc_pwrseq>; + vmmc-supply = <&vcc_3v3>; + vqmmc-supply = <&vddio_boot>; +}; + +&pwm_ef { + status = "okay"; + pinctrl-0 = <&pwm_e_pins>; + pinctrl-names = "default"; + clocks = <&clkc CLKID_FCLK_DIV4>; + clock-names = "clkin0"; +}; + +/* This is connected to the Bluetooth module: */ +&uart_A { + status = "okay";
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi line 214
Quoted 10 lines
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +10
-0+ pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>; + pinctrl-names = "default"; + uart-has-rtscts; +}; + +&uart_AO { + status = "okay"; + pinctrl-0 = <&uart_ao_a_pins>; + pinctrl-names = "default"; +};
Great Job !
It works perfectly on an P212 board.
Thanks,
Neil
PATCH 1/1 ARM64: dts: meson-gxl: improve support for the P212 reference design
In reply to Martin BlumenstinglQuoted 111 lines · Martin Blumenstingl
The Amlogic P212 reference design is used by other devices as well, such as (for example) the Khadas VIM boards. Thus this patch adds and moves all common entries from
meson-gxl-s905x-p212.dtsto a new, separatemeson-gxl-s905x-p212.dtsi(which can be re-used on boards such as the Khadas VIM).
Support for all boards based on the P212 reference design includes:
- enabling IR support
- enabling the SAR ADC (SARADC_CH1is connected to a resistor which indicates the hardware revision, a similar design is found on the Khadas VIM boards)
- all MMC controllers (which means that SDIO wifi, the SD card and the eMMC are now supported)
-pwm_efas dependency for the SDIO wifi module
-uart_Awhich is connected to the bluetooth module (the bluetooth module itself is not enabled yet due to missing devicetree bindings for the Broadcom serial bluetooth devices)
-uart_AOis moved to the .dtsi (as all known devices use it as their boot-console)Specific to the P212 board:
- this also enables the CVBS connector (which is not available on the Khadas VIM boards for example)Signed-off-by Martin Blumenstingl <[email protected]>--- .../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 214 +++++++++++++++++++++ 2 files changed, 226 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsiarch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts +12
-9@@ -43,23 +43,26 @@ /dts-v1/; -#include "meson-gxl-s905x.dtsi" +#include "meson-gxl-s905x-p212.dtsi" / { compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl"; model = "Amlogic Meson GXL (S905X) P212 Development Board"; - aliases { - serial0 = &uart_AO; - }; + cvbs-connector { + compatible = "composite-video-connector"; - chosen { - stdout-path = "serial0:115200n8"; + port { + cvbs_connector_in: endpoint { + remote-endpoint = <&cvbs_vdac_out>; + }; + }; }; +}; - memory at 0 { - device_type = "memory"; - reg = <0x0 0x0 0x0 0x80000000>; +&cvbs_vdac_port { + cvbs_vdac_out: endpoint { + remote-endpoint = <&cvbs_connector_in>; }; };arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +35
-0@@ -0,0 +1,214 @@ +/* + * Copyright (c) 2016 Martin Blumenstingl <[email protected]>. + * Based on meson-gx-p23x-q20x.dtsi: + * - Copyright (c) 2016 Endless Computers, Inc. + * Author: Carlo Caione <[email protected]> + * - Copyright (c) 2016 BayLibre, SAS. + * Author: Neil Armstrong <[email protected]> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi line 45
Quoted 10 lines
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +10
-0+ * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE.
Use SPDX tags here:
SPDX-License-Identifier: (GPL-2.0+ OR MIT)
While it says X11, this is really MIT license text.
Martin Blumenstingl
reviewerv2 cover meson-gxl: improve support for the P212 board
In reply to Martin BlumenstinglThe P212 board is a reference design and re-used by other boards (similar to the meson-gxbb-p20x.dtsi which is inherited by the Wetek boards). Until now only very basic functionality was supported, but most of the interesting things (wifi, SD, eMMC, IR, etc.) are not enabled yet - which changes with this patch.
Neil Armstrong kindly took take the information he had from Amlogic for the P212 board itself and built a list of supported features and differences with the Khadas VIM boards (which are based on the P212 reference design). This patch is a result of that.
I have tested this with a Khadas VIM board (patch for this will follow) as I don't have a P212 board itself. Thus it would be nice if someone could test it on an actual P212 board.
Please also specifically review the copyright statements in meson-gxl-s905x-p212.dtsi - I want to make sure I didn't mess anything up there.
Changes since v1:
- update the cover letter to indicate where the information about the P212 reference design came from
- use SPDX tags instead of including the full license text
- removed the brcmf sub-node of the sd_emmc_a node as the P212 reference design uses a Realtek based wifi chip (and updated the commit description accordingly)
- included Neil's Tested-By
Martin Blumenstingl (1):
ARM64: dts: meson-gxl: improve support for the P212 reference design
.../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +-- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 173 +++++++++++++++++++++ 2 files changed, 185 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
Signature · 1 line
2.12.0
Martin Blumenstingl
reviewerPATCH v2 1/1 ARM64: dts: meson-gxl: improve support for the P212 reference design
The Amlogic P212 reference design is used by other devices as well, such as (for example) the Khadas VIM boards. Thus this patch adds and moves all common entries from meson-gxl-s905x-p212.dts to a new, separate meson-gxl-s905x-p212.dtsi (which can be re-used on boards such as the Khadas VIM).
Support for all boards based on the P212 reference design includes:
- enabling IR support
- enabling the SAR ADC (SARADC_CH1 is connected to a resistor which indicates the hardware revision, a similar design is found on the Khadas VIM boards)
- all MMC controllers (which means that SDIO wifi, the SD card and the eMMC are now supported)
- pwm_ef as dependency for the SDIO wifi modules
- uart_A which is connected to the bluetooth module (the bluetooth module itself is not enabled yet due to missing devicetree bindings for the Broadcom serial bluetooth devices)
- uart_AO is moved to the .dtsi (as all known devices use it as their boot-console)
Specific to the P212 board:
- this also enables the CVBS connector (which is not available on the Khadas VIM boards for example)
- Realtek based SDIO wifi (instead of Broadcom which most other devices use)
--- .../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +-- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 173 +++++++++++++++++++++ 2 files changed, 185 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts +12 -9
@@ -43,23 +43,26 @@ /dts-v1/; -#include "meson-gxl-s905x.dtsi" +#include "meson-gxl-s905x-p212.dtsi" / { compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl"; model = "Amlogic Meson GXL (S905X) P212 Development Board"; - aliases { - serial0 = &uart_AO; - }; + cvbs-connector { + compatible = "composite-video-connector"; - chosen { - stdout-path = "serial0:115200n8"; + port { + cvbs_connector_in: endpoint { + remote-endpoint = <&cvbs_vdac_out>; + }; + }; }; +}; - memory at 0 { - device_type = "memory"; - reg = <0x0 0x0 0x0 0x80000000>; +&cvbs_vdac_port { + cvbs_vdac_out: endpoint { + remote-endpoint = <&cvbs_connector_in>; }; };
arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +173 -0
173 lines not on this page · raw message
Signature · 1 line
2.12.0
PATCH v2 1/1 ARM64: dts: meson-gxl: improve support for the P212 reference design
Quoted 19 lines · Martin Blumenstingl
The Amlogic P212 reference design is used by other devices as well, such as (for example) the Khadas VIM boards. Thus this patch adds and moves all common entries from
meson-gxl-s905x-p212.dtsto a new, separatemeson-gxl-s905x-p212.dtsi(which can be re-used on boards such as the Khadas VIM).
Support for all boards based on the P212 reference design includes:
- enabling IR support
- enabling the SAR ADC (SARADC_CH1is connected to a resistor which indicates the hardware revision, a similar design is found on the Khadas VIM boards)
- all MMC controllers (which means that SDIO wifi, the SD card and the eMMC are now supported)
-pwm_efas dependency for the SDIO wifi modules
-uart_Awhich is connected to the bluetooth module (the bluetooth module itself is not enabled yet due to missing devicetree bindings for the Broadcom serial bluetooth devices)
-uart_AOis moved to the .dtsi (as all known devices use it as their boot-console)
Quoted 8 lines
Specific to the P212 board:
- this also enables the CVBS connector (which is not available on the Khadas VIM boards for example)
- Realtek based SDIO wifi (instead of Broadcom which most other devices use)Signed-off-by Martin Blumenstingl <[email protected]>Tested-by Neil Armstrong <[email protected]>
I also gave this a spin on P212 board and it's working well.
Applied to v4.12/dt64
Kevin
Quoted 225 lines
--- .../boot/dts/amlogic/meson-gxl-s905x-p212.dts | 21 +-- .../boot/dts/amlogic/meson-gxl-s905x-p212.dtsi | 173 +++++++++++++++++++++ 2 files changed, 185 insertions(+), 9 deletions(-) create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsiarch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dts +12
-9@@ -43,23 +43,26 @@ /dts-v1/; -#include "meson-gxl-s905x.dtsi" +#include "meson-gxl-s905x-p212.dtsi" / { compatible = "amlogic,p212", "amlogic,s905x", "amlogic,meson-gxl"; model = "Amlogic Meson GXL (S905X) P212 Development Board"; - aliases { - serial0 = &uart_AO; - }; + cvbs-connector { + compatible = "composite-video-connector"; - chosen { - stdout-path = "serial0:115200n8"; + port { + cvbs_connector_in: endpoint { + remote-endpoint = <&cvbs_vdac_out>; + }; + }; }; +}; - memory at 0 { - device_type = "memory"; - reg = <0x0 0x0 0x0 0x80000000>; +&cvbs_vdac_port { + cvbs_vdac_out: endpoint { + remote-endpoint = <&cvbs_connector_in>; }; };arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi new file +173
-0@@ -0,0 +1,173 @@ +/* + * Copyright (c) 2016 Martin Blumenstingl <[email protected]>. + * Based on meson-gx-p23x-q20x.dtsi: + * - Copyright (c) 2016 Endless Computers, Inc. + * Author: Carlo Caione <[email protected]> + * - Copyright (c) 2016 BayLibre, SAS. + * Author: Neil Armstrong <[email protected]> + * + * SPDX-License-Identifier: (GPL-2.0+ OR MIT) + */ + +/* Common DTSI for devices which are based on the P212 reference board. */ + +#include "meson-gxl-s905x.dtsi" + +/ { + aliases { + serial0 = &uart_AO; + serial1 = &uart_A; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + memory at 0 { + device_type = "memory"; + reg = <0x0 0x0 0x0 0x80000000>; + }; + + vddio_boot: regulator-vddio_boot { + compatible = "regulator-fixed"; + regulator-name = "VDDIO_BOOT"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + vddao_3v3: regulator-vddao_3v3 { + compatible = "regulator-fixed"; + regulator-name = "VDDAO_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + vddio_ao18: regulator-vddio_ao18 { + compatible = "regulator-fixed"; + regulator-name = "VDDIO_AO18"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + vcc_3v3: regulator-vcc_3v3 { + compatible = "regulator-fixed"; + regulator-name = "VCC_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + + emmc_pwrseq: emmc-pwrseq { + compatible = "mmc-pwrseq-emmc"; + reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>; + }; + + wifi32k: wifi32k { + compatible = "pwm-clock"; + #clock-cells = <0>; + clock-frequency = <32768>; + pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */ + }; + + sdio_pwrseq: sdio-pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>; + clocks = <&wifi32k>; + clock-names = "ext_clock"; + }; +}; + +ðmac { + status = "okay"; +}; + +&ir { + status = "okay"; + pinctrl-0 = <&remote_input_ao_pins>; + pinctrl-names = "default"; +}; + +&saradc { + status = "okay"; + vref-supply = <&vddio_ao18>; +}; + +/* Wireless SDIO Module */ +&sd_emmc_a { + status = "okay"; + pinctrl-0 = <&sdio_pins>; + pinctrl-names = "default"; + #address-cells = <1>; + #size-cells = <0>; + + bus-width = <4>; + cap-sd-highspeed; + max-frequency = <100000000>; + + non-removable; + disable-wp; + + mmc-pwrseq = <&sdio_pwrseq>; + + vmmc-supply = <&vddao_3v3>; + vqmmc-supply = <&vddio_boot>; +}; + +/* SD card */ +&sd_emmc_b { + status = "okay"; + pinctrl-0 = <&sdcard_pins>; + pinctrl-names = "default"; + + bus-width = <4>; + cap-sd-highspeed; + max-frequency = <100000000>; + disable-wp; + + cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_HIGH>; + cd-inverted; + + vmmc-supply = <&vddao_3v3>; + vqmmc-supply = <&vddio_boot>; +}; + +/* eMMC */ +&sd_emmc_c { + status = "okay"; + pinctrl-0 = <&emmc_pins>; + pinctrl-names = "default"; + + bus-width = <8>; + cap-sd-highspeed; + cap-mmc-highspeed; + max-frequency = <200000000>; + non-removable; + disable-wp; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + + mmc-pwrseq = <&emmc_pwrseq>; + vmmc-supply = <&vcc_3v3>; + vqmmc-supply = <&vddio_boot>; +}; + +&pwm_ef { + status = "okay"; + pinctrl-0 = <&pwm_e_pins>; + pinctrl-names = "default"; + clocks = <&clkc CLKID_FCLK_DIV4>; + clock-names = "clkin0"; +}; + +/* This is connected to the Bluetooth module: */ +&uart_A { + status = "okay"; + pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>; + pinctrl-names = "default"; + uart-has-rtscts; +}; + +&uart_AO { + status = "okay"; + pinctrl-0 = <&uart_ao_a_pins>; + pinctrl-names = "default"; +};