* [PATCH 0/4] Add support for nyan-blaze @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA Cc: Javier Martinez Canillas, Tomeu Vizoso, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA Hi, the nyan-blaze board is the HP Chromebook 14. This series reuses the DTS that we currently have for nyan-big and also contains two fixes needed to get it to feature parity. Cheers, Tomeu Tomeu Vizoso (4): ARM: tegra: rely on bootloader pinmux programming on nyan-big ARM: tegra: Move out nyan-generic parts out from the nyan-big DT ARM: tegra: Add DTS for the nyan-blaze board ARM: tegra: remove wp-gpios from the generic nyan dtsi arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/tegra124-nyan-big.dts | 1127 +--------------------------- arch/arm/boot/dts/tegra124-nyan-blaze.dts | 12 + arch/arm/boot/dts/tegra124-nyan.dtsi | 1132 +++++++++++++++++++++++++++++ 4 files changed, 1148 insertions(+), 1124 deletions(-) create mode 100644 arch/arm/boot/dts/tegra124-nyan-blaze.dts create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 0/4] Add support for nyan-blaze @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-arm-kernel Hi, the nyan-blaze board is the HP Chromebook 14. This series reuses the DTS that we currently have for nyan-big and also contains two fixes needed to get it to feature parity. Cheers, Tomeu Tomeu Vizoso (4): ARM: tegra: rely on bootloader pinmux programming on nyan-big ARM: tegra: Move out nyan-generic parts out from the nyan-big DT ARM: tegra: Add DTS for the nyan-blaze board ARM: tegra: remove wp-gpios from the generic nyan dtsi arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/tegra124-nyan-big.dts | 1127 +--------------------------- arch/arm/boot/dts/tegra124-nyan-blaze.dts | 12 + arch/arm/boot/dts/tegra124-nyan.dtsi | 1132 +++++++++++++++++++++++++++++ 4 files changed, 1148 insertions(+), 1124 deletions(-) create mode 100644 arch/arm/boot/dts/tegra124-nyan-blaze.dts create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi -- 1.9.3 ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 0/4] Add support for nyan-blaze @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra Cc: Javier Martinez Canillas, Tomeu Vizoso, devicetree, linux-arm-kernel, linux-kernel Hi, the nyan-blaze board is the HP Chromebook 14. This series reuses the DTS that we currently have for nyan-big and also contains two fixes needed to get it to feature parity. Cheers, Tomeu Tomeu Vizoso (4): ARM: tegra: rely on bootloader pinmux programming on nyan-big ARM: tegra: Move out nyan-generic parts out from the nyan-big DT ARM: tegra: Add DTS for the nyan-blaze board ARM: tegra: remove wp-gpios from the generic nyan dtsi arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/tegra124-nyan-big.dts | 1127 +--------------------------- arch/arm/boot/dts/tegra124-nyan-blaze.dts | 12 + arch/arm/boot/dts/tegra124-nyan.dtsi | 1132 +++++++++++++++++++++++++++++ 4 files changed, 1148 insertions(+), 1124 deletions(-) create mode 100644 arch/arm/boot/dts/tegra124-nyan-blaze.dts create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi -- 1.9.3 ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big 2015-01-06 10:37 ` Tomeu Vizoso (?) @ 2015-01-06 10:37 ` Tomeu Vizoso -1 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra Cc: Mark Rutland, Alexandre Courbot, Russell King, Tomeu Vizoso, Pawel Moll, Ian Campbell, Stephen Warren, linux-kernel, devicetree, Rob Herring, Thierry Reding, Kumar Gala, Javier Martinez Canillas, linux-arm-kernel Following 6dbaff2b, the kernel expects that the bootloader has correctly programmed the Tegra pinmux. DTs for the Jetson and the Venice2 had been updated already but this one was left behind. Have tested this with the stock vendor firmware (coreboot) and have found no issues. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 53181d3..4752572 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -44,10 +44,10 @@ }; pinmux@0,70000868 { - pinctrl-names = "default"; - pinctrl-0 = <&pinmux_default>; + pinctrl-names = "boot"; + pinctrl-0 = <&pinmux_boot>; - pinmux_default: common { + pinmux_boot: common { dap_mclk1_pw4 { nvidia,pins = "dap_mclk1_pw4"; nvidia,function = "extperiph1"; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-arm-kernel Following 6dbaff2b, the kernel expects that the bootloader has correctly programmed the Tegra pinmux. DTs for the Jetson and the Venice2 had been updated already but this one was left behind. Have tested this with the stock vendor firmware (coreboot) and have found no issues. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 53181d3..4752572 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -44,10 +44,10 @@ }; pinmux at 0,70000868 { - pinctrl-names = "default"; - pinctrl-0 = <&pinmux_default>; + pinctrl-names = "boot"; + pinctrl-0 = <&pinmux_boot>; - pinmux_default: common { + pinmux_boot: common { dap_mclk1_pw4 { nvidia,pins = "dap_mclk1_pw4"; nvidia,function = "extperiph1"; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra Cc: Javier Martinez Canillas, Tomeu Vizoso, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel Following 6dbaff2b, the kernel expects that the bootloader has correctly programmed the Tegra pinmux. DTs for the Jetson and the Venice2 had been updated already but this one was left behind. Have tested this with the stock vendor firmware (coreboot) and have found no issues. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 53181d3..4752572 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -44,10 +44,10 @@ }; pinmux@0,70000868 { - pinctrl-names = "default"; - pinctrl-0 = <&pinmux_default>; + pinctrl-names = "boot"; + pinctrl-0 = <&pinmux_boot>; - pinmux_default: common { + pinmux_boot: common { dap_mclk1_pw4 { nvidia,pins = "dap_mclk1_pw4"; nvidia,function = "extperiph1"; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
[parent not found: <1420540653-14816-2-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>]
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big 2015-01-06 10:37 ` Tomeu Vizoso (?) @ 2015-01-06 17:09 ` Stephen Warren -1 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-06 17:09 UTC (permalink / raw) To: Tomeu Vizoso, linux-tegra-u79uwXL29TY76Z2rM5mHXA Cc: Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: > Following 6dbaff2b, the kernel expects that the bootloader has correctly > programmed the Tegra pinmux. > > DTs for the Jetson and the Venice2 had been updated already but this one > was left behind. So this setup is true for NVIDIA-controlled development/reference boards where we've ensured that the bootloader sets up 100% of the pinmux. However, I know that Coreboot on this board doesn't set up everything in the pinmux, and since it's in r/o flash never will. As such, I'm not sure this change is safe for this board. That is, unless you want to force upstream kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w with full pinmux setup) -> kernel. > Have tested this with the stock vendor firmware (coreboot) and have found no > issues. There are presumably a bunch of features which aren't yet supported upstream, and hence you couldn't test though? That means we might find that parts of the pinmux aren't yet programmed but need to be to enable those features. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-06 17:09 ` Stephen Warren 0 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-06 17:09 UTC (permalink / raw) To: linux-arm-kernel On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: > Following 6dbaff2b, the kernel expects that the bootloader has correctly > programmed the Tegra pinmux. > > DTs for the Jetson and the Venice2 had been updated already but this one > was left behind. So this setup is true for NVIDIA-controlled development/reference boards where we've ensured that the bootloader sets up 100% of the pinmux. However, I know that Coreboot on this board doesn't set up everything in the pinmux, and since it's in r/o flash never will. As such, I'm not sure this change is safe for this board. That is, unless you want to force upstream kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w with full pinmux setup) -> kernel. > Have tested this with the stock vendor firmware (coreboot) and have found no > issues. There are presumably a bunch of features which aren't yet supported upstream, and hence you couldn't test though? That means we might find that parts of the pinmux aren't yet programmed but need to be to enable those features. ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-06 17:09 ` Stephen Warren 0 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-06 17:09 UTC (permalink / raw) To: Tomeu Vizoso, linux-tegra Cc: Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: > Following 6dbaff2b, the kernel expects that the bootloader has correctly > programmed the Tegra pinmux. > > DTs for the Jetson and the Venice2 had been updated already but this one > was left behind. So this setup is true for NVIDIA-controlled development/reference boards where we've ensured that the bootloader sets up 100% of the pinmux. However, I know that Coreboot on this board doesn't set up everything in the pinmux, and since it's in r/o flash never will. As such, I'm not sure this change is safe for this board. That is, unless you want to force upstream kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w with full pinmux setup) -> kernel. > Have tested this with the stock vendor firmware (coreboot) and have found no > issues. There are presumably a bunch of features which aren't yet supported upstream, and hence you couldn't test though? That means we might find that parts of the pinmux aren't yet programmed but need to be to enable those features. ^ permalink raw reply [flat|nested] 41+ messages in thread
[parent not found: <54AC16B0.5050703-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>]
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big 2015-01-06 17:09 ` Stephen Warren (?) @ 2015-01-07 3:37 ` Andrew Bresticker -1 siblings, 0 replies; 41+ messages in thread From: Andrew Bresticker @ 2015-01-07 3:37 UTC (permalink / raw) To: Stephen Warren Cc: Tomeu Vizoso, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA On Tue, Jan 6, 2015 at 9:09 AM, Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> wrote: > On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >> >> Following 6dbaff2b, the kernel expects that the bootloader has correctly >> programmed the Tegra pinmux. >> >> DTs for the Jetson and the Venice2 had been updated already but this one >> was left behind. > > > So this setup is true for NVIDIA-controlled development/reference boards > where we've ensured that the bootloader sets up 100% of the pinmux. > > However, I know that Coreboot on this board doesn't set up everything in the > pinmux, and since it's in r/o flash never will. As such, I'm not sure this > change is safe for this board. That is, unless you want to force upstream > kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w > with full pinmux setup) -> kernel. That's correct. We did have a patch floating around to configure all the pinmux settings in coreboot, but that never made it in. While we could issue a R/W firmware update to apply the pinmux settings (unlikely to happen), it would still result in pinmux settings being applied in two separate locations - which, IIRC, was exactly what Stephen was trying to avoid by moving pinmux out of the device-trees. So I'd agree that pulling the pinmux settings out of the nyan* device-trees is not a good idea. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-07 3:37 ` Andrew Bresticker 0 siblings, 0 replies; 41+ messages in thread From: Andrew Bresticker @ 2015-01-07 3:37 UTC (permalink / raw) To: linux-arm-kernel On Tue, Jan 6, 2015 at 9:09 AM, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >> >> Following 6dbaff2b, the kernel expects that the bootloader has correctly >> programmed the Tegra pinmux. >> >> DTs for the Jetson and the Venice2 had been updated already but this one >> was left behind. > > > So this setup is true for NVIDIA-controlled development/reference boards > where we've ensured that the bootloader sets up 100% of the pinmux. > > However, I know that Coreboot on this board doesn't set up everything in the > pinmux, and since it's in r/o flash never will. As such, I'm not sure this > change is safe for this board. That is, unless you want to force upstream > kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w > with full pinmux setup) -> kernel. That's correct. We did have a patch floating around to configure all the pinmux settings in coreboot, but that never made it in. While we could issue a R/W firmware update to apply the pinmux settings (unlikely to happen), it would still result in pinmux settings being applied in two separate locations - which, IIRC, was exactly what Stephen was trying to avoid by moving pinmux out of the device-trees. So I'd agree that pulling the pinmux settings out of the nyan* device-trees is not a good idea. ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-07 3:37 ` Andrew Bresticker 0 siblings, 0 replies; 41+ messages in thread From: Andrew Bresticker @ 2015-01-07 3:37 UTC (permalink / raw) To: Stephen Warren Cc: Tomeu Vizoso, linux-tegra, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On Tue, Jan 6, 2015 at 9:09 AM, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >> >> Following 6dbaff2b, the kernel expects that the bootloader has correctly >> programmed the Tegra pinmux. >> >> DTs for the Jetson and the Venice2 had been updated already but this one >> was left behind. > > > So this setup is true for NVIDIA-controlled development/reference boards > where we've ensured that the bootloader sets up 100% of the pinmux. > > However, I know that Coreboot on this board doesn't set up everything in the > pinmux, and since it's in r/o flash never will. As such, I'm not sure this > change is safe for this board. That is, unless you want to force upstream > kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w > with full pinmux setup) -> kernel. That's correct. We did have a patch floating around to configure all the pinmux settings in coreboot, but that never made it in. While we could issue a R/W firmware update to apply the pinmux settings (unlikely to happen), it would still result in pinmux settings being applied in two separate locations - which, IIRC, was exactly what Stephen was trying to avoid by moving pinmux out of the device-trees. So I'd agree that pulling the pinmux settings out of the nyan* device-trees is not a good idea. ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big 2015-01-06 17:09 ` Stephen Warren (?) @ 2015-01-07 8:06 ` Tomeu Vizoso -1 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-07 8:06 UTC (permalink / raw) To: Stephen Warren Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA On 6 January 2015 at 18:09, Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> wrote: > On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >> >> Following 6dbaff2b, the kernel expects that the bootloader has correctly >> programmed the Tegra pinmux. >> >> DTs for the Jetson and the Venice2 had been updated already but this one >> was left behind. > > > So this setup is true for NVIDIA-controlled development/reference boards > where we've ensured that the bootloader sets up 100% of the pinmux. > > However, I know that Coreboot on this board doesn't set up everything in the > pinmux, and since it's in r/o flash never will. As such, I'm not sure this > change is safe for this board. That is, unless you want to force upstream > kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w > with full pinmux setup) -> kernel. > >> Have tested this with the stock vendor firmware (coreboot) and have found >> no >> issues. > > > There are presumably a bunch of features which aren't yet supported > upstream, and hence you couldn't test though? That means we might find that > parts of the pinmux aren't yet programmed but need to be to enable those > features. Sure, there's no chance that my testing could have been extensive enough. Following Andrew's feedback, I will be looking at getting the pinmux programming right in the DTs. Thanks, Tomeu > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-07 8:06 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-07 8:06 UTC (permalink / raw) To: linux-arm-kernel On 6 January 2015 at 18:09, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >> >> Following 6dbaff2b, the kernel expects that the bootloader has correctly >> programmed the Tegra pinmux. >> >> DTs for the Jetson and the Venice2 had been updated already but this one >> was left behind. > > > So this setup is true for NVIDIA-controlled development/reference boards > where we've ensured that the bootloader sets up 100% of the pinmux. > > However, I know that Coreboot on this board doesn't set up everything in the > pinmux, and since it's in r/o flash never will. As such, I'm not sure this > change is safe for this board. That is, unless you want to force upstream > kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w > with full pinmux setup) -> kernel. > >> Have tested this with the stock vendor firmware (coreboot) and have found >> no >> issues. > > > There are presumably a bunch of features which aren't yet supported > upstream, and hence you couldn't test though? That means we might find that > parts of the pinmux aren't yet programmed but need to be to enable those > features. Sure, there's no chance that my testing could have been extensive enough. Following Andrew's feedback, I will be looking at getting the pinmux programming right in the DTs. Thanks, Tomeu > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-07 8:06 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-07 8:06 UTC (permalink / raw) To: Stephen Warren Cc: linux-tegra, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On 6 January 2015 at 18:09, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >> >> Following 6dbaff2b, the kernel expects that the bootloader has correctly >> programmed the Tegra pinmux. >> >> DTs for the Jetson and the Venice2 had been updated already but this one >> was left behind. > > > So this setup is true for NVIDIA-controlled development/reference boards > where we've ensured that the bootloader sets up 100% of the pinmux. > > However, I know that Coreboot on this board doesn't set up everything in the > pinmux, and since it's in r/o flash never will. As such, I'm not sure this > change is safe for this board. That is, unless you want to force upstream > kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w > with full pinmux setup) -> kernel. > >> Have tested this with the stock vendor firmware (coreboot) and have found >> no >> issues. > > > There are presumably a bunch of features which aren't yet supported > upstream, and hence you couldn't test though? That means we might find that > parts of the pinmux aren't yet programmed but need to be to enable those > features. Sure, there's no chance that my testing could have been extensive enough. Following Andrew's feedback, I will be looking at getting the pinmux programming right in the DTs. Thanks, Tomeu > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ ^ permalink raw reply [flat|nested] 41+ messages in thread
[parent not found: <CAAObsKB1gMcLZ=n8Mc6JSLQHn5-6VWOhERLgYTdi6nit6yCj5w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big 2015-01-07 8:06 ` Tomeu Vizoso (?) @ 2015-01-07 17:15 ` Stephen Warren -1 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-07 17:15 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA On 01/07/2015 01:06 AM, Tomeu Vizoso wrote: > On 6 January 2015 at 18:09, Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> wrote: >> On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >>> >>> Following 6dbaff2b, the kernel expects that the bootloader has correctly >>> programmed the Tegra pinmux. >>> >>> DTs for the Jetson and the Venice2 had been updated already but this one >>> was left behind. >> >> >> So this setup is true for NVIDIA-controlled development/reference boards >> where we've ensured that the bootloader sets up 100% of the pinmux. >> >> However, I know that Coreboot on this board doesn't set up everything in the >> pinmux, and since it's in r/o flash never will. As such, I'm not sure this >> change is safe for this board. That is, unless you want to force upstream >> kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w >> with full pinmux setup) -> kernel. >> >>> Have tested this with the stock vendor firmware (coreboot) and have found >>> no >>> issues. >> >> >> There are presumably a bunch of features which aren't yet supported >> upstream, and hence you couldn't test though? That means we might find that >> parts of the pinmux aren't yet programmed but need to be to enable those >> features. > > Sure, there's no chance that my testing could have been extensive enough. > > Following Andrew's feedback, I will be looking at getting the pinmux > programming right in the DTs. As an FYI, the way this typically works (for NVIDIA reference boards, and many/most customer boards) is that NVIDIA syseng publishes an Excel spreadsheet that can be edited to define the board's pinmux, and which performs some error checks. This spreadsheet can directly generate (via Excel macros/...) pinmux data tables and/or DT files for our product/internal/downstream Android and L4T kernels. For recent SoCs, the tegra-pinmux-scripts project[1] can take a CSV representation of the spreadsheet and generate both a U-Boot header file (for upstream or L4T; they're the same) and upstream Linux kernel DT files that represent the pinmux. So, your best bet is to see if such a spreadsheet exists for these platforms, and import it into tegra-pinmux-scripts. That will save a lot of work if the spreadsheet exists (and is up-to-date). [1] https://github.com/NVIDIA/tegra-pinmux-scripts ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-07 17:15 ` Stephen Warren 0 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-07 17:15 UTC (permalink / raw) To: linux-arm-kernel On 01/07/2015 01:06 AM, Tomeu Vizoso wrote: > On 6 January 2015 at 18:09, Stephen Warren <swarren@wwwdotorg.org> wrote: >> On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >>> >>> Following 6dbaff2b, the kernel expects that the bootloader has correctly >>> programmed the Tegra pinmux. >>> >>> DTs for the Jetson and the Venice2 had been updated already but this one >>> was left behind. >> >> >> So this setup is true for NVIDIA-controlled development/reference boards >> where we've ensured that the bootloader sets up 100% of the pinmux. >> >> However, I know that Coreboot on this board doesn't set up everything in the >> pinmux, and since it's in r/o flash never will. As such, I'm not sure this >> change is safe for this board. That is, unless you want to force upstream >> kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w >> with full pinmux setup) -> kernel. >> >>> Have tested this with the stock vendor firmware (coreboot) and have found >>> no >>> issues. >> >> >> There are presumably a bunch of features which aren't yet supported >> upstream, and hence you couldn't test though? That means we might find that >> parts of the pinmux aren't yet programmed but need to be to enable those >> features. > > Sure, there's no chance that my testing could have been extensive enough. > > Following Andrew's feedback, I will be looking at getting the pinmux > programming right in the DTs. As an FYI, the way this typically works (for NVIDIA reference boards, and many/most customer boards) is that NVIDIA syseng publishes an Excel spreadsheet that can be edited to define the board's pinmux, and which performs some error checks. This spreadsheet can directly generate (via Excel macros/...) pinmux data tables and/or DT files for our product/internal/downstream Android and L4T kernels. For recent SoCs, the tegra-pinmux-scripts project[1] can take a CSV representation of the spreadsheet and generate both a U-Boot header file (for upstream or L4T; they're the same) and upstream Linux kernel DT files that represent the pinmux. So, your best bet is to see if such a spreadsheet exists for these platforms, and import it into tegra-pinmux-scripts. That will save a lot of work if the spreadsheet exists (and is up-to-date). [1] https://github.com/NVIDIA/tegra-pinmux-scripts ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big @ 2015-01-07 17:15 ` Stephen Warren 0 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-07 17:15 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On 01/07/2015 01:06 AM, Tomeu Vizoso wrote: > On 6 January 2015 at 18:09, Stephen Warren <swarren@wwwdotorg.org> wrote: >> On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: >>> >>> Following 6dbaff2b, the kernel expects that the bootloader has correctly >>> programmed the Tegra pinmux. >>> >>> DTs for the Jetson and the Venice2 had been updated already but this one >>> was left behind. >> >> >> So this setup is true for NVIDIA-controlled development/reference boards >> where we've ensured that the bootloader sets up 100% of the pinmux. >> >> However, I know that Coreboot on this board doesn't set up everything in the >> pinmux, and since it's in r/o flash never will. As such, I'm not sure this >> change is safe for this board. That is, unless you want to force upstream >> kernels to be booted via a chain-loaded path: Coreboot (r/o) -> U-Boot (r/w >> with full pinmux setup) -> kernel. >> >>> Have tested this with the stock vendor firmware (coreboot) and have found >>> no >>> issues. >> >> >> There are presumably a bunch of features which aren't yet supported >> upstream, and hence you couldn't test though? That means we might find that >> parts of the pinmux aren't yet programmed but need to be to enable those >> features. > > Sure, there's no chance that my testing could have been extensive enough. > > Following Andrew's feedback, I will be looking at getting the pinmux > programming right in the DTs. As an FYI, the way this typically works (for NVIDIA reference boards, and many/most customer boards) is that NVIDIA syseng publishes an Excel spreadsheet that can be edited to define the board's pinmux, and which performs some error checks. This spreadsheet can directly generate (via Excel macros/...) pinmux data tables and/or DT files for our product/internal/downstream Android and L4T kernels. For recent SoCs, the tegra-pinmux-scripts project[1] can take a CSV representation of the spreadsheet and generate both a U-Boot header file (for upstream or L4T; they're the same) and upstream Linux kernel DT files that represent the pinmux. So, your best bet is to see if such a spreadsheet exists for these platforms, and import it into tegra-pinmux-scripts. That will save a lot of work if the spreadsheet exists (and is up-to-date). [1] https://github.com/NVIDIA/tegra-pinmux-scripts ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT 2015-01-06 10:37 ` Tomeu Vizoso @ 2015-01-06 10:37 ` Tomeu Vizoso -1 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra Cc: Javier Martinez Canillas, Tomeu Vizoso, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel In preparation for adding the DT for the nyan-blaze board. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ 2 files changed, 1136 insertions(+), 1128 deletions(-) create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 4752572..2041077 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -1,1137 +1,12 @@ /dts-v1/; -#include <dt-bindings/input/input.h> -#include "tegra124.dtsi" +#include "tegra124-nyan.dtsi" / { model = "Acer Chromebook 13 CB5-311"; - compatible = "google,nyan-big", "nvidia,tegra124"; - - aliases { - rtc0 = "/i2c@0,7000d000/pmic@40"; - rtc1 = "/rtc@0,7000e000"; - serial0 = &uarta; - }; - - memory { - reg = <0x0 0x80000000 0x0 0x80000000>; - }; - - host1x@0,50000000 { - hdmi@0,54280000 { - status = "okay"; - - vdd-supply = <&vdd_3v3_hdmi>; - pll-supply = <&vdd_hdmi_pll>; - hdmi-supply = <&vdd_5v0_hdmi>; - - nvidia,ddc-i2c-bus = <&hdmi_ddc>; - nvidia,hpd-gpio = - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; - }; - - sor@0,54540000 { - status = "okay"; - - nvidia,dpaux = <&dpaux>; - nvidia,panel = <&panel>; - }; - - dpaux@0,545c0000 { - vdd-supply = <&vdd_3v3_panel>; - status = "okay"; - }; - }; - - pinmux@0,70000868 { - pinctrl-names = "boot"; - pinctrl-0 = <&pinmux_boot>; - - pinmux_boot: common { - dap_mclk1_pw4 { - nvidia,pins = "dap_mclk1_pw4"; - nvidia,function = "extperiph1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - dap2_din_pa4 { - nvidia,pins = "dap2_din_pa4"; - nvidia,function = "i2s1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - dap2_dout_pa5 { - nvidia,pins = "dap2_dout_pa5", - "dap2_fs_pa2", - "dap2_sclk_pa3"; - nvidia,function = "i2s1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - dvfs_pwm_px0 { - nvidia,pins = "dvfs_pwm_px0", - "dvfs_clk_px2"; - nvidia,function = "cldvfs"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ulpi_clk_py0 { - nvidia,pins = "ulpi_clk_py0", - "ulpi_nxt_py2", - "ulpi_stp_py3"; - nvidia,function = "spi1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ulpi_dir_py1 { - nvidia,pins = "ulpi_dir_py1"; - nvidia,function = "spi1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - cam_i2c_scl_pbb1 { - nvidia,pins = "cam_i2c_scl_pbb1", - "cam_i2c_sda_pbb2"; - nvidia,function = "i2c3"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - gen2_i2c_scl_pt5 { - nvidia,pins = "gen2_i2c_scl_pt5", - "gen2_i2c_sda_pt6"; - nvidia,function = "i2c2"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - pg4 { - nvidia,pins = "pg4", - "pg5", - "pg6", - "pi3"; - nvidia,function = "spi4"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pg7 { - nvidia,pins = "pg7"; - nvidia,function = "spi4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ph1 { - nvidia,pins = "ph1"; - nvidia,function = "pwm1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pk0 { - nvidia,pins = "pk0", - "kb_row15_ps7", - "clk_32k_out_pa0"; - nvidia,function = "soc"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - sdmmc1_clk_pz0 { - nvidia,pins = "sdmmc1_clk_pz0"; - nvidia,function = "sdmmc1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc1_cmd_pz1 { - nvidia,pins = "sdmmc1_cmd_pz1", - "sdmmc1_dat0_py7", - "sdmmc1_dat1_py6", - "sdmmc1_dat2_py5", - "sdmmc1_dat3_py4"; - nvidia,function = "sdmmc1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc3_clk_pa6 { - nvidia,pins = "sdmmc3_clk_pa6"; - nvidia,function = "sdmmc3"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc3_cmd_pa7 { - nvidia,pins = "sdmmc3_cmd_pa7", - "sdmmc3_dat0_pb7", - "sdmmc3_dat1_pb6", - "sdmmc3_dat2_pb5", - "sdmmc3_dat3_pb4", - "kb_col4_pq4", - "sdmmc3_clk_lb_out_pee4", - "sdmmc3_clk_lb_in_pee5", - "sdmmc3_cd_n_pv2"; - nvidia,function = "sdmmc3"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc4_clk_pcc4 { - nvidia,pins = "sdmmc4_clk_pcc4"; - nvidia,function = "sdmmc4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc4_cmd_pt7 { - nvidia,pins = "sdmmc4_cmd_pt7", - "sdmmc4_dat0_paa0", - "sdmmc4_dat1_paa1", - "sdmmc4_dat2_paa2", - "sdmmc4_dat3_paa3", - "sdmmc4_dat4_paa4", - "sdmmc4_dat5_paa5", - "sdmmc4_dat6_paa6", - "sdmmc4_dat7_paa7"; - nvidia,function = "sdmmc4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pwr_i2c_scl_pz6 { - nvidia,pins = "pwr_i2c_scl_pz6", - "pwr_i2c_sda_pz7"; - nvidia,function = "i2cpwr"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - jtag_rtck { - nvidia,pins = "jtag_rtck"; - nvidia,function = "rtck"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - clk_32k_in { - nvidia,pins = "clk_32k_in"; - nvidia,function = "clk"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - core_pwr_req { - nvidia,pins = "core_pwr_req"; - nvidia,function = "pwron"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - cpu_pwr_req { - nvidia,pins = "cpu_pwr_req"; - nvidia,function = "cpu"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pwr_int_n { - nvidia,pins = "pwr_int_n"; - nvidia,function = "pmi"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - reset_out_n { - nvidia,pins = "reset_out_n"; - nvidia,function = "reset_out_n"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - clk3_out_pee0 { - nvidia,pins = "clk3_out_pee0"; - nvidia,function = "extperiph3"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - gen1_i2c_sda_pc5 { - nvidia,pins = "gen1_i2c_sda_pc5", - "gen1_i2c_scl_pc4"; - nvidia,function = "i2c1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - hdmi_cec_pee3 { - nvidia,pins = "hdmi_cec_pee3"; - nvidia,function = "cec"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_DISABLE>; - }; - hdmi_int_pn7 { - nvidia,pins = "hdmi_int_pn7"; - nvidia,function = "rsvd1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ddc_scl_pv4 { - nvidia,pins = "ddc_scl_pv4", - "ddc_sda_pv5"; - nvidia,function = "i2c4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; - }; - kb_row10_ps2 { - nvidia,pins = "kb_row10_ps2"; - nvidia,function = "uarta"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - kb_row9_ps1 { - nvidia,pins = "kb_row9_ps1"; - nvidia,function = "uarta"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - usb_vbus_en0_pn4 { - nvidia,pins = "usb_vbus_en0_pn4", - "usb_vbus_en1_pn5"; - nvidia,function = "usb"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - drive_sdio1 { - nvidia,pins = "drive_sdio1"; - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; - nvidia,schmitt = <TEGRA_PIN_DISABLE>; - nvidia,pull-down-strength = <36>; - nvidia,pull-up-strength = <20>; - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; - }; - drive_sdio3 { - nvidia,pins = "drive_sdio3"; - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; - nvidia,schmitt = <TEGRA_PIN_DISABLE>; - nvidia,pull-down-strength = <22>; - nvidia,pull-up-strength = <36>; - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; - }; - drive_gma { - nvidia,pins = "drive_gma"; - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; - nvidia,schmitt = <TEGRA_PIN_DISABLE>; - nvidia,pull-down-strength = <2>; - nvidia,pull-up-strength = <1>; - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; - nvidia,drive-type = <1>; - }; - codec_irq_l { - nvidia,pins = "ph4"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - lcd_bl_en { - nvidia,pins = "ph2"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - touch_irq_l { - nvidia,pins = "gpio_w3_aud_pw3"; - nvidia,function = "spi6"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - tpm_davint_l { - nvidia,pins = "ph6"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - ts_irq_l { - nvidia,pins = "pk2"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - ts_reset_l { - nvidia,pins = "pk4"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - ts_shdn_l { - nvidia,pins = "pk1"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - ph7 { - nvidia,pins = "ph7"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - kb_col0_ap { - nvidia,pins = "kb_col0_pq0"; - nvidia,function = "rsvd4"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - lid_open { - nvidia,pins = "kb_row4_pr4"; - nvidia,function = "rsvd3"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - en_vdd_sd { - nvidia,pins = "kb_row0_pr0"; - nvidia,function = "rsvd4"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - ac_ok { - nvidia,pins = "pj0"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - sensor_irq_l { - nvidia,pins = "pi6"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - wifi_en { - nvidia,pins = "gpio_x7_aud_px7"; - nvidia,function = "rsvd4"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - en_vdd_bl { - nvidia,pins = "dap3_dout_pp2"; - nvidia,function = "i2s2"; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - en_vdd_hdmi { - nvidia,pins = "spdif_in_pk6"; - nvidia,function = "spdif"; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - soc_warm_reset_l { - nvidia,pins = "pi5"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - hp_det_l { - nvidia,pins = "pi7"; - nvidia,function = "rsvd1"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - mic_det_l { - nvidia,pins = "kb_row7_pr7"; - nvidia,function = "rsvd2"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - }; - }; - - serial@0,70006000 { - /* Debug connector on the bottom of the board near SD card. */ - status = "okay"; - }; - - pwm@0,7000a000 { - status = "okay"; - }; - - i2c@0,7000c000 { - status = "okay"; - clock-frequency = <100000>; - - acodec: audio-codec@10 { - compatible = "maxim,max98090"; - reg = <0x10>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; - }; - - temperature-sensor@4c { - compatible = "ti,tmp451"; - reg = <0x4c>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; - - #thermal-sensor-cells = <1>; - }; - }; - - i2c@0,7000c400 { - status = "okay"; - clock-frequency = <100000>; - }; - - i2c@0,7000c500 { - status = "okay"; - clock-frequency = <400000>; - - tpm@20 { - compatible = "infineon,slb9645tt"; - reg = <0x20>; - }; - }; - - hdmi_ddc: i2c@0,7000c700 { - status = "okay"; - clock-frequency = <100000>; - }; - - i2c@0,7000d000 { - status = "okay"; - clock-frequency = <400000>; - - pmic: pmic@40 { - compatible = "ams,as3722"; - reg = <0x40>; - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; - - ams,system-power-controller; - - #interrupt-cells = <2>; - interrupt-controller; - - gpio-controller; - #gpio-cells = <2>; - - pinctrl-names = "default"; - pinctrl-0 = <&as3722_default>; - - as3722_default: pinmux { - gpio0 { - pins = "gpio0"; - function = "gpio"; - bias-pull-down; - }; - - gpio1 { - pins = "gpio1"; - function = "gpio"; - bias-pull-up; - }; - - gpio2_4_7 { - pins = "gpio2", "gpio4", "gpio7"; - function = "gpio"; - bias-pull-up; - }; - - gpio3_6 { - pins = "gpio3", "gpio6"; - bias-high-impedance; - }; - - gpio5 { - pins = "gpio5"; - function = "clk32k-out"; - bias-pull-down; - }; - }; - - regulators { - vsup-sd2-supply = <&vdd_5v0_sys>; - vsup-sd3-supply = <&vdd_5v0_sys>; - vsup-sd4-supply = <&vdd_5v0_sys>; - vsup-sd5-supply = <&vdd_5v0_sys>; - vin-ldo0-supply = <&vdd_1v35_lp0>; - vin-ldo1-6-supply = <&vdd_3v3_run>; - vin-ldo2-5-7-supply = <&vddio_1v8>; - vin-ldo3-4-supply = <&vdd_3v3_sys>; - vin-ldo9-10-supply = <&vdd_5v0_sys>; - vin-ldo11-supply = <&vdd_3v3_run>; - - sd0 { - regulator-name = "+VDD_CPU_AP"; - regulator-min-microvolt = <700000>; - regulator-max-microvolt = <1350000>; - regulator-min-microamp = <3500000>; - regulator-max-microamp = <3500000>; - regulator-always-on; - regulator-boot-on; - ams,ext-control = <2>; - }; - - sd1 { - regulator-name = "+VDD_CORE"; - regulator-min-microvolt = <700000>; - regulator-max-microvolt = <1350000>; - regulator-min-microamp = <2500000>; - regulator-max-microamp = <4000000>; - regulator-always-on; - regulator-boot-on; - ams,ext-control = <1>; - }; - - vdd_1v35_lp0: sd2 { - regulator-name = "+1.35V_LP0(sd2)"; - regulator-min-microvolt = <1350000>; - regulator-max-microvolt = <1350000>; - regulator-always-on; - regulator-boot-on; - }; - - sd3 { - regulator-name = "+1.35V_LP0(sd3)"; - regulator-min-microvolt = <1350000>; - regulator-max-microvolt = <1350000>; - regulator-always-on; - regulator-boot-on; - }; - - vdd_1v05_run: sd4 { - regulator-name = "+1.05V_RUN"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - }; - - vddio_1v8: sd5 { - regulator-name = "+1.8V_VDDIO"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-boot-on; - regulator-always-on; - }; - - sd6 { - regulator-name = "+VDD_GPU_AP"; - regulator-min-microvolt = <650000>; - regulator-max-microvolt = <1200000>; - regulator-min-microamp = <3500000>; - regulator-max-microamp = <3500000>; - regulator-boot-on; - regulator-always-on; - }; - - ldo0 { - regulator-name = "+1.05V_RUN_AVDD"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - regulator-boot-on; - regulator-always-on; - ams,ext-control = <1>; - }; - - ldo1 { - regulator-name = "+1.8V_RUN_CAM"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo2 { - regulator-name = "+1.2V_GEN_AVDD"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - regulator-boot-on; - regulator-always-on; - }; - - ldo3 { - regulator-name = "+1.00V_LP0_VDD_RTC"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <1000000>; - regulator-boot-on; - regulator-always-on; - ams,enable-tracking; - }; - - vdd_run_cam: ldo4 { - regulator-name = "+3.3V_RUN_CAM"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo5 { - regulator-name = "+1.2V_RUN_CAM_FRONT"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - }; - - vddio_sdmmc3: ldo6 { - regulator-name = "+VDDIO_SDMMC3"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - }; - - ldo7 { - regulator-name = "+1.05V_RUN_CAM_REAR"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - }; - - ldo9 { - regulator-name = "+2.8V_RUN_TOUCH"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo10 { - regulator-name = "+2.8V_RUN_CAM_AF"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo11 { - regulator-name = "+1.8V_RUN_VPP_FUSE"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - }; - }; - }; - - spi@0,7000d400 { - status = "okay"; - - cros_ec: cros-ec@0 { - compatible = "google,cros-ec-spi"; - spi-max-frequency = <3000000>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; - reg = <0>; - - google,cros-ec-spi-msg-delay = <2000>; - - i2c-tunnel { - compatible = "google,cros-ec-i2c-tunnel"; - #address-cells = <1>; - #size-cells = <0>; - - google,remote-bus = <0>; - - charger: bq24735@9 { - compatible = "ti,bq24735"; - reg = <0x9>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(J, 0) - GPIO_ACTIVE_HIGH>; - ti,ac-detect-gpios = <&gpio - TEGRA_GPIO(J, 0) - GPIO_ACTIVE_HIGH>; - }; - - battery: sbs-battery@b { - compatible = "sbs,sbs-battery"; - reg = <0xb>; - sbs,i2c-retry-count = <2>; - sbs,poll-retry-count = <10>; - power-supplies = <&charger>; - }; - }; - }; - }; - - spi@0,7000da00 { - status = "okay"; - spi-max-frequency = <25000000>; - - flash@0 { - compatible = "winbond,w25q32dw"; - reg = <0>; - }; - }; - - pmc@0,7000e400 { - nvidia,invert-interrupt; - nvidia,suspend-mode = <0>; - nvidia,cpu-pwr-good-time = <500>; - nvidia,cpu-pwr-off-time = <300>; - nvidia,core-pwr-good-time = <641 3845>; - nvidia,core-pwr-off-time = <61036>; - nvidia,core-power-req-active-high; - nvidia,sys-clock-req-active-high; - }; - - hda@0,70030000 { - status = "okay"; - }; - - sdhci@0,700b0000 { /* WiFi/BT on this bus */ - status = "okay"; - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; - bus-width = <4>; - no-1-8-v; - non-removable; - }; - - sdhci@0,700b0400 { /* SD Card on this bus */ - status = "okay"; - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; - bus-width = <4>; - no-1-8-v; - vqmmc-supply = <&vddio_sdmmc3>; - }; - - sdhci@0,700b0600 { /* eMMC on this bus */ - status = "okay"; - bus-width = <8>; - no-1-8-v; - non-removable; - }; - - ahub@0,70300000 { - i2s@0,70301100 { - status = "okay"; - }; - }; - - usb@0,7d000000 { /* Rear external USB port. */ - status = "okay"; - }; - - usb-phy@0,7d000000 { - status = "okay"; - vbus-supply = <&vdd_usb1_vbus>; - }; - - usb@0,7d004000 { /* Internal webcam. */ - status = "okay"; - }; - - usb-phy@0,7d004000 { - status = "okay"; - vbus-supply = <&vdd_run_cam>; - }; - - usb@0,7d008000 { /* Left external USB port. */ - status = "okay"; - }; - - usb-phy@0,7d008000 { - status = "okay"; - vbus-supply = <&vdd_usb3_vbus>; - }; - - backlight: backlight { - compatible = "pwm-backlight"; - - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; - power-supply = <&vdd_led>; - pwms = <&pwm 1 1000000>; - - default-brightness-level = <224>; - brightness-levels = - < 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255 - 256>; - }; - - clocks { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - clk32k_in: clock@0 { - compatible = "fixed-clock"; - reg = <0>; - #clock-cells = <0>; - clock-frequency = <32768>; - }; - }; - - gpio-keys { - compatible = "gpio-keys"; - - lid { - label = "Lid"; - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; - linux,input-type = <5>; - linux,code = <KEY_RESERVED>; - debounce-interval = <1>; - gpio-key,wakeup; - }; - - power { - label = "Power"; - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; - linux,code = <KEY_POWER>; - debounce-interval = <30>; - gpio-key,wakeup; - }; - }; - - panel: panel { - compatible = "auo,b133xtn01"; - - backlight = <&backlight>; - ddc-i2c-bus = <&dpaux>; - }; - - regulators { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - vdd_mux: regulator@0 { - compatible = "regulator-fixed"; - reg = <0>; - regulator-name = "+VDD_MUX"; - regulator-min-microvolt = <12000000>; - regulator-max-microvolt = <12000000>; - regulator-always-on; - regulator-boot-on; - }; - - vdd_5v0_sys: regulator@1 { - compatible = "regulator-fixed"; - reg = <1>; - regulator-name = "+5V_SYS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-always-on; - regulator-boot-on; - vin-supply = <&vdd_mux>; - }; - - vdd_3v3_sys: regulator@2 { - compatible = "regulator-fixed"; - reg = <2>; - regulator-name = "+3.3V_SYS"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - regulator-boot-on; - vin-supply = <&vdd_mux>; - }; - - vdd_3v3_run: regulator@3 { - compatible = "regulator-fixed"; - reg = <3>; - regulator-name = "+3.3V_RUN"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - regulator-boot-on; - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_3v3_sys>; - }; - - vdd_3v3_hdmi: regulator@4 { - compatible = "regulator-fixed"; - reg = <4>; - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - vin-supply = <&vdd_3v3_run>; - }; - - vdd_led: regulator@5 { - compatible = "regulator-fixed"; - reg = <5>; - regulator-name = "+VDD_LED"; - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_mux>; - }; - - vdd_5v0_ts: regulator@6 { - compatible = "regulator-fixed"; - reg = <6>; - regulator-name = "+5V_VDD_TS_SW"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-boot-on; - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_5v0_sys>; - }; - - vdd_usb1_vbus: regulator@7 { - compatible = "regulator-fixed"; - reg = <7>; - regulator-name = "+5V_USB_HS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; - enable-active-high; - gpio-open-drain; - vin-supply = <&vdd_5v0_sys>; - }; - - vdd_usb3_vbus: regulator@8 { - compatible = "regulator-fixed"; - reg = <8>; - regulator-name = "+5V_USB_SS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; - enable-active-high; - gpio-open-drain; - vin-supply = <&vdd_5v0_sys>; - }; - - vdd_3v3_panel: regulator@9 { - compatible = "regulator-fixed"; - reg = <9>; - regulator-name = "+3.3V_PANEL"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_3v3_run>; - }; - - vdd_3v3_lp0: regulator@10 { - compatible = "regulator-fixed"; - reg = <10>; - regulator-name = "+3.3V_LP0"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - /* - * TODO: find a way to wire this up with the USB EHCI - * controllers so that it can be enabled on demand. - */ - regulator-always-on; - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_3v3_sys>; - }; - - vdd_hdmi_pll: regulator@11 { - compatible = "regulator-fixed"; - reg = <11>; - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; - vin-supply = <&vdd_1v05_run>; - }; - - vdd_5v0_hdmi: regulator@12 { - compatible = "regulator-fixed"; - reg = <12>; - regulator-name = "+5V_HDMI_CON"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_5v0_sys>; - }; - }; + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; sound { - compatible = "nvidia,tegra-audio-max98090-nyan-big", - "nvidia,tegra-audio-max98090"; - nvidia,model = "Acer Chromebook 13"; - - nvidia,audio-routing = - "Headphones", "HPR", - "Headphones", "HPL", - "Speakers", "SPKR", - "Speakers", "SPKL", - "Mic Jack", "MICBIAS", - "DMICL", "Int Mic", - "DMICR", "Int Mic", - "IN34", "Mic Jack"; - - nvidia,i2s-controller = <&tegra_i2s1>; - nvidia,audio-codec = <&acodec>; - - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, - <&tegra_car TEGRA124_CLK_EXTERN1>; - clock-names = "pll_a", "pll_a_out0", "mclk"; - - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; + nvidia,model = "Acer Chromebook 13 CB5-311"; }; }; - -#include "cros-ec-keyboard.dtsi" diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi new file mode 100644 index 0000000..4c68658 --- /dev/null +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi @@ -0,0 +1,1133 @@ +#include <dt-bindings/input/input.h> +#include "tegra124.dtsi" + +/ { + compatible = "google,nyan", "nvidia,tegra124"; + + aliases { + rtc0 = "/i2c@0,7000d000/pmic@40"; + rtc1 = "/rtc@0,7000e000"; + serial0 = &uarta; + }; + + memory { + reg = <0x0 0x80000000 0x0 0x80000000>; + }; + + host1x@0,50000000 { + hdmi@0,54280000 { + status = "okay"; + + vdd-supply = <&vdd_3v3_hdmi>; + pll-supply = <&vdd_hdmi_pll>; + hdmi-supply = <&vdd_5v0_hdmi>; + + nvidia,ddc-i2c-bus = <&hdmi_ddc>; + nvidia,hpd-gpio = + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; + }; + + sor@0,54540000 { + status = "okay"; + + nvidia,dpaux = <&dpaux>; + nvidia,panel = <&panel>; + }; + + dpaux@0,545c0000 { + vdd-supply = <&vdd_3v3_panel>; + status = "okay"; + }; + }; + + pinmux@0,70000868 { + pinctrl-names = "boot"; + pinctrl-0 = <&pinmux_boot>; + + pinmux_boot: common { + dap_mclk1_pw4 { + nvidia,pins = "dap_mclk1_pw4"; + nvidia,function = "extperiph1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + dap2_din_pa4 { + nvidia,pins = "dap2_din_pa4"; + nvidia,function = "i2s1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + dap2_dout_pa5 { + nvidia,pins = "dap2_dout_pa5", + "dap2_fs_pa2", + "dap2_sclk_pa3"; + nvidia,function = "i2s1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + dvfs_pwm_px0 { + nvidia,pins = "dvfs_pwm_px0", + "dvfs_clk_px2"; + nvidia,function = "cldvfs"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ulpi_clk_py0 { + nvidia,pins = "ulpi_clk_py0", + "ulpi_nxt_py2", + "ulpi_stp_py3"; + nvidia,function = "spi1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ulpi_dir_py1 { + nvidia,pins = "ulpi_dir_py1"; + nvidia,function = "spi1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + cam_i2c_scl_pbb1 { + nvidia,pins = "cam_i2c_scl_pbb1", + "cam_i2c_sda_pbb2"; + nvidia,function = "i2c3"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + gen2_i2c_scl_pt5 { + nvidia,pins = "gen2_i2c_scl_pt5", + "gen2_i2c_sda_pt6"; + nvidia,function = "i2c2"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + pg4 { + nvidia,pins = "pg4", + "pg5", + "pg6", + "pi3"; + nvidia,function = "spi4"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pg7 { + nvidia,pins = "pg7"; + nvidia,function = "spi4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ph1 { + nvidia,pins = "ph1"; + nvidia,function = "pwm1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pk0 { + nvidia,pins = "pk0", + "kb_row15_ps7", + "clk_32k_out_pa0"; + nvidia,function = "soc"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + sdmmc1_clk_pz0 { + nvidia,pins = "sdmmc1_clk_pz0"; + nvidia,function = "sdmmc1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc1_cmd_pz1 { + nvidia,pins = "sdmmc1_cmd_pz1", + "sdmmc1_dat0_py7", + "sdmmc1_dat1_py6", + "sdmmc1_dat2_py5", + "sdmmc1_dat3_py4"; + nvidia,function = "sdmmc1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc3_clk_pa6 { + nvidia,pins = "sdmmc3_clk_pa6"; + nvidia,function = "sdmmc3"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc3_cmd_pa7 { + nvidia,pins = "sdmmc3_cmd_pa7", + "sdmmc3_dat0_pb7", + "sdmmc3_dat1_pb6", + "sdmmc3_dat2_pb5", + "sdmmc3_dat3_pb4", + "kb_col4_pq4", + "sdmmc3_clk_lb_out_pee4", + "sdmmc3_clk_lb_in_pee5", + "sdmmc3_cd_n_pv2"; + nvidia,function = "sdmmc3"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc4_clk_pcc4 { + nvidia,pins = "sdmmc4_clk_pcc4"; + nvidia,function = "sdmmc4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc4_cmd_pt7 { + nvidia,pins = "sdmmc4_cmd_pt7", + "sdmmc4_dat0_paa0", + "sdmmc4_dat1_paa1", + "sdmmc4_dat2_paa2", + "sdmmc4_dat3_paa3", + "sdmmc4_dat4_paa4", + "sdmmc4_dat5_paa5", + "sdmmc4_dat6_paa6", + "sdmmc4_dat7_paa7"; + nvidia,function = "sdmmc4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pwr_i2c_scl_pz6 { + nvidia,pins = "pwr_i2c_scl_pz6", + "pwr_i2c_sda_pz7"; + nvidia,function = "i2cpwr"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + jtag_rtck { + nvidia,pins = "jtag_rtck"; + nvidia,function = "rtck"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + clk_32k_in { + nvidia,pins = "clk_32k_in"; + nvidia,function = "clk"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + core_pwr_req { + nvidia,pins = "core_pwr_req"; + nvidia,function = "pwron"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + cpu_pwr_req { + nvidia,pins = "cpu_pwr_req"; + nvidia,function = "cpu"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pwr_int_n { + nvidia,pins = "pwr_int_n"; + nvidia,function = "pmi"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + reset_out_n { + nvidia,pins = "reset_out_n"; + nvidia,function = "reset_out_n"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + clk3_out_pee0 { + nvidia,pins = "clk3_out_pee0"; + nvidia,function = "extperiph3"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + gen1_i2c_sda_pc5 { + nvidia,pins = "gen1_i2c_sda_pc5", + "gen1_i2c_scl_pc4"; + nvidia,function = "i2c1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + hdmi_cec_pee3 { + nvidia,pins = "hdmi_cec_pee3"; + nvidia,function = "cec"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_DISABLE>; + }; + hdmi_int_pn7 { + nvidia,pins = "hdmi_int_pn7"; + nvidia,function = "rsvd1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ddc_scl_pv4 { + nvidia,pins = "ddc_scl_pv4", + "ddc_sda_pv5"; + nvidia,function = "i2c4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; + }; + kb_row10_ps2 { + nvidia,pins = "kb_row10_ps2"; + nvidia,function = "uarta"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + kb_row9_ps1 { + nvidia,pins = "kb_row9_ps1"; + nvidia,function = "uarta"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + usb_vbus_en0_pn4 { + nvidia,pins = "usb_vbus_en0_pn4", + "usb_vbus_en1_pn5"; + nvidia,function = "usb"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + drive_sdio1 { + nvidia,pins = "drive_sdio1"; + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; + nvidia,schmitt = <TEGRA_PIN_DISABLE>; + nvidia,pull-down-strength = <36>; + nvidia,pull-up-strength = <20>; + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; + }; + drive_sdio3 { + nvidia,pins = "drive_sdio3"; + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; + nvidia,schmitt = <TEGRA_PIN_DISABLE>; + nvidia,pull-down-strength = <22>; + nvidia,pull-up-strength = <36>; + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; + }; + drive_gma { + nvidia,pins = "drive_gma"; + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; + nvidia,schmitt = <TEGRA_PIN_DISABLE>; + nvidia,pull-down-strength = <2>; + nvidia,pull-up-strength = <1>; + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; + nvidia,drive-type = <1>; + }; + codec_irq_l { + nvidia,pins = "ph4"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + lcd_bl_en { + nvidia,pins = "ph2"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + touch_irq_l { + nvidia,pins = "gpio_w3_aud_pw3"; + nvidia,function = "spi6"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + tpm_davint_l { + nvidia,pins = "ph6"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + ts_irq_l { + nvidia,pins = "pk2"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + ts_reset_l { + nvidia,pins = "pk4"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + ts_shdn_l { + nvidia,pins = "pk1"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + ph7 { + nvidia,pins = "ph7"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + kb_col0_ap { + nvidia,pins = "kb_col0_pq0"; + nvidia,function = "rsvd4"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + lid_open { + nvidia,pins = "kb_row4_pr4"; + nvidia,function = "rsvd3"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + en_vdd_sd { + nvidia,pins = "kb_row0_pr0"; + nvidia,function = "rsvd4"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + ac_ok { + nvidia,pins = "pj0"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + sensor_irq_l { + nvidia,pins = "pi6"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + wifi_en { + nvidia,pins = "gpio_x7_aud_px7"; + nvidia,function = "rsvd4"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + en_vdd_bl { + nvidia,pins = "dap3_dout_pp2"; + nvidia,function = "i2s2"; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + en_vdd_hdmi { + nvidia,pins = "spdif_in_pk6"; + nvidia,function = "spdif"; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + soc_warm_reset_l { + nvidia,pins = "pi5"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + hp_det_l { + nvidia,pins = "pi7"; + nvidia,function = "rsvd1"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + mic_det_l { + nvidia,pins = "kb_row7_pr7"; + nvidia,function = "rsvd2"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + }; + }; + + serial@0,70006000 { + /* Debug connector on the bottom of the board near SD card. */ + status = "okay"; + }; + + pwm@0,7000a000 { + status = "okay"; + }; + + i2c@0,7000c000 { + status = "okay"; + clock-frequency = <100000>; + + acodec: audio-codec@10 { + compatible = "maxim,max98090"; + reg = <0x10>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; + }; + + temperature-sensor@4c { + compatible = "ti,tmp451"; + reg = <0x4c>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; + + #thermal-sensor-cells = <1>; + }; + }; + + i2c@0,7000c400 { + status = "okay"; + clock-frequency = <100000>; + }; + + i2c@0,7000c500 { + status = "okay"; + clock-frequency = <400000>; + + tpm@20 { + compatible = "infineon,slb9645tt"; + reg = <0x20>; + }; + }; + + hdmi_ddc: i2c@0,7000c700 { + status = "okay"; + clock-frequency = <100000>; + }; + + i2c@0,7000d000 { + status = "okay"; + clock-frequency = <400000>; + + pmic: pmic@40 { + compatible = "ams,as3722"; + reg = <0x40>; + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; + + ams,system-power-controller; + + #interrupt-cells = <2>; + interrupt-controller; + + gpio-controller; + #gpio-cells = <2>; + + pinctrl-names = "default"; + pinctrl-0 = <&as3722_default>; + + as3722_default: pinmux { + gpio0 { + pins = "gpio0"; + function = "gpio"; + bias-pull-down; + }; + + gpio1 { + pins = "gpio1"; + function = "gpio"; + bias-pull-up; + }; + + gpio2_4_7 { + pins = "gpio2", "gpio4", "gpio7"; + function = "gpio"; + bias-pull-up; + }; + + gpio3_6 { + pins = "gpio3", "gpio6"; + bias-high-impedance; + }; + + gpio5 { + pins = "gpio5"; + function = "clk32k-out"; + bias-pull-down; + }; + }; + + regulators { + vsup-sd2-supply = <&vdd_5v0_sys>; + vsup-sd3-supply = <&vdd_5v0_sys>; + vsup-sd4-supply = <&vdd_5v0_sys>; + vsup-sd5-supply = <&vdd_5v0_sys>; + vin-ldo0-supply = <&vdd_1v35_lp0>; + vin-ldo1-6-supply = <&vdd_3v3_run>; + vin-ldo2-5-7-supply = <&vddio_1v8>; + vin-ldo3-4-supply = <&vdd_3v3_sys>; + vin-ldo9-10-supply = <&vdd_5v0_sys>; + vin-ldo11-supply = <&vdd_3v3_run>; + + sd0 { + regulator-name = "+VDD_CPU_AP"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1350000>; + regulator-min-microamp = <3500000>; + regulator-max-microamp = <3500000>; + regulator-always-on; + regulator-boot-on; + ams,ext-control = <2>; + }; + + sd1 { + regulator-name = "+VDD_CORE"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1350000>; + regulator-min-microamp = <2500000>; + regulator-max-microamp = <4000000>; + regulator-always-on; + regulator-boot-on; + ams,ext-control = <1>; + }; + + vdd_1v35_lp0: sd2 { + regulator-name = "+1.35V_LP0(sd2)"; + regulator-min-microvolt = <1350000>; + regulator-max-microvolt = <1350000>; + regulator-always-on; + regulator-boot-on; + }; + + sd3 { + regulator-name = "+1.35V_LP0(sd3)"; + regulator-min-microvolt = <1350000>; + regulator-max-microvolt = <1350000>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_1v05_run: sd4 { + regulator-name = "+1.05V_RUN"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + }; + + vddio_1v8: sd5 { + regulator-name = "+1.8V_VDDIO"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + + sd6 { + regulator-name = "+VDD_GPU_AP"; + regulator-min-microvolt = <650000>; + regulator-max-microvolt = <1200000>; + regulator-min-microamp = <3500000>; + regulator-max-microamp = <3500000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo0 { + regulator-name = "+1.05V_RUN_AVDD"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + regulator-boot-on; + regulator-always-on; + ams,ext-control = <1>; + }; + + ldo1 { + regulator-name = "+1.8V_RUN_CAM"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + ldo2 { + regulator-name = "+1.2V_GEN_AVDD"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo3 { + regulator-name = "+1.00V_LP0_VDD_RTC"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-boot-on; + regulator-always-on; + ams,enable-tracking; + }; + + vdd_run_cam: ldo4 { + regulator-name = "+3.3V_RUN_CAM"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; + + ldo5 { + regulator-name = "+1.2V_RUN_CAM_FRONT"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + }; + + vddio_sdmmc3: ldo6 { + regulator-name = "+VDDIO_SDMMC3"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + }; + + ldo7 { + regulator-name = "+1.05V_RUN_CAM_REAR"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + }; + + ldo9 { + regulator-name = "+2.8V_RUN_TOUCH"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; + + ldo10 { + regulator-name = "+2.8V_RUN_CAM_AF"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; + + ldo11 { + regulator-name = "+1.8V_RUN_VPP_FUSE"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + }; + }; + }; + + spi@0,7000d400 { + status = "okay"; + + cros_ec: cros-ec@0 { + compatible = "google,cros-ec-spi"; + spi-max-frequency = <3000000>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; + reg = <0>; + + google,cros-ec-spi-msg-delay = <2000>; + + i2c-tunnel { + compatible = "google,cros-ec-i2c-tunnel"; + #address-cells = <1>; + #size-cells = <0>; + + google,remote-bus = <0>; + + charger: bq24735@9 { + compatible = "ti,bq24735"; + reg = <0x9>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(J, 0) + GPIO_ACTIVE_HIGH>; + ti,ac-detect-gpios = <&gpio + TEGRA_GPIO(J, 0) + GPIO_ACTIVE_HIGH>; + }; + + battery: sbs-battery@b { + compatible = "sbs,sbs-battery"; + reg = <0xb>; + sbs,i2c-retry-count = <2>; + sbs,poll-retry-count = <10>; + power-supplies = <&charger>; + }; + }; + }; + }; + + spi@0,7000da00 { + status = "okay"; + spi-max-frequency = <25000000>; + + flash@0 { + compatible = "winbond,w25q32dw"; + reg = <0>; + }; + }; + + pmc@0,7000e400 { + nvidia,invert-interrupt; + nvidia,suspend-mode = <0>; + nvidia,cpu-pwr-good-time = <500>; + nvidia,cpu-pwr-off-time = <300>; + nvidia,core-pwr-good-time = <641 3845>; + nvidia,core-pwr-off-time = <61036>; + nvidia,core-power-req-active-high; + nvidia,sys-clock-req-active-high; + }; + + hda@0,70030000 { + status = "okay"; + }; + + sdhci@0,700b0000 { /* WiFi/BT on this bus */ + status = "okay"; + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; + bus-width = <4>; + no-1-8-v; + non-removable; + }; + + sdhci@0,700b0400 { /* SD Card on this bus */ + status = "okay"; + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; + bus-width = <4>; + no-1-8-v; + vqmmc-supply = <&vddio_sdmmc3>; + }; + + sdhci@0,700b0600 { /* eMMC on this bus */ + status = "okay"; + bus-width = <8>; + no-1-8-v; + non-removable; + }; + + ahub@0,70300000 { + i2s@0,70301100 { + status = "okay"; + }; + }; + + usb@0,7d000000 { /* Rear external USB port. */ + status = "okay"; + }; + + usb-phy@0,7d000000 { + status = "okay"; + vbus-supply = <&vdd_usb1_vbus>; + }; + + usb@0,7d004000 { /* Internal webcam. */ + status = "okay"; + }; + + usb-phy@0,7d004000 { + status = "okay"; + vbus-supply = <&vdd_run_cam>; + }; + + usb@0,7d008000 { /* Left external USB port. */ + status = "okay"; + }; + + usb-phy@0,7d008000 { + status = "okay"; + vbus-supply = <&vdd_usb3_vbus>; + }; + + backlight: backlight { + compatible = "pwm-backlight"; + + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; + power-supply = <&vdd_led>; + pwms = <&pwm 1 1000000>; + + default-brightness-level = <224>; + brightness-levels = + < 0 1 2 3 4 5 6 7 + 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 + 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 + 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 + 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 + 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 + 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 + 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 + 120 121 122 123 124 125 126 127 + 128 129 130 131 132 133 134 135 + 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 + 152 153 154 155 156 157 158 159 + 160 161 162 163 164 165 166 167 + 168 169 170 171 172 173 174 175 + 176 177 178 179 180 181 182 183 + 184 185 186 187 188 189 190 191 + 192 193 194 195 196 197 198 199 + 200 201 202 203 204 205 206 207 + 208 209 210 211 212 213 214 215 + 216 217 218 219 220 221 222 223 + 224 225 226 227 228 229 230 231 + 232 233 234 235 236 237 238 239 + 240 241 242 243 244 245 246 247 + 248 249 250 251 252 253 254 255 + 256>; + }; + + clocks { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <0>; + + clk32k_in: clock@0 { + compatible = "fixed-clock"; + reg = <0>; + #clock-cells = <0>; + clock-frequency = <32768>; + }; + }; + + gpio-keys { + compatible = "gpio-keys"; + + lid { + label = "Lid"; + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; + linux,input-type = <5>; + linux,code = <KEY_RESERVED>; + debounce-interval = <1>; + gpio-key,wakeup; + }; + + power { + label = "Power"; + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; + linux,code = <KEY_POWER>; + debounce-interval = <30>; + gpio-key,wakeup; + }; + }; + + panel: panel { + compatible = "auo,b133xtn01"; + + backlight = <&backlight>; + ddc-i2c-bus = <&dpaux>; + }; + + regulators { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <0>; + + vdd_mux: regulator@0 { + compatible = "regulator-fixed"; + reg = <0>; + regulator-name = "+VDD_MUX"; + regulator-min-microvolt = <12000000>; + regulator-max-microvolt = <12000000>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_5v0_sys: regulator@1 { + compatible = "regulator-fixed"; + reg = <1>; + regulator-name = "+5V_SYS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-always-on; + regulator-boot-on; + vin-supply = <&vdd_mux>; + }; + + vdd_3v3_sys: regulator@2 { + compatible = "regulator-fixed"; + reg = <2>; + regulator-name = "+3.3V_SYS"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + regulator-boot-on; + vin-supply = <&vdd_mux>; + }; + + vdd_3v3_run: regulator@3 { + compatible = "regulator-fixed"; + reg = <3>; + regulator-name = "+3.3V_RUN"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + regulator-boot-on; + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_3v3_sys>; + }; + + vdd_3v3_hdmi: regulator@4 { + compatible = "regulator-fixed"; + reg = <4>; + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vdd_3v3_run>; + }; + + vdd_led: regulator@5 { + compatible = "regulator-fixed"; + reg = <5>; + regulator-name = "+VDD_LED"; + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_mux>; + }; + + vdd_5v0_ts: regulator@6 { + compatible = "regulator-fixed"; + reg = <6>; + regulator-name = "+5V_VDD_TS_SW"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-boot-on; + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_5v0_sys>; + }; + + vdd_usb1_vbus: regulator@7 { + compatible = "regulator-fixed"; + reg = <7>; + regulator-name = "+5V_USB_HS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; + enable-active-high; + gpio-open-drain; + vin-supply = <&vdd_5v0_sys>; + }; + + vdd_usb3_vbus: regulator@8 { + compatible = "regulator-fixed"; + reg = <8>; + regulator-name = "+5V_USB_SS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; + enable-active-high; + gpio-open-drain; + vin-supply = <&vdd_5v0_sys>; + }; + + vdd_3v3_panel: regulator@9 { + compatible = "regulator-fixed"; + reg = <9>; + regulator-name = "+3.3V_PANEL"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_3v3_run>; + }; + + vdd_3v3_lp0: regulator@10 { + compatible = "regulator-fixed"; + reg = <10>; + regulator-name = "+3.3V_LP0"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + /* + * TODO: find a way to wire this up with the USB EHCI + * controllers so that it can be enabled on demand. + */ + regulator-always-on; + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_3v3_sys>; + }; + + vdd_hdmi_pll: regulator@11 { + compatible = "regulator-fixed"; + reg = <11>; + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; + vin-supply = <&vdd_1v05_run>; + }; + + vdd_5v0_hdmi: regulator@12 { + compatible = "regulator-fixed"; + reg = <12>; + regulator-name = "+5V_HDMI_CON"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_5v0_sys>; + }; + }; + + sound { + compatible = "nvidia,tegra-audio-max98090-nyan-big", + "nvidia,tegra-audio-max98090"; + + nvidia,audio-routing = + "Headphones", "HPR", + "Headphones", "HPL", + "Speakers", "SPKR", + "Speakers", "SPKL", + "Mic Jack", "MICBIAS", + "DMICL", "Int Mic", + "DMICR", "Int Mic", + "IN34", "Mic Jack"; + + nvidia,i2s-controller = <&tegra_i2s1>; + nvidia,audio-codec = <&acodec>; + + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, + <&tegra_car TEGRA124_CLK_EXTERN1>; + clock-names = "pll_a", "pll_a_out0", "mclk"; + + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; + }; +}; + +#include "cros-ec-keyboard.dtsi" -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-arm-kernel In preparation for adding the DT for the nyan-blaze board. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ 2 files changed, 1136 insertions(+), 1128 deletions(-) create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 4752572..2041077 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -1,1137 +1,12 @@ /dts-v1/; -#include <dt-bindings/input/input.h> -#include "tegra124.dtsi" +#include "tegra124-nyan.dtsi" / { model = "Acer Chromebook 13 CB5-311"; - compatible = "google,nyan-big", "nvidia,tegra124"; - - aliases { - rtc0 = "/i2c at 0,7000d000/pmic at 40"; - rtc1 = "/rtc at 0,7000e000"; - serial0 = &uarta; - }; - - memory { - reg = <0x0 0x80000000 0x0 0x80000000>; - }; - - host1x at 0,50000000 { - hdmi at 0,54280000 { - status = "okay"; - - vdd-supply = <&vdd_3v3_hdmi>; - pll-supply = <&vdd_hdmi_pll>; - hdmi-supply = <&vdd_5v0_hdmi>; - - nvidia,ddc-i2c-bus = <&hdmi_ddc>; - nvidia,hpd-gpio = - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; - }; - - sor at 0,54540000 { - status = "okay"; - - nvidia,dpaux = <&dpaux>; - nvidia,panel = <&panel>; - }; - - dpaux at 0,545c0000 { - vdd-supply = <&vdd_3v3_panel>; - status = "okay"; - }; - }; - - pinmux at 0,70000868 { - pinctrl-names = "boot"; - pinctrl-0 = <&pinmux_boot>; - - pinmux_boot: common { - dap_mclk1_pw4 { - nvidia,pins = "dap_mclk1_pw4"; - nvidia,function = "extperiph1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - dap2_din_pa4 { - nvidia,pins = "dap2_din_pa4"; - nvidia,function = "i2s1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - dap2_dout_pa5 { - nvidia,pins = "dap2_dout_pa5", - "dap2_fs_pa2", - "dap2_sclk_pa3"; - nvidia,function = "i2s1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - dvfs_pwm_px0 { - nvidia,pins = "dvfs_pwm_px0", - "dvfs_clk_px2"; - nvidia,function = "cldvfs"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ulpi_clk_py0 { - nvidia,pins = "ulpi_clk_py0", - "ulpi_nxt_py2", - "ulpi_stp_py3"; - nvidia,function = "spi1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ulpi_dir_py1 { - nvidia,pins = "ulpi_dir_py1"; - nvidia,function = "spi1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - cam_i2c_scl_pbb1 { - nvidia,pins = "cam_i2c_scl_pbb1", - "cam_i2c_sda_pbb2"; - nvidia,function = "i2c3"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - gen2_i2c_scl_pt5 { - nvidia,pins = "gen2_i2c_scl_pt5", - "gen2_i2c_sda_pt6"; - nvidia,function = "i2c2"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - pg4 { - nvidia,pins = "pg4", - "pg5", - "pg6", - "pi3"; - nvidia,function = "spi4"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pg7 { - nvidia,pins = "pg7"; - nvidia,function = "spi4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ph1 { - nvidia,pins = "ph1"; - nvidia,function = "pwm1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pk0 { - nvidia,pins = "pk0", - "kb_row15_ps7", - "clk_32k_out_pa0"; - nvidia,function = "soc"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - sdmmc1_clk_pz0 { - nvidia,pins = "sdmmc1_clk_pz0"; - nvidia,function = "sdmmc1"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc1_cmd_pz1 { - nvidia,pins = "sdmmc1_cmd_pz1", - "sdmmc1_dat0_py7", - "sdmmc1_dat1_py6", - "sdmmc1_dat2_py5", - "sdmmc1_dat3_py4"; - nvidia,function = "sdmmc1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc3_clk_pa6 { - nvidia,pins = "sdmmc3_clk_pa6"; - nvidia,function = "sdmmc3"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc3_cmd_pa7 { - nvidia,pins = "sdmmc3_cmd_pa7", - "sdmmc3_dat0_pb7", - "sdmmc3_dat1_pb6", - "sdmmc3_dat2_pb5", - "sdmmc3_dat3_pb4", - "kb_col4_pq4", - "sdmmc3_clk_lb_out_pee4", - "sdmmc3_clk_lb_in_pee5", - "sdmmc3_cd_n_pv2"; - nvidia,function = "sdmmc3"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc4_clk_pcc4 { - nvidia,pins = "sdmmc4_clk_pcc4"; - nvidia,function = "sdmmc4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - sdmmc4_cmd_pt7 { - nvidia,pins = "sdmmc4_cmd_pt7", - "sdmmc4_dat0_paa0", - "sdmmc4_dat1_paa1", - "sdmmc4_dat2_paa2", - "sdmmc4_dat3_paa3", - "sdmmc4_dat4_paa4", - "sdmmc4_dat5_paa5", - "sdmmc4_dat6_paa6", - "sdmmc4_dat7_paa7"; - nvidia,function = "sdmmc4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pwr_i2c_scl_pz6 { - nvidia,pins = "pwr_i2c_scl_pz6", - "pwr_i2c_sda_pz7"; - nvidia,function = "i2cpwr"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - jtag_rtck { - nvidia,pins = "jtag_rtck"; - nvidia,function = "rtck"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - clk_32k_in { - nvidia,pins = "clk_32k_in"; - nvidia,function = "clk"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - core_pwr_req { - nvidia,pins = "core_pwr_req"; - nvidia,function = "pwron"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - cpu_pwr_req { - nvidia,pins = "cpu_pwr_req"; - nvidia,function = "cpu"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - pwr_int_n { - nvidia,pins = "pwr_int_n"; - nvidia,function = "pmi"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - reset_out_n { - nvidia,pins = "reset_out_n"; - nvidia,function = "reset_out_n"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - clk3_out_pee0 { - nvidia,pins = "clk3_out_pee0"; - nvidia,function = "extperiph3"; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - gen1_i2c_sda_pc5 { - nvidia,pins = "gen1_i2c_sda_pc5", - "gen1_i2c_scl_pc4"; - nvidia,function = "i2c1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - hdmi_cec_pee3 { - nvidia,pins = "hdmi_cec_pee3"; - nvidia,function = "cec"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_DISABLE>; - }; - hdmi_int_pn7 { - nvidia,pins = "hdmi_int_pn7"; - nvidia,function = "rsvd1"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - }; - ddc_scl_pv4 { - nvidia,pins = "ddc_scl_pv4", - "ddc_sda_pv5"; - nvidia,function = "i2c4"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; - }; - kb_row10_ps2 { - nvidia,pins = "kb_row10_ps2"; - nvidia,function = "uarta"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - kb_row9_ps1 { - nvidia,pins = "kb_row9_ps1"; - nvidia,function = "uarta"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - usb_vbus_en0_pn4 { - nvidia,pins = "usb_vbus_en0_pn4", - "usb_vbus_en1_pn5"; - nvidia,function = "usb"; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,lock = <TEGRA_PIN_DISABLE>; - nvidia,open-drain = <TEGRA_PIN_ENABLE>; - }; - drive_sdio1 { - nvidia,pins = "drive_sdio1"; - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; - nvidia,schmitt = <TEGRA_PIN_DISABLE>; - nvidia,pull-down-strength = <36>; - nvidia,pull-up-strength = <20>; - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; - }; - drive_sdio3 { - nvidia,pins = "drive_sdio3"; - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; - nvidia,schmitt = <TEGRA_PIN_DISABLE>; - nvidia,pull-down-strength = <22>; - nvidia,pull-up-strength = <36>; - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; - }; - drive_gma { - nvidia,pins = "drive_gma"; - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; - nvidia,schmitt = <TEGRA_PIN_DISABLE>; - nvidia,pull-down-strength = <2>; - nvidia,pull-up-strength = <1>; - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; - nvidia,drive-type = <1>; - }; - codec_irq_l { - nvidia,pins = "ph4"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - lcd_bl_en { - nvidia,pins = "ph2"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - touch_irq_l { - nvidia,pins = "gpio_w3_aud_pw3"; - nvidia,function = "spi6"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - tpm_davint_l { - nvidia,pins = "ph6"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - ts_irq_l { - nvidia,pins = "pk2"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - ts_reset_l { - nvidia,pins = "pk4"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - ts_shdn_l { - nvidia,pins = "pk1"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - ph7 { - nvidia,pins = "ph7"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - kb_col0_ap { - nvidia,pins = "kb_col0_pq0"; - nvidia,function = "rsvd4"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - lid_open { - nvidia,pins = "kb_row4_pr4"; - nvidia,function = "rsvd3"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - en_vdd_sd { - nvidia,pins = "kb_row0_pr0"; - nvidia,function = "rsvd4"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - ac_ok { - nvidia,pins = "pj0"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - sensor_irq_l { - nvidia,pins = "pi6"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - wifi_en { - nvidia,pins = "gpio_x7_aud_px7"; - nvidia,function = "rsvd4"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - en_vdd_bl { - nvidia,pins = "dap3_dout_pp2"; - nvidia,function = "i2s2"; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - en_vdd_hdmi { - nvidia,pins = "spdif_in_pk6"; - nvidia,function = "spdif"; - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - soc_warm_reset_l { - nvidia,pins = "pi5"; - nvidia,function = "gmi"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_DISABLE>; - }; - hp_det_l { - nvidia,pins = "pi7"; - nvidia,function = "rsvd1"; - nvidia,pull = <TEGRA_PIN_PULL_NONE>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - mic_det_l { - nvidia,pins = "kb_row7_pr7"; - nvidia,function = "rsvd2"; - nvidia,pull = <TEGRA_PIN_PULL_UP>; - nvidia,tristate = <TEGRA_PIN_DISABLE>; - nvidia,enable-input = <TEGRA_PIN_ENABLE>; - }; - }; - }; - - serial at 0,70006000 { - /* Debug connector on the bottom of the board near SD card. */ - status = "okay"; - }; - - pwm at 0,7000a000 { - status = "okay"; - }; - - i2c at 0,7000c000 { - status = "okay"; - clock-frequency = <100000>; - - acodec: audio-codec at 10 { - compatible = "maxim,max98090"; - reg = <0x10>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; - }; - - temperature-sensor at 4c { - compatible = "ti,tmp451"; - reg = <0x4c>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; - - #thermal-sensor-cells = <1>; - }; - }; - - i2c at 0,7000c400 { - status = "okay"; - clock-frequency = <100000>; - }; - - i2c at 0,7000c500 { - status = "okay"; - clock-frequency = <400000>; - - tpm at 20 { - compatible = "infineon,slb9645tt"; - reg = <0x20>; - }; - }; - - hdmi_ddc: i2c at 0,7000c700 { - status = "okay"; - clock-frequency = <100000>; - }; - - i2c at 0,7000d000 { - status = "okay"; - clock-frequency = <400000>; - - pmic: pmic at 40 { - compatible = "ams,as3722"; - reg = <0x40>; - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; - - ams,system-power-controller; - - #interrupt-cells = <2>; - interrupt-controller; - - gpio-controller; - #gpio-cells = <2>; - - pinctrl-names = "default"; - pinctrl-0 = <&as3722_default>; - - as3722_default: pinmux { - gpio0 { - pins = "gpio0"; - function = "gpio"; - bias-pull-down; - }; - - gpio1 { - pins = "gpio1"; - function = "gpio"; - bias-pull-up; - }; - - gpio2_4_7 { - pins = "gpio2", "gpio4", "gpio7"; - function = "gpio"; - bias-pull-up; - }; - - gpio3_6 { - pins = "gpio3", "gpio6"; - bias-high-impedance; - }; - - gpio5 { - pins = "gpio5"; - function = "clk32k-out"; - bias-pull-down; - }; - }; - - regulators { - vsup-sd2-supply = <&vdd_5v0_sys>; - vsup-sd3-supply = <&vdd_5v0_sys>; - vsup-sd4-supply = <&vdd_5v0_sys>; - vsup-sd5-supply = <&vdd_5v0_sys>; - vin-ldo0-supply = <&vdd_1v35_lp0>; - vin-ldo1-6-supply = <&vdd_3v3_run>; - vin-ldo2-5-7-supply = <&vddio_1v8>; - vin-ldo3-4-supply = <&vdd_3v3_sys>; - vin-ldo9-10-supply = <&vdd_5v0_sys>; - vin-ldo11-supply = <&vdd_3v3_run>; - - sd0 { - regulator-name = "+VDD_CPU_AP"; - regulator-min-microvolt = <700000>; - regulator-max-microvolt = <1350000>; - regulator-min-microamp = <3500000>; - regulator-max-microamp = <3500000>; - regulator-always-on; - regulator-boot-on; - ams,ext-control = <2>; - }; - - sd1 { - regulator-name = "+VDD_CORE"; - regulator-min-microvolt = <700000>; - regulator-max-microvolt = <1350000>; - regulator-min-microamp = <2500000>; - regulator-max-microamp = <4000000>; - regulator-always-on; - regulator-boot-on; - ams,ext-control = <1>; - }; - - vdd_1v35_lp0: sd2 { - regulator-name = "+1.35V_LP0(sd2)"; - regulator-min-microvolt = <1350000>; - regulator-max-microvolt = <1350000>; - regulator-always-on; - regulator-boot-on; - }; - - sd3 { - regulator-name = "+1.35V_LP0(sd3)"; - regulator-min-microvolt = <1350000>; - regulator-max-microvolt = <1350000>; - regulator-always-on; - regulator-boot-on; - }; - - vdd_1v05_run: sd4 { - regulator-name = "+1.05V_RUN"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - }; - - vddio_1v8: sd5 { - regulator-name = "+1.8V_VDDIO"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-boot-on; - regulator-always-on; - }; - - sd6 { - regulator-name = "+VDD_GPU_AP"; - regulator-min-microvolt = <650000>; - regulator-max-microvolt = <1200000>; - regulator-min-microamp = <3500000>; - regulator-max-microamp = <3500000>; - regulator-boot-on; - regulator-always-on; - }; - - ldo0 { - regulator-name = "+1.05V_RUN_AVDD"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - regulator-boot-on; - regulator-always-on; - ams,ext-control = <1>; - }; - - ldo1 { - regulator-name = "+1.8V_RUN_CAM"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - - ldo2 { - regulator-name = "+1.2V_GEN_AVDD"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - regulator-boot-on; - regulator-always-on; - }; - - ldo3 { - regulator-name = "+1.00V_LP0_VDD_RTC"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <1000000>; - regulator-boot-on; - regulator-always-on; - ams,enable-tracking; - }; - - vdd_run_cam: ldo4 { - regulator-name = "+3.3V_RUN_CAM"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo5 { - regulator-name = "+1.2V_RUN_CAM_FRONT"; - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1200000>; - }; - - vddio_sdmmc3: ldo6 { - regulator-name = "+VDDIO_SDMMC3"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <3300000>; - }; - - ldo7 { - regulator-name = "+1.05V_RUN_CAM_REAR"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - }; - - ldo9 { - regulator-name = "+2.8V_RUN_TOUCH"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo10 { - regulator-name = "+2.8V_RUN_CAM_AF"; - regulator-min-microvolt = <2800000>; - regulator-max-microvolt = <2800000>; - }; - - ldo11 { - regulator-name = "+1.8V_RUN_VPP_FUSE"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - }; - }; - }; - }; - - spi at 0,7000d400 { - status = "okay"; - - cros_ec: cros-ec at 0 { - compatible = "google,cros-ec-spi"; - spi-max-frequency = <3000000>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; - reg = <0>; - - google,cros-ec-spi-msg-delay = <2000>; - - i2c-tunnel { - compatible = "google,cros-ec-i2c-tunnel"; - #address-cells = <1>; - #size-cells = <0>; - - google,remote-bus = <0>; - - charger: bq24735 at 9 { - compatible = "ti,bq24735"; - reg = <0x9>; - interrupt-parent = <&gpio>; - interrupts = <TEGRA_GPIO(J, 0) - GPIO_ACTIVE_HIGH>; - ti,ac-detect-gpios = <&gpio - TEGRA_GPIO(J, 0) - GPIO_ACTIVE_HIGH>; - }; - - battery: sbs-battery at b { - compatible = "sbs,sbs-battery"; - reg = <0xb>; - sbs,i2c-retry-count = <2>; - sbs,poll-retry-count = <10>; - power-supplies = <&charger>; - }; - }; - }; - }; - - spi at 0,7000da00 { - status = "okay"; - spi-max-frequency = <25000000>; - - flash at 0 { - compatible = "winbond,w25q32dw"; - reg = <0>; - }; - }; - - pmc at 0,7000e400 { - nvidia,invert-interrupt; - nvidia,suspend-mode = <0>; - nvidia,cpu-pwr-good-time = <500>; - nvidia,cpu-pwr-off-time = <300>; - nvidia,core-pwr-good-time = <641 3845>; - nvidia,core-pwr-off-time = <61036>; - nvidia,core-power-req-active-high; - nvidia,sys-clock-req-active-high; - }; - - hda at 0,70030000 { - status = "okay"; - }; - - sdhci at 0,700b0000 { /* WiFi/BT on this bus */ - status = "okay"; - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; - bus-width = <4>; - no-1-8-v; - non-removable; - }; - - sdhci at 0,700b0400 { /* SD Card on this bus */ - status = "okay"; - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; - bus-width = <4>; - no-1-8-v; - vqmmc-supply = <&vddio_sdmmc3>; - }; - - sdhci at 0,700b0600 { /* eMMC on this bus */ - status = "okay"; - bus-width = <8>; - no-1-8-v; - non-removable; - }; - - ahub at 0,70300000 { - i2s at 0,70301100 { - status = "okay"; - }; - }; - - usb at 0,7d000000 { /* Rear external USB port. */ - status = "okay"; - }; - - usb-phy at 0,7d000000 { - status = "okay"; - vbus-supply = <&vdd_usb1_vbus>; - }; - - usb at 0,7d004000 { /* Internal webcam. */ - status = "okay"; - }; - - usb-phy at 0,7d004000 { - status = "okay"; - vbus-supply = <&vdd_run_cam>; - }; - - usb at 0,7d008000 { /* Left external USB port. */ - status = "okay"; - }; - - usb-phy at 0,7d008000 { - status = "okay"; - vbus-supply = <&vdd_usb3_vbus>; - }; - - backlight: backlight { - compatible = "pwm-backlight"; - - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; - power-supply = <&vdd_led>; - pwms = <&pwm 1 1000000>; - - default-brightness-level = <224>; - brightness-levels = - < 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255 - 256>; - }; - - clocks { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - clk32k_in: clock at 0 { - compatible = "fixed-clock"; - reg = <0>; - #clock-cells = <0>; - clock-frequency = <32768>; - }; - }; - - gpio-keys { - compatible = "gpio-keys"; - - lid { - label = "Lid"; - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; - linux,input-type = <5>; - linux,code = <KEY_RESERVED>; - debounce-interval = <1>; - gpio-key,wakeup; - }; - - power { - label = "Power"; - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; - linux,code = <KEY_POWER>; - debounce-interval = <30>; - gpio-key,wakeup; - }; - }; - - panel: panel { - compatible = "auo,b133xtn01"; - - backlight = <&backlight>; - ddc-i2c-bus = <&dpaux>; - }; - - regulators { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - vdd_mux: regulator at 0 { - compatible = "regulator-fixed"; - reg = <0>; - regulator-name = "+VDD_MUX"; - regulator-min-microvolt = <12000000>; - regulator-max-microvolt = <12000000>; - regulator-always-on; - regulator-boot-on; - }; - - vdd_5v0_sys: regulator at 1 { - compatible = "regulator-fixed"; - reg = <1>; - regulator-name = "+5V_SYS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-always-on; - regulator-boot-on; - vin-supply = <&vdd_mux>; - }; - - vdd_3v3_sys: regulator at 2 { - compatible = "regulator-fixed"; - reg = <2>; - regulator-name = "+3.3V_SYS"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - regulator-boot-on; - vin-supply = <&vdd_mux>; - }; - - vdd_3v3_run: regulator at 3 { - compatible = "regulator-fixed"; - reg = <3>; - regulator-name = "+3.3V_RUN"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - regulator-boot-on; - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_3v3_sys>; - }; - - vdd_3v3_hdmi: regulator at 4 { - compatible = "regulator-fixed"; - reg = <4>; - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - vin-supply = <&vdd_3v3_run>; - }; - - vdd_led: regulator at 5 { - compatible = "regulator-fixed"; - reg = <5>; - regulator-name = "+VDD_LED"; - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_mux>; - }; - - vdd_5v0_ts: regulator at 6 { - compatible = "regulator-fixed"; - reg = <6>; - regulator-name = "+5V_VDD_TS_SW"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-boot-on; - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_5v0_sys>; - }; - - vdd_usb1_vbus: regulator at 7 { - compatible = "regulator-fixed"; - reg = <7>; - regulator-name = "+5V_USB_HS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; - enable-active-high; - gpio-open-drain; - vin-supply = <&vdd_5v0_sys>; - }; - - vdd_usb3_vbus: regulator at 8 { - compatible = "regulator-fixed"; - reg = <8>; - regulator-name = "+5V_USB_SS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; - enable-active-high; - gpio-open-drain; - vin-supply = <&vdd_5v0_sys>; - }; - - vdd_3v3_panel: regulator at 9 { - compatible = "regulator-fixed"; - reg = <9>; - regulator-name = "+3.3V_PANEL"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_3v3_run>; - }; - - vdd_3v3_lp0: regulator at 10 { - compatible = "regulator-fixed"; - reg = <10>; - regulator-name = "+3.3V_LP0"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - /* - * TODO: find a way to wire this up with the USB EHCI - * controllers so that it can be enabled on demand. - */ - regulator-always-on; - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_3v3_sys>; - }; - - vdd_hdmi_pll: regulator at 11 { - compatible = "regulator-fixed"; - reg = <11>; - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; - regulator-min-microvolt = <1050000>; - regulator-max-microvolt = <1050000>; - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; - vin-supply = <&vdd_1v05_run>; - }; - - vdd_5v0_hdmi: regulator at 12 { - compatible = "regulator-fixed"; - reg = <12>; - regulator-name = "+5V_HDMI_CON"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; - enable-active-high; - vin-supply = <&vdd_5v0_sys>; - }; - }; + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; sound { - compatible = "nvidia,tegra-audio-max98090-nyan-big", - "nvidia,tegra-audio-max98090"; - nvidia,model = "Acer Chromebook 13"; - - nvidia,audio-routing = - "Headphones", "HPR", - "Headphones", "HPL", - "Speakers", "SPKR", - "Speakers", "SPKL", - "Mic Jack", "MICBIAS", - "DMICL", "Int Mic", - "DMICR", "Int Mic", - "IN34", "Mic Jack"; - - nvidia,i2s-controller = <&tegra_i2s1>; - nvidia,audio-codec = <&acodec>; - - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, - <&tegra_car TEGRA124_CLK_EXTERN1>; - clock-names = "pll_a", "pll_a_out0", "mclk"; - - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; + nvidia,model = "Acer Chromebook 13 CB5-311"; }; }; - -#include "cros-ec-keyboard.dtsi" diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi new file mode 100644 index 0000000..4c68658 --- /dev/null +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi @@ -0,0 +1,1133 @@ +#include <dt-bindings/input/input.h> +#include "tegra124.dtsi" + +/ { + compatible = "google,nyan", "nvidia,tegra124"; + + aliases { + rtc0 = "/i2c at 0,7000d000/pmic at 40"; + rtc1 = "/rtc at 0,7000e000"; + serial0 = &uarta; + }; + + memory { + reg = <0x0 0x80000000 0x0 0x80000000>; + }; + + host1x at 0,50000000 { + hdmi at 0,54280000 { + status = "okay"; + + vdd-supply = <&vdd_3v3_hdmi>; + pll-supply = <&vdd_hdmi_pll>; + hdmi-supply = <&vdd_5v0_hdmi>; + + nvidia,ddc-i2c-bus = <&hdmi_ddc>; + nvidia,hpd-gpio = + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; + }; + + sor at 0,54540000 { + status = "okay"; + + nvidia,dpaux = <&dpaux>; + nvidia,panel = <&panel>; + }; + + dpaux at 0,545c0000 { + vdd-supply = <&vdd_3v3_panel>; + status = "okay"; + }; + }; + + pinmux at 0,70000868 { + pinctrl-names = "boot"; + pinctrl-0 = <&pinmux_boot>; + + pinmux_boot: common { + dap_mclk1_pw4 { + nvidia,pins = "dap_mclk1_pw4"; + nvidia,function = "extperiph1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + dap2_din_pa4 { + nvidia,pins = "dap2_din_pa4"; + nvidia,function = "i2s1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + dap2_dout_pa5 { + nvidia,pins = "dap2_dout_pa5", + "dap2_fs_pa2", + "dap2_sclk_pa3"; + nvidia,function = "i2s1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + dvfs_pwm_px0 { + nvidia,pins = "dvfs_pwm_px0", + "dvfs_clk_px2"; + nvidia,function = "cldvfs"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ulpi_clk_py0 { + nvidia,pins = "ulpi_clk_py0", + "ulpi_nxt_py2", + "ulpi_stp_py3"; + nvidia,function = "spi1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ulpi_dir_py1 { + nvidia,pins = "ulpi_dir_py1"; + nvidia,function = "spi1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + cam_i2c_scl_pbb1 { + nvidia,pins = "cam_i2c_scl_pbb1", + "cam_i2c_sda_pbb2"; + nvidia,function = "i2c3"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + gen2_i2c_scl_pt5 { + nvidia,pins = "gen2_i2c_scl_pt5", + "gen2_i2c_sda_pt6"; + nvidia,function = "i2c2"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + pg4 { + nvidia,pins = "pg4", + "pg5", + "pg6", + "pi3"; + nvidia,function = "spi4"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pg7 { + nvidia,pins = "pg7"; + nvidia,function = "spi4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ph1 { + nvidia,pins = "ph1"; + nvidia,function = "pwm1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pk0 { + nvidia,pins = "pk0", + "kb_row15_ps7", + "clk_32k_out_pa0"; + nvidia,function = "soc"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + sdmmc1_clk_pz0 { + nvidia,pins = "sdmmc1_clk_pz0"; + nvidia,function = "sdmmc1"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc1_cmd_pz1 { + nvidia,pins = "sdmmc1_cmd_pz1", + "sdmmc1_dat0_py7", + "sdmmc1_dat1_py6", + "sdmmc1_dat2_py5", + "sdmmc1_dat3_py4"; + nvidia,function = "sdmmc1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc3_clk_pa6 { + nvidia,pins = "sdmmc3_clk_pa6"; + nvidia,function = "sdmmc3"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc3_cmd_pa7 { + nvidia,pins = "sdmmc3_cmd_pa7", + "sdmmc3_dat0_pb7", + "sdmmc3_dat1_pb6", + "sdmmc3_dat2_pb5", + "sdmmc3_dat3_pb4", + "kb_col4_pq4", + "sdmmc3_clk_lb_out_pee4", + "sdmmc3_clk_lb_in_pee5", + "sdmmc3_cd_n_pv2"; + nvidia,function = "sdmmc3"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc4_clk_pcc4 { + nvidia,pins = "sdmmc4_clk_pcc4"; + nvidia,function = "sdmmc4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + sdmmc4_cmd_pt7 { + nvidia,pins = "sdmmc4_cmd_pt7", + "sdmmc4_dat0_paa0", + "sdmmc4_dat1_paa1", + "sdmmc4_dat2_paa2", + "sdmmc4_dat3_paa3", + "sdmmc4_dat4_paa4", + "sdmmc4_dat5_paa5", + "sdmmc4_dat6_paa6", + "sdmmc4_dat7_paa7"; + nvidia,function = "sdmmc4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pwr_i2c_scl_pz6 { + nvidia,pins = "pwr_i2c_scl_pz6", + "pwr_i2c_sda_pz7"; + nvidia,function = "i2cpwr"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + jtag_rtck { + nvidia,pins = "jtag_rtck"; + nvidia,function = "rtck"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + clk_32k_in { + nvidia,pins = "clk_32k_in"; + nvidia,function = "clk"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + core_pwr_req { + nvidia,pins = "core_pwr_req"; + nvidia,function = "pwron"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + cpu_pwr_req { + nvidia,pins = "cpu_pwr_req"; + nvidia,function = "cpu"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + pwr_int_n { + nvidia,pins = "pwr_int_n"; + nvidia,function = "pmi"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + reset_out_n { + nvidia,pins = "reset_out_n"; + nvidia,function = "reset_out_n"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + clk3_out_pee0 { + nvidia,pins = "clk3_out_pee0"; + nvidia,function = "extperiph3"; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + gen1_i2c_sda_pc5 { + nvidia,pins = "gen1_i2c_sda_pc5", + "gen1_i2c_scl_pc4"; + nvidia,function = "i2c1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + hdmi_cec_pee3 { + nvidia,pins = "hdmi_cec_pee3"; + nvidia,function = "cec"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_DISABLE>; + }; + hdmi_int_pn7 { + nvidia,pins = "hdmi_int_pn7"; + nvidia,function = "rsvd1"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + }; + ddc_scl_pv4 { + nvidia,pins = "ddc_scl_pv4", + "ddc_sda_pv5"; + nvidia,function = "i2c4"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; + }; + kb_row10_ps2 { + nvidia,pins = "kb_row10_ps2"; + nvidia,function = "uarta"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + kb_row9_ps1 { + nvidia,pins = "kb_row9_ps1"; + nvidia,function = "uarta"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + usb_vbus_en0_pn4 { + nvidia,pins = "usb_vbus_en0_pn4", + "usb_vbus_en1_pn5"; + nvidia,function = "usb"; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,lock = <TEGRA_PIN_DISABLE>; + nvidia,open-drain = <TEGRA_PIN_ENABLE>; + }; + drive_sdio1 { + nvidia,pins = "drive_sdio1"; + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; + nvidia,schmitt = <TEGRA_PIN_DISABLE>; + nvidia,pull-down-strength = <36>; + nvidia,pull-up-strength = <20>; + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; + }; + drive_sdio3 { + nvidia,pins = "drive_sdio3"; + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; + nvidia,schmitt = <TEGRA_PIN_DISABLE>; + nvidia,pull-down-strength = <22>; + nvidia,pull-up-strength = <36>; + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; + }; + drive_gma { + nvidia,pins = "drive_gma"; + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; + nvidia,schmitt = <TEGRA_PIN_DISABLE>; + nvidia,pull-down-strength = <2>; + nvidia,pull-up-strength = <1>; + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; + nvidia,drive-type = <1>; + }; + codec_irq_l { + nvidia,pins = "ph4"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + lcd_bl_en { + nvidia,pins = "ph2"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + touch_irq_l { + nvidia,pins = "gpio_w3_aud_pw3"; + nvidia,function = "spi6"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + tpm_davint_l { + nvidia,pins = "ph6"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + ts_irq_l { + nvidia,pins = "pk2"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + ts_reset_l { + nvidia,pins = "pk4"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + ts_shdn_l { + nvidia,pins = "pk1"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + ph7 { + nvidia,pins = "ph7"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + kb_col0_ap { + nvidia,pins = "kb_col0_pq0"; + nvidia,function = "rsvd4"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + lid_open { + nvidia,pins = "kb_row4_pr4"; + nvidia,function = "rsvd3"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + en_vdd_sd { + nvidia,pins = "kb_row0_pr0"; + nvidia,function = "rsvd4"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + ac_ok { + nvidia,pins = "pj0"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + sensor_irq_l { + nvidia,pins = "pi6"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + wifi_en { + nvidia,pins = "gpio_x7_aud_px7"; + nvidia,function = "rsvd4"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + en_vdd_bl { + nvidia,pins = "dap3_dout_pp2"; + nvidia,function = "i2s2"; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + en_vdd_hdmi { + nvidia,pins = "spdif_in_pk6"; + nvidia,function = "spdif"; + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + soc_warm_reset_l { + nvidia,pins = "pi5"; + nvidia,function = "gmi"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_DISABLE>; + }; + hp_det_l { + nvidia,pins = "pi7"; + nvidia,function = "rsvd1"; + nvidia,pull = <TEGRA_PIN_PULL_NONE>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + mic_det_l { + nvidia,pins = "kb_row7_pr7"; + nvidia,function = "rsvd2"; + nvidia,pull = <TEGRA_PIN_PULL_UP>; + nvidia,tristate = <TEGRA_PIN_DISABLE>; + nvidia,enable-input = <TEGRA_PIN_ENABLE>; + }; + }; + }; + + serial at 0,70006000 { + /* Debug connector on the bottom of the board near SD card. */ + status = "okay"; + }; + + pwm at 0,7000a000 { + status = "okay"; + }; + + i2c at 0,7000c000 { + status = "okay"; + clock-frequency = <100000>; + + acodec: audio-codec at 10 { + compatible = "maxim,max98090"; + reg = <0x10>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; + }; + + temperature-sensor at 4c { + compatible = "ti,tmp451"; + reg = <0x4c>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; + + #thermal-sensor-cells = <1>; + }; + }; + + i2c at 0,7000c400 { + status = "okay"; + clock-frequency = <100000>; + }; + + i2c at 0,7000c500 { + status = "okay"; + clock-frequency = <400000>; + + tpm at 20 { + compatible = "infineon,slb9645tt"; + reg = <0x20>; + }; + }; + + hdmi_ddc: i2c at 0,7000c700 { + status = "okay"; + clock-frequency = <100000>; + }; + + i2c at 0,7000d000 { + status = "okay"; + clock-frequency = <400000>; + + pmic: pmic at 40 { + compatible = "ams,as3722"; + reg = <0x40>; + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; + + ams,system-power-controller; + + #interrupt-cells = <2>; + interrupt-controller; + + gpio-controller; + #gpio-cells = <2>; + + pinctrl-names = "default"; + pinctrl-0 = <&as3722_default>; + + as3722_default: pinmux { + gpio0 { + pins = "gpio0"; + function = "gpio"; + bias-pull-down; + }; + + gpio1 { + pins = "gpio1"; + function = "gpio"; + bias-pull-up; + }; + + gpio2_4_7 { + pins = "gpio2", "gpio4", "gpio7"; + function = "gpio"; + bias-pull-up; + }; + + gpio3_6 { + pins = "gpio3", "gpio6"; + bias-high-impedance; + }; + + gpio5 { + pins = "gpio5"; + function = "clk32k-out"; + bias-pull-down; + }; + }; + + regulators { + vsup-sd2-supply = <&vdd_5v0_sys>; + vsup-sd3-supply = <&vdd_5v0_sys>; + vsup-sd4-supply = <&vdd_5v0_sys>; + vsup-sd5-supply = <&vdd_5v0_sys>; + vin-ldo0-supply = <&vdd_1v35_lp0>; + vin-ldo1-6-supply = <&vdd_3v3_run>; + vin-ldo2-5-7-supply = <&vddio_1v8>; + vin-ldo3-4-supply = <&vdd_3v3_sys>; + vin-ldo9-10-supply = <&vdd_5v0_sys>; + vin-ldo11-supply = <&vdd_3v3_run>; + + sd0 { + regulator-name = "+VDD_CPU_AP"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1350000>; + regulator-min-microamp = <3500000>; + regulator-max-microamp = <3500000>; + regulator-always-on; + regulator-boot-on; + ams,ext-control = <2>; + }; + + sd1 { + regulator-name = "+VDD_CORE"; + regulator-min-microvolt = <700000>; + regulator-max-microvolt = <1350000>; + regulator-min-microamp = <2500000>; + regulator-max-microamp = <4000000>; + regulator-always-on; + regulator-boot-on; + ams,ext-control = <1>; + }; + + vdd_1v35_lp0: sd2 { + regulator-name = "+1.35V_LP0(sd2)"; + regulator-min-microvolt = <1350000>; + regulator-max-microvolt = <1350000>; + regulator-always-on; + regulator-boot-on; + }; + + sd3 { + regulator-name = "+1.35V_LP0(sd3)"; + regulator-min-microvolt = <1350000>; + regulator-max-microvolt = <1350000>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_1v05_run: sd4 { + regulator-name = "+1.05V_RUN"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + }; + + vddio_1v8: sd5 { + regulator-name = "+1.8V_VDDIO"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + + sd6 { + regulator-name = "+VDD_GPU_AP"; + regulator-min-microvolt = <650000>; + regulator-max-microvolt = <1200000>; + regulator-min-microamp = <3500000>; + regulator-max-microamp = <3500000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo0 { + regulator-name = "+1.05V_RUN_AVDD"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + regulator-boot-on; + regulator-always-on; + ams,ext-control = <1>; + }; + + ldo1 { + regulator-name = "+1.8V_RUN_CAM"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + + ldo2 { + regulator-name = "+1.2V_GEN_AVDD"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + regulator-boot-on; + regulator-always-on; + }; + + ldo3 { + regulator-name = "+1.00V_LP0_VDD_RTC"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1000000>; + regulator-boot-on; + regulator-always-on; + ams,enable-tracking; + }; + + vdd_run_cam: ldo4 { + regulator-name = "+3.3V_RUN_CAM"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; + + ldo5 { + regulator-name = "+1.2V_RUN_CAM_FRONT"; + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; + }; + + vddio_sdmmc3: ldo6 { + regulator-name = "+VDDIO_SDMMC3"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + }; + + ldo7 { + regulator-name = "+1.05V_RUN_CAM_REAR"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + }; + + ldo9 { + regulator-name = "+2.8V_RUN_TOUCH"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; + + ldo10 { + regulator-name = "+2.8V_RUN_CAM_AF"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + }; + + ldo11 { + regulator-name = "+1.8V_RUN_VPP_FUSE"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + }; + }; + }; + }; + + spi at 0,7000d400 { + status = "okay"; + + cros_ec: cros-ec at 0 { + compatible = "google,cros-ec-spi"; + spi-max-frequency = <3000000>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; + reg = <0>; + + google,cros-ec-spi-msg-delay = <2000>; + + i2c-tunnel { + compatible = "google,cros-ec-i2c-tunnel"; + #address-cells = <1>; + #size-cells = <0>; + + google,remote-bus = <0>; + + charger: bq24735 at 9 { + compatible = "ti,bq24735"; + reg = <0x9>; + interrupt-parent = <&gpio>; + interrupts = <TEGRA_GPIO(J, 0) + GPIO_ACTIVE_HIGH>; + ti,ac-detect-gpios = <&gpio + TEGRA_GPIO(J, 0) + GPIO_ACTIVE_HIGH>; + }; + + battery: sbs-battery at b { + compatible = "sbs,sbs-battery"; + reg = <0xb>; + sbs,i2c-retry-count = <2>; + sbs,poll-retry-count = <10>; + power-supplies = <&charger>; + }; + }; + }; + }; + + spi at 0,7000da00 { + status = "okay"; + spi-max-frequency = <25000000>; + + flash at 0 { + compatible = "winbond,w25q32dw"; + reg = <0>; + }; + }; + + pmc at 0,7000e400 { + nvidia,invert-interrupt; + nvidia,suspend-mode = <0>; + nvidia,cpu-pwr-good-time = <500>; + nvidia,cpu-pwr-off-time = <300>; + nvidia,core-pwr-good-time = <641 3845>; + nvidia,core-pwr-off-time = <61036>; + nvidia,core-power-req-active-high; + nvidia,sys-clock-req-active-high; + }; + + hda at 0,70030000 { + status = "okay"; + }; + + sdhci at 0,700b0000 { /* WiFi/BT on this bus */ + status = "okay"; + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; + bus-width = <4>; + no-1-8-v; + non-removable; + }; + + sdhci at 0,700b0400 { /* SD Card on this bus */ + status = "okay"; + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; + bus-width = <4>; + no-1-8-v; + vqmmc-supply = <&vddio_sdmmc3>; + }; + + sdhci at 0,700b0600 { /* eMMC on this bus */ + status = "okay"; + bus-width = <8>; + no-1-8-v; + non-removable; + }; + + ahub at 0,70300000 { + i2s at 0,70301100 { + status = "okay"; + }; + }; + + usb at 0,7d000000 { /* Rear external USB port. */ + status = "okay"; + }; + + usb-phy at 0,7d000000 { + status = "okay"; + vbus-supply = <&vdd_usb1_vbus>; + }; + + usb at 0,7d004000 { /* Internal webcam. */ + status = "okay"; + }; + + usb-phy at 0,7d004000 { + status = "okay"; + vbus-supply = <&vdd_run_cam>; + }; + + usb at 0,7d008000 { /* Left external USB port. */ + status = "okay"; + }; + + usb-phy at 0,7d008000 { + status = "okay"; + vbus-supply = <&vdd_usb3_vbus>; + }; + + backlight: backlight { + compatible = "pwm-backlight"; + + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; + power-supply = <&vdd_led>; + pwms = <&pwm 1 1000000>; + + default-brightness-level = <224>; + brightness-levels = + < 0 1 2 3 4 5 6 7 + 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 + 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 + 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 + 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 + 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 + 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 + 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 + 120 121 122 123 124 125 126 127 + 128 129 130 131 132 133 134 135 + 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 + 152 153 154 155 156 157 158 159 + 160 161 162 163 164 165 166 167 + 168 169 170 171 172 173 174 175 + 176 177 178 179 180 181 182 183 + 184 185 186 187 188 189 190 191 + 192 193 194 195 196 197 198 199 + 200 201 202 203 204 205 206 207 + 208 209 210 211 212 213 214 215 + 216 217 218 219 220 221 222 223 + 224 225 226 227 228 229 230 231 + 232 233 234 235 236 237 238 239 + 240 241 242 243 244 245 246 247 + 248 249 250 251 252 253 254 255 + 256>; + }; + + clocks { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <0>; + + clk32k_in: clock at 0 { + compatible = "fixed-clock"; + reg = <0>; + #clock-cells = <0>; + clock-frequency = <32768>; + }; + }; + + gpio-keys { + compatible = "gpio-keys"; + + lid { + label = "Lid"; + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; + linux,input-type = <5>; + linux,code = <KEY_RESERVED>; + debounce-interval = <1>; + gpio-key,wakeup; + }; + + power { + label = "Power"; + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; + linux,code = <KEY_POWER>; + debounce-interval = <30>; + gpio-key,wakeup; + }; + }; + + panel: panel { + compatible = "auo,b133xtn01"; + + backlight = <&backlight>; + ddc-i2c-bus = <&dpaux>; + }; + + regulators { + compatible = "simple-bus"; + #address-cells = <1>; + #size-cells = <0>; + + vdd_mux: regulator at 0 { + compatible = "regulator-fixed"; + reg = <0>; + regulator-name = "+VDD_MUX"; + regulator-min-microvolt = <12000000>; + regulator-max-microvolt = <12000000>; + regulator-always-on; + regulator-boot-on; + }; + + vdd_5v0_sys: regulator at 1 { + compatible = "regulator-fixed"; + reg = <1>; + regulator-name = "+5V_SYS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-always-on; + regulator-boot-on; + vin-supply = <&vdd_mux>; + }; + + vdd_3v3_sys: regulator at 2 { + compatible = "regulator-fixed"; + reg = <2>; + regulator-name = "+3.3V_SYS"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + regulator-boot-on; + vin-supply = <&vdd_mux>; + }; + + vdd_3v3_run: regulator at 3 { + compatible = "regulator-fixed"; + reg = <3>; + regulator-name = "+3.3V_RUN"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + regulator-boot-on; + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_3v3_sys>; + }; + + vdd_3v3_hdmi: regulator at 4 { + compatible = "regulator-fixed"; + reg = <4>; + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vdd_3v3_run>; + }; + + vdd_led: regulator at 5 { + compatible = "regulator-fixed"; + reg = <5>; + regulator-name = "+VDD_LED"; + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_mux>; + }; + + vdd_5v0_ts: regulator at 6 { + compatible = "regulator-fixed"; + reg = <6>; + regulator-name = "+5V_VDD_TS_SW"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-boot-on; + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_5v0_sys>; + }; + + vdd_usb1_vbus: regulator at 7 { + compatible = "regulator-fixed"; + reg = <7>; + regulator-name = "+5V_USB_HS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; + enable-active-high; + gpio-open-drain; + vin-supply = <&vdd_5v0_sys>; + }; + + vdd_usb3_vbus: regulator at 8 { + compatible = "regulator-fixed"; + reg = <8>; + regulator-name = "+5V_USB_SS"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; + enable-active-high; + gpio-open-drain; + vin-supply = <&vdd_5v0_sys>; + }; + + vdd_3v3_panel: regulator at 9 { + compatible = "regulator-fixed"; + reg = <9>; + regulator-name = "+3.3V_PANEL"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_3v3_run>; + }; + + vdd_3v3_lp0: regulator at 10 { + compatible = "regulator-fixed"; + reg = <10>; + regulator-name = "+3.3V_LP0"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + /* + * TODO: find a way to wire this up with the USB EHCI + * controllers so that it can be enabled on demand. + */ + regulator-always-on; + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_3v3_sys>; + }; + + vdd_hdmi_pll: regulator at 11 { + compatible = "regulator-fixed"; + reg = <11>; + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; + regulator-min-microvolt = <1050000>; + regulator-max-microvolt = <1050000>; + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; + vin-supply = <&vdd_1v05_run>; + }; + + vdd_5v0_hdmi: regulator at 12 { + compatible = "regulator-fixed"; + reg = <12>; + regulator-name = "+5V_HDMI_CON"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; + enable-active-high; + vin-supply = <&vdd_5v0_sys>; + }; + }; + + sound { + compatible = "nvidia,tegra-audio-max98090-nyan-big", + "nvidia,tegra-audio-max98090"; + + nvidia,audio-routing = + "Headphones", "HPR", + "Headphones", "HPL", + "Speakers", "SPKR", + "Speakers", "SPKL", + "Mic Jack", "MICBIAS", + "DMICL", "Int Mic", + "DMICR", "Int Mic", + "IN34", "Mic Jack"; + + nvidia,i2s-controller = <&tegra_i2s1>; + nvidia,audio-codec = <&acodec>; + + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, + <&tegra_car TEGRA124_CLK_EXTERN1>; + clock-names = "pll_a", "pll_a_out0", "mclk"; + + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; + }; +}; + +#include "cros-ec-keyboard.dtsi" -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
[parent not found: <1420540653-14816-3-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>]
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT 2015-01-06 10:37 ` Tomeu Vizoso (?) @ 2015-01-06 13:06 ` Thierry Reding -1 siblings, 0 replies; 41+ messages in thread From: Thierry Reding @ 2015-01-06 13:06 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, Dylan Reid, Olof Johansson, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA [-- Attachment #1: Type: text/plain, Size: 70312 bytes --] Cc'ing Dylan and Olof. I've verified that the resulting nyan-big DTB after this series is exactly the same as before (well, except where changes were made on purpose), but I'd like an Ack from either of you regarding the split into the nyan DTS include. Quoting the full patch for Dylan and Olof, one comment below (near the bottom). On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- > arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ > 2 files changed, 1136 insertions(+), 1128 deletions(-) > create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi > > diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts > index 4752572..2041077 100644 > --- a/arch/arm/boot/dts/tegra124-nyan-big.dts > +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts > @@ -1,1137 +1,12 @@ > /dts-v1/; > > -#include <dt-bindings/input/input.h> > -#include "tegra124.dtsi" > +#include "tegra124-nyan.dtsi" > > / { > model = "Acer Chromebook 13 CB5-311"; > - compatible = "google,nyan-big", "nvidia,tegra124"; > - > - aliases { > - rtc0 = "/i2c@0,7000d000/pmic@40"; > - rtc1 = "/rtc@0,7000e000"; > - serial0 = &uarta; > - }; > - > - memory { > - reg = <0x0 0x80000000 0x0 0x80000000>; > - }; > - > - host1x@0,50000000 { > - hdmi@0,54280000 { > - status = "okay"; > - > - vdd-supply = <&vdd_3v3_hdmi>; > - pll-supply = <&vdd_hdmi_pll>; > - hdmi-supply = <&vdd_5v0_hdmi>; > - > - nvidia,ddc-i2c-bus = <&hdmi_ddc>; > - nvidia,hpd-gpio = > - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > - }; > - > - sor@0,54540000 { > - status = "okay"; > - > - nvidia,dpaux = <&dpaux>; > - nvidia,panel = <&panel>; > - }; > - > - dpaux@0,545c0000 { > - vdd-supply = <&vdd_3v3_panel>; > - status = "okay"; > - }; > - }; > - > - pinmux@0,70000868 { > - pinctrl-names = "boot"; > - pinctrl-0 = <&pinmux_boot>; > - > - pinmux_boot: common { > - dap_mclk1_pw4 { > - nvidia,pins = "dap_mclk1_pw4"; > - nvidia,function = "extperiph1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_din_pa4 { > - nvidia,pins = "dap2_din_pa4"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_dout_pa5 { > - nvidia,pins = "dap2_dout_pa5", > - "dap2_fs_pa2", > - "dap2_sclk_pa3"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dvfs_pwm_px0 { > - nvidia,pins = "dvfs_pwm_px0", > - "dvfs_clk_px2"; > - nvidia,function = "cldvfs"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_clk_py0 { > - nvidia,pins = "ulpi_clk_py0", > - "ulpi_nxt_py2", > - "ulpi_stp_py3"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_dir_py1 { > - nvidia,pins = "ulpi_dir_py1"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cam_i2c_scl_pbb1 { > - nvidia,pins = "cam_i2c_scl_pbb1", > - "cam_i2c_sda_pbb2"; > - nvidia,function = "i2c3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - gen2_i2c_scl_pt5 { > - nvidia,pins = "gen2_i2c_scl_pt5", > - "gen2_i2c_sda_pt6"; > - nvidia,function = "i2c2"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - pg4 { > - nvidia,pins = "pg4", > - "pg5", > - "pg6", > - "pi3"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pg7 { > - nvidia,pins = "pg7"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ph1 { > - nvidia,pins = "ph1"; > - nvidia,function = "pwm1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pk0 { > - nvidia,pins = "pk0", > - "kb_row15_ps7", > - "clk_32k_out_pa0"; > - nvidia,function = "soc"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sdmmc1_clk_pz0 { > - nvidia,pins = "sdmmc1_clk_pz0"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc1_cmd_pz1 { > - nvidia,pins = "sdmmc1_cmd_pz1", > - "sdmmc1_dat0_py7", > - "sdmmc1_dat1_py6", > - "sdmmc1_dat2_py5", > - "sdmmc1_dat3_py4"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_clk_pa6 { > - nvidia,pins = "sdmmc3_clk_pa6"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_cmd_pa7 { > - nvidia,pins = "sdmmc3_cmd_pa7", > - "sdmmc3_dat0_pb7", > - "sdmmc3_dat1_pb6", > - "sdmmc3_dat2_pb5", > - "sdmmc3_dat3_pb4", > - "kb_col4_pq4", > - "sdmmc3_clk_lb_out_pee4", > - "sdmmc3_clk_lb_in_pee5", > - "sdmmc3_cd_n_pv2"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_clk_pcc4 { > - nvidia,pins = "sdmmc4_clk_pcc4"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_cmd_pt7 { > - nvidia,pins = "sdmmc4_cmd_pt7", > - "sdmmc4_dat0_paa0", > - "sdmmc4_dat1_paa1", > - "sdmmc4_dat2_paa2", > - "sdmmc4_dat3_paa3", > - "sdmmc4_dat4_paa4", > - "sdmmc4_dat5_paa5", > - "sdmmc4_dat6_paa6", > - "sdmmc4_dat7_paa7"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_i2c_scl_pz6 { > - nvidia,pins = "pwr_i2c_scl_pz6", > - "pwr_i2c_sda_pz7"; > - nvidia,function = "i2cpwr"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - jtag_rtck { > - nvidia,pins = "jtag_rtck"; > - nvidia,function = "rtck"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk_32k_in { > - nvidia,pins = "clk_32k_in"; > - nvidia,function = "clk"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - core_pwr_req { > - nvidia,pins = "core_pwr_req"; > - nvidia,function = "pwron"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cpu_pwr_req { > - nvidia,pins = "cpu_pwr_req"; > - nvidia,function = "cpu"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_int_n { > - nvidia,pins = "pwr_int_n"; > - nvidia,function = "pmi"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - reset_out_n { > - nvidia,pins = "reset_out_n"; > - nvidia,function = "reset_out_n"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk3_out_pee0 { > - nvidia,pins = "clk3_out_pee0"; > - nvidia,function = "extperiph3"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - gen1_i2c_sda_pc5 { > - nvidia,pins = "gen1_i2c_sda_pc5", > - "gen1_i2c_scl_pc4"; > - nvidia,function = "i2c1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - hdmi_cec_pee3 { > - nvidia,pins = "hdmi_cec_pee3"; > - nvidia,function = "cec"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_DISABLE>; > - }; > - hdmi_int_pn7 { > - nvidia,pins = "hdmi_int_pn7"; > - nvidia,function = "rsvd1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ddc_scl_pv4 { > - nvidia,pins = "ddc_scl_pv4", > - "ddc_sda_pv5"; > - nvidia,function = "i2c4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > - }; > - kb_row10_ps2 { > - nvidia,pins = "kb_row10_ps2"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_row9_ps1 { > - nvidia,pins = "kb_row9_ps1"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - usb_vbus_en0_pn4 { > - nvidia,pins = "usb_vbus_en0_pn4", > - "usb_vbus_en1_pn5"; > - nvidia,function = "usb"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - drive_sdio1 { > - nvidia,pins = "drive_sdio1"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <36>; > - nvidia,pull-up-strength = <20>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > - }; > - drive_sdio3 { > - nvidia,pins = "drive_sdio3"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <22>; > - nvidia,pull-up-strength = <36>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - }; > - drive_gma { > - nvidia,pins = "drive_gma"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <2>; > - nvidia,pull-up-strength = <1>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,drive-type = <1>; > - }; > - codec_irq_l { > - nvidia,pins = "ph4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lcd_bl_en { > - nvidia,pins = "ph2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - touch_irq_l { > - nvidia,pins = "gpio_w3_aud_pw3"; > - nvidia,function = "spi6"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - tpm_davint_l { > - nvidia,pins = "ph6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_irq_l { > - nvidia,pins = "pk2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_reset_l { > - nvidia,pins = "pk4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ts_shdn_l { > - nvidia,pins = "pk1"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ph7 { > - nvidia,pins = "ph7"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_col0_ap { > - nvidia,pins = "kb_col0_pq0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lid_open { > - nvidia,pins = "kb_row4_pr4"; > - nvidia,function = "rsvd3"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - en_vdd_sd { > - nvidia,pins = "kb_row0_pr0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ac_ok { > - nvidia,pins = "pj0"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sensor_irq_l { > - nvidia,pins = "pi6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - wifi_en { > - nvidia,pins = "gpio_x7_aud_px7"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_bl { > - nvidia,pins = "dap3_dout_pp2"; > - nvidia,function = "i2s2"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_hdmi { > - nvidia,pins = "spdif_in_pk6"; > - nvidia,function = "spdif"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - soc_warm_reset_l { > - nvidia,pins = "pi5"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - hp_det_l { > - nvidia,pins = "pi7"; > - nvidia,function = "rsvd1"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - mic_det_l { > - nvidia,pins = "kb_row7_pr7"; > - nvidia,function = "rsvd2"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - }; > - }; > - > - serial@0,70006000 { > - /* Debug connector on the bottom of the board near SD card. */ > - status = "okay"; > - }; > - > - pwm@0,7000a000 { > - status = "okay"; > - }; > - > - i2c@0,7000c000 { > - status = "okay"; > - clock-frequency = <100000>; > - > - acodec: audio-codec@10 { > - compatible = "maxim,max98090"; > - reg = <0x10>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > - }; > - > - temperature-sensor@4c { > - compatible = "ti,tmp451"; > - reg = <0x4c>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > - > - #thermal-sensor-cells = <1>; > - }; > - }; > - > - i2c@0,7000c400 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000c500 { > - status = "okay"; > - clock-frequency = <400000>; > - > - tpm@20 { > - compatible = "infineon,slb9645tt"; > - reg = <0x20>; > - }; > - }; > - > - hdmi_ddc: i2c@0,7000c700 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000d000 { > - status = "okay"; > - clock-frequency = <400000>; > - > - pmic: pmic@40 { > - compatible = "ams,as3722"; > - reg = <0x40>; > - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > - > - ams,system-power-controller; > - > - #interrupt-cells = <2>; > - interrupt-controller; > - > - gpio-controller; > - #gpio-cells = <2>; > - > - pinctrl-names = "default"; > - pinctrl-0 = <&as3722_default>; > - > - as3722_default: pinmux { > - gpio0 { > - pins = "gpio0"; > - function = "gpio"; > - bias-pull-down; > - }; > - > - gpio1 { > - pins = "gpio1"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio2_4_7 { > - pins = "gpio2", "gpio4", "gpio7"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio3_6 { > - pins = "gpio3", "gpio6"; > - bias-high-impedance; > - }; > - > - gpio5 { > - pins = "gpio5"; > - function = "clk32k-out"; > - bias-pull-down; > - }; > - }; > - > - regulators { > - vsup-sd2-supply = <&vdd_5v0_sys>; > - vsup-sd3-supply = <&vdd_5v0_sys>; > - vsup-sd4-supply = <&vdd_5v0_sys>; > - vsup-sd5-supply = <&vdd_5v0_sys>; > - vin-ldo0-supply = <&vdd_1v35_lp0>; > - vin-ldo1-6-supply = <&vdd_3v3_run>; > - vin-ldo2-5-7-supply = <&vddio_1v8>; > - vin-ldo3-4-supply = <&vdd_3v3_sys>; > - vin-ldo9-10-supply = <&vdd_5v0_sys>; > - vin-ldo11-supply = <&vdd_3v3_run>; > - > - sd0 { > - regulator-name = "+VDD_CPU_AP"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <2>; > - }; > - > - sd1 { > - regulator-name = "+VDD_CORE"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <2500000>; > - regulator-max-microamp = <4000000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <1>; > - }; > - > - vdd_1v35_lp0: sd2 { > - regulator-name = "+1.35V_LP0(sd2)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - sd3 { > - regulator-name = "+1.35V_LP0(sd3)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_1v05_run: sd4 { > - regulator-name = "+1.05V_RUN"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - vddio_1v8: sd5 { > - regulator-name = "+1.8V_VDDIO"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - sd6 { > - regulator-name = "+VDD_GPU_AP"; > - regulator-min-microvolt = <650000>; > - regulator-max-microvolt = <1200000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo0 { > - regulator-name = "+1.05V_RUN_AVDD"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - regulator-boot-on; > - regulator-always-on; > - ams,ext-control = <1>; > - }; > - > - ldo1 { > - regulator-name = "+1.8V_RUN_CAM"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - > - ldo2 { > - regulator-name = "+1.2V_GEN_AVDD"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo3 { > - regulator-name = "+1.00V_LP0_VDD_RTC"; > - regulator-min-microvolt = <1000000>; > - regulator-max-microvolt = <1000000>; > - regulator-boot-on; > - regulator-always-on; > - ams,enable-tracking; > - }; > - > - vdd_run_cam: ldo4 { > - regulator-name = "+3.3V_RUN_CAM"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo5 { > - regulator-name = "+1.2V_RUN_CAM_FRONT"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - }; > - > - vddio_sdmmc3: ldo6 { > - regulator-name = "+VDDIO_SDMMC3"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <3300000>; > - }; > - > - ldo7 { > - regulator-name = "+1.05V_RUN_CAM_REAR"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - ldo9 { > - regulator-name = "+2.8V_RUN_TOUCH"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo10 { > - regulator-name = "+2.8V_RUN_CAM_AF"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo11 { > - regulator-name = "+1.8V_RUN_VPP_FUSE"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - }; > - }; > - }; > - > - spi@0,7000d400 { > - status = "okay"; > - > - cros_ec: cros-ec@0 { > - compatible = "google,cros-ec-spi"; > - spi-max-frequency = <3000000>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > - reg = <0>; > - > - google,cros-ec-spi-msg-delay = <2000>; > - > - i2c-tunnel { > - compatible = "google,cros-ec-i2c-tunnel"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - google,remote-bus = <0>; > - > - charger: bq24735@9 { > - compatible = "ti,bq24735"; > - reg = <0x9>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - ti,ac-detect-gpios = <&gpio > - TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - }; > - > - battery: sbs-battery@b { > - compatible = "sbs,sbs-battery"; > - reg = <0xb>; > - sbs,i2c-retry-count = <2>; > - sbs,poll-retry-count = <10>; > - power-supplies = <&charger>; > - }; > - }; > - }; > - }; > - > - spi@0,7000da00 { > - status = "okay"; > - spi-max-frequency = <25000000>; > - > - flash@0 { > - compatible = "winbond,w25q32dw"; > - reg = <0>; > - }; > - }; > - > - pmc@0,7000e400 { > - nvidia,invert-interrupt; > - nvidia,suspend-mode = <0>; > - nvidia,cpu-pwr-good-time = <500>; > - nvidia,cpu-pwr-off-time = <300>; > - nvidia,core-pwr-good-time = <641 3845>; > - nvidia,core-pwr-off-time = <61036>; > - nvidia,core-power-req-active-high; > - nvidia,sys-clock-req-active-high; > - }; > - > - hda@0,70030000 { > - status = "okay"; > - }; > - > - sdhci@0,700b0000 { /* WiFi/BT on this bus */ > - status = "okay"; > - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > - bus-width = <4>; > - no-1-8-v; > - non-removable; > - }; > - > - sdhci@0,700b0400 { /* SD Card on this bus */ > - status = "okay"; > - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > - bus-width = <4>; > - no-1-8-v; > - vqmmc-supply = <&vddio_sdmmc3>; > - }; > - > - sdhci@0,700b0600 { /* eMMC on this bus */ > - status = "okay"; > - bus-width = <8>; > - no-1-8-v; > - non-removable; > - }; > - > - ahub@0,70300000 { > - i2s@0,70301100 { > - status = "okay"; > - }; > - }; > - > - usb@0,7d000000 { /* Rear external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d000000 { > - status = "okay"; > - vbus-supply = <&vdd_usb1_vbus>; > - }; > - > - usb@0,7d004000 { /* Internal webcam. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d004000 { > - status = "okay"; > - vbus-supply = <&vdd_run_cam>; > - }; > - > - usb@0,7d008000 { /* Left external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d008000 { > - status = "okay"; > - vbus-supply = <&vdd_usb3_vbus>; > - }; > - > - backlight: backlight { > - compatible = "pwm-backlight"; > - > - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > - power-supply = <&vdd_led>; > - pwms = <&pwm 1 1000000>; > - > - default-brightness-level = <224>; > - brightness-levels = > - < 0 1 2 3 4 5 6 7 > - 8 9 10 11 12 13 14 15 > - 16 17 18 19 20 21 22 23 > - 24 25 26 27 28 29 30 31 > - 32 33 34 35 36 37 38 39 > - 40 41 42 43 44 45 46 47 > - 48 49 50 51 52 53 54 55 > - 56 57 58 59 60 61 62 63 > - 64 65 66 67 68 69 70 71 > - 72 73 74 75 76 77 78 79 > - 80 81 82 83 84 85 86 87 > - 88 89 90 91 92 93 94 95 > - 96 97 98 99 100 101 102 103 > - 104 105 106 107 108 109 110 111 > - 112 113 114 115 116 117 118 119 > - 120 121 122 123 124 125 126 127 > - 128 129 130 131 132 133 134 135 > - 136 137 138 139 140 141 142 143 > - 144 145 146 147 148 149 150 151 > - 152 153 154 155 156 157 158 159 > - 160 161 162 163 164 165 166 167 > - 168 169 170 171 172 173 174 175 > - 176 177 178 179 180 181 182 183 > - 184 185 186 187 188 189 190 191 > - 192 193 194 195 196 197 198 199 > - 200 201 202 203 204 205 206 207 > - 208 209 210 211 212 213 214 215 > - 216 217 218 219 220 221 222 223 > - 224 225 226 227 228 229 230 231 > - 232 233 234 235 236 237 238 239 > - 240 241 242 243 244 245 246 247 > - 248 249 250 251 252 253 254 255 > - 256>; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - clk32k_in: clock@0 { > - compatible = "fixed-clock"; > - reg = <0>; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > - > - gpio-keys { > - compatible = "gpio-keys"; > - > - lid { > - label = "Lid"; > - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > - linux,input-type = <5>; > - linux,code = <KEY_RESERVED>; > - debounce-interval = <1>; > - gpio-key,wakeup; > - }; > - > - power { > - label = "Power"; > - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > - linux,code = <KEY_POWER>; > - debounce-interval = <30>; > - gpio-key,wakeup; > - }; > - }; > - > - panel: panel { > - compatible = "auo,b133xtn01"; > - > - backlight = <&backlight>; > - ddc-i2c-bus = <&dpaux>; > - }; > - > - regulators { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - vdd_mux: regulator@0 { > - compatible = "regulator-fixed"; > - reg = <0>; > - regulator-name = "+VDD_MUX"; > - regulator-min-microvolt = <12000000>; > - regulator-max-microvolt = <12000000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_5v0_sys: regulator@1 { > - compatible = "regulator-fixed"; > - reg = <1>; > - regulator-name = "+5V_SYS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_sys: regulator@2 { > - compatible = "regulator-fixed"; > - reg = <2>; > - regulator-name = "+3.3V_SYS"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_run: regulator@3 { > - compatible = "regulator-fixed"; > - reg = <3>; > - regulator-name = "+3.3V_RUN"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_3v3_hdmi: regulator@4 { > - compatible = "regulator-fixed"; > - reg = <4>; > - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_led: regulator@5 { > - compatible = "regulator-fixed"; > - reg = <5>; > - regulator-name = "+VDD_LED"; > - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_5v0_ts: regulator@6 { > - compatible = "regulator-fixed"; > - reg = <6>; > - regulator-name = "+5V_VDD_TS_SW"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-boot-on; > - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb1_vbus: regulator@7 { > - compatible = "regulator-fixed"; > - reg = <7>; > - regulator-name = "+5V_USB_HS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb3_vbus: regulator@8 { > - compatible = "regulator-fixed"; > - reg = <8>; > - regulator-name = "+5V_USB_SS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_3v3_panel: regulator@9 { > - compatible = "regulator-fixed"; > - reg = <9>; > - regulator-name = "+3.3V_PANEL"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_3v3_lp0: regulator@10 { > - compatible = "regulator-fixed"; > - reg = <10>; > - regulator-name = "+3.3V_LP0"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - /* > - * TODO: find a way to wire this up with the USB EHCI > - * controllers so that it can be enabled on demand. > - */ > - regulator-always-on; > - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_hdmi_pll: regulator@11 { > - compatible = "regulator-fixed"; > - reg = <11>; > - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > - vin-supply = <&vdd_1v05_run>; > - }; > - > - vdd_5v0_hdmi: regulator@12 { > - compatible = "regulator-fixed"; > - reg = <12>; > - regulator-name = "+5V_HDMI_CON"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - }; > + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; > > sound { > - compatible = "nvidia,tegra-audio-max98090-nyan-big", > - "nvidia,tegra-audio-max98090"; > - nvidia,model = "Acer Chromebook 13"; > - > - nvidia,audio-routing = > - "Headphones", "HPR", > - "Headphones", "HPL", > - "Speakers", "SPKR", > - "Speakers", "SPKL", > - "Mic Jack", "MICBIAS", > - "DMICL", "Int Mic", > - "DMICR", "Int Mic", > - "IN34", "Mic Jack"; > - > - nvidia,i2s-controller = <&tegra_i2s1>; > - nvidia,audio-codec = <&acodec>; > - > - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > - <&tegra_car TEGRA124_CLK_EXTERN1>; > - clock-names = "pll_a", "pll_a_out0", "mclk"; > - > - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + nvidia,model = "Acer Chromebook 13 CB5-311"; > }; > }; > - > -#include "cros-ec-keyboard.dtsi" > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi > new file mode 100644 > index 0000000..4c68658 > --- /dev/null > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi > @@ -0,0 +1,1133 @@ > +#include <dt-bindings/input/input.h> > +#include "tegra124.dtsi" > + > +/ { > + compatible = "google,nyan", "nvidia,tegra124"; > + > + aliases { > + rtc0 = "/i2c@0,7000d000/pmic@40"; > + rtc1 = "/rtc@0,7000e000"; > + serial0 = &uarta; > + }; > + > + memory { > + reg = <0x0 0x80000000 0x0 0x80000000>; > + }; > + > + host1x@0,50000000 { > + hdmi@0,54280000 { > + status = "okay"; > + > + vdd-supply = <&vdd_3v3_hdmi>; > + pll-supply = <&vdd_hdmi_pll>; > + hdmi-supply = <&vdd_5v0_hdmi>; > + > + nvidia,ddc-i2c-bus = <&hdmi_ddc>; > + nvidia,hpd-gpio = > + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > + }; > + > + sor@0,54540000 { > + status = "okay"; > + > + nvidia,dpaux = <&dpaux>; > + nvidia,panel = <&panel>; > + }; > + > + dpaux@0,545c0000 { > + vdd-supply = <&vdd_3v3_panel>; > + status = "okay"; > + }; > + }; > + > + pinmux@0,70000868 { > + pinctrl-names = "boot"; > + pinctrl-0 = <&pinmux_boot>; > + > + pinmux_boot: common { > + dap_mclk1_pw4 { > + nvidia,pins = "dap_mclk1_pw4"; > + nvidia,function = "extperiph1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_din_pa4 { > + nvidia,pins = "dap2_din_pa4"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_dout_pa5 { > + nvidia,pins = "dap2_dout_pa5", > + "dap2_fs_pa2", > + "dap2_sclk_pa3"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dvfs_pwm_px0 { > + nvidia,pins = "dvfs_pwm_px0", > + "dvfs_clk_px2"; > + nvidia,function = "cldvfs"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_clk_py0 { > + nvidia,pins = "ulpi_clk_py0", > + "ulpi_nxt_py2", > + "ulpi_stp_py3"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_dir_py1 { > + nvidia,pins = "ulpi_dir_py1"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cam_i2c_scl_pbb1 { > + nvidia,pins = "cam_i2c_scl_pbb1", > + "cam_i2c_sda_pbb2"; > + nvidia,function = "i2c3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + gen2_i2c_scl_pt5 { > + nvidia,pins = "gen2_i2c_scl_pt5", > + "gen2_i2c_sda_pt6"; > + nvidia,function = "i2c2"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + pg4 { > + nvidia,pins = "pg4", > + "pg5", > + "pg6", > + "pi3"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pg7 { > + nvidia,pins = "pg7"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ph1 { > + nvidia,pins = "ph1"; > + nvidia,function = "pwm1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pk0 { > + nvidia,pins = "pk0", > + "kb_row15_ps7", > + "clk_32k_out_pa0"; > + nvidia,function = "soc"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sdmmc1_clk_pz0 { > + nvidia,pins = "sdmmc1_clk_pz0"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc1_cmd_pz1 { > + nvidia,pins = "sdmmc1_cmd_pz1", > + "sdmmc1_dat0_py7", > + "sdmmc1_dat1_py6", > + "sdmmc1_dat2_py5", > + "sdmmc1_dat3_py4"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_clk_pa6 { > + nvidia,pins = "sdmmc3_clk_pa6"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_cmd_pa7 { > + nvidia,pins = "sdmmc3_cmd_pa7", > + "sdmmc3_dat0_pb7", > + "sdmmc3_dat1_pb6", > + "sdmmc3_dat2_pb5", > + "sdmmc3_dat3_pb4", > + "kb_col4_pq4", > + "sdmmc3_clk_lb_out_pee4", > + "sdmmc3_clk_lb_in_pee5", > + "sdmmc3_cd_n_pv2"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_clk_pcc4 { > + nvidia,pins = "sdmmc4_clk_pcc4"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_cmd_pt7 { > + nvidia,pins = "sdmmc4_cmd_pt7", > + "sdmmc4_dat0_paa0", > + "sdmmc4_dat1_paa1", > + "sdmmc4_dat2_paa2", > + "sdmmc4_dat3_paa3", > + "sdmmc4_dat4_paa4", > + "sdmmc4_dat5_paa5", > + "sdmmc4_dat6_paa6", > + "sdmmc4_dat7_paa7"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_i2c_scl_pz6 { > + nvidia,pins = "pwr_i2c_scl_pz6", > + "pwr_i2c_sda_pz7"; > + nvidia,function = "i2cpwr"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + jtag_rtck { > + nvidia,pins = "jtag_rtck"; > + nvidia,function = "rtck"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk_32k_in { > + nvidia,pins = "clk_32k_in"; > + nvidia,function = "clk"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + core_pwr_req { > + nvidia,pins = "core_pwr_req"; > + nvidia,function = "pwron"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cpu_pwr_req { > + nvidia,pins = "cpu_pwr_req"; > + nvidia,function = "cpu"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_int_n { > + nvidia,pins = "pwr_int_n"; > + nvidia,function = "pmi"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + reset_out_n { > + nvidia,pins = "reset_out_n"; > + nvidia,function = "reset_out_n"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk3_out_pee0 { > + nvidia,pins = "clk3_out_pee0"; > + nvidia,function = "extperiph3"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + gen1_i2c_sda_pc5 { > + nvidia,pins = "gen1_i2c_sda_pc5", > + "gen1_i2c_scl_pc4"; > + nvidia,function = "i2c1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + hdmi_cec_pee3 { > + nvidia,pins = "hdmi_cec_pee3"; > + nvidia,function = "cec"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_DISABLE>; > + }; > + hdmi_int_pn7 { > + nvidia,pins = "hdmi_int_pn7"; > + nvidia,function = "rsvd1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ddc_scl_pv4 { > + nvidia,pins = "ddc_scl_pv4", > + "ddc_sda_pv5"; > + nvidia,function = "i2c4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > + }; > + kb_row10_ps2 { > + nvidia,pins = "kb_row10_ps2"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_row9_ps1 { > + nvidia,pins = "kb_row9_ps1"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + usb_vbus_en0_pn4 { > + nvidia,pins = "usb_vbus_en0_pn4", > + "usb_vbus_en1_pn5"; > + nvidia,function = "usb"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + drive_sdio1 { > + nvidia,pins = "drive_sdio1"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <36>; > + nvidia,pull-up-strength = <20>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > + }; > + drive_sdio3 { > + nvidia,pins = "drive_sdio3"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <22>; > + nvidia,pull-up-strength = <36>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + }; > + drive_gma { > + nvidia,pins = "drive_gma"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <2>; > + nvidia,pull-up-strength = <1>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,drive-type = <1>; > + }; > + codec_irq_l { > + nvidia,pins = "ph4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lcd_bl_en { > + nvidia,pins = "ph2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + touch_irq_l { > + nvidia,pins = "gpio_w3_aud_pw3"; > + nvidia,function = "spi6"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + tpm_davint_l { > + nvidia,pins = "ph6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_irq_l { > + nvidia,pins = "pk2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_reset_l { > + nvidia,pins = "pk4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ts_shdn_l { > + nvidia,pins = "pk1"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ph7 { > + nvidia,pins = "ph7"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_col0_ap { > + nvidia,pins = "kb_col0_pq0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lid_open { > + nvidia,pins = "kb_row4_pr4"; > + nvidia,function = "rsvd3"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + en_vdd_sd { > + nvidia,pins = "kb_row0_pr0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ac_ok { > + nvidia,pins = "pj0"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sensor_irq_l { > + nvidia,pins = "pi6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + wifi_en { > + nvidia,pins = "gpio_x7_aud_px7"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_bl { > + nvidia,pins = "dap3_dout_pp2"; > + nvidia,function = "i2s2"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_hdmi { > + nvidia,pins = "spdif_in_pk6"; > + nvidia,function = "spdif"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + soc_warm_reset_l { > + nvidia,pins = "pi5"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + hp_det_l { > + nvidia,pins = "pi7"; > + nvidia,function = "rsvd1"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + mic_det_l { > + nvidia,pins = "kb_row7_pr7"; > + nvidia,function = "rsvd2"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + }; > + }; > + > + serial@0,70006000 { > + /* Debug connector on the bottom of the board near SD card. */ > + status = "okay"; > + }; > + > + pwm@0,7000a000 { > + status = "okay"; > + }; > + > + i2c@0,7000c000 { > + status = "okay"; > + clock-frequency = <100000>; > + > + acodec: audio-codec@10 { > + compatible = "maxim,max98090"; > + reg = <0x10>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > + }; > + > + temperature-sensor@4c { > + compatible = "ti,tmp451"; > + reg = <0x4c>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > + i2c@0,7000c400 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000c500 { > + status = "okay"; > + clock-frequency = <400000>; > + > + tpm@20 { > + compatible = "infineon,slb9645tt"; > + reg = <0x20>; > + }; > + }; > + > + hdmi_ddc: i2c@0,7000c700 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000d000 { > + status = "okay"; > + clock-frequency = <400000>; > + > + pmic: pmic@40 { > + compatible = "ams,as3722"; > + reg = <0x40>; > + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > + > + ams,system-power-controller; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&as3722_default>; > + > + as3722_default: pinmux { > + gpio0 { > + pins = "gpio0"; > + function = "gpio"; > + bias-pull-down; > + }; > + > + gpio1 { > + pins = "gpio1"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio2_4_7 { > + pins = "gpio2", "gpio4", "gpio7"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio3_6 { > + pins = "gpio3", "gpio6"; > + bias-high-impedance; > + }; > + > + gpio5 { > + pins = "gpio5"; > + function = "clk32k-out"; > + bias-pull-down; > + }; > + }; > + > + regulators { > + vsup-sd2-supply = <&vdd_5v0_sys>; > + vsup-sd3-supply = <&vdd_5v0_sys>; > + vsup-sd4-supply = <&vdd_5v0_sys>; > + vsup-sd5-supply = <&vdd_5v0_sys>; > + vin-ldo0-supply = <&vdd_1v35_lp0>; > + vin-ldo1-6-supply = <&vdd_3v3_run>; > + vin-ldo2-5-7-supply = <&vddio_1v8>; > + vin-ldo3-4-supply = <&vdd_3v3_sys>; > + vin-ldo9-10-supply = <&vdd_5v0_sys>; > + vin-ldo11-supply = <&vdd_3v3_run>; > + > + sd0 { > + regulator-name = "+VDD_CPU_AP"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <2>; > + }; > + > + sd1 { > + regulator-name = "+VDD_CORE"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <2500000>; > + regulator-max-microamp = <4000000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <1>; > + }; > + > + vdd_1v35_lp0: sd2 { > + regulator-name = "+1.35V_LP0(sd2)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + sd3 { > + regulator-name = "+1.35V_LP0(sd3)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_1v05_run: sd4 { > + regulator-name = "+1.05V_RUN"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + vddio_1v8: sd5 { > + regulator-name = "+1.8V_VDDIO"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sd6 { > + regulator-name = "+VDD_GPU_AP"; > + regulator-min-microvolt = <650000>; > + regulator-max-microvolt = <1200000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo0 { > + regulator-name = "+1.05V_RUN_AVDD"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + regulator-boot-on; > + regulator-always-on; > + ams,ext-control = <1>; > + }; > + > + ldo1 { > + regulator-name = "+1.8V_RUN_CAM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo2 { > + regulator-name = "+1.2V_GEN_AVDD"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3 { > + regulator-name = "+1.00V_LP0_VDD_RTC"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1000000>; > + regulator-boot-on; > + regulator-always-on; > + ams,enable-tracking; > + }; > + > + vdd_run_cam: ldo4 { > + regulator-name = "+3.3V_RUN_CAM"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo5 { > + regulator-name = "+1.2V_RUN_CAM_FRONT"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + }; > + > + vddio_sdmmc3: ldo6 { > + regulator-name = "+VDDIO_SDMMC3"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo7 { > + regulator-name = "+1.05V_RUN_CAM_REAR"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + ldo9 { > + regulator-name = "+2.8V_RUN_TOUCH"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo10 { > + regulator-name = "+2.8V_RUN_CAM_AF"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo11 { > + regulator-name = "+1.8V_RUN_VPP_FUSE"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + }; > + }; > + }; > + > + spi@0,7000d400 { > + status = "okay"; > + > + cros_ec: cros-ec@0 { > + compatible = "google,cros-ec-spi"; > + spi-max-frequency = <3000000>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > + reg = <0>; > + > + google,cros-ec-spi-msg-delay = <2000>; > + > + i2c-tunnel { > + compatible = "google,cros-ec-i2c-tunnel"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + google,remote-bus = <0>; > + > + charger: bq24735@9 { > + compatible = "ti,bq24735"; > + reg = <0x9>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + ti,ac-detect-gpios = <&gpio > + TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + }; > + > + battery: sbs-battery@b { > + compatible = "sbs,sbs-battery"; > + reg = <0xb>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <10>; > + power-supplies = <&charger>; > + }; > + }; > + }; > + }; > + > + spi@0,7000da00 { > + status = "okay"; > + spi-max-frequency = <25000000>; > + > + flash@0 { > + compatible = "winbond,w25q32dw"; > + reg = <0>; > + }; > + }; > + > + pmc@0,7000e400 { > + nvidia,invert-interrupt; > + nvidia,suspend-mode = <0>; > + nvidia,cpu-pwr-good-time = <500>; > + nvidia,cpu-pwr-off-time = <300>; > + nvidia,core-pwr-good-time = <641 3845>; > + nvidia,core-pwr-off-time = <61036>; > + nvidia,core-power-req-active-high; > + nvidia,sys-clock-req-active-high; > + }; > + > + hda@0,70030000 { > + status = "okay"; > + }; > + > + sdhci@0,700b0000 { /* WiFi/BT on this bus */ > + status = "okay"; > + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > + bus-width = <4>; > + no-1-8-v; > + non-removable; > + }; > + > + sdhci@0,700b0400 { /* SD Card on this bus */ > + status = "okay"; > + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > + bus-width = <4>; > + no-1-8-v; > + vqmmc-supply = <&vddio_sdmmc3>; > + }; > + > + sdhci@0,700b0600 { /* eMMC on this bus */ > + status = "okay"; > + bus-width = <8>; > + no-1-8-v; > + non-removable; > + }; > + > + ahub@0,70300000 { > + i2s@0,70301100 { > + status = "okay"; > + }; > + }; > + > + usb@0,7d000000 { /* Rear external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d000000 { > + status = "okay"; > + vbus-supply = <&vdd_usb1_vbus>; > + }; > + > + usb@0,7d004000 { /* Internal webcam. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d004000 { > + status = "okay"; > + vbus-supply = <&vdd_run_cam>; > + }; > + > + usb@0,7d008000 { /* Left external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d008000 { > + status = "okay"; > + vbus-supply = <&vdd_usb3_vbus>; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + > + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > + power-supply = <&vdd_led>; > + pwms = <&pwm 1 1000000>; > + > + default-brightness-level = <224>; > + brightness-levels = > + < 0 1 2 3 4 5 6 7 > + 8 9 10 11 12 13 14 15 > + 16 17 18 19 20 21 22 23 > + 24 25 26 27 28 29 30 31 > + 32 33 34 35 36 37 38 39 > + 40 41 42 43 44 45 46 47 > + 48 49 50 51 52 53 54 55 > + 56 57 58 59 60 61 62 63 > + 64 65 66 67 68 69 70 71 > + 72 73 74 75 76 77 78 79 > + 80 81 82 83 84 85 86 87 > + 88 89 90 91 92 93 94 95 > + 96 97 98 99 100 101 102 103 > + 104 105 106 107 108 109 110 111 > + 112 113 114 115 116 117 118 119 > + 120 121 122 123 124 125 126 127 > + 128 129 130 131 132 133 134 135 > + 136 137 138 139 140 141 142 143 > + 144 145 146 147 148 149 150 151 > + 152 153 154 155 156 157 158 159 > + 160 161 162 163 164 165 166 167 > + 168 169 170 171 172 173 174 175 > + 176 177 178 179 180 181 182 183 > + 184 185 186 187 188 189 190 191 > + 192 193 194 195 196 197 198 199 > + 200 201 202 203 204 205 206 207 > + 208 209 210 211 212 213 214 215 > + 216 217 218 219 220 221 222 223 > + 224 225 226 227 228 229 230 231 > + 232 233 234 235 236 237 238 239 > + 240 241 242 243 244 245 246 247 > + 248 249 250 251 252 253 254 255 > + 256>; > + }; > + > + clocks { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + clk32k_in: clock@0 { > + compatible = "fixed-clock"; > + reg = <0>; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + lid { > + label = "Lid"; > + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > + linux,input-type = <5>; > + linux,code = <KEY_RESERVED>; > + debounce-interval = <1>; > + gpio-key,wakeup; > + }; > + > + power { > + label = "Power"; > + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > + linux,code = <KEY_POWER>; > + debounce-interval = <30>; > + gpio-key,wakeup; > + }; > + }; > + > + panel: panel { > + compatible = "auo,b133xtn01"; > + > + backlight = <&backlight>; > + ddc-i2c-bus = <&dpaux>; > + }; Back when we merged the nyan-big DTS there was some discussion and it was concluded that the devices are very similar, with the panel being one notable exception. So I think that this belongs in the nyan-big DTS and you need to add a similar property to the nyan-blaze DTS with the compatible for the panel used in the design. And you might need to add an entry for the panel in the panel-simple driver, too. Thierry > + > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdd_mux: regulator@0 { > + compatible = "regulator-fixed"; > + reg = <0>; > + regulator-name = "+VDD_MUX"; > + regulator-min-microvolt = <12000000>; > + regulator-max-microvolt = <12000000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_5v0_sys: regulator@1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "+5V_SYS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_sys: regulator@2 { > + compatible = "regulator-fixed"; > + reg = <2>; > + regulator-name = "+3.3V_SYS"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_run: regulator@3 { > + compatible = "regulator-fixed"; > + reg = <3>; > + regulator-name = "+3.3V_RUN"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_3v3_hdmi: regulator@4 { > + compatible = "regulator-fixed"; > + reg = <4>; > + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_led: regulator@5 { > + compatible = "regulator-fixed"; > + reg = <5>; > + regulator-name = "+VDD_LED"; > + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_5v0_ts: regulator@6 { > + compatible = "regulator-fixed"; > + reg = <6>; > + regulator-name = "+5V_VDD_TS_SW"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-boot-on; > + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb1_vbus: regulator@7 { > + compatible = "regulator-fixed"; > + reg = <7>; > + regulator-name = "+5V_USB_HS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb3_vbus: regulator@8 { > + compatible = "regulator-fixed"; > + reg = <8>; > + regulator-name = "+5V_USB_SS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_3v3_panel: regulator@9 { > + compatible = "regulator-fixed"; > + reg = <9>; > + regulator-name = "+3.3V_PANEL"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_3v3_lp0: regulator@10 { > + compatible = "regulator-fixed"; > + reg = <10>; > + regulator-name = "+3.3V_LP0"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + /* > + * TODO: find a way to wire this up with the USB EHCI > + * controllers so that it can be enabled on demand. > + */ > + regulator-always-on; > + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_hdmi_pll: regulator@11 { > + compatible = "regulator-fixed"; > + reg = <11>; > + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > + vin-supply = <&vdd_1v05_run>; > + }; > + > + vdd_5v0_hdmi: regulator@12 { > + compatible = "regulator-fixed"; > + reg = <12>; > + regulator-name = "+5V_HDMI_CON"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + }; > + > + sound { > + compatible = "nvidia,tegra-audio-max98090-nyan-big", > + "nvidia,tegra-audio-max98090"; > + > + nvidia,audio-routing = > + "Headphones", "HPR", > + "Headphones", "HPL", > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "Mic Jack", "MICBIAS", > + "DMICL", "Int Mic", > + "DMICR", "Int Mic", > + "IN34", "Mic Jack"; > + > + nvidia,i2s-controller = <&tegra_i2s1>; > + nvidia,audio-codec = <&acodec>; > + > + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > + <&tegra_car TEGRA124_CLK_EXTERN1>; > + clock-names = "pll_a", "pll_a_out0", "mclk"; > + > + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + }; > +}; > + > +#include "cros-ec-keyboard.dtsi" > -- > 1.9.3 > [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 13:06 ` Thierry Reding 0 siblings, 0 replies; 41+ messages in thread From: Thierry Reding @ 2015-01-06 13:06 UTC (permalink / raw) To: linux-arm-kernel Cc'ing Dylan and Olof. I've verified that the resulting nyan-big DTB after this series is exactly the same as before (well, except where changes were made on purpose), but I'd like an Ack from either of you regarding the split into the nyan DTS include. Quoting the full patch for Dylan and Olof, one comment below (near the bottom). On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- > arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ > 2 files changed, 1136 insertions(+), 1128 deletions(-) > create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi > > diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts > index 4752572..2041077 100644 > --- a/arch/arm/boot/dts/tegra124-nyan-big.dts > +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts > @@ -1,1137 +1,12 @@ > /dts-v1/; > > -#include <dt-bindings/input/input.h> > -#include "tegra124.dtsi" > +#include "tegra124-nyan.dtsi" > > / { > model = "Acer Chromebook 13 CB5-311"; > - compatible = "google,nyan-big", "nvidia,tegra124"; > - > - aliases { > - rtc0 = "/i2c at 0,7000d000/pmic at 40"; > - rtc1 = "/rtc at 0,7000e000"; > - serial0 = &uarta; > - }; > - > - memory { > - reg = <0x0 0x80000000 0x0 0x80000000>; > - }; > - > - host1x at 0,50000000 { > - hdmi at 0,54280000 { > - status = "okay"; > - > - vdd-supply = <&vdd_3v3_hdmi>; > - pll-supply = <&vdd_hdmi_pll>; > - hdmi-supply = <&vdd_5v0_hdmi>; > - > - nvidia,ddc-i2c-bus = <&hdmi_ddc>; > - nvidia,hpd-gpio = > - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > - }; > - > - sor at 0,54540000 { > - status = "okay"; > - > - nvidia,dpaux = <&dpaux>; > - nvidia,panel = <&panel>; > - }; > - > - dpaux at 0,545c0000 { > - vdd-supply = <&vdd_3v3_panel>; > - status = "okay"; > - }; > - }; > - > - pinmux at 0,70000868 { > - pinctrl-names = "boot"; > - pinctrl-0 = <&pinmux_boot>; > - > - pinmux_boot: common { > - dap_mclk1_pw4 { > - nvidia,pins = "dap_mclk1_pw4"; > - nvidia,function = "extperiph1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_din_pa4 { > - nvidia,pins = "dap2_din_pa4"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_dout_pa5 { > - nvidia,pins = "dap2_dout_pa5", > - "dap2_fs_pa2", > - "dap2_sclk_pa3"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dvfs_pwm_px0 { > - nvidia,pins = "dvfs_pwm_px0", > - "dvfs_clk_px2"; > - nvidia,function = "cldvfs"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_clk_py0 { > - nvidia,pins = "ulpi_clk_py0", > - "ulpi_nxt_py2", > - "ulpi_stp_py3"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_dir_py1 { > - nvidia,pins = "ulpi_dir_py1"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cam_i2c_scl_pbb1 { > - nvidia,pins = "cam_i2c_scl_pbb1", > - "cam_i2c_sda_pbb2"; > - nvidia,function = "i2c3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - gen2_i2c_scl_pt5 { > - nvidia,pins = "gen2_i2c_scl_pt5", > - "gen2_i2c_sda_pt6"; > - nvidia,function = "i2c2"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - pg4 { > - nvidia,pins = "pg4", > - "pg5", > - "pg6", > - "pi3"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pg7 { > - nvidia,pins = "pg7"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ph1 { > - nvidia,pins = "ph1"; > - nvidia,function = "pwm1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pk0 { > - nvidia,pins = "pk0", > - "kb_row15_ps7", > - "clk_32k_out_pa0"; > - nvidia,function = "soc"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sdmmc1_clk_pz0 { > - nvidia,pins = "sdmmc1_clk_pz0"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc1_cmd_pz1 { > - nvidia,pins = "sdmmc1_cmd_pz1", > - "sdmmc1_dat0_py7", > - "sdmmc1_dat1_py6", > - "sdmmc1_dat2_py5", > - "sdmmc1_dat3_py4"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_clk_pa6 { > - nvidia,pins = "sdmmc3_clk_pa6"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_cmd_pa7 { > - nvidia,pins = "sdmmc3_cmd_pa7", > - "sdmmc3_dat0_pb7", > - "sdmmc3_dat1_pb6", > - "sdmmc3_dat2_pb5", > - "sdmmc3_dat3_pb4", > - "kb_col4_pq4", > - "sdmmc3_clk_lb_out_pee4", > - "sdmmc3_clk_lb_in_pee5", > - "sdmmc3_cd_n_pv2"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_clk_pcc4 { > - nvidia,pins = "sdmmc4_clk_pcc4"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_cmd_pt7 { > - nvidia,pins = "sdmmc4_cmd_pt7", > - "sdmmc4_dat0_paa0", > - "sdmmc4_dat1_paa1", > - "sdmmc4_dat2_paa2", > - "sdmmc4_dat3_paa3", > - "sdmmc4_dat4_paa4", > - "sdmmc4_dat5_paa5", > - "sdmmc4_dat6_paa6", > - "sdmmc4_dat7_paa7"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_i2c_scl_pz6 { > - nvidia,pins = "pwr_i2c_scl_pz6", > - "pwr_i2c_sda_pz7"; > - nvidia,function = "i2cpwr"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - jtag_rtck { > - nvidia,pins = "jtag_rtck"; > - nvidia,function = "rtck"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk_32k_in { > - nvidia,pins = "clk_32k_in"; > - nvidia,function = "clk"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - core_pwr_req { > - nvidia,pins = "core_pwr_req"; > - nvidia,function = "pwron"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cpu_pwr_req { > - nvidia,pins = "cpu_pwr_req"; > - nvidia,function = "cpu"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_int_n { > - nvidia,pins = "pwr_int_n"; > - nvidia,function = "pmi"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - reset_out_n { > - nvidia,pins = "reset_out_n"; > - nvidia,function = "reset_out_n"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk3_out_pee0 { > - nvidia,pins = "clk3_out_pee0"; > - nvidia,function = "extperiph3"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - gen1_i2c_sda_pc5 { > - nvidia,pins = "gen1_i2c_sda_pc5", > - "gen1_i2c_scl_pc4"; > - nvidia,function = "i2c1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - hdmi_cec_pee3 { > - nvidia,pins = "hdmi_cec_pee3"; > - nvidia,function = "cec"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_DISABLE>; > - }; > - hdmi_int_pn7 { > - nvidia,pins = "hdmi_int_pn7"; > - nvidia,function = "rsvd1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ddc_scl_pv4 { > - nvidia,pins = "ddc_scl_pv4", > - "ddc_sda_pv5"; > - nvidia,function = "i2c4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > - }; > - kb_row10_ps2 { > - nvidia,pins = "kb_row10_ps2"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_row9_ps1 { > - nvidia,pins = "kb_row9_ps1"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - usb_vbus_en0_pn4 { > - nvidia,pins = "usb_vbus_en0_pn4", > - "usb_vbus_en1_pn5"; > - nvidia,function = "usb"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - drive_sdio1 { > - nvidia,pins = "drive_sdio1"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <36>; > - nvidia,pull-up-strength = <20>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > - }; > - drive_sdio3 { > - nvidia,pins = "drive_sdio3"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <22>; > - nvidia,pull-up-strength = <36>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - }; > - drive_gma { > - nvidia,pins = "drive_gma"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <2>; > - nvidia,pull-up-strength = <1>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,drive-type = <1>; > - }; > - codec_irq_l { > - nvidia,pins = "ph4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lcd_bl_en { > - nvidia,pins = "ph2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - touch_irq_l { > - nvidia,pins = "gpio_w3_aud_pw3"; > - nvidia,function = "spi6"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - tpm_davint_l { > - nvidia,pins = "ph6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_irq_l { > - nvidia,pins = "pk2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_reset_l { > - nvidia,pins = "pk4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ts_shdn_l { > - nvidia,pins = "pk1"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ph7 { > - nvidia,pins = "ph7"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_col0_ap { > - nvidia,pins = "kb_col0_pq0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lid_open { > - nvidia,pins = "kb_row4_pr4"; > - nvidia,function = "rsvd3"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - en_vdd_sd { > - nvidia,pins = "kb_row0_pr0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ac_ok { > - nvidia,pins = "pj0"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sensor_irq_l { > - nvidia,pins = "pi6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - wifi_en { > - nvidia,pins = "gpio_x7_aud_px7"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_bl { > - nvidia,pins = "dap3_dout_pp2"; > - nvidia,function = "i2s2"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_hdmi { > - nvidia,pins = "spdif_in_pk6"; > - nvidia,function = "spdif"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - soc_warm_reset_l { > - nvidia,pins = "pi5"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - hp_det_l { > - nvidia,pins = "pi7"; > - nvidia,function = "rsvd1"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - mic_det_l { > - nvidia,pins = "kb_row7_pr7"; > - nvidia,function = "rsvd2"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - }; > - }; > - > - serial at 0,70006000 { > - /* Debug connector on the bottom of the board near SD card. */ > - status = "okay"; > - }; > - > - pwm at 0,7000a000 { > - status = "okay"; > - }; > - > - i2c at 0,7000c000 { > - status = "okay"; > - clock-frequency = <100000>; > - > - acodec: audio-codec at 10 { > - compatible = "maxim,max98090"; > - reg = <0x10>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > - }; > - > - temperature-sensor at 4c { > - compatible = "ti,tmp451"; > - reg = <0x4c>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > - > - #thermal-sensor-cells = <1>; > - }; > - }; > - > - i2c at 0,7000c400 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c at 0,7000c500 { > - status = "okay"; > - clock-frequency = <400000>; > - > - tpm at 20 { > - compatible = "infineon,slb9645tt"; > - reg = <0x20>; > - }; > - }; > - > - hdmi_ddc: i2c at 0,7000c700 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c at 0,7000d000 { > - status = "okay"; > - clock-frequency = <400000>; > - > - pmic: pmic at 40 { > - compatible = "ams,as3722"; > - reg = <0x40>; > - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > - > - ams,system-power-controller; > - > - #interrupt-cells = <2>; > - interrupt-controller; > - > - gpio-controller; > - #gpio-cells = <2>; > - > - pinctrl-names = "default"; > - pinctrl-0 = <&as3722_default>; > - > - as3722_default: pinmux { > - gpio0 { > - pins = "gpio0"; > - function = "gpio"; > - bias-pull-down; > - }; > - > - gpio1 { > - pins = "gpio1"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio2_4_7 { > - pins = "gpio2", "gpio4", "gpio7"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio3_6 { > - pins = "gpio3", "gpio6"; > - bias-high-impedance; > - }; > - > - gpio5 { > - pins = "gpio5"; > - function = "clk32k-out"; > - bias-pull-down; > - }; > - }; > - > - regulators { > - vsup-sd2-supply = <&vdd_5v0_sys>; > - vsup-sd3-supply = <&vdd_5v0_sys>; > - vsup-sd4-supply = <&vdd_5v0_sys>; > - vsup-sd5-supply = <&vdd_5v0_sys>; > - vin-ldo0-supply = <&vdd_1v35_lp0>; > - vin-ldo1-6-supply = <&vdd_3v3_run>; > - vin-ldo2-5-7-supply = <&vddio_1v8>; > - vin-ldo3-4-supply = <&vdd_3v3_sys>; > - vin-ldo9-10-supply = <&vdd_5v0_sys>; > - vin-ldo11-supply = <&vdd_3v3_run>; > - > - sd0 { > - regulator-name = "+VDD_CPU_AP"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <2>; > - }; > - > - sd1 { > - regulator-name = "+VDD_CORE"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <2500000>; > - regulator-max-microamp = <4000000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <1>; > - }; > - > - vdd_1v35_lp0: sd2 { > - regulator-name = "+1.35V_LP0(sd2)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - sd3 { > - regulator-name = "+1.35V_LP0(sd3)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_1v05_run: sd4 { > - regulator-name = "+1.05V_RUN"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - vddio_1v8: sd5 { > - regulator-name = "+1.8V_VDDIO"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - sd6 { > - regulator-name = "+VDD_GPU_AP"; > - regulator-min-microvolt = <650000>; > - regulator-max-microvolt = <1200000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo0 { > - regulator-name = "+1.05V_RUN_AVDD"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - regulator-boot-on; > - regulator-always-on; > - ams,ext-control = <1>; > - }; > - > - ldo1 { > - regulator-name = "+1.8V_RUN_CAM"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - > - ldo2 { > - regulator-name = "+1.2V_GEN_AVDD"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo3 { > - regulator-name = "+1.00V_LP0_VDD_RTC"; > - regulator-min-microvolt = <1000000>; > - regulator-max-microvolt = <1000000>; > - regulator-boot-on; > - regulator-always-on; > - ams,enable-tracking; > - }; > - > - vdd_run_cam: ldo4 { > - regulator-name = "+3.3V_RUN_CAM"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo5 { > - regulator-name = "+1.2V_RUN_CAM_FRONT"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - }; > - > - vddio_sdmmc3: ldo6 { > - regulator-name = "+VDDIO_SDMMC3"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <3300000>; > - }; > - > - ldo7 { > - regulator-name = "+1.05V_RUN_CAM_REAR"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - ldo9 { > - regulator-name = "+2.8V_RUN_TOUCH"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo10 { > - regulator-name = "+2.8V_RUN_CAM_AF"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo11 { > - regulator-name = "+1.8V_RUN_VPP_FUSE"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - }; > - }; > - }; > - > - spi at 0,7000d400 { > - status = "okay"; > - > - cros_ec: cros-ec at 0 { > - compatible = "google,cros-ec-spi"; > - spi-max-frequency = <3000000>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > - reg = <0>; > - > - google,cros-ec-spi-msg-delay = <2000>; > - > - i2c-tunnel { > - compatible = "google,cros-ec-i2c-tunnel"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - google,remote-bus = <0>; > - > - charger: bq24735 at 9 { > - compatible = "ti,bq24735"; > - reg = <0x9>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - ti,ac-detect-gpios = <&gpio > - TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - }; > - > - battery: sbs-battery at b { > - compatible = "sbs,sbs-battery"; > - reg = <0xb>; > - sbs,i2c-retry-count = <2>; > - sbs,poll-retry-count = <10>; > - power-supplies = <&charger>; > - }; > - }; > - }; > - }; > - > - spi at 0,7000da00 { > - status = "okay"; > - spi-max-frequency = <25000000>; > - > - flash at 0 { > - compatible = "winbond,w25q32dw"; > - reg = <0>; > - }; > - }; > - > - pmc at 0,7000e400 { > - nvidia,invert-interrupt; > - nvidia,suspend-mode = <0>; > - nvidia,cpu-pwr-good-time = <500>; > - nvidia,cpu-pwr-off-time = <300>; > - nvidia,core-pwr-good-time = <641 3845>; > - nvidia,core-pwr-off-time = <61036>; > - nvidia,core-power-req-active-high; > - nvidia,sys-clock-req-active-high; > - }; > - > - hda at 0,70030000 { > - status = "okay"; > - }; > - > - sdhci at 0,700b0000 { /* WiFi/BT on this bus */ > - status = "okay"; > - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > - bus-width = <4>; > - no-1-8-v; > - non-removable; > - }; > - > - sdhci at 0,700b0400 { /* SD Card on this bus */ > - status = "okay"; > - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > - bus-width = <4>; > - no-1-8-v; > - vqmmc-supply = <&vddio_sdmmc3>; > - }; > - > - sdhci at 0,700b0600 { /* eMMC on this bus */ > - status = "okay"; > - bus-width = <8>; > - no-1-8-v; > - non-removable; > - }; > - > - ahub at 0,70300000 { > - i2s at 0,70301100 { > - status = "okay"; > - }; > - }; > - > - usb at 0,7d000000 { /* Rear external USB port. */ > - status = "okay"; > - }; > - > - usb-phy at 0,7d000000 { > - status = "okay"; > - vbus-supply = <&vdd_usb1_vbus>; > - }; > - > - usb at 0,7d004000 { /* Internal webcam. */ > - status = "okay"; > - }; > - > - usb-phy at 0,7d004000 { > - status = "okay"; > - vbus-supply = <&vdd_run_cam>; > - }; > - > - usb at 0,7d008000 { /* Left external USB port. */ > - status = "okay"; > - }; > - > - usb-phy at 0,7d008000 { > - status = "okay"; > - vbus-supply = <&vdd_usb3_vbus>; > - }; > - > - backlight: backlight { > - compatible = "pwm-backlight"; > - > - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > - power-supply = <&vdd_led>; > - pwms = <&pwm 1 1000000>; > - > - default-brightness-level = <224>; > - brightness-levels = > - < 0 1 2 3 4 5 6 7 > - 8 9 10 11 12 13 14 15 > - 16 17 18 19 20 21 22 23 > - 24 25 26 27 28 29 30 31 > - 32 33 34 35 36 37 38 39 > - 40 41 42 43 44 45 46 47 > - 48 49 50 51 52 53 54 55 > - 56 57 58 59 60 61 62 63 > - 64 65 66 67 68 69 70 71 > - 72 73 74 75 76 77 78 79 > - 80 81 82 83 84 85 86 87 > - 88 89 90 91 92 93 94 95 > - 96 97 98 99 100 101 102 103 > - 104 105 106 107 108 109 110 111 > - 112 113 114 115 116 117 118 119 > - 120 121 122 123 124 125 126 127 > - 128 129 130 131 132 133 134 135 > - 136 137 138 139 140 141 142 143 > - 144 145 146 147 148 149 150 151 > - 152 153 154 155 156 157 158 159 > - 160 161 162 163 164 165 166 167 > - 168 169 170 171 172 173 174 175 > - 176 177 178 179 180 181 182 183 > - 184 185 186 187 188 189 190 191 > - 192 193 194 195 196 197 198 199 > - 200 201 202 203 204 205 206 207 > - 208 209 210 211 212 213 214 215 > - 216 217 218 219 220 221 222 223 > - 224 225 226 227 228 229 230 231 > - 232 233 234 235 236 237 238 239 > - 240 241 242 243 244 245 246 247 > - 248 249 250 251 252 253 254 255 > - 256>; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - clk32k_in: clock at 0 { > - compatible = "fixed-clock"; > - reg = <0>; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > - > - gpio-keys { > - compatible = "gpio-keys"; > - > - lid { > - label = "Lid"; > - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > - linux,input-type = <5>; > - linux,code = <KEY_RESERVED>; > - debounce-interval = <1>; > - gpio-key,wakeup; > - }; > - > - power { > - label = "Power"; > - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > - linux,code = <KEY_POWER>; > - debounce-interval = <30>; > - gpio-key,wakeup; > - }; > - }; > - > - panel: panel { > - compatible = "auo,b133xtn01"; > - > - backlight = <&backlight>; > - ddc-i2c-bus = <&dpaux>; > - }; > - > - regulators { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - vdd_mux: regulator at 0 { > - compatible = "regulator-fixed"; > - reg = <0>; > - regulator-name = "+VDD_MUX"; > - regulator-min-microvolt = <12000000>; > - regulator-max-microvolt = <12000000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_5v0_sys: regulator at 1 { > - compatible = "regulator-fixed"; > - reg = <1>; > - regulator-name = "+5V_SYS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_sys: regulator at 2 { > - compatible = "regulator-fixed"; > - reg = <2>; > - regulator-name = "+3.3V_SYS"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_run: regulator at 3 { > - compatible = "regulator-fixed"; > - reg = <3>; > - regulator-name = "+3.3V_RUN"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_3v3_hdmi: regulator at 4 { > - compatible = "regulator-fixed"; > - reg = <4>; > - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_led: regulator at 5 { > - compatible = "regulator-fixed"; > - reg = <5>; > - regulator-name = "+VDD_LED"; > - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_5v0_ts: regulator at 6 { > - compatible = "regulator-fixed"; > - reg = <6>; > - regulator-name = "+5V_VDD_TS_SW"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-boot-on; > - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb1_vbus: regulator at 7 { > - compatible = "regulator-fixed"; > - reg = <7>; > - regulator-name = "+5V_USB_HS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb3_vbus: regulator at 8 { > - compatible = "regulator-fixed"; > - reg = <8>; > - regulator-name = "+5V_USB_SS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_3v3_panel: regulator at 9 { > - compatible = "regulator-fixed"; > - reg = <9>; > - regulator-name = "+3.3V_PANEL"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_3v3_lp0: regulator at 10 { > - compatible = "regulator-fixed"; > - reg = <10>; > - regulator-name = "+3.3V_LP0"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - /* > - * TODO: find a way to wire this up with the USB EHCI > - * controllers so that it can be enabled on demand. > - */ > - regulator-always-on; > - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_hdmi_pll: regulator at 11 { > - compatible = "regulator-fixed"; > - reg = <11>; > - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > - vin-supply = <&vdd_1v05_run>; > - }; > - > - vdd_5v0_hdmi: regulator at 12 { > - compatible = "regulator-fixed"; > - reg = <12>; > - regulator-name = "+5V_HDMI_CON"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - }; > + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; > > sound { > - compatible = "nvidia,tegra-audio-max98090-nyan-big", > - "nvidia,tegra-audio-max98090"; > - nvidia,model = "Acer Chromebook 13"; > - > - nvidia,audio-routing = > - "Headphones", "HPR", > - "Headphones", "HPL", > - "Speakers", "SPKR", > - "Speakers", "SPKL", > - "Mic Jack", "MICBIAS", > - "DMICL", "Int Mic", > - "DMICR", "Int Mic", > - "IN34", "Mic Jack"; > - > - nvidia,i2s-controller = <&tegra_i2s1>; > - nvidia,audio-codec = <&acodec>; > - > - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > - <&tegra_car TEGRA124_CLK_EXTERN1>; > - clock-names = "pll_a", "pll_a_out0", "mclk"; > - > - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + nvidia,model = "Acer Chromebook 13 CB5-311"; > }; > }; > - > -#include "cros-ec-keyboard.dtsi" > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi > new file mode 100644 > index 0000000..4c68658 > --- /dev/null > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi > @@ -0,0 +1,1133 @@ > +#include <dt-bindings/input/input.h> > +#include "tegra124.dtsi" > + > +/ { > + compatible = "google,nyan", "nvidia,tegra124"; > + > + aliases { > + rtc0 = "/i2c at 0,7000d000/pmic at 40"; > + rtc1 = "/rtc at 0,7000e000"; > + serial0 = &uarta; > + }; > + > + memory { > + reg = <0x0 0x80000000 0x0 0x80000000>; > + }; > + > + host1x at 0,50000000 { > + hdmi at 0,54280000 { > + status = "okay"; > + > + vdd-supply = <&vdd_3v3_hdmi>; > + pll-supply = <&vdd_hdmi_pll>; > + hdmi-supply = <&vdd_5v0_hdmi>; > + > + nvidia,ddc-i2c-bus = <&hdmi_ddc>; > + nvidia,hpd-gpio = > + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > + }; > + > + sor at 0,54540000 { > + status = "okay"; > + > + nvidia,dpaux = <&dpaux>; > + nvidia,panel = <&panel>; > + }; > + > + dpaux at 0,545c0000 { > + vdd-supply = <&vdd_3v3_panel>; > + status = "okay"; > + }; > + }; > + > + pinmux at 0,70000868 { > + pinctrl-names = "boot"; > + pinctrl-0 = <&pinmux_boot>; > + > + pinmux_boot: common { > + dap_mclk1_pw4 { > + nvidia,pins = "dap_mclk1_pw4"; > + nvidia,function = "extperiph1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_din_pa4 { > + nvidia,pins = "dap2_din_pa4"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_dout_pa5 { > + nvidia,pins = "dap2_dout_pa5", > + "dap2_fs_pa2", > + "dap2_sclk_pa3"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dvfs_pwm_px0 { > + nvidia,pins = "dvfs_pwm_px0", > + "dvfs_clk_px2"; > + nvidia,function = "cldvfs"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_clk_py0 { > + nvidia,pins = "ulpi_clk_py0", > + "ulpi_nxt_py2", > + "ulpi_stp_py3"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_dir_py1 { > + nvidia,pins = "ulpi_dir_py1"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cam_i2c_scl_pbb1 { > + nvidia,pins = "cam_i2c_scl_pbb1", > + "cam_i2c_sda_pbb2"; > + nvidia,function = "i2c3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + gen2_i2c_scl_pt5 { > + nvidia,pins = "gen2_i2c_scl_pt5", > + "gen2_i2c_sda_pt6"; > + nvidia,function = "i2c2"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + pg4 { > + nvidia,pins = "pg4", > + "pg5", > + "pg6", > + "pi3"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pg7 { > + nvidia,pins = "pg7"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ph1 { > + nvidia,pins = "ph1"; > + nvidia,function = "pwm1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pk0 { > + nvidia,pins = "pk0", > + "kb_row15_ps7", > + "clk_32k_out_pa0"; > + nvidia,function = "soc"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sdmmc1_clk_pz0 { > + nvidia,pins = "sdmmc1_clk_pz0"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc1_cmd_pz1 { > + nvidia,pins = "sdmmc1_cmd_pz1", > + "sdmmc1_dat0_py7", > + "sdmmc1_dat1_py6", > + "sdmmc1_dat2_py5", > + "sdmmc1_dat3_py4"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_clk_pa6 { > + nvidia,pins = "sdmmc3_clk_pa6"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_cmd_pa7 { > + nvidia,pins = "sdmmc3_cmd_pa7", > + "sdmmc3_dat0_pb7", > + "sdmmc3_dat1_pb6", > + "sdmmc3_dat2_pb5", > + "sdmmc3_dat3_pb4", > + "kb_col4_pq4", > + "sdmmc3_clk_lb_out_pee4", > + "sdmmc3_clk_lb_in_pee5", > + "sdmmc3_cd_n_pv2"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_clk_pcc4 { > + nvidia,pins = "sdmmc4_clk_pcc4"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_cmd_pt7 { > + nvidia,pins = "sdmmc4_cmd_pt7", > + "sdmmc4_dat0_paa0", > + "sdmmc4_dat1_paa1", > + "sdmmc4_dat2_paa2", > + "sdmmc4_dat3_paa3", > + "sdmmc4_dat4_paa4", > + "sdmmc4_dat5_paa5", > + "sdmmc4_dat6_paa6", > + "sdmmc4_dat7_paa7"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_i2c_scl_pz6 { > + nvidia,pins = "pwr_i2c_scl_pz6", > + "pwr_i2c_sda_pz7"; > + nvidia,function = "i2cpwr"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + jtag_rtck { > + nvidia,pins = "jtag_rtck"; > + nvidia,function = "rtck"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk_32k_in { > + nvidia,pins = "clk_32k_in"; > + nvidia,function = "clk"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + core_pwr_req { > + nvidia,pins = "core_pwr_req"; > + nvidia,function = "pwron"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cpu_pwr_req { > + nvidia,pins = "cpu_pwr_req"; > + nvidia,function = "cpu"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_int_n { > + nvidia,pins = "pwr_int_n"; > + nvidia,function = "pmi"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + reset_out_n { > + nvidia,pins = "reset_out_n"; > + nvidia,function = "reset_out_n"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk3_out_pee0 { > + nvidia,pins = "clk3_out_pee0"; > + nvidia,function = "extperiph3"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + gen1_i2c_sda_pc5 { > + nvidia,pins = "gen1_i2c_sda_pc5", > + "gen1_i2c_scl_pc4"; > + nvidia,function = "i2c1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + hdmi_cec_pee3 { > + nvidia,pins = "hdmi_cec_pee3"; > + nvidia,function = "cec"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_DISABLE>; > + }; > + hdmi_int_pn7 { > + nvidia,pins = "hdmi_int_pn7"; > + nvidia,function = "rsvd1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ddc_scl_pv4 { > + nvidia,pins = "ddc_scl_pv4", > + "ddc_sda_pv5"; > + nvidia,function = "i2c4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > + }; > + kb_row10_ps2 { > + nvidia,pins = "kb_row10_ps2"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_row9_ps1 { > + nvidia,pins = "kb_row9_ps1"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + usb_vbus_en0_pn4 { > + nvidia,pins = "usb_vbus_en0_pn4", > + "usb_vbus_en1_pn5"; > + nvidia,function = "usb"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + drive_sdio1 { > + nvidia,pins = "drive_sdio1"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <36>; > + nvidia,pull-up-strength = <20>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > + }; > + drive_sdio3 { > + nvidia,pins = "drive_sdio3"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <22>; > + nvidia,pull-up-strength = <36>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + }; > + drive_gma { > + nvidia,pins = "drive_gma"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <2>; > + nvidia,pull-up-strength = <1>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,drive-type = <1>; > + }; > + codec_irq_l { > + nvidia,pins = "ph4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lcd_bl_en { > + nvidia,pins = "ph2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + touch_irq_l { > + nvidia,pins = "gpio_w3_aud_pw3"; > + nvidia,function = "spi6"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + tpm_davint_l { > + nvidia,pins = "ph6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_irq_l { > + nvidia,pins = "pk2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_reset_l { > + nvidia,pins = "pk4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ts_shdn_l { > + nvidia,pins = "pk1"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ph7 { > + nvidia,pins = "ph7"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_col0_ap { > + nvidia,pins = "kb_col0_pq0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lid_open { > + nvidia,pins = "kb_row4_pr4"; > + nvidia,function = "rsvd3"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + en_vdd_sd { > + nvidia,pins = "kb_row0_pr0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ac_ok { > + nvidia,pins = "pj0"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sensor_irq_l { > + nvidia,pins = "pi6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + wifi_en { > + nvidia,pins = "gpio_x7_aud_px7"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_bl { > + nvidia,pins = "dap3_dout_pp2"; > + nvidia,function = "i2s2"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_hdmi { > + nvidia,pins = "spdif_in_pk6"; > + nvidia,function = "spdif"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + soc_warm_reset_l { > + nvidia,pins = "pi5"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + hp_det_l { > + nvidia,pins = "pi7"; > + nvidia,function = "rsvd1"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + mic_det_l { > + nvidia,pins = "kb_row7_pr7"; > + nvidia,function = "rsvd2"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + }; > + }; > + > + serial at 0,70006000 { > + /* Debug connector on the bottom of the board near SD card. */ > + status = "okay"; > + }; > + > + pwm at 0,7000a000 { > + status = "okay"; > + }; > + > + i2c at 0,7000c000 { > + status = "okay"; > + clock-frequency = <100000>; > + > + acodec: audio-codec at 10 { > + compatible = "maxim,max98090"; > + reg = <0x10>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > + }; > + > + temperature-sensor at 4c { > + compatible = "ti,tmp451"; > + reg = <0x4c>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > + i2c at 0,7000c400 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c at 0,7000c500 { > + status = "okay"; > + clock-frequency = <400000>; > + > + tpm at 20 { > + compatible = "infineon,slb9645tt"; > + reg = <0x20>; > + }; > + }; > + > + hdmi_ddc: i2c at 0,7000c700 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c at 0,7000d000 { > + status = "okay"; > + clock-frequency = <400000>; > + > + pmic: pmic at 40 { > + compatible = "ams,as3722"; > + reg = <0x40>; > + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > + > + ams,system-power-controller; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&as3722_default>; > + > + as3722_default: pinmux { > + gpio0 { > + pins = "gpio0"; > + function = "gpio"; > + bias-pull-down; > + }; > + > + gpio1 { > + pins = "gpio1"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio2_4_7 { > + pins = "gpio2", "gpio4", "gpio7"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio3_6 { > + pins = "gpio3", "gpio6"; > + bias-high-impedance; > + }; > + > + gpio5 { > + pins = "gpio5"; > + function = "clk32k-out"; > + bias-pull-down; > + }; > + }; > + > + regulators { > + vsup-sd2-supply = <&vdd_5v0_sys>; > + vsup-sd3-supply = <&vdd_5v0_sys>; > + vsup-sd4-supply = <&vdd_5v0_sys>; > + vsup-sd5-supply = <&vdd_5v0_sys>; > + vin-ldo0-supply = <&vdd_1v35_lp0>; > + vin-ldo1-6-supply = <&vdd_3v3_run>; > + vin-ldo2-5-7-supply = <&vddio_1v8>; > + vin-ldo3-4-supply = <&vdd_3v3_sys>; > + vin-ldo9-10-supply = <&vdd_5v0_sys>; > + vin-ldo11-supply = <&vdd_3v3_run>; > + > + sd0 { > + regulator-name = "+VDD_CPU_AP"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <2>; > + }; > + > + sd1 { > + regulator-name = "+VDD_CORE"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <2500000>; > + regulator-max-microamp = <4000000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <1>; > + }; > + > + vdd_1v35_lp0: sd2 { > + regulator-name = "+1.35V_LP0(sd2)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + sd3 { > + regulator-name = "+1.35V_LP0(sd3)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_1v05_run: sd4 { > + regulator-name = "+1.05V_RUN"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + vddio_1v8: sd5 { > + regulator-name = "+1.8V_VDDIO"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sd6 { > + regulator-name = "+VDD_GPU_AP"; > + regulator-min-microvolt = <650000>; > + regulator-max-microvolt = <1200000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo0 { > + regulator-name = "+1.05V_RUN_AVDD"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + regulator-boot-on; > + regulator-always-on; > + ams,ext-control = <1>; > + }; > + > + ldo1 { > + regulator-name = "+1.8V_RUN_CAM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo2 { > + regulator-name = "+1.2V_GEN_AVDD"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3 { > + regulator-name = "+1.00V_LP0_VDD_RTC"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1000000>; > + regulator-boot-on; > + regulator-always-on; > + ams,enable-tracking; > + }; > + > + vdd_run_cam: ldo4 { > + regulator-name = "+3.3V_RUN_CAM"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo5 { > + regulator-name = "+1.2V_RUN_CAM_FRONT"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + }; > + > + vddio_sdmmc3: ldo6 { > + regulator-name = "+VDDIO_SDMMC3"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo7 { > + regulator-name = "+1.05V_RUN_CAM_REAR"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + ldo9 { > + regulator-name = "+2.8V_RUN_TOUCH"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo10 { > + regulator-name = "+2.8V_RUN_CAM_AF"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo11 { > + regulator-name = "+1.8V_RUN_VPP_FUSE"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + }; > + }; > + }; > + > + spi at 0,7000d400 { > + status = "okay"; > + > + cros_ec: cros-ec at 0 { > + compatible = "google,cros-ec-spi"; > + spi-max-frequency = <3000000>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > + reg = <0>; > + > + google,cros-ec-spi-msg-delay = <2000>; > + > + i2c-tunnel { > + compatible = "google,cros-ec-i2c-tunnel"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + google,remote-bus = <0>; > + > + charger: bq24735 at 9 { > + compatible = "ti,bq24735"; > + reg = <0x9>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + ti,ac-detect-gpios = <&gpio > + TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + }; > + > + battery: sbs-battery at b { > + compatible = "sbs,sbs-battery"; > + reg = <0xb>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <10>; > + power-supplies = <&charger>; > + }; > + }; > + }; > + }; > + > + spi at 0,7000da00 { > + status = "okay"; > + spi-max-frequency = <25000000>; > + > + flash at 0 { > + compatible = "winbond,w25q32dw"; > + reg = <0>; > + }; > + }; > + > + pmc at 0,7000e400 { > + nvidia,invert-interrupt; > + nvidia,suspend-mode = <0>; > + nvidia,cpu-pwr-good-time = <500>; > + nvidia,cpu-pwr-off-time = <300>; > + nvidia,core-pwr-good-time = <641 3845>; > + nvidia,core-pwr-off-time = <61036>; > + nvidia,core-power-req-active-high; > + nvidia,sys-clock-req-active-high; > + }; > + > + hda at 0,70030000 { > + status = "okay"; > + }; > + > + sdhci at 0,700b0000 { /* WiFi/BT on this bus */ > + status = "okay"; > + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > + bus-width = <4>; > + no-1-8-v; > + non-removable; > + }; > + > + sdhci at 0,700b0400 { /* SD Card on this bus */ > + status = "okay"; > + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > + bus-width = <4>; > + no-1-8-v; > + vqmmc-supply = <&vddio_sdmmc3>; > + }; > + > + sdhci at 0,700b0600 { /* eMMC on this bus */ > + status = "okay"; > + bus-width = <8>; > + no-1-8-v; > + non-removable; > + }; > + > + ahub at 0,70300000 { > + i2s at 0,70301100 { > + status = "okay"; > + }; > + }; > + > + usb at 0,7d000000 { /* Rear external USB port. */ > + status = "okay"; > + }; > + > + usb-phy at 0,7d000000 { > + status = "okay"; > + vbus-supply = <&vdd_usb1_vbus>; > + }; > + > + usb at 0,7d004000 { /* Internal webcam. */ > + status = "okay"; > + }; > + > + usb-phy at 0,7d004000 { > + status = "okay"; > + vbus-supply = <&vdd_run_cam>; > + }; > + > + usb at 0,7d008000 { /* Left external USB port. */ > + status = "okay"; > + }; > + > + usb-phy at 0,7d008000 { > + status = "okay"; > + vbus-supply = <&vdd_usb3_vbus>; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + > + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > + power-supply = <&vdd_led>; > + pwms = <&pwm 1 1000000>; > + > + default-brightness-level = <224>; > + brightness-levels = > + < 0 1 2 3 4 5 6 7 > + 8 9 10 11 12 13 14 15 > + 16 17 18 19 20 21 22 23 > + 24 25 26 27 28 29 30 31 > + 32 33 34 35 36 37 38 39 > + 40 41 42 43 44 45 46 47 > + 48 49 50 51 52 53 54 55 > + 56 57 58 59 60 61 62 63 > + 64 65 66 67 68 69 70 71 > + 72 73 74 75 76 77 78 79 > + 80 81 82 83 84 85 86 87 > + 88 89 90 91 92 93 94 95 > + 96 97 98 99 100 101 102 103 > + 104 105 106 107 108 109 110 111 > + 112 113 114 115 116 117 118 119 > + 120 121 122 123 124 125 126 127 > + 128 129 130 131 132 133 134 135 > + 136 137 138 139 140 141 142 143 > + 144 145 146 147 148 149 150 151 > + 152 153 154 155 156 157 158 159 > + 160 161 162 163 164 165 166 167 > + 168 169 170 171 172 173 174 175 > + 176 177 178 179 180 181 182 183 > + 184 185 186 187 188 189 190 191 > + 192 193 194 195 196 197 198 199 > + 200 201 202 203 204 205 206 207 > + 208 209 210 211 212 213 214 215 > + 216 217 218 219 220 221 222 223 > + 224 225 226 227 228 229 230 231 > + 232 233 234 235 236 237 238 239 > + 240 241 242 243 244 245 246 247 > + 248 249 250 251 252 253 254 255 > + 256>; > + }; > + > + clocks { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + clk32k_in: clock at 0 { > + compatible = "fixed-clock"; > + reg = <0>; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + lid { > + label = "Lid"; > + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > + linux,input-type = <5>; > + linux,code = <KEY_RESERVED>; > + debounce-interval = <1>; > + gpio-key,wakeup; > + }; > + > + power { > + label = "Power"; > + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > + linux,code = <KEY_POWER>; > + debounce-interval = <30>; > + gpio-key,wakeup; > + }; > + }; > + > + panel: panel { > + compatible = "auo,b133xtn01"; > + > + backlight = <&backlight>; > + ddc-i2c-bus = <&dpaux>; > + }; Back when we merged the nyan-big DTS there was some discussion and it was concluded that the devices are very similar, with the panel being one notable exception. So I think that this belongs in the nyan-big DTS and you need to add a similar property to the nyan-blaze DTS with the compatible for the panel used in the design. And you might need to add an entry for the panel in the panel-simple driver, too. Thierry > + > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdd_mux: regulator at 0 { > + compatible = "regulator-fixed"; > + reg = <0>; > + regulator-name = "+VDD_MUX"; > + regulator-min-microvolt = <12000000>; > + regulator-max-microvolt = <12000000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_5v0_sys: regulator at 1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "+5V_SYS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_sys: regulator at 2 { > + compatible = "regulator-fixed"; > + reg = <2>; > + regulator-name = "+3.3V_SYS"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_run: regulator at 3 { > + compatible = "regulator-fixed"; > + reg = <3>; > + regulator-name = "+3.3V_RUN"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_3v3_hdmi: regulator at 4 { > + compatible = "regulator-fixed"; > + reg = <4>; > + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_led: regulator at 5 { > + compatible = "regulator-fixed"; > + reg = <5>; > + regulator-name = "+VDD_LED"; > + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_5v0_ts: regulator at 6 { > + compatible = "regulator-fixed"; > + reg = <6>; > + regulator-name = "+5V_VDD_TS_SW"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-boot-on; > + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb1_vbus: regulator at 7 { > + compatible = "regulator-fixed"; > + reg = <7>; > + regulator-name = "+5V_USB_HS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb3_vbus: regulator at 8 { > + compatible = "regulator-fixed"; > + reg = <8>; > + regulator-name = "+5V_USB_SS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_3v3_panel: regulator at 9 { > + compatible = "regulator-fixed"; > + reg = <9>; > + regulator-name = "+3.3V_PANEL"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_3v3_lp0: regulator at 10 { > + compatible = "regulator-fixed"; > + reg = <10>; > + regulator-name = "+3.3V_LP0"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + /* > + * TODO: find a way to wire this up with the USB EHCI > + * controllers so that it can be enabled on demand. > + */ > + regulator-always-on; > + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_hdmi_pll: regulator at 11 { > + compatible = "regulator-fixed"; > + reg = <11>; > + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > + vin-supply = <&vdd_1v05_run>; > + }; > + > + vdd_5v0_hdmi: regulator at 12 { > + compatible = "regulator-fixed"; > + reg = <12>; > + regulator-name = "+5V_HDMI_CON"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + }; > + > + sound { > + compatible = "nvidia,tegra-audio-max98090-nyan-big", > + "nvidia,tegra-audio-max98090"; > + > + nvidia,audio-routing = > + "Headphones", "HPR", > + "Headphones", "HPL", > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "Mic Jack", "MICBIAS", > + "DMICL", "Int Mic", > + "DMICR", "Int Mic", > + "IN34", "Mic Jack"; > + > + nvidia,i2s-controller = <&tegra_i2s1>; > + nvidia,audio-codec = <&acodec>; > + > + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > + <&tegra_car TEGRA124_CLK_EXTERN1>; > + clock-names = "pll_a", "pll_a_out0", "mclk"; > + > + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + }; > +}; > + > +#include "cros-ec-keyboard.dtsi" > -- > 1.9.3 > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150106/b99006a3/attachment-0001.sig> ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 13:06 ` Thierry Reding 0 siblings, 0 replies; 41+ messages in thread From: Thierry Reding @ 2015-01-06 13:06 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra, Dylan Reid, Olof Johansson, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 70286 bytes --] Cc'ing Dylan and Olof. I've verified that the resulting nyan-big DTB after this series is exactly the same as before (well, except where changes were made on purpose), but I'd like an Ack from either of you regarding the split into the nyan DTS include. Quoting the full patch for Dylan and Olof, one comment below (near the bottom). On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- > arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ > 2 files changed, 1136 insertions(+), 1128 deletions(-) > create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi > > diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts > index 4752572..2041077 100644 > --- a/arch/arm/boot/dts/tegra124-nyan-big.dts > +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts > @@ -1,1137 +1,12 @@ > /dts-v1/; > > -#include <dt-bindings/input/input.h> > -#include "tegra124.dtsi" > +#include "tegra124-nyan.dtsi" > > / { > model = "Acer Chromebook 13 CB5-311"; > - compatible = "google,nyan-big", "nvidia,tegra124"; > - > - aliases { > - rtc0 = "/i2c@0,7000d000/pmic@40"; > - rtc1 = "/rtc@0,7000e000"; > - serial0 = &uarta; > - }; > - > - memory { > - reg = <0x0 0x80000000 0x0 0x80000000>; > - }; > - > - host1x@0,50000000 { > - hdmi@0,54280000 { > - status = "okay"; > - > - vdd-supply = <&vdd_3v3_hdmi>; > - pll-supply = <&vdd_hdmi_pll>; > - hdmi-supply = <&vdd_5v0_hdmi>; > - > - nvidia,ddc-i2c-bus = <&hdmi_ddc>; > - nvidia,hpd-gpio = > - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > - }; > - > - sor@0,54540000 { > - status = "okay"; > - > - nvidia,dpaux = <&dpaux>; > - nvidia,panel = <&panel>; > - }; > - > - dpaux@0,545c0000 { > - vdd-supply = <&vdd_3v3_panel>; > - status = "okay"; > - }; > - }; > - > - pinmux@0,70000868 { > - pinctrl-names = "boot"; > - pinctrl-0 = <&pinmux_boot>; > - > - pinmux_boot: common { > - dap_mclk1_pw4 { > - nvidia,pins = "dap_mclk1_pw4"; > - nvidia,function = "extperiph1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_din_pa4 { > - nvidia,pins = "dap2_din_pa4"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_dout_pa5 { > - nvidia,pins = "dap2_dout_pa5", > - "dap2_fs_pa2", > - "dap2_sclk_pa3"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dvfs_pwm_px0 { > - nvidia,pins = "dvfs_pwm_px0", > - "dvfs_clk_px2"; > - nvidia,function = "cldvfs"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_clk_py0 { > - nvidia,pins = "ulpi_clk_py0", > - "ulpi_nxt_py2", > - "ulpi_stp_py3"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_dir_py1 { > - nvidia,pins = "ulpi_dir_py1"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cam_i2c_scl_pbb1 { > - nvidia,pins = "cam_i2c_scl_pbb1", > - "cam_i2c_sda_pbb2"; > - nvidia,function = "i2c3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - gen2_i2c_scl_pt5 { > - nvidia,pins = "gen2_i2c_scl_pt5", > - "gen2_i2c_sda_pt6"; > - nvidia,function = "i2c2"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - pg4 { > - nvidia,pins = "pg4", > - "pg5", > - "pg6", > - "pi3"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pg7 { > - nvidia,pins = "pg7"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ph1 { > - nvidia,pins = "ph1"; > - nvidia,function = "pwm1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pk0 { > - nvidia,pins = "pk0", > - "kb_row15_ps7", > - "clk_32k_out_pa0"; > - nvidia,function = "soc"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sdmmc1_clk_pz0 { > - nvidia,pins = "sdmmc1_clk_pz0"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc1_cmd_pz1 { > - nvidia,pins = "sdmmc1_cmd_pz1", > - "sdmmc1_dat0_py7", > - "sdmmc1_dat1_py6", > - "sdmmc1_dat2_py5", > - "sdmmc1_dat3_py4"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_clk_pa6 { > - nvidia,pins = "sdmmc3_clk_pa6"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_cmd_pa7 { > - nvidia,pins = "sdmmc3_cmd_pa7", > - "sdmmc3_dat0_pb7", > - "sdmmc3_dat1_pb6", > - "sdmmc3_dat2_pb5", > - "sdmmc3_dat3_pb4", > - "kb_col4_pq4", > - "sdmmc3_clk_lb_out_pee4", > - "sdmmc3_clk_lb_in_pee5", > - "sdmmc3_cd_n_pv2"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_clk_pcc4 { > - nvidia,pins = "sdmmc4_clk_pcc4"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_cmd_pt7 { > - nvidia,pins = "sdmmc4_cmd_pt7", > - "sdmmc4_dat0_paa0", > - "sdmmc4_dat1_paa1", > - "sdmmc4_dat2_paa2", > - "sdmmc4_dat3_paa3", > - "sdmmc4_dat4_paa4", > - "sdmmc4_dat5_paa5", > - "sdmmc4_dat6_paa6", > - "sdmmc4_dat7_paa7"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_i2c_scl_pz6 { > - nvidia,pins = "pwr_i2c_scl_pz6", > - "pwr_i2c_sda_pz7"; > - nvidia,function = "i2cpwr"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - jtag_rtck { > - nvidia,pins = "jtag_rtck"; > - nvidia,function = "rtck"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk_32k_in { > - nvidia,pins = "clk_32k_in"; > - nvidia,function = "clk"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - core_pwr_req { > - nvidia,pins = "core_pwr_req"; > - nvidia,function = "pwron"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cpu_pwr_req { > - nvidia,pins = "cpu_pwr_req"; > - nvidia,function = "cpu"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_int_n { > - nvidia,pins = "pwr_int_n"; > - nvidia,function = "pmi"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - reset_out_n { > - nvidia,pins = "reset_out_n"; > - nvidia,function = "reset_out_n"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk3_out_pee0 { > - nvidia,pins = "clk3_out_pee0"; > - nvidia,function = "extperiph3"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - gen1_i2c_sda_pc5 { > - nvidia,pins = "gen1_i2c_sda_pc5", > - "gen1_i2c_scl_pc4"; > - nvidia,function = "i2c1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - hdmi_cec_pee3 { > - nvidia,pins = "hdmi_cec_pee3"; > - nvidia,function = "cec"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_DISABLE>; > - }; > - hdmi_int_pn7 { > - nvidia,pins = "hdmi_int_pn7"; > - nvidia,function = "rsvd1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ddc_scl_pv4 { > - nvidia,pins = "ddc_scl_pv4", > - "ddc_sda_pv5"; > - nvidia,function = "i2c4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > - }; > - kb_row10_ps2 { > - nvidia,pins = "kb_row10_ps2"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_row9_ps1 { > - nvidia,pins = "kb_row9_ps1"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - usb_vbus_en0_pn4 { > - nvidia,pins = "usb_vbus_en0_pn4", > - "usb_vbus_en1_pn5"; > - nvidia,function = "usb"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - drive_sdio1 { > - nvidia,pins = "drive_sdio1"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <36>; > - nvidia,pull-up-strength = <20>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > - }; > - drive_sdio3 { > - nvidia,pins = "drive_sdio3"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <22>; > - nvidia,pull-up-strength = <36>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - }; > - drive_gma { > - nvidia,pins = "drive_gma"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <2>; > - nvidia,pull-up-strength = <1>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,drive-type = <1>; > - }; > - codec_irq_l { > - nvidia,pins = "ph4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lcd_bl_en { > - nvidia,pins = "ph2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - touch_irq_l { > - nvidia,pins = "gpio_w3_aud_pw3"; > - nvidia,function = "spi6"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - tpm_davint_l { > - nvidia,pins = "ph6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_irq_l { > - nvidia,pins = "pk2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_reset_l { > - nvidia,pins = "pk4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ts_shdn_l { > - nvidia,pins = "pk1"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ph7 { > - nvidia,pins = "ph7"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_col0_ap { > - nvidia,pins = "kb_col0_pq0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lid_open { > - nvidia,pins = "kb_row4_pr4"; > - nvidia,function = "rsvd3"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - en_vdd_sd { > - nvidia,pins = "kb_row0_pr0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ac_ok { > - nvidia,pins = "pj0"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sensor_irq_l { > - nvidia,pins = "pi6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - wifi_en { > - nvidia,pins = "gpio_x7_aud_px7"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_bl { > - nvidia,pins = "dap3_dout_pp2"; > - nvidia,function = "i2s2"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_hdmi { > - nvidia,pins = "spdif_in_pk6"; > - nvidia,function = "spdif"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - soc_warm_reset_l { > - nvidia,pins = "pi5"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - hp_det_l { > - nvidia,pins = "pi7"; > - nvidia,function = "rsvd1"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - mic_det_l { > - nvidia,pins = "kb_row7_pr7"; > - nvidia,function = "rsvd2"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - }; > - }; > - > - serial@0,70006000 { > - /* Debug connector on the bottom of the board near SD card. */ > - status = "okay"; > - }; > - > - pwm@0,7000a000 { > - status = "okay"; > - }; > - > - i2c@0,7000c000 { > - status = "okay"; > - clock-frequency = <100000>; > - > - acodec: audio-codec@10 { > - compatible = "maxim,max98090"; > - reg = <0x10>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > - }; > - > - temperature-sensor@4c { > - compatible = "ti,tmp451"; > - reg = <0x4c>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > - > - #thermal-sensor-cells = <1>; > - }; > - }; > - > - i2c@0,7000c400 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000c500 { > - status = "okay"; > - clock-frequency = <400000>; > - > - tpm@20 { > - compatible = "infineon,slb9645tt"; > - reg = <0x20>; > - }; > - }; > - > - hdmi_ddc: i2c@0,7000c700 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000d000 { > - status = "okay"; > - clock-frequency = <400000>; > - > - pmic: pmic@40 { > - compatible = "ams,as3722"; > - reg = <0x40>; > - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > - > - ams,system-power-controller; > - > - #interrupt-cells = <2>; > - interrupt-controller; > - > - gpio-controller; > - #gpio-cells = <2>; > - > - pinctrl-names = "default"; > - pinctrl-0 = <&as3722_default>; > - > - as3722_default: pinmux { > - gpio0 { > - pins = "gpio0"; > - function = "gpio"; > - bias-pull-down; > - }; > - > - gpio1 { > - pins = "gpio1"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio2_4_7 { > - pins = "gpio2", "gpio4", "gpio7"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio3_6 { > - pins = "gpio3", "gpio6"; > - bias-high-impedance; > - }; > - > - gpio5 { > - pins = "gpio5"; > - function = "clk32k-out"; > - bias-pull-down; > - }; > - }; > - > - regulators { > - vsup-sd2-supply = <&vdd_5v0_sys>; > - vsup-sd3-supply = <&vdd_5v0_sys>; > - vsup-sd4-supply = <&vdd_5v0_sys>; > - vsup-sd5-supply = <&vdd_5v0_sys>; > - vin-ldo0-supply = <&vdd_1v35_lp0>; > - vin-ldo1-6-supply = <&vdd_3v3_run>; > - vin-ldo2-5-7-supply = <&vddio_1v8>; > - vin-ldo3-4-supply = <&vdd_3v3_sys>; > - vin-ldo9-10-supply = <&vdd_5v0_sys>; > - vin-ldo11-supply = <&vdd_3v3_run>; > - > - sd0 { > - regulator-name = "+VDD_CPU_AP"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <2>; > - }; > - > - sd1 { > - regulator-name = "+VDD_CORE"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <2500000>; > - regulator-max-microamp = <4000000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <1>; > - }; > - > - vdd_1v35_lp0: sd2 { > - regulator-name = "+1.35V_LP0(sd2)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - sd3 { > - regulator-name = "+1.35V_LP0(sd3)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_1v05_run: sd4 { > - regulator-name = "+1.05V_RUN"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - vddio_1v8: sd5 { > - regulator-name = "+1.8V_VDDIO"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - sd6 { > - regulator-name = "+VDD_GPU_AP"; > - regulator-min-microvolt = <650000>; > - regulator-max-microvolt = <1200000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo0 { > - regulator-name = "+1.05V_RUN_AVDD"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - regulator-boot-on; > - regulator-always-on; > - ams,ext-control = <1>; > - }; > - > - ldo1 { > - regulator-name = "+1.8V_RUN_CAM"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - > - ldo2 { > - regulator-name = "+1.2V_GEN_AVDD"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo3 { > - regulator-name = "+1.00V_LP0_VDD_RTC"; > - regulator-min-microvolt = <1000000>; > - regulator-max-microvolt = <1000000>; > - regulator-boot-on; > - regulator-always-on; > - ams,enable-tracking; > - }; > - > - vdd_run_cam: ldo4 { > - regulator-name = "+3.3V_RUN_CAM"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo5 { > - regulator-name = "+1.2V_RUN_CAM_FRONT"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - }; > - > - vddio_sdmmc3: ldo6 { > - regulator-name = "+VDDIO_SDMMC3"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <3300000>; > - }; > - > - ldo7 { > - regulator-name = "+1.05V_RUN_CAM_REAR"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - ldo9 { > - regulator-name = "+2.8V_RUN_TOUCH"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo10 { > - regulator-name = "+2.8V_RUN_CAM_AF"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo11 { > - regulator-name = "+1.8V_RUN_VPP_FUSE"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - }; > - }; > - }; > - > - spi@0,7000d400 { > - status = "okay"; > - > - cros_ec: cros-ec@0 { > - compatible = "google,cros-ec-spi"; > - spi-max-frequency = <3000000>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > - reg = <0>; > - > - google,cros-ec-spi-msg-delay = <2000>; > - > - i2c-tunnel { > - compatible = "google,cros-ec-i2c-tunnel"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - google,remote-bus = <0>; > - > - charger: bq24735@9 { > - compatible = "ti,bq24735"; > - reg = <0x9>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - ti,ac-detect-gpios = <&gpio > - TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - }; > - > - battery: sbs-battery@b { > - compatible = "sbs,sbs-battery"; > - reg = <0xb>; > - sbs,i2c-retry-count = <2>; > - sbs,poll-retry-count = <10>; > - power-supplies = <&charger>; > - }; > - }; > - }; > - }; > - > - spi@0,7000da00 { > - status = "okay"; > - spi-max-frequency = <25000000>; > - > - flash@0 { > - compatible = "winbond,w25q32dw"; > - reg = <0>; > - }; > - }; > - > - pmc@0,7000e400 { > - nvidia,invert-interrupt; > - nvidia,suspend-mode = <0>; > - nvidia,cpu-pwr-good-time = <500>; > - nvidia,cpu-pwr-off-time = <300>; > - nvidia,core-pwr-good-time = <641 3845>; > - nvidia,core-pwr-off-time = <61036>; > - nvidia,core-power-req-active-high; > - nvidia,sys-clock-req-active-high; > - }; > - > - hda@0,70030000 { > - status = "okay"; > - }; > - > - sdhci@0,700b0000 { /* WiFi/BT on this bus */ > - status = "okay"; > - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > - bus-width = <4>; > - no-1-8-v; > - non-removable; > - }; > - > - sdhci@0,700b0400 { /* SD Card on this bus */ > - status = "okay"; > - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > - bus-width = <4>; > - no-1-8-v; > - vqmmc-supply = <&vddio_sdmmc3>; > - }; > - > - sdhci@0,700b0600 { /* eMMC on this bus */ > - status = "okay"; > - bus-width = <8>; > - no-1-8-v; > - non-removable; > - }; > - > - ahub@0,70300000 { > - i2s@0,70301100 { > - status = "okay"; > - }; > - }; > - > - usb@0,7d000000 { /* Rear external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d000000 { > - status = "okay"; > - vbus-supply = <&vdd_usb1_vbus>; > - }; > - > - usb@0,7d004000 { /* Internal webcam. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d004000 { > - status = "okay"; > - vbus-supply = <&vdd_run_cam>; > - }; > - > - usb@0,7d008000 { /* Left external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d008000 { > - status = "okay"; > - vbus-supply = <&vdd_usb3_vbus>; > - }; > - > - backlight: backlight { > - compatible = "pwm-backlight"; > - > - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > - power-supply = <&vdd_led>; > - pwms = <&pwm 1 1000000>; > - > - default-brightness-level = <224>; > - brightness-levels = > - < 0 1 2 3 4 5 6 7 > - 8 9 10 11 12 13 14 15 > - 16 17 18 19 20 21 22 23 > - 24 25 26 27 28 29 30 31 > - 32 33 34 35 36 37 38 39 > - 40 41 42 43 44 45 46 47 > - 48 49 50 51 52 53 54 55 > - 56 57 58 59 60 61 62 63 > - 64 65 66 67 68 69 70 71 > - 72 73 74 75 76 77 78 79 > - 80 81 82 83 84 85 86 87 > - 88 89 90 91 92 93 94 95 > - 96 97 98 99 100 101 102 103 > - 104 105 106 107 108 109 110 111 > - 112 113 114 115 116 117 118 119 > - 120 121 122 123 124 125 126 127 > - 128 129 130 131 132 133 134 135 > - 136 137 138 139 140 141 142 143 > - 144 145 146 147 148 149 150 151 > - 152 153 154 155 156 157 158 159 > - 160 161 162 163 164 165 166 167 > - 168 169 170 171 172 173 174 175 > - 176 177 178 179 180 181 182 183 > - 184 185 186 187 188 189 190 191 > - 192 193 194 195 196 197 198 199 > - 200 201 202 203 204 205 206 207 > - 208 209 210 211 212 213 214 215 > - 216 217 218 219 220 221 222 223 > - 224 225 226 227 228 229 230 231 > - 232 233 234 235 236 237 238 239 > - 240 241 242 243 244 245 246 247 > - 248 249 250 251 252 253 254 255 > - 256>; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - clk32k_in: clock@0 { > - compatible = "fixed-clock"; > - reg = <0>; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > - > - gpio-keys { > - compatible = "gpio-keys"; > - > - lid { > - label = "Lid"; > - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > - linux,input-type = <5>; > - linux,code = <KEY_RESERVED>; > - debounce-interval = <1>; > - gpio-key,wakeup; > - }; > - > - power { > - label = "Power"; > - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > - linux,code = <KEY_POWER>; > - debounce-interval = <30>; > - gpio-key,wakeup; > - }; > - }; > - > - panel: panel { > - compatible = "auo,b133xtn01"; > - > - backlight = <&backlight>; > - ddc-i2c-bus = <&dpaux>; > - }; > - > - regulators { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - vdd_mux: regulator@0 { > - compatible = "regulator-fixed"; > - reg = <0>; > - regulator-name = "+VDD_MUX"; > - regulator-min-microvolt = <12000000>; > - regulator-max-microvolt = <12000000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_5v0_sys: regulator@1 { > - compatible = "regulator-fixed"; > - reg = <1>; > - regulator-name = "+5V_SYS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_sys: regulator@2 { > - compatible = "regulator-fixed"; > - reg = <2>; > - regulator-name = "+3.3V_SYS"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_run: regulator@3 { > - compatible = "regulator-fixed"; > - reg = <3>; > - regulator-name = "+3.3V_RUN"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_3v3_hdmi: regulator@4 { > - compatible = "regulator-fixed"; > - reg = <4>; > - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_led: regulator@5 { > - compatible = "regulator-fixed"; > - reg = <5>; > - regulator-name = "+VDD_LED"; > - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_5v0_ts: regulator@6 { > - compatible = "regulator-fixed"; > - reg = <6>; > - regulator-name = "+5V_VDD_TS_SW"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-boot-on; > - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb1_vbus: regulator@7 { > - compatible = "regulator-fixed"; > - reg = <7>; > - regulator-name = "+5V_USB_HS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb3_vbus: regulator@8 { > - compatible = "regulator-fixed"; > - reg = <8>; > - regulator-name = "+5V_USB_SS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_3v3_panel: regulator@9 { > - compatible = "regulator-fixed"; > - reg = <9>; > - regulator-name = "+3.3V_PANEL"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_3v3_lp0: regulator@10 { > - compatible = "regulator-fixed"; > - reg = <10>; > - regulator-name = "+3.3V_LP0"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - /* > - * TODO: find a way to wire this up with the USB EHCI > - * controllers so that it can be enabled on demand. > - */ > - regulator-always-on; > - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_hdmi_pll: regulator@11 { > - compatible = "regulator-fixed"; > - reg = <11>; > - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > - vin-supply = <&vdd_1v05_run>; > - }; > - > - vdd_5v0_hdmi: regulator@12 { > - compatible = "regulator-fixed"; > - reg = <12>; > - regulator-name = "+5V_HDMI_CON"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - }; > + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; > > sound { > - compatible = "nvidia,tegra-audio-max98090-nyan-big", > - "nvidia,tegra-audio-max98090"; > - nvidia,model = "Acer Chromebook 13"; > - > - nvidia,audio-routing = > - "Headphones", "HPR", > - "Headphones", "HPL", > - "Speakers", "SPKR", > - "Speakers", "SPKL", > - "Mic Jack", "MICBIAS", > - "DMICL", "Int Mic", > - "DMICR", "Int Mic", > - "IN34", "Mic Jack"; > - > - nvidia,i2s-controller = <&tegra_i2s1>; > - nvidia,audio-codec = <&acodec>; > - > - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > - <&tegra_car TEGRA124_CLK_EXTERN1>; > - clock-names = "pll_a", "pll_a_out0", "mclk"; > - > - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + nvidia,model = "Acer Chromebook 13 CB5-311"; > }; > }; > - > -#include "cros-ec-keyboard.dtsi" > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi > new file mode 100644 > index 0000000..4c68658 > --- /dev/null > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi > @@ -0,0 +1,1133 @@ > +#include <dt-bindings/input/input.h> > +#include "tegra124.dtsi" > + > +/ { > + compatible = "google,nyan", "nvidia,tegra124"; > + > + aliases { > + rtc0 = "/i2c@0,7000d000/pmic@40"; > + rtc1 = "/rtc@0,7000e000"; > + serial0 = &uarta; > + }; > + > + memory { > + reg = <0x0 0x80000000 0x0 0x80000000>; > + }; > + > + host1x@0,50000000 { > + hdmi@0,54280000 { > + status = "okay"; > + > + vdd-supply = <&vdd_3v3_hdmi>; > + pll-supply = <&vdd_hdmi_pll>; > + hdmi-supply = <&vdd_5v0_hdmi>; > + > + nvidia,ddc-i2c-bus = <&hdmi_ddc>; > + nvidia,hpd-gpio = > + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > + }; > + > + sor@0,54540000 { > + status = "okay"; > + > + nvidia,dpaux = <&dpaux>; > + nvidia,panel = <&panel>; > + }; > + > + dpaux@0,545c0000 { > + vdd-supply = <&vdd_3v3_panel>; > + status = "okay"; > + }; > + }; > + > + pinmux@0,70000868 { > + pinctrl-names = "boot"; > + pinctrl-0 = <&pinmux_boot>; > + > + pinmux_boot: common { > + dap_mclk1_pw4 { > + nvidia,pins = "dap_mclk1_pw4"; > + nvidia,function = "extperiph1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_din_pa4 { > + nvidia,pins = "dap2_din_pa4"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_dout_pa5 { > + nvidia,pins = "dap2_dout_pa5", > + "dap2_fs_pa2", > + "dap2_sclk_pa3"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dvfs_pwm_px0 { > + nvidia,pins = "dvfs_pwm_px0", > + "dvfs_clk_px2"; > + nvidia,function = "cldvfs"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_clk_py0 { > + nvidia,pins = "ulpi_clk_py0", > + "ulpi_nxt_py2", > + "ulpi_stp_py3"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_dir_py1 { > + nvidia,pins = "ulpi_dir_py1"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cam_i2c_scl_pbb1 { > + nvidia,pins = "cam_i2c_scl_pbb1", > + "cam_i2c_sda_pbb2"; > + nvidia,function = "i2c3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + gen2_i2c_scl_pt5 { > + nvidia,pins = "gen2_i2c_scl_pt5", > + "gen2_i2c_sda_pt6"; > + nvidia,function = "i2c2"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + pg4 { > + nvidia,pins = "pg4", > + "pg5", > + "pg6", > + "pi3"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pg7 { > + nvidia,pins = "pg7"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ph1 { > + nvidia,pins = "ph1"; > + nvidia,function = "pwm1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pk0 { > + nvidia,pins = "pk0", > + "kb_row15_ps7", > + "clk_32k_out_pa0"; > + nvidia,function = "soc"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sdmmc1_clk_pz0 { > + nvidia,pins = "sdmmc1_clk_pz0"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc1_cmd_pz1 { > + nvidia,pins = "sdmmc1_cmd_pz1", > + "sdmmc1_dat0_py7", > + "sdmmc1_dat1_py6", > + "sdmmc1_dat2_py5", > + "sdmmc1_dat3_py4"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_clk_pa6 { > + nvidia,pins = "sdmmc3_clk_pa6"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_cmd_pa7 { > + nvidia,pins = "sdmmc3_cmd_pa7", > + "sdmmc3_dat0_pb7", > + "sdmmc3_dat1_pb6", > + "sdmmc3_dat2_pb5", > + "sdmmc3_dat3_pb4", > + "kb_col4_pq4", > + "sdmmc3_clk_lb_out_pee4", > + "sdmmc3_clk_lb_in_pee5", > + "sdmmc3_cd_n_pv2"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_clk_pcc4 { > + nvidia,pins = "sdmmc4_clk_pcc4"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_cmd_pt7 { > + nvidia,pins = "sdmmc4_cmd_pt7", > + "sdmmc4_dat0_paa0", > + "sdmmc4_dat1_paa1", > + "sdmmc4_dat2_paa2", > + "sdmmc4_dat3_paa3", > + "sdmmc4_dat4_paa4", > + "sdmmc4_dat5_paa5", > + "sdmmc4_dat6_paa6", > + "sdmmc4_dat7_paa7"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_i2c_scl_pz6 { > + nvidia,pins = "pwr_i2c_scl_pz6", > + "pwr_i2c_sda_pz7"; > + nvidia,function = "i2cpwr"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + jtag_rtck { > + nvidia,pins = "jtag_rtck"; > + nvidia,function = "rtck"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk_32k_in { > + nvidia,pins = "clk_32k_in"; > + nvidia,function = "clk"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + core_pwr_req { > + nvidia,pins = "core_pwr_req"; > + nvidia,function = "pwron"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cpu_pwr_req { > + nvidia,pins = "cpu_pwr_req"; > + nvidia,function = "cpu"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_int_n { > + nvidia,pins = "pwr_int_n"; > + nvidia,function = "pmi"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + reset_out_n { > + nvidia,pins = "reset_out_n"; > + nvidia,function = "reset_out_n"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk3_out_pee0 { > + nvidia,pins = "clk3_out_pee0"; > + nvidia,function = "extperiph3"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + gen1_i2c_sda_pc5 { > + nvidia,pins = "gen1_i2c_sda_pc5", > + "gen1_i2c_scl_pc4"; > + nvidia,function = "i2c1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + hdmi_cec_pee3 { > + nvidia,pins = "hdmi_cec_pee3"; > + nvidia,function = "cec"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_DISABLE>; > + }; > + hdmi_int_pn7 { > + nvidia,pins = "hdmi_int_pn7"; > + nvidia,function = "rsvd1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ddc_scl_pv4 { > + nvidia,pins = "ddc_scl_pv4", > + "ddc_sda_pv5"; > + nvidia,function = "i2c4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > + }; > + kb_row10_ps2 { > + nvidia,pins = "kb_row10_ps2"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_row9_ps1 { > + nvidia,pins = "kb_row9_ps1"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + usb_vbus_en0_pn4 { > + nvidia,pins = "usb_vbus_en0_pn4", > + "usb_vbus_en1_pn5"; > + nvidia,function = "usb"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + drive_sdio1 { > + nvidia,pins = "drive_sdio1"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <36>; > + nvidia,pull-up-strength = <20>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > + }; > + drive_sdio3 { > + nvidia,pins = "drive_sdio3"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <22>; > + nvidia,pull-up-strength = <36>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + }; > + drive_gma { > + nvidia,pins = "drive_gma"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <2>; > + nvidia,pull-up-strength = <1>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,drive-type = <1>; > + }; > + codec_irq_l { > + nvidia,pins = "ph4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lcd_bl_en { > + nvidia,pins = "ph2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + touch_irq_l { > + nvidia,pins = "gpio_w3_aud_pw3"; > + nvidia,function = "spi6"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + tpm_davint_l { > + nvidia,pins = "ph6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_irq_l { > + nvidia,pins = "pk2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_reset_l { > + nvidia,pins = "pk4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ts_shdn_l { > + nvidia,pins = "pk1"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ph7 { > + nvidia,pins = "ph7"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_col0_ap { > + nvidia,pins = "kb_col0_pq0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lid_open { > + nvidia,pins = "kb_row4_pr4"; > + nvidia,function = "rsvd3"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + en_vdd_sd { > + nvidia,pins = "kb_row0_pr0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ac_ok { > + nvidia,pins = "pj0"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sensor_irq_l { > + nvidia,pins = "pi6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + wifi_en { > + nvidia,pins = "gpio_x7_aud_px7"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_bl { > + nvidia,pins = "dap3_dout_pp2"; > + nvidia,function = "i2s2"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_hdmi { > + nvidia,pins = "spdif_in_pk6"; > + nvidia,function = "spdif"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + soc_warm_reset_l { > + nvidia,pins = "pi5"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + hp_det_l { > + nvidia,pins = "pi7"; > + nvidia,function = "rsvd1"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + mic_det_l { > + nvidia,pins = "kb_row7_pr7"; > + nvidia,function = "rsvd2"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + }; > + }; > + > + serial@0,70006000 { > + /* Debug connector on the bottom of the board near SD card. */ > + status = "okay"; > + }; > + > + pwm@0,7000a000 { > + status = "okay"; > + }; > + > + i2c@0,7000c000 { > + status = "okay"; > + clock-frequency = <100000>; > + > + acodec: audio-codec@10 { > + compatible = "maxim,max98090"; > + reg = <0x10>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > + }; > + > + temperature-sensor@4c { > + compatible = "ti,tmp451"; > + reg = <0x4c>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > + i2c@0,7000c400 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000c500 { > + status = "okay"; > + clock-frequency = <400000>; > + > + tpm@20 { > + compatible = "infineon,slb9645tt"; > + reg = <0x20>; > + }; > + }; > + > + hdmi_ddc: i2c@0,7000c700 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000d000 { > + status = "okay"; > + clock-frequency = <400000>; > + > + pmic: pmic@40 { > + compatible = "ams,as3722"; > + reg = <0x40>; > + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > + > + ams,system-power-controller; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&as3722_default>; > + > + as3722_default: pinmux { > + gpio0 { > + pins = "gpio0"; > + function = "gpio"; > + bias-pull-down; > + }; > + > + gpio1 { > + pins = "gpio1"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio2_4_7 { > + pins = "gpio2", "gpio4", "gpio7"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio3_6 { > + pins = "gpio3", "gpio6"; > + bias-high-impedance; > + }; > + > + gpio5 { > + pins = "gpio5"; > + function = "clk32k-out"; > + bias-pull-down; > + }; > + }; > + > + regulators { > + vsup-sd2-supply = <&vdd_5v0_sys>; > + vsup-sd3-supply = <&vdd_5v0_sys>; > + vsup-sd4-supply = <&vdd_5v0_sys>; > + vsup-sd5-supply = <&vdd_5v0_sys>; > + vin-ldo0-supply = <&vdd_1v35_lp0>; > + vin-ldo1-6-supply = <&vdd_3v3_run>; > + vin-ldo2-5-7-supply = <&vddio_1v8>; > + vin-ldo3-4-supply = <&vdd_3v3_sys>; > + vin-ldo9-10-supply = <&vdd_5v0_sys>; > + vin-ldo11-supply = <&vdd_3v3_run>; > + > + sd0 { > + regulator-name = "+VDD_CPU_AP"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <2>; > + }; > + > + sd1 { > + regulator-name = "+VDD_CORE"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <2500000>; > + regulator-max-microamp = <4000000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <1>; > + }; > + > + vdd_1v35_lp0: sd2 { > + regulator-name = "+1.35V_LP0(sd2)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + sd3 { > + regulator-name = "+1.35V_LP0(sd3)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_1v05_run: sd4 { > + regulator-name = "+1.05V_RUN"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + vddio_1v8: sd5 { > + regulator-name = "+1.8V_VDDIO"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sd6 { > + regulator-name = "+VDD_GPU_AP"; > + regulator-min-microvolt = <650000>; > + regulator-max-microvolt = <1200000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo0 { > + regulator-name = "+1.05V_RUN_AVDD"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + regulator-boot-on; > + regulator-always-on; > + ams,ext-control = <1>; > + }; > + > + ldo1 { > + regulator-name = "+1.8V_RUN_CAM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo2 { > + regulator-name = "+1.2V_GEN_AVDD"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3 { > + regulator-name = "+1.00V_LP0_VDD_RTC"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1000000>; > + regulator-boot-on; > + regulator-always-on; > + ams,enable-tracking; > + }; > + > + vdd_run_cam: ldo4 { > + regulator-name = "+3.3V_RUN_CAM"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo5 { > + regulator-name = "+1.2V_RUN_CAM_FRONT"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + }; > + > + vddio_sdmmc3: ldo6 { > + regulator-name = "+VDDIO_SDMMC3"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo7 { > + regulator-name = "+1.05V_RUN_CAM_REAR"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + ldo9 { > + regulator-name = "+2.8V_RUN_TOUCH"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo10 { > + regulator-name = "+2.8V_RUN_CAM_AF"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo11 { > + regulator-name = "+1.8V_RUN_VPP_FUSE"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + }; > + }; > + }; > + > + spi@0,7000d400 { > + status = "okay"; > + > + cros_ec: cros-ec@0 { > + compatible = "google,cros-ec-spi"; > + spi-max-frequency = <3000000>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > + reg = <0>; > + > + google,cros-ec-spi-msg-delay = <2000>; > + > + i2c-tunnel { > + compatible = "google,cros-ec-i2c-tunnel"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + google,remote-bus = <0>; > + > + charger: bq24735@9 { > + compatible = "ti,bq24735"; > + reg = <0x9>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + ti,ac-detect-gpios = <&gpio > + TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + }; > + > + battery: sbs-battery@b { > + compatible = "sbs,sbs-battery"; > + reg = <0xb>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <10>; > + power-supplies = <&charger>; > + }; > + }; > + }; > + }; > + > + spi@0,7000da00 { > + status = "okay"; > + spi-max-frequency = <25000000>; > + > + flash@0 { > + compatible = "winbond,w25q32dw"; > + reg = <0>; > + }; > + }; > + > + pmc@0,7000e400 { > + nvidia,invert-interrupt; > + nvidia,suspend-mode = <0>; > + nvidia,cpu-pwr-good-time = <500>; > + nvidia,cpu-pwr-off-time = <300>; > + nvidia,core-pwr-good-time = <641 3845>; > + nvidia,core-pwr-off-time = <61036>; > + nvidia,core-power-req-active-high; > + nvidia,sys-clock-req-active-high; > + }; > + > + hda@0,70030000 { > + status = "okay"; > + }; > + > + sdhci@0,700b0000 { /* WiFi/BT on this bus */ > + status = "okay"; > + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > + bus-width = <4>; > + no-1-8-v; > + non-removable; > + }; > + > + sdhci@0,700b0400 { /* SD Card on this bus */ > + status = "okay"; > + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > + bus-width = <4>; > + no-1-8-v; > + vqmmc-supply = <&vddio_sdmmc3>; > + }; > + > + sdhci@0,700b0600 { /* eMMC on this bus */ > + status = "okay"; > + bus-width = <8>; > + no-1-8-v; > + non-removable; > + }; > + > + ahub@0,70300000 { > + i2s@0,70301100 { > + status = "okay"; > + }; > + }; > + > + usb@0,7d000000 { /* Rear external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d000000 { > + status = "okay"; > + vbus-supply = <&vdd_usb1_vbus>; > + }; > + > + usb@0,7d004000 { /* Internal webcam. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d004000 { > + status = "okay"; > + vbus-supply = <&vdd_run_cam>; > + }; > + > + usb@0,7d008000 { /* Left external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d008000 { > + status = "okay"; > + vbus-supply = <&vdd_usb3_vbus>; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + > + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > + power-supply = <&vdd_led>; > + pwms = <&pwm 1 1000000>; > + > + default-brightness-level = <224>; > + brightness-levels = > + < 0 1 2 3 4 5 6 7 > + 8 9 10 11 12 13 14 15 > + 16 17 18 19 20 21 22 23 > + 24 25 26 27 28 29 30 31 > + 32 33 34 35 36 37 38 39 > + 40 41 42 43 44 45 46 47 > + 48 49 50 51 52 53 54 55 > + 56 57 58 59 60 61 62 63 > + 64 65 66 67 68 69 70 71 > + 72 73 74 75 76 77 78 79 > + 80 81 82 83 84 85 86 87 > + 88 89 90 91 92 93 94 95 > + 96 97 98 99 100 101 102 103 > + 104 105 106 107 108 109 110 111 > + 112 113 114 115 116 117 118 119 > + 120 121 122 123 124 125 126 127 > + 128 129 130 131 132 133 134 135 > + 136 137 138 139 140 141 142 143 > + 144 145 146 147 148 149 150 151 > + 152 153 154 155 156 157 158 159 > + 160 161 162 163 164 165 166 167 > + 168 169 170 171 172 173 174 175 > + 176 177 178 179 180 181 182 183 > + 184 185 186 187 188 189 190 191 > + 192 193 194 195 196 197 198 199 > + 200 201 202 203 204 205 206 207 > + 208 209 210 211 212 213 214 215 > + 216 217 218 219 220 221 222 223 > + 224 225 226 227 228 229 230 231 > + 232 233 234 235 236 237 238 239 > + 240 241 242 243 244 245 246 247 > + 248 249 250 251 252 253 254 255 > + 256>; > + }; > + > + clocks { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + clk32k_in: clock@0 { > + compatible = "fixed-clock"; > + reg = <0>; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + lid { > + label = "Lid"; > + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > + linux,input-type = <5>; > + linux,code = <KEY_RESERVED>; > + debounce-interval = <1>; > + gpio-key,wakeup; > + }; > + > + power { > + label = "Power"; > + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > + linux,code = <KEY_POWER>; > + debounce-interval = <30>; > + gpio-key,wakeup; > + }; > + }; > + > + panel: panel { > + compatible = "auo,b133xtn01"; > + > + backlight = <&backlight>; > + ddc-i2c-bus = <&dpaux>; > + }; Back when we merged the nyan-big DTS there was some discussion and it was concluded that the devices are very similar, with the panel being one notable exception. So I think that this belongs in the nyan-big DTS and you need to add a similar property to the nyan-blaze DTS with the compatible for the panel used in the design. And you might need to add an entry for the panel in the panel-simple driver, too. Thierry > + > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdd_mux: regulator@0 { > + compatible = "regulator-fixed"; > + reg = <0>; > + regulator-name = "+VDD_MUX"; > + regulator-min-microvolt = <12000000>; > + regulator-max-microvolt = <12000000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_5v0_sys: regulator@1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "+5V_SYS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_sys: regulator@2 { > + compatible = "regulator-fixed"; > + reg = <2>; > + regulator-name = "+3.3V_SYS"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_run: regulator@3 { > + compatible = "regulator-fixed"; > + reg = <3>; > + regulator-name = "+3.3V_RUN"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_3v3_hdmi: regulator@4 { > + compatible = "regulator-fixed"; > + reg = <4>; > + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_led: regulator@5 { > + compatible = "regulator-fixed"; > + reg = <5>; > + regulator-name = "+VDD_LED"; > + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_5v0_ts: regulator@6 { > + compatible = "regulator-fixed"; > + reg = <6>; > + regulator-name = "+5V_VDD_TS_SW"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-boot-on; > + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb1_vbus: regulator@7 { > + compatible = "regulator-fixed"; > + reg = <7>; > + regulator-name = "+5V_USB_HS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb3_vbus: regulator@8 { > + compatible = "regulator-fixed"; > + reg = <8>; > + regulator-name = "+5V_USB_SS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_3v3_panel: regulator@9 { > + compatible = "regulator-fixed"; > + reg = <9>; > + regulator-name = "+3.3V_PANEL"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_3v3_lp0: regulator@10 { > + compatible = "regulator-fixed"; > + reg = <10>; > + regulator-name = "+3.3V_LP0"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + /* > + * TODO: find a way to wire this up with the USB EHCI > + * controllers so that it can be enabled on demand. > + */ > + regulator-always-on; > + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_hdmi_pll: regulator@11 { > + compatible = "regulator-fixed"; > + reg = <11>; > + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > + vin-supply = <&vdd_1v05_run>; > + }; > + > + vdd_5v0_hdmi: regulator@12 { > + compatible = "regulator-fixed"; > + reg = <12>; > + regulator-name = "+5V_HDMI_CON"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + }; > + > + sound { > + compatible = "nvidia,tegra-audio-max98090-nyan-big", > + "nvidia,tegra-audio-max98090"; > + > + nvidia,audio-routing = > + "Headphones", "HPR", > + "Headphones", "HPL", > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "Mic Jack", "MICBIAS", > + "DMICL", "Int Mic", > + "DMICR", "Int Mic", > + "IN34", "Mic Jack"; > + > + nvidia,i2s-controller = <&tegra_i2s1>; > + nvidia,audio-codec = <&acodec>; > + > + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > + <&tegra_car TEGRA124_CLK_EXTERN1>; > + clock-names = "pll_a", "pll_a_out0", "mclk"; > + > + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + }; > +}; > + > +#include "cros-ec-keyboard.dtsi" > -- > 1.9.3 > [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 41+ messages in thread
[parent not found: <20150106130656.GF31830-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>]
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT 2015-01-06 13:06 ` Thierry Reding @ 2015-01-06 17:30 ` Andrew Bresticker -1 siblings, 0 replies; 41+ messages in thread From: Andrew Bresticker @ 2015-01-06 17:30 UTC (permalink / raw) To: Thierry Reding Cc: Tomeu Vizoso, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Dylan Reid, Olof Johansson, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA On Tue, Jan 6, 2015 at 5:06 AM, Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > Cc'ing Dylan and Olof. I've verified that the resulting nyan-big DTB > after this series is exactly the same as before (well, except where > changes were made on purpose), but I'd like an Ack from either of you > regarding the split into the nyan DTS include. > > Quoting the full patch for Dylan and Olof, one comment below (near the > bottom). > > On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: >> In preparation for adding the DT for the nyan-blaze board. >> >> Signed-off-by: Tomeu Vizoso <tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> >> --- >> arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- >> arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ >> 2 files changed, 1136 insertions(+), 1128 deletions(-) >> create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi >> >> diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts >> index 4752572..2041077 100644 >> --- a/arch/arm/boot/dts/tegra124-nyan-big.dts >> +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts >> @@ -1,1137 +1,12 @@ >> /dts-v1/; >> >> -#include <dt-bindings/input/input.h> >> -#include "tegra124.dtsi" >> +#include "tegra124-nyan.dtsi" >> >> / { >> model = "Acer Chromebook 13 CB5-311"; >> - compatible = "google,nyan-big", "nvidia,tegra124"; >> - >> - aliases { >> - rtc0 = "/i2c@0,7000d000/pmic@40"; >> - rtc1 = "/rtc@0,7000e000"; >> - serial0 = &uarta; >> - }; >> - >> - memory { >> - reg = <0x0 0x80000000 0x0 0x80000000>; >> - }; >> - >> - host1x@0,50000000 { >> - hdmi@0,54280000 { >> - status = "okay"; >> - >> - vdd-supply = <&vdd_3v3_hdmi>; >> - pll-supply = <&vdd_hdmi_pll>; >> - hdmi-supply = <&vdd_5v0_hdmi>; >> - >> - nvidia,ddc-i2c-bus = <&hdmi_ddc>; >> - nvidia,hpd-gpio = >> - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; >> - }; >> - >> - sor@0,54540000 { >> - status = "okay"; >> - >> - nvidia,dpaux = <&dpaux>; >> - nvidia,panel = <&panel>; >> - }; >> - >> - dpaux@0,545c0000 { >> - vdd-supply = <&vdd_3v3_panel>; >> - status = "okay"; >> - }; >> - }; >> - >> - pinmux@0,70000868 { >> - pinctrl-names = "boot"; >> - pinctrl-0 = <&pinmux_boot>; >> - >> - pinmux_boot: common { >> - dap_mclk1_pw4 { >> - nvidia,pins = "dap_mclk1_pw4"; >> - nvidia,function = "extperiph1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - dap2_din_pa4 { >> - nvidia,pins = "dap2_din_pa4"; >> - nvidia,function = "i2s1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - dap2_dout_pa5 { >> - nvidia,pins = "dap2_dout_pa5", >> - "dap2_fs_pa2", >> - "dap2_sclk_pa3"; >> - nvidia,function = "i2s1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - dvfs_pwm_px0 { >> - nvidia,pins = "dvfs_pwm_px0", >> - "dvfs_clk_px2"; >> - nvidia,function = "cldvfs"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ulpi_clk_py0 { >> - nvidia,pins = "ulpi_clk_py0", >> - "ulpi_nxt_py2", >> - "ulpi_stp_py3"; >> - nvidia,function = "spi1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ulpi_dir_py1 { >> - nvidia,pins = "ulpi_dir_py1"; >> - nvidia,function = "spi1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - cam_i2c_scl_pbb1 { >> - nvidia,pins = "cam_i2c_scl_pbb1", >> - "cam_i2c_sda_pbb2"; >> - nvidia,function = "i2c3"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - gen2_i2c_scl_pt5 { >> - nvidia,pins = "gen2_i2c_scl_pt5", >> - "gen2_i2c_sda_pt6"; >> - nvidia,function = "i2c2"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - pg4 { >> - nvidia,pins = "pg4", >> - "pg5", >> - "pg6", >> - "pi3"; >> - nvidia,function = "spi4"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pg7 { >> - nvidia,pins = "pg7"; >> - nvidia,function = "spi4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ph1 { >> - nvidia,pins = "ph1"; >> - nvidia,function = "pwm1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pk0 { >> - nvidia,pins = "pk0", >> - "kb_row15_ps7", >> - "clk_32k_out_pa0"; >> - nvidia,function = "soc"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - sdmmc1_clk_pz0 { >> - nvidia,pins = "sdmmc1_clk_pz0"; >> - nvidia,function = "sdmmc1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc1_cmd_pz1 { >> - nvidia,pins = "sdmmc1_cmd_pz1", >> - "sdmmc1_dat0_py7", >> - "sdmmc1_dat1_py6", >> - "sdmmc1_dat2_py5", >> - "sdmmc1_dat3_py4"; >> - nvidia,function = "sdmmc1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc3_clk_pa6 { >> - nvidia,pins = "sdmmc3_clk_pa6"; >> - nvidia,function = "sdmmc3"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc3_cmd_pa7 { >> - nvidia,pins = "sdmmc3_cmd_pa7", >> - "sdmmc3_dat0_pb7", >> - "sdmmc3_dat1_pb6", >> - "sdmmc3_dat2_pb5", >> - "sdmmc3_dat3_pb4", >> - "kb_col4_pq4", >> - "sdmmc3_clk_lb_out_pee4", >> - "sdmmc3_clk_lb_in_pee5", >> - "sdmmc3_cd_n_pv2"; >> - nvidia,function = "sdmmc3"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc4_clk_pcc4 { >> - nvidia,pins = "sdmmc4_clk_pcc4"; >> - nvidia,function = "sdmmc4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc4_cmd_pt7 { >> - nvidia,pins = "sdmmc4_cmd_pt7", >> - "sdmmc4_dat0_paa0", >> - "sdmmc4_dat1_paa1", >> - "sdmmc4_dat2_paa2", >> - "sdmmc4_dat3_paa3", >> - "sdmmc4_dat4_paa4", >> - "sdmmc4_dat5_paa5", >> - "sdmmc4_dat6_paa6", >> - "sdmmc4_dat7_paa7"; >> - nvidia,function = "sdmmc4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pwr_i2c_scl_pz6 { >> - nvidia,pins = "pwr_i2c_scl_pz6", >> - "pwr_i2c_sda_pz7"; >> - nvidia,function = "i2cpwr"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - jtag_rtck { >> - nvidia,pins = "jtag_rtck"; >> - nvidia,function = "rtck"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - clk_32k_in { >> - nvidia,pins = "clk_32k_in"; >> - nvidia,function = "clk"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - core_pwr_req { >> - nvidia,pins = "core_pwr_req"; >> - nvidia,function = "pwron"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - cpu_pwr_req { >> - nvidia,pins = "cpu_pwr_req"; >> - nvidia,function = "cpu"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pwr_int_n { >> - nvidia,pins = "pwr_int_n"; >> - nvidia,function = "pmi"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - reset_out_n { >> - nvidia,pins = "reset_out_n"; >> - nvidia,function = "reset_out_n"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - clk3_out_pee0 { >> - nvidia,pins = "clk3_out_pee0"; >> - nvidia,function = "extperiph3"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - gen1_i2c_sda_pc5 { >> - nvidia,pins = "gen1_i2c_sda_pc5", >> - "gen1_i2c_scl_pc4"; >> - nvidia,function = "i2c1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - hdmi_cec_pee3 { >> - nvidia,pins = "hdmi_cec_pee3"; >> - nvidia,function = "cec"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_DISABLE>; >> - }; >> - hdmi_int_pn7 { >> - nvidia,pins = "hdmi_int_pn7"; >> - nvidia,function = "rsvd1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ddc_scl_pv4 { >> - nvidia,pins = "ddc_scl_pv4", >> - "ddc_sda_pv5"; >> - nvidia,function = "i2c4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; >> - }; >> - kb_row10_ps2 { >> - nvidia,pins = "kb_row10_ps2"; >> - nvidia,function = "uarta"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - kb_row9_ps1 { >> - nvidia,pins = "kb_row9_ps1"; >> - nvidia,function = "uarta"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - usb_vbus_en0_pn4 { >> - nvidia,pins = "usb_vbus_en0_pn4", >> - "usb_vbus_en1_pn5"; >> - nvidia,function = "usb"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - drive_sdio1 { >> - nvidia,pins = "drive_sdio1"; >> - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> - nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> - nvidia,pull-down-strength = <36>; >> - nvidia,pull-up-strength = <20>; >> - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; >> - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; >> - }; >> - drive_sdio3 { >> - nvidia,pins = "drive_sdio3"; >> - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> - nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> - nvidia,pull-down-strength = <22>; >> - nvidia,pull-up-strength = <36>; >> - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - }; >> - drive_gma { >> - nvidia,pins = "drive_gma"; >> - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> - nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> - nvidia,pull-down-strength = <2>; >> - nvidia,pull-up-strength = <1>; >> - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - nvidia,drive-type = <1>; >> - }; >> - codec_irq_l { >> - nvidia,pins = "ph4"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - lcd_bl_en { >> - nvidia,pins = "ph2"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - touch_irq_l { >> - nvidia,pins = "gpio_w3_aud_pw3"; >> - nvidia,function = "spi6"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - tpm_davint_l { >> - nvidia,pins = "ph6"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - ts_irq_l { >> - nvidia,pins = "pk2"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - ts_reset_l { >> - nvidia,pins = "pk4"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - ts_shdn_l { >> - nvidia,pins = "pk1"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - ph7 { >> - nvidia,pins = "ph7"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - kb_col0_ap { >> - nvidia,pins = "kb_col0_pq0"; >> - nvidia,function = "rsvd4"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - lid_open { >> - nvidia,pins = "kb_row4_pr4"; >> - nvidia,function = "rsvd3"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - en_vdd_sd { >> - nvidia,pins = "kb_row0_pr0"; >> - nvidia,function = "rsvd4"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - ac_ok { >> - nvidia,pins = "pj0"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - sensor_irq_l { >> - nvidia,pins = "pi6"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - wifi_en { >> - nvidia,pins = "gpio_x7_aud_px7"; >> - nvidia,function = "rsvd4"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - en_vdd_bl { >> - nvidia,pins = "dap3_dout_pp2"; >> - nvidia,function = "i2s2"; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - en_vdd_hdmi { >> - nvidia,pins = "spdif_in_pk6"; >> - nvidia,function = "spdif"; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - soc_warm_reset_l { >> - nvidia,pins = "pi5"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - hp_det_l { >> - nvidia,pins = "pi7"; >> - nvidia,function = "rsvd1"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - mic_det_l { >> - nvidia,pins = "kb_row7_pr7"; >> - nvidia,function = "rsvd2"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - }; >> - }; >> - >> - serial@0,70006000 { >> - /* Debug connector on the bottom of the board near SD card. */ >> - status = "okay"; >> - }; >> - >> - pwm@0,7000a000 { >> - status = "okay"; >> - }; >> - >> - i2c@0,7000c000 { >> - status = "okay"; >> - clock-frequency = <100000>; >> - >> - acodec: audio-codec@10 { >> - compatible = "maxim,max98090"; >> - reg = <0x10>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; >> - }; >> - >> - temperature-sensor@4c { >> - compatible = "ti,tmp451"; >> - reg = <0x4c>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; >> - >> - #thermal-sensor-cells = <1>; >> - }; >> - }; >> - >> - i2c@0,7000c400 { >> - status = "okay"; >> - clock-frequency = <100000>; >> - }; >> - >> - i2c@0,7000c500 { >> - status = "okay"; >> - clock-frequency = <400000>; >> - >> - tpm@20 { >> - compatible = "infineon,slb9645tt"; >> - reg = <0x20>; >> - }; >> - }; >> - >> - hdmi_ddc: i2c@0,7000c700 { >> - status = "okay"; >> - clock-frequency = <100000>; >> - }; >> - >> - i2c@0,7000d000 { >> - status = "okay"; >> - clock-frequency = <400000>; >> - >> - pmic: pmic@40 { >> - compatible = "ams,as3722"; >> - reg = <0x40>; >> - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; >> - >> - ams,system-power-controller; >> - >> - #interrupt-cells = <2>; >> - interrupt-controller; >> - >> - gpio-controller; >> - #gpio-cells = <2>; >> - >> - pinctrl-names = "default"; >> - pinctrl-0 = <&as3722_default>; >> - >> - as3722_default: pinmux { >> - gpio0 { >> - pins = "gpio0"; >> - function = "gpio"; >> - bias-pull-down; >> - }; >> - >> - gpio1 { >> - pins = "gpio1"; >> - function = "gpio"; >> - bias-pull-up; >> - }; >> - >> - gpio2_4_7 { >> - pins = "gpio2", "gpio4", "gpio7"; >> - function = "gpio"; >> - bias-pull-up; >> - }; >> - >> - gpio3_6 { >> - pins = "gpio3", "gpio6"; >> - bias-high-impedance; >> - }; >> - >> - gpio5 { >> - pins = "gpio5"; >> - function = "clk32k-out"; >> - bias-pull-down; >> - }; >> - }; >> - >> - regulators { >> - vsup-sd2-supply = <&vdd_5v0_sys>; >> - vsup-sd3-supply = <&vdd_5v0_sys>; >> - vsup-sd4-supply = <&vdd_5v0_sys>; >> - vsup-sd5-supply = <&vdd_5v0_sys>; >> - vin-ldo0-supply = <&vdd_1v35_lp0>; >> - vin-ldo1-6-supply = <&vdd_3v3_run>; >> - vin-ldo2-5-7-supply = <&vddio_1v8>; >> - vin-ldo3-4-supply = <&vdd_3v3_sys>; >> - vin-ldo9-10-supply = <&vdd_5v0_sys>; >> - vin-ldo11-supply = <&vdd_3v3_run>; >> - >> - sd0 { >> - regulator-name = "+VDD_CPU_AP"; >> - regulator-min-microvolt = <700000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-min-microamp = <3500000>; >> - regulator-max-microamp = <3500000>; >> - regulator-always-on; >> - regulator-boot-on; >> - ams,ext-control = <2>; >> - }; >> - >> - sd1 { >> - regulator-name = "+VDD_CORE"; >> - regulator-min-microvolt = <700000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-min-microamp = <2500000>; >> - regulator-max-microamp = <4000000>; >> - regulator-always-on; >> - regulator-boot-on; >> - ams,ext-control = <1>; >> - }; >> - >> - vdd_1v35_lp0: sd2 { >> - regulator-name = "+1.35V_LP0(sd2)"; >> - regulator-min-microvolt = <1350000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-always-on; >> - regulator-boot-on; >> - }; >> - >> - sd3 { >> - regulator-name = "+1.35V_LP0(sd3)"; >> - regulator-min-microvolt = <1350000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-always-on; >> - regulator-boot-on; >> - }; >> - >> - vdd_1v05_run: sd4 { >> - regulator-name = "+1.05V_RUN"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - }; >> - >> - vddio_1v8: sd5 { >> - regulator-name = "+1.8V_VDDIO"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> - sd6 { >> - regulator-name = "+VDD_GPU_AP"; >> - regulator-min-microvolt = <650000>; >> - regulator-max-microvolt = <1200000>; >> - regulator-min-microamp = <3500000>; >> - regulator-max-microamp = <3500000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> - ldo0 { >> - regulator-name = "+1.05V_RUN_AVDD"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - regulator-boot-on; >> - regulator-always-on; >> - ams,ext-control = <1>; >> - }; >> - >> - ldo1 { >> - regulator-name = "+1.8V_RUN_CAM"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - }; >> - >> - ldo2 { >> - regulator-name = "+1.2V_GEN_AVDD"; >> - regulator-min-microvolt = <1200000>; >> - regulator-max-microvolt = <1200000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> - ldo3 { >> - regulator-name = "+1.00V_LP0_VDD_RTC"; >> - regulator-min-microvolt = <1000000>; >> - regulator-max-microvolt = <1000000>; >> - regulator-boot-on; >> - regulator-always-on; >> - ams,enable-tracking; >> - }; >> - >> - vdd_run_cam: ldo4 { >> - regulator-name = "+3.3V_RUN_CAM"; >> - regulator-min-microvolt = <2800000>; >> - regulator-max-microvolt = <2800000>; >> - }; >> - >> - ldo5 { >> - regulator-name = "+1.2V_RUN_CAM_FRONT"; >> - regulator-min-microvolt = <1200000>; >> - regulator-max-microvolt = <1200000>; >> - }; >> - >> - vddio_sdmmc3: ldo6 { >> - regulator-name = "+VDDIO_SDMMC3"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <3300000>; >> - }; >> - >> - ldo7 { >> - regulator-name = "+1.05V_RUN_CAM_REAR"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - }; >> - >> - ldo9 { >> - regulator-name = "+2.8V_RUN_TOUCH"; >> - regulator-min-microvolt = <2800000>; >> - regulator-max-microvolt = <2800000>; >> - }; >> - >> - ldo10 { >> - regulator-name = "+2.8V_RUN_CAM_AF"; >> - regulator-min-microvolt = <2800000>; >> - regulator-max-microvolt = <2800000>; >> - }; >> - >> - ldo11 { >> - regulator-name = "+1.8V_RUN_VPP_FUSE"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - }; >> - }; >> - }; >> - }; >> - >> - spi@0,7000d400 { >> - status = "okay"; >> - >> - cros_ec: cros-ec@0 { >> - compatible = "google,cros-ec-spi"; >> - spi-max-frequency = <3000000>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; >> - reg = <0>; >> - >> - google,cros-ec-spi-msg-delay = <2000>; >> - >> - i2c-tunnel { >> - compatible = "google,cros-ec-i2c-tunnel"; >> - #address-cells = <1>; >> - #size-cells = <0>; >> - >> - google,remote-bus = <0>; >> - >> - charger: bq24735@9 { >> - compatible = "ti,bq24735"; >> - reg = <0x9>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(J, 0) >> - GPIO_ACTIVE_HIGH>; >> - ti,ac-detect-gpios = <&gpio >> - TEGRA_GPIO(J, 0) >> - GPIO_ACTIVE_HIGH>; >> - }; >> - >> - battery: sbs-battery@b { >> - compatible = "sbs,sbs-battery"; >> - reg = <0xb>; >> - sbs,i2c-retry-count = <2>; >> - sbs,poll-retry-count = <10>; >> - power-supplies = <&charger>; >> - }; >> - }; >> - }; >> - }; >> - >> - spi@0,7000da00 { >> - status = "okay"; >> - spi-max-frequency = <25000000>; >> - >> - flash@0 { >> - compatible = "winbond,w25q32dw"; >> - reg = <0>; >> - }; >> - }; >> - >> - pmc@0,7000e400 { >> - nvidia,invert-interrupt; >> - nvidia,suspend-mode = <0>; >> - nvidia,cpu-pwr-good-time = <500>; >> - nvidia,cpu-pwr-off-time = <300>; >> - nvidia,core-pwr-good-time = <641 3845>; >> - nvidia,core-pwr-off-time = <61036>; >> - nvidia,core-power-req-active-high; >> - nvidia,sys-clock-req-active-high; >> - }; >> - >> - hda@0,70030000 { >> - status = "okay"; >> - }; >> - >> - sdhci@0,700b0000 { /* WiFi/BT on this bus */ >> - status = "okay"; >> - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; >> - bus-width = <4>; >> - no-1-8-v; >> - non-removable; >> - }; >> - >> - sdhci@0,700b0400 { /* SD Card on this bus */ >> - status = "okay"; >> - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; >> - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; >> - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; >> - bus-width = <4>; >> - no-1-8-v; >> - vqmmc-supply = <&vddio_sdmmc3>; >> - }; >> - >> - sdhci@0,700b0600 { /* eMMC on this bus */ >> - status = "okay"; >> - bus-width = <8>; >> - no-1-8-v; >> - non-removable; >> - }; >> - >> - ahub@0,70300000 { >> - i2s@0,70301100 { >> - status = "okay"; >> - }; >> - }; >> - >> - usb@0,7d000000 { /* Rear external USB port. */ >> - status = "okay"; >> - }; >> - >> - usb-phy@0,7d000000 { >> - status = "okay"; >> - vbus-supply = <&vdd_usb1_vbus>; >> - }; >> - >> - usb@0,7d004000 { /* Internal webcam. */ >> - status = "okay"; >> - }; >> - >> - usb-phy@0,7d004000 { >> - status = "okay"; >> - vbus-supply = <&vdd_run_cam>; >> - }; >> - >> - usb@0,7d008000 { /* Left external USB port. */ >> - status = "okay"; >> - }; >> - >> - usb-phy@0,7d008000 { >> - status = "okay"; >> - vbus-supply = <&vdd_usb3_vbus>; >> - }; >> - >> - backlight: backlight { >> - compatible = "pwm-backlight"; >> - >> - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; >> - power-supply = <&vdd_led>; >> - pwms = <&pwm 1 1000000>; >> - >> - default-brightness-level = <224>; >> - brightness-levels = >> - < 0 1 2 3 4 5 6 7 >> - 8 9 10 11 12 13 14 15 >> - 16 17 18 19 20 21 22 23 >> - 24 25 26 27 28 29 30 31 >> - 32 33 34 35 36 37 38 39 >> - 40 41 42 43 44 45 46 47 >> - 48 49 50 51 52 53 54 55 >> - 56 57 58 59 60 61 62 63 >> - 64 65 66 67 68 69 70 71 >> - 72 73 74 75 76 77 78 79 >> - 80 81 82 83 84 85 86 87 >> - 88 89 90 91 92 93 94 95 >> - 96 97 98 99 100 101 102 103 >> - 104 105 106 107 108 109 110 111 >> - 112 113 114 115 116 117 118 119 >> - 120 121 122 123 124 125 126 127 >> - 128 129 130 131 132 133 134 135 >> - 136 137 138 139 140 141 142 143 >> - 144 145 146 147 148 149 150 151 >> - 152 153 154 155 156 157 158 159 >> - 160 161 162 163 164 165 166 167 >> - 168 169 170 171 172 173 174 175 >> - 176 177 178 179 180 181 182 183 >> - 184 185 186 187 188 189 190 191 >> - 192 193 194 195 196 197 198 199 >> - 200 201 202 203 204 205 206 207 >> - 208 209 210 211 212 213 214 215 >> - 216 217 218 219 220 221 222 223 >> - 224 225 226 227 228 229 230 231 >> - 232 233 234 235 236 237 238 239 >> - 240 241 242 243 244 245 246 247 >> - 248 249 250 251 252 253 254 255 >> - 256>; >> - }; >> - >> - clocks { >> - compatible = "simple-bus"; >> - #address-cells = <1>; >> - #size-cells = <0>; >> - >> - clk32k_in: clock@0 { >> - compatible = "fixed-clock"; >> - reg = <0>; >> - #clock-cells = <0>; >> - clock-frequency = <32768>; >> - }; >> - }; >> - >> - gpio-keys { >> - compatible = "gpio-keys"; >> - >> - lid { >> - label = "Lid"; >> - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; >> - linux,input-type = <5>; >> - linux,code = <KEY_RESERVED>; >> - debounce-interval = <1>; >> - gpio-key,wakeup; >> - }; >> - >> - power { >> - label = "Power"; >> - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; >> - linux,code = <KEY_POWER>; >> - debounce-interval = <30>; >> - gpio-key,wakeup; >> - }; >> - }; >> - >> - panel: panel { >> - compatible = "auo,b133xtn01"; >> - >> - backlight = <&backlight>; >> - ddc-i2c-bus = <&dpaux>; >> - }; >> - >> - regulators { >> - compatible = "simple-bus"; >> - #address-cells = <1>; >> - #size-cells = <0>; >> - >> - vdd_mux: regulator@0 { >> - compatible = "regulator-fixed"; >> - reg = <0>; >> - regulator-name = "+VDD_MUX"; >> - regulator-min-microvolt = <12000000>; >> - regulator-max-microvolt = <12000000>; >> - regulator-always-on; >> - regulator-boot-on; >> - }; >> - >> - vdd_5v0_sys: regulator@1 { >> - compatible = "regulator-fixed"; >> - reg = <1>; >> - regulator-name = "+5V_SYS"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - regulator-always-on; >> - regulator-boot-on; >> - vin-supply = <&vdd_mux>; >> - }; >> - >> - vdd_3v3_sys: regulator@2 { >> - compatible = "regulator-fixed"; >> - reg = <2>; >> - regulator-name = "+3.3V_SYS"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - regulator-always-on; >> - regulator-boot-on; >> - vin-supply = <&vdd_mux>; >> - }; >> - >> - vdd_3v3_run: regulator@3 { >> - compatible = "regulator-fixed"; >> - reg = <3>; >> - regulator-name = "+3.3V_RUN"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - regulator-always-on; >> - regulator-boot-on; >> - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_3v3_sys>; >> - }; >> - >> - vdd_3v3_hdmi: regulator@4 { >> - compatible = "regulator-fixed"; >> - reg = <4>; >> - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - vin-supply = <&vdd_3v3_run>; >> - }; >> - >> - vdd_led: regulator@5 { >> - compatible = "regulator-fixed"; >> - reg = <5>; >> - regulator-name = "+VDD_LED"; >> - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_mux>; >> - }; >> - >> - vdd_5v0_ts: regulator@6 { >> - compatible = "regulator-fixed"; >> - reg = <6>; >> - regulator-name = "+5V_VDD_TS_SW"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - regulator-boot-on; >> - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - >> - vdd_usb1_vbus: regulator@7 { >> - compatible = "regulator-fixed"; >> - reg = <7>; >> - regulator-name = "+5V_USB_HS"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - gpio-open-drain; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - >> - vdd_usb3_vbus: regulator@8 { >> - compatible = "regulator-fixed"; >> - reg = <8>; >> - regulator-name = "+5V_USB_SS"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - gpio-open-drain; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - >> - vdd_3v3_panel: regulator@9 { >> - compatible = "regulator-fixed"; >> - reg = <9>; >> - regulator-name = "+3.3V_PANEL"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_3v3_run>; >> - }; >> - >> - vdd_3v3_lp0: regulator@10 { >> - compatible = "regulator-fixed"; >> - reg = <10>; >> - regulator-name = "+3.3V_LP0"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - /* >> - * TODO: find a way to wire this up with the USB EHCI >> - * controllers so that it can be enabled on demand. >> - */ >> - regulator-always-on; >> - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_3v3_sys>; >> - }; >> - >> - vdd_hdmi_pll: regulator@11 { >> - compatible = "regulator-fixed"; >> - reg = <11>; >> - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; >> - vin-supply = <&vdd_1v05_run>; >> - }; >> - >> - vdd_5v0_hdmi: regulator@12 { >> - compatible = "regulator-fixed"; >> - reg = <12>; >> - regulator-name = "+5V_HDMI_CON"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - }; >> + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; >> >> sound { >> - compatible = "nvidia,tegra-audio-max98090-nyan-big", >> - "nvidia,tegra-audio-max98090"; >> - nvidia,model = "Acer Chromebook 13"; >> - >> - nvidia,audio-routing = >> - "Headphones", "HPR", >> - "Headphones", "HPL", >> - "Speakers", "SPKR", >> - "Speakers", "SPKL", >> - "Mic Jack", "MICBIAS", >> - "DMICL", "Int Mic", >> - "DMICR", "Int Mic", >> - "IN34", "Mic Jack"; >> - >> - nvidia,i2s-controller = <&tegra_i2s1>; >> - nvidia,audio-codec = <&acodec>; >> - >> - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, >> - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, >> - <&tegra_car TEGRA124_CLK_EXTERN1>; >> - clock-names = "pll_a", "pll_a_out0", "mclk"; >> - >> - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; >> + nvidia,model = "Acer Chromebook 13 CB5-311"; >> }; >> }; >> - >> -#include "cros-ec-keyboard.dtsi" >> diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi >> new file mode 100644 >> index 0000000..4c68658 >> --- /dev/null >> +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi >> @@ -0,0 +1,1133 @@ >> +#include <dt-bindings/input/input.h> >> +#include "tegra124.dtsi" >> + >> +/ { >> + compatible = "google,nyan", "nvidia,tegra124"; >> + >> + aliases { >> + rtc0 = "/i2c@0,7000d000/pmic@40"; >> + rtc1 = "/rtc@0,7000e000"; >> + serial0 = &uarta; >> + }; >> + >> + memory { >> + reg = <0x0 0x80000000 0x0 0x80000000>; >> + }; >> + >> + host1x@0,50000000 { >> + hdmi@0,54280000 { >> + status = "okay"; >> + >> + vdd-supply = <&vdd_3v3_hdmi>; >> + pll-supply = <&vdd_hdmi_pll>; >> + hdmi-supply = <&vdd_5v0_hdmi>; >> + >> + nvidia,ddc-i2c-bus = <&hdmi_ddc>; >> + nvidia,hpd-gpio = >> + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; >> + }; >> + >> + sor@0,54540000 { >> + status = "okay"; >> + >> + nvidia,dpaux = <&dpaux>; >> + nvidia,panel = <&panel>; >> + }; >> + >> + dpaux@0,545c0000 { >> + vdd-supply = <&vdd_3v3_panel>; >> + status = "okay"; >> + }; >> + }; >> + >> + pinmux@0,70000868 { >> + pinctrl-names = "boot"; >> + pinctrl-0 = <&pinmux_boot>; >> + >> + pinmux_boot: common { >> + dap_mclk1_pw4 { >> + nvidia,pins = "dap_mclk1_pw4"; >> + nvidia,function = "extperiph1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + dap2_din_pa4 { >> + nvidia,pins = "dap2_din_pa4"; >> + nvidia,function = "i2s1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + dap2_dout_pa5 { >> + nvidia,pins = "dap2_dout_pa5", >> + "dap2_fs_pa2", >> + "dap2_sclk_pa3"; >> + nvidia,function = "i2s1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + dvfs_pwm_px0 { >> + nvidia,pins = "dvfs_pwm_px0", >> + "dvfs_clk_px2"; >> + nvidia,function = "cldvfs"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ulpi_clk_py0 { >> + nvidia,pins = "ulpi_clk_py0", >> + "ulpi_nxt_py2", >> + "ulpi_stp_py3"; >> + nvidia,function = "spi1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ulpi_dir_py1 { >> + nvidia,pins = "ulpi_dir_py1"; >> + nvidia,function = "spi1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + cam_i2c_scl_pbb1 { >> + nvidia,pins = "cam_i2c_scl_pbb1", >> + "cam_i2c_sda_pbb2"; >> + nvidia,function = "i2c3"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + gen2_i2c_scl_pt5 { >> + nvidia,pins = "gen2_i2c_scl_pt5", >> + "gen2_i2c_sda_pt6"; >> + nvidia,function = "i2c2"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + pg4 { >> + nvidia,pins = "pg4", >> + "pg5", >> + "pg6", >> + "pi3"; >> + nvidia,function = "spi4"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pg7 { >> + nvidia,pins = "pg7"; >> + nvidia,function = "spi4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ph1 { >> + nvidia,pins = "ph1"; >> + nvidia,function = "pwm1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pk0 { >> + nvidia,pins = "pk0", >> + "kb_row15_ps7", >> + "clk_32k_out_pa0"; >> + nvidia,function = "soc"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + sdmmc1_clk_pz0 { >> + nvidia,pins = "sdmmc1_clk_pz0"; >> + nvidia,function = "sdmmc1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc1_cmd_pz1 { >> + nvidia,pins = "sdmmc1_cmd_pz1", >> + "sdmmc1_dat0_py7", >> + "sdmmc1_dat1_py6", >> + "sdmmc1_dat2_py5", >> + "sdmmc1_dat3_py4"; >> + nvidia,function = "sdmmc1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc3_clk_pa6 { >> + nvidia,pins = "sdmmc3_clk_pa6"; >> + nvidia,function = "sdmmc3"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc3_cmd_pa7 { >> + nvidia,pins = "sdmmc3_cmd_pa7", >> + "sdmmc3_dat0_pb7", >> + "sdmmc3_dat1_pb6", >> + "sdmmc3_dat2_pb5", >> + "sdmmc3_dat3_pb4", >> + "kb_col4_pq4", >> + "sdmmc3_clk_lb_out_pee4", >> + "sdmmc3_clk_lb_in_pee5", >> + "sdmmc3_cd_n_pv2"; >> + nvidia,function = "sdmmc3"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc4_clk_pcc4 { >> + nvidia,pins = "sdmmc4_clk_pcc4"; >> + nvidia,function = "sdmmc4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc4_cmd_pt7 { >> + nvidia,pins = "sdmmc4_cmd_pt7", >> + "sdmmc4_dat0_paa0", >> + "sdmmc4_dat1_paa1", >> + "sdmmc4_dat2_paa2", >> + "sdmmc4_dat3_paa3", >> + "sdmmc4_dat4_paa4", >> + "sdmmc4_dat5_paa5", >> + "sdmmc4_dat6_paa6", >> + "sdmmc4_dat7_paa7"; >> + nvidia,function = "sdmmc4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pwr_i2c_scl_pz6 { >> + nvidia,pins = "pwr_i2c_scl_pz6", >> + "pwr_i2c_sda_pz7"; >> + nvidia,function = "i2cpwr"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + jtag_rtck { >> + nvidia,pins = "jtag_rtck"; >> + nvidia,function = "rtck"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + clk_32k_in { >> + nvidia,pins = "clk_32k_in"; >> + nvidia,function = "clk"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + core_pwr_req { >> + nvidia,pins = "core_pwr_req"; >> + nvidia,function = "pwron"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + cpu_pwr_req { >> + nvidia,pins = "cpu_pwr_req"; >> + nvidia,function = "cpu"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pwr_int_n { >> + nvidia,pins = "pwr_int_n"; >> + nvidia,function = "pmi"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + reset_out_n { >> + nvidia,pins = "reset_out_n"; >> + nvidia,function = "reset_out_n"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + clk3_out_pee0 { >> + nvidia,pins = "clk3_out_pee0"; >> + nvidia,function = "extperiph3"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + gen1_i2c_sda_pc5 { >> + nvidia,pins = "gen1_i2c_sda_pc5", >> + "gen1_i2c_scl_pc4"; >> + nvidia,function = "i2c1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + hdmi_cec_pee3 { >> + nvidia,pins = "hdmi_cec_pee3"; >> + nvidia,function = "cec"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_DISABLE>; >> + }; >> + hdmi_int_pn7 { >> + nvidia,pins = "hdmi_int_pn7"; >> + nvidia,function = "rsvd1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ddc_scl_pv4 { >> + nvidia,pins = "ddc_scl_pv4", >> + "ddc_sda_pv5"; >> + nvidia,function = "i2c4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; >> + }; >> + kb_row10_ps2 { >> + nvidia,pins = "kb_row10_ps2"; >> + nvidia,function = "uarta"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + kb_row9_ps1 { >> + nvidia,pins = "kb_row9_ps1"; >> + nvidia,function = "uarta"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + usb_vbus_en0_pn4 { >> + nvidia,pins = "usb_vbus_en0_pn4", >> + "usb_vbus_en1_pn5"; >> + nvidia,function = "usb"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + drive_sdio1 { >> + nvidia,pins = "drive_sdio1"; >> + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> + nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> + nvidia,pull-down-strength = <36>; >> + nvidia,pull-up-strength = <20>; >> + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; >> + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; >> + }; >> + drive_sdio3 { >> + nvidia,pins = "drive_sdio3"; >> + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> + nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> + nvidia,pull-down-strength = <22>; >> + nvidia,pull-up-strength = <36>; >> + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + }; >> + drive_gma { >> + nvidia,pins = "drive_gma"; >> + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> + nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> + nvidia,pull-down-strength = <2>; >> + nvidia,pull-up-strength = <1>; >> + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + nvidia,drive-type = <1>; >> + }; >> + codec_irq_l { >> + nvidia,pins = "ph4"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + lcd_bl_en { >> + nvidia,pins = "ph2"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + touch_irq_l { >> + nvidia,pins = "gpio_w3_aud_pw3"; >> + nvidia,function = "spi6"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + tpm_davint_l { >> + nvidia,pins = "ph6"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + ts_irq_l { >> + nvidia,pins = "pk2"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + ts_reset_l { >> + nvidia,pins = "pk4"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + ts_shdn_l { >> + nvidia,pins = "pk1"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + ph7 { >> + nvidia,pins = "ph7"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + kb_col0_ap { >> + nvidia,pins = "kb_col0_pq0"; >> + nvidia,function = "rsvd4"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + lid_open { >> + nvidia,pins = "kb_row4_pr4"; >> + nvidia,function = "rsvd3"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + en_vdd_sd { >> + nvidia,pins = "kb_row0_pr0"; >> + nvidia,function = "rsvd4"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + ac_ok { >> + nvidia,pins = "pj0"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + sensor_irq_l { >> + nvidia,pins = "pi6"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + wifi_en { >> + nvidia,pins = "gpio_x7_aud_px7"; >> + nvidia,function = "rsvd4"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + en_vdd_bl { >> + nvidia,pins = "dap3_dout_pp2"; >> + nvidia,function = "i2s2"; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + en_vdd_hdmi { >> + nvidia,pins = "spdif_in_pk6"; >> + nvidia,function = "spdif"; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + soc_warm_reset_l { >> + nvidia,pins = "pi5"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + hp_det_l { >> + nvidia,pins = "pi7"; >> + nvidia,function = "rsvd1"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + mic_det_l { >> + nvidia,pins = "kb_row7_pr7"; >> + nvidia,function = "rsvd2"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + }; >> + }; >> + >> + serial@0,70006000 { >> + /* Debug connector on the bottom of the board near SD card. */ >> + status = "okay"; >> + }; >> + >> + pwm@0,7000a000 { >> + status = "okay"; >> + }; >> + >> + i2c@0,7000c000 { >> + status = "okay"; >> + clock-frequency = <100000>; >> + >> + acodec: audio-codec@10 { >> + compatible = "maxim,max98090"; >> + reg = <0x10>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; >> + }; >> + >> + temperature-sensor@4c { >> + compatible = "ti,tmp451"; >> + reg = <0x4c>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; >> + >> + #thermal-sensor-cells = <1>; >> + }; >> + }; >> + >> + i2c@0,7000c400 { >> + status = "okay"; >> + clock-frequency = <100000>; >> + }; >> + >> + i2c@0,7000c500 { >> + status = "okay"; >> + clock-frequency = <400000>; >> + >> + tpm@20 { >> + compatible = "infineon,slb9645tt"; >> + reg = <0x20>; >> + }; >> + }; >> + >> + hdmi_ddc: i2c@0,7000c700 { >> + status = "okay"; >> + clock-frequency = <100000>; >> + }; >> + >> + i2c@0,7000d000 { >> + status = "okay"; >> + clock-frequency = <400000>; >> + >> + pmic: pmic@40 { >> + compatible = "ams,as3722"; >> + reg = <0x40>; >> + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; >> + >> + ams,system-power-controller; >> + >> + #interrupt-cells = <2>; >> + interrupt-controller; >> + >> + gpio-controller; >> + #gpio-cells = <2>; >> + >> + pinctrl-names = "default"; >> + pinctrl-0 = <&as3722_default>; >> + >> + as3722_default: pinmux { >> + gpio0 { >> + pins = "gpio0"; >> + function = "gpio"; >> + bias-pull-down; >> + }; >> + >> + gpio1 { >> + pins = "gpio1"; >> + function = "gpio"; >> + bias-pull-up; >> + }; >> + >> + gpio2_4_7 { >> + pins = "gpio2", "gpio4", "gpio7"; >> + function = "gpio"; >> + bias-pull-up; >> + }; >> + >> + gpio3_6 { >> + pins = "gpio3", "gpio6"; >> + bias-high-impedance; >> + }; >> + >> + gpio5 { >> + pins = "gpio5"; >> + function = "clk32k-out"; >> + bias-pull-down; >> + }; >> + }; >> + >> + regulators { >> + vsup-sd2-supply = <&vdd_5v0_sys>; >> + vsup-sd3-supply = <&vdd_5v0_sys>; >> + vsup-sd4-supply = <&vdd_5v0_sys>; >> + vsup-sd5-supply = <&vdd_5v0_sys>; >> + vin-ldo0-supply = <&vdd_1v35_lp0>; >> + vin-ldo1-6-supply = <&vdd_3v3_run>; >> + vin-ldo2-5-7-supply = <&vddio_1v8>; >> + vin-ldo3-4-supply = <&vdd_3v3_sys>; >> + vin-ldo9-10-supply = <&vdd_5v0_sys>; >> + vin-ldo11-supply = <&vdd_3v3_run>; >> + >> + sd0 { >> + regulator-name = "+VDD_CPU_AP"; >> + regulator-min-microvolt = <700000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-min-microamp = <3500000>; >> + regulator-max-microamp = <3500000>; >> + regulator-always-on; >> + regulator-boot-on; >> + ams,ext-control = <2>; >> + }; >> + >> + sd1 { >> + regulator-name = "+VDD_CORE"; >> + regulator-min-microvolt = <700000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-min-microamp = <2500000>; >> + regulator-max-microamp = <4000000>; >> + regulator-always-on; >> + regulator-boot-on; >> + ams,ext-control = <1>; >> + }; >> + >> + vdd_1v35_lp0: sd2 { >> + regulator-name = "+1.35V_LP0(sd2)"; >> + regulator-min-microvolt = <1350000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-always-on; >> + regulator-boot-on; >> + }; >> + >> + sd3 { >> + regulator-name = "+1.35V_LP0(sd3)"; >> + regulator-min-microvolt = <1350000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-always-on; >> + regulator-boot-on; >> + }; >> + >> + vdd_1v05_run: sd4 { >> + regulator-name = "+1.05V_RUN"; >> + regulator-min-microvolt = <1050000>; >> + regulator-max-microvolt = <1050000>; >> + }; >> + >> + vddio_1v8: sd5 { >> + regulator-name = "+1.8V_VDDIO"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + regulator-boot-on; >> + regulator-always-on; >> + }; >> + >> + sd6 { >> + regulator-name = "+VDD_GPU_AP"; >> + regulator-min-microvolt = <650000>; >> + regulator-max-microvolt = <1200000>; >> + regulator-min-microamp = <3500000>; >> + regulator-max-microamp = <3500000>; >> + regulator-boot-on; >> + regulator-always-on; >> + }; >> + >> + ldo0 { >> + regulator-name = "+1.05V_RUN_AVDD"; >> + regulator-min-microvolt = <1050000>; >> + regulator-max-microvolt = <1050000>; >> + regulator-boot-on; >> + regulator-always-on; >> + ams,ext-control = <1>; >> + }; >> + >> + ldo1 { >> + regulator-name = "+1.8V_RUN_CAM"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + }; >> + >> + ldo2 { >> + regulator-name = "+1.2V_GEN_AVDD"; >> + regulator-min-microvolt = <1200000>; >> + regulator-max-microvolt = <1200000>; >> + regulator-boot-on; >> + regulator-always-on; >> + }; >> + >> + ldo3 { >> + regulator-name = "+1.00V_LP0_VDD_RTC"; >> + regulator-min-microvolt = <1000000>; >> + regulator-max-microvolt = <1000000>; >> + regulator-boot-on; >> + regulator-always-on; >> + ams,enable-tracking; >> + }; >> + >> + vdd_run_cam: ldo4 { >> + regulator-name = "+3.3V_RUN_CAM"; >> + regulator-min-microvolt = <2800000>; >> + regulator-max-microvolt = <2800000>; >> + }; >> + >> + ldo5 { >> + regulator-name = "+1.2V_RUN_CAM_FRONT"; >> + regulator-min-microvolt = <1200000>; >> + regulator-max-microvolt = <1200000>; >> + }; >> + >> + vddio_sdmmc3: ldo6 { >> + regulator-name = "+VDDIO_SDMMC3"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <3300000>; >> + }; >> + >> + ldo7 { >> + regulator-name = "+1.05V_RUN_CAM_REAR"; >> + regulator-min-microvolt = <1050000>; >> + regulator-max-microvolt = <1050000>; >> + }; >> + >> + ldo9 { >> + regulator-name = "+2.8V_RUN_TOUCH"; >> + regulator-min-microvolt = <2800000>; >> + regulator-max-microvolt = <2800000>; >> + }; >> + >> + ldo10 { >> + regulator-name = "+2.8V_RUN_CAM_AF"; >> + regulator-min-microvolt = <2800000>; >> + regulator-max-microvolt = <2800000>; >> + }; >> + >> + ldo11 { >> + regulator-name = "+1.8V_RUN_VPP_FUSE"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + }; >> + }; >> + }; >> + }; >> + >> + spi@0,7000d400 { >> + status = "okay"; >> + >> + cros_ec: cros-ec@0 { >> + compatible = "google,cros-ec-spi"; >> + spi-max-frequency = <3000000>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; >> + reg = <0>; >> + >> + google,cros-ec-spi-msg-delay = <2000>; >> + >> + i2c-tunnel { >> + compatible = "google,cros-ec-i2c-tunnel"; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + google,remote-bus = <0>; >> + >> + charger: bq24735@9 { >> + compatible = "ti,bq24735"; >> + reg = <0x9>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(J, 0) >> + GPIO_ACTIVE_HIGH>; >> + ti,ac-detect-gpios = <&gpio >> + TEGRA_GPIO(J, 0) >> + GPIO_ACTIVE_HIGH>; >> + }; >> + >> + battery: sbs-battery@b { >> + compatible = "sbs,sbs-battery"; >> + reg = <0xb>; >> + sbs,i2c-retry-count = <2>; >> + sbs,poll-retry-count = <10>; >> + power-supplies = <&charger>; >> + }; >> + }; >> + }; >> + }; >> + >> + spi@0,7000da00 { >> + status = "okay"; >> + spi-max-frequency = <25000000>; >> + >> + flash@0 { >> + compatible = "winbond,w25q32dw"; >> + reg = <0>; >> + }; >> + }; >> + >> + pmc@0,7000e400 { >> + nvidia,invert-interrupt; >> + nvidia,suspend-mode = <0>; >> + nvidia,cpu-pwr-good-time = <500>; >> + nvidia,cpu-pwr-off-time = <300>; >> + nvidia,core-pwr-good-time = <641 3845>; >> + nvidia,core-pwr-off-time = <61036>; >> + nvidia,core-power-req-active-high; >> + nvidia,sys-clock-req-active-high; >> + }; >> + >> + hda@0,70030000 { >> + status = "okay"; >> + }; >> + >> + sdhci@0,700b0000 { /* WiFi/BT on this bus */ >> + status = "okay"; >> + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; >> + bus-width = <4>; >> + no-1-8-v; >> + non-removable; >> + }; >> + >> + sdhci@0,700b0400 { /* SD Card on this bus */ >> + status = "okay"; >> + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; >> + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; >> + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; >> + bus-width = <4>; >> + no-1-8-v; >> + vqmmc-supply = <&vddio_sdmmc3>; >> + }; >> + >> + sdhci@0,700b0600 { /* eMMC on this bus */ >> + status = "okay"; >> + bus-width = <8>; >> + no-1-8-v; >> + non-removable; >> + }; >> + >> + ahub@0,70300000 { >> + i2s@0,70301100 { >> + status = "okay"; >> + }; >> + }; >> + >> + usb@0,7d000000 { /* Rear external USB port. */ >> + status = "okay"; >> + }; >> + >> + usb-phy@0,7d000000 { >> + status = "okay"; >> + vbus-supply = <&vdd_usb1_vbus>; >> + }; >> + >> + usb@0,7d004000 { /* Internal webcam. */ >> + status = "okay"; >> + }; >> + >> + usb-phy@0,7d004000 { >> + status = "okay"; >> + vbus-supply = <&vdd_run_cam>; >> + }; >> + >> + usb@0,7d008000 { /* Left external USB port. */ >> + status = "okay"; >> + }; >> + >> + usb-phy@0,7d008000 { >> + status = "okay"; >> + vbus-supply = <&vdd_usb3_vbus>; >> + }; >> + >> + backlight: backlight { >> + compatible = "pwm-backlight"; >> + >> + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; >> + power-supply = <&vdd_led>; >> + pwms = <&pwm 1 1000000>; >> + >> + default-brightness-level = <224>; >> + brightness-levels = >> + < 0 1 2 3 4 5 6 7 >> + 8 9 10 11 12 13 14 15 >> + 16 17 18 19 20 21 22 23 >> + 24 25 26 27 28 29 30 31 >> + 32 33 34 35 36 37 38 39 >> + 40 41 42 43 44 45 46 47 >> + 48 49 50 51 52 53 54 55 >> + 56 57 58 59 60 61 62 63 >> + 64 65 66 67 68 69 70 71 >> + 72 73 74 75 76 77 78 79 >> + 80 81 82 83 84 85 86 87 >> + 88 89 90 91 92 93 94 95 >> + 96 97 98 99 100 101 102 103 >> + 104 105 106 107 108 109 110 111 >> + 112 113 114 115 116 117 118 119 >> + 120 121 122 123 124 125 126 127 >> + 128 129 130 131 132 133 134 135 >> + 136 137 138 139 140 141 142 143 >> + 144 145 146 147 148 149 150 151 >> + 152 153 154 155 156 157 158 159 >> + 160 161 162 163 164 165 166 167 >> + 168 169 170 171 172 173 174 175 >> + 176 177 178 179 180 181 182 183 >> + 184 185 186 187 188 189 190 191 >> + 192 193 194 195 196 197 198 199 >> + 200 201 202 203 204 205 206 207 >> + 208 209 210 211 212 213 214 215 >> + 216 217 218 219 220 221 222 223 >> + 224 225 226 227 228 229 230 231 >> + 232 233 234 235 236 237 238 239 >> + 240 241 242 243 244 245 246 247 >> + 248 249 250 251 252 253 254 255 >> + 256>; >> + }; >> + >> + clocks { >> + compatible = "simple-bus"; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + clk32k_in: clock@0 { >> + compatible = "fixed-clock"; >> + reg = <0>; >> + #clock-cells = <0>; >> + clock-frequency = <32768>; >> + }; >> + }; >> + >> + gpio-keys { >> + compatible = "gpio-keys"; >> + >> + lid { >> + label = "Lid"; >> + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; >> + linux,input-type = <5>; >> + linux,code = <KEY_RESERVED>; >> + debounce-interval = <1>; >> + gpio-key,wakeup; >> + }; >> + >> + power { >> + label = "Power"; >> + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; >> + linux,code = <KEY_POWER>; >> + debounce-interval = <30>; >> + gpio-key,wakeup; >> + }; >> + }; >> + >> + panel: panel { >> + compatible = "auo,b133xtn01"; >> + >> + backlight = <&backlight>; >> + ddc-i2c-bus = <&dpaux>; >> + }; > > Back when we merged the nyan-big DTS there was some discussion and it > was concluded that the devices are very similar, with the panel being > one notable exception. So I think that this belongs in the nyan-big > DTS and you need to add a similar property to the nyan-blaze DTS with > the compatible for the panel used in the design. And you might need > to add an entry for the panel in the panel-simple driver, too. That's correct. There are also variants of big and blaze with 1080p panels, so those will definitely need their own panel nodes as well. Other than that, Acked-by: Andrew Bresticker <abrestic-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 17:30 ` Andrew Bresticker 0 siblings, 0 replies; 41+ messages in thread From: Andrew Bresticker @ 2015-01-06 17:30 UTC (permalink / raw) To: Thierry Reding Cc: Tomeu Vizoso, linux-tegra, Dylan Reid, Olof Johansson, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On Tue, Jan 6, 2015 at 5:06 AM, Thierry Reding <thierry.reding@gmail.com> wrote: > Cc'ing Dylan and Olof. I've verified that the resulting nyan-big DTB > after this series is exactly the same as before (well, except where > changes were made on purpose), but I'd like an Ack from either of you > regarding the split into the nyan DTS include. > > Quoting the full patch for Dylan and Olof, one comment below (near the > bottom). > > On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: >> In preparation for adding the DT for the nyan-blaze board. >> >> Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> >> --- >> arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- >> arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ >> 2 files changed, 1136 insertions(+), 1128 deletions(-) >> create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi >> >> diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts >> index 4752572..2041077 100644 >> --- a/arch/arm/boot/dts/tegra124-nyan-big.dts >> +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts >> @@ -1,1137 +1,12 @@ >> /dts-v1/; >> >> -#include <dt-bindings/input/input.h> >> -#include "tegra124.dtsi" >> +#include "tegra124-nyan.dtsi" >> >> / { >> model = "Acer Chromebook 13 CB5-311"; >> - compatible = "google,nyan-big", "nvidia,tegra124"; >> - >> - aliases { >> - rtc0 = "/i2c@0,7000d000/pmic@40"; >> - rtc1 = "/rtc@0,7000e000"; >> - serial0 = &uarta; >> - }; >> - >> - memory { >> - reg = <0x0 0x80000000 0x0 0x80000000>; >> - }; >> - >> - host1x@0,50000000 { >> - hdmi@0,54280000 { >> - status = "okay"; >> - >> - vdd-supply = <&vdd_3v3_hdmi>; >> - pll-supply = <&vdd_hdmi_pll>; >> - hdmi-supply = <&vdd_5v0_hdmi>; >> - >> - nvidia,ddc-i2c-bus = <&hdmi_ddc>; >> - nvidia,hpd-gpio = >> - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; >> - }; >> - >> - sor@0,54540000 { >> - status = "okay"; >> - >> - nvidia,dpaux = <&dpaux>; >> - nvidia,panel = <&panel>; >> - }; >> - >> - dpaux@0,545c0000 { >> - vdd-supply = <&vdd_3v3_panel>; >> - status = "okay"; >> - }; >> - }; >> - >> - pinmux@0,70000868 { >> - pinctrl-names = "boot"; >> - pinctrl-0 = <&pinmux_boot>; >> - >> - pinmux_boot: common { >> - dap_mclk1_pw4 { >> - nvidia,pins = "dap_mclk1_pw4"; >> - nvidia,function = "extperiph1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - dap2_din_pa4 { >> - nvidia,pins = "dap2_din_pa4"; >> - nvidia,function = "i2s1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - dap2_dout_pa5 { >> - nvidia,pins = "dap2_dout_pa5", >> - "dap2_fs_pa2", >> - "dap2_sclk_pa3"; >> - nvidia,function = "i2s1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - dvfs_pwm_px0 { >> - nvidia,pins = "dvfs_pwm_px0", >> - "dvfs_clk_px2"; >> - nvidia,function = "cldvfs"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ulpi_clk_py0 { >> - nvidia,pins = "ulpi_clk_py0", >> - "ulpi_nxt_py2", >> - "ulpi_stp_py3"; >> - nvidia,function = "spi1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ulpi_dir_py1 { >> - nvidia,pins = "ulpi_dir_py1"; >> - nvidia,function = "spi1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - cam_i2c_scl_pbb1 { >> - nvidia,pins = "cam_i2c_scl_pbb1", >> - "cam_i2c_sda_pbb2"; >> - nvidia,function = "i2c3"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - gen2_i2c_scl_pt5 { >> - nvidia,pins = "gen2_i2c_scl_pt5", >> - "gen2_i2c_sda_pt6"; >> - nvidia,function = "i2c2"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - pg4 { >> - nvidia,pins = "pg4", >> - "pg5", >> - "pg6", >> - "pi3"; >> - nvidia,function = "spi4"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pg7 { >> - nvidia,pins = "pg7"; >> - nvidia,function = "spi4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ph1 { >> - nvidia,pins = "ph1"; >> - nvidia,function = "pwm1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pk0 { >> - nvidia,pins = "pk0", >> - "kb_row15_ps7", >> - "clk_32k_out_pa0"; >> - nvidia,function = "soc"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - sdmmc1_clk_pz0 { >> - nvidia,pins = "sdmmc1_clk_pz0"; >> - nvidia,function = "sdmmc1"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc1_cmd_pz1 { >> - nvidia,pins = "sdmmc1_cmd_pz1", >> - "sdmmc1_dat0_py7", >> - "sdmmc1_dat1_py6", >> - "sdmmc1_dat2_py5", >> - "sdmmc1_dat3_py4"; >> - nvidia,function = "sdmmc1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc3_clk_pa6 { >> - nvidia,pins = "sdmmc3_clk_pa6"; >> - nvidia,function = "sdmmc3"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc3_cmd_pa7 { >> - nvidia,pins = "sdmmc3_cmd_pa7", >> - "sdmmc3_dat0_pb7", >> - "sdmmc3_dat1_pb6", >> - "sdmmc3_dat2_pb5", >> - "sdmmc3_dat3_pb4", >> - "kb_col4_pq4", >> - "sdmmc3_clk_lb_out_pee4", >> - "sdmmc3_clk_lb_in_pee5", >> - "sdmmc3_cd_n_pv2"; >> - nvidia,function = "sdmmc3"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc4_clk_pcc4 { >> - nvidia,pins = "sdmmc4_clk_pcc4"; >> - nvidia,function = "sdmmc4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - sdmmc4_cmd_pt7 { >> - nvidia,pins = "sdmmc4_cmd_pt7", >> - "sdmmc4_dat0_paa0", >> - "sdmmc4_dat1_paa1", >> - "sdmmc4_dat2_paa2", >> - "sdmmc4_dat3_paa3", >> - "sdmmc4_dat4_paa4", >> - "sdmmc4_dat5_paa5", >> - "sdmmc4_dat6_paa6", >> - "sdmmc4_dat7_paa7"; >> - nvidia,function = "sdmmc4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pwr_i2c_scl_pz6 { >> - nvidia,pins = "pwr_i2c_scl_pz6", >> - "pwr_i2c_sda_pz7"; >> - nvidia,function = "i2cpwr"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - jtag_rtck { >> - nvidia,pins = "jtag_rtck"; >> - nvidia,function = "rtck"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - clk_32k_in { >> - nvidia,pins = "clk_32k_in"; >> - nvidia,function = "clk"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - core_pwr_req { >> - nvidia,pins = "core_pwr_req"; >> - nvidia,function = "pwron"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - cpu_pwr_req { >> - nvidia,pins = "cpu_pwr_req"; >> - nvidia,function = "cpu"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - pwr_int_n { >> - nvidia,pins = "pwr_int_n"; >> - nvidia,function = "pmi"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - reset_out_n { >> - nvidia,pins = "reset_out_n"; >> - nvidia,function = "reset_out_n"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - clk3_out_pee0 { >> - nvidia,pins = "clk3_out_pee0"; >> - nvidia,function = "extperiph3"; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - gen1_i2c_sda_pc5 { >> - nvidia,pins = "gen1_i2c_sda_pc5", >> - "gen1_i2c_scl_pc4"; >> - nvidia,function = "i2c1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - hdmi_cec_pee3 { >> - nvidia,pins = "hdmi_cec_pee3"; >> - nvidia,function = "cec"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_DISABLE>; >> - }; >> - hdmi_int_pn7 { >> - nvidia,pins = "hdmi_int_pn7"; >> - nvidia,function = "rsvd1"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - }; >> - ddc_scl_pv4 { >> - nvidia,pins = "ddc_scl_pv4", >> - "ddc_sda_pv5"; >> - nvidia,function = "i2c4"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; >> - }; >> - kb_row10_ps2 { >> - nvidia,pins = "kb_row10_ps2"; >> - nvidia,function = "uarta"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - kb_row9_ps1 { >> - nvidia,pins = "kb_row9_ps1"; >> - nvidia,function = "uarta"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - usb_vbus_en0_pn4 { >> - nvidia,pins = "usb_vbus_en0_pn4", >> - "usb_vbus_en1_pn5"; >> - nvidia,function = "usb"; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,lock = <TEGRA_PIN_DISABLE>; >> - nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> - }; >> - drive_sdio1 { >> - nvidia,pins = "drive_sdio1"; >> - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> - nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> - nvidia,pull-down-strength = <36>; >> - nvidia,pull-up-strength = <20>; >> - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; >> - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; >> - }; >> - drive_sdio3 { >> - nvidia,pins = "drive_sdio3"; >> - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> - nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> - nvidia,pull-down-strength = <22>; >> - nvidia,pull-up-strength = <36>; >> - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - }; >> - drive_gma { >> - nvidia,pins = "drive_gma"; >> - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> - nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> - nvidia,pull-down-strength = <2>; >> - nvidia,pull-up-strength = <1>; >> - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> - nvidia,drive-type = <1>; >> - }; >> - codec_irq_l { >> - nvidia,pins = "ph4"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - lcd_bl_en { >> - nvidia,pins = "ph2"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - touch_irq_l { >> - nvidia,pins = "gpio_w3_aud_pw3"; >> - nvidia,function = "spi6"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - tpm_davint_l { >> - nvidia,pins = "ph6"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - ts_irq_l { >> - nvidia,pins = "pk2"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - ts_reset_l { >> - nvidia,pins = "pk4"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - ts_shdn_l { >> - nvidia,pins = "pk1"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - ph7 { >> - nvidia,pins = "ph7"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - kb_col0_ap { >> - nvidia,pins = "kb_col0_pq0"; >> - nvidia,function = "rsvd4"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - lid_open { >> - nvidia,pins = "kb_row4_pr4"; >> - nvidia,function = "rsvd3"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - en_vdd_sd { >> - nvidia,pins = "kb_row0_pr0"; >> - nvidia,function = "rsvd4"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - ac_ok { >> - nvidia,pins = "pj0"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - sensor_irq_l { >> - nvidia,pins = "pi6"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - wifi_en { >> - nvidia,pins = "gpio_x7_aud_px7"; >> - nvidia,function = "rsvd4"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - en_vdd_bl { >> - nvidia,pins = "dap3_dout_pp2"; >> - nvidia,function = "i2s2"; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - en_vdd_hdmi { >> - nvidia,pins = "spdif_in_pk6"; >> - nvidia,function = "spdif"; >> - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - soc_warm_reset_l { >> - nvidia,pins = "pi5"; >> - nvidia,function = "gmi"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> - }; >> - hp_det_l { >> - nvidia,pins = "pi7"; >> - nvidia,function = "rsvd1"; >> - nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - mic_det_l { >> - nvidia,pins = "kb_row7_pr7"; >> - nvidia,function = "rsvd2"; >> - nvidia,pull = <TEGRA_PIN_PULL_UP>; >> - nvidia,tristate = <TEGRA_PIN_DISABLE>; >> - nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> - }; >> - }; >> - }; >> - >> - serial@0,70006000 { >> - /* Debug connector on the bottom of the board near SD card. */ >> - status = "okay"; >> - }; >> - >> - pwm@0,7000a000 { >> - status = "okay"; >> - }; >> - >> - i2c@0,7000c000 { >> - status = "okay"; >> - clock-frequency = <100000>; >> - >> - acodec: audio-codec@10 { >> - compatible = "maxim,max98090"; >> - reg = <0x10>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; >> - }; >> - >> - temperature-sensor@4c { >> - compatible = "ti,tmp451"; >> - reg = <0x4c>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; >> - >> - #thermal-sensor-cells = <1>; >> - }; >> - }; >> - >> - i2c@0,7000c400 { >> - status = "okay"; >> - clock-frequency = <100000>; >> - }; >> - >> - i2c@0,7000c500 { >> - status = "okay"; >> - clock-frequency = <400000>; >> - >> - tpm@20 { >> - compatible = "infineon,slb9645tt"; >> - reg = <0x20>; >> - }; >> - }; >> - >> - hdmi_ddc: i2c@0,7000c700 { >> - status = "okay"; >> - clock-frequency = <100000>; >> - }; >> - >> - i2c@0,7000d000 { >> - status = "okay"; >> - clock-frequency = <400000>; >> - >> - pmic: pmic@40 { >> - compatible = "ams,as3722"; >> - reg = <0x40>; >> - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; >> - >> - ams,system-power-controller; >> - >> - #interrupt-cells = <2>; >> - interrupt-controller; >> - >> - gpio-controller; >> - #gpio-cells = <2>; >> - >> - pinctrl-names = "default"; >> - pinctrl-0 = <&as3722_default>; >> - >> - as3722_default: pinmux { >> - gpio0 { >> - pins = "gpio0"; >> - function = "gpio"; >> - bias-pull-down; >> - }; >> - >> - gpio1 { >> - pins = "gpio1"; >> - function = "gpio"; >> - bias-pull-up; >> - }; >> - >> - gpio2_4_7 { >> - pins = "gpio2", "gpio4", "gpio7"; >> - function = "gpio"; >> - bias-pull-up; >> - }; >> - >> - gpio3_6 { >> - pins = "gpio3", "gpio6"; >> - bias-high-impedance; >> - }; >> - >> - gpio5 { >> - pins = "gpio5"; >> - function = "clk32k-out"; >> - bias-pull-down; >> - }; >> - }; >> - >> - regulators { >> - vsup-sd2-supply = <&vdd_5v0_sys>; >> - vsup-sd3-supply = <&vdd_5v0_sys>; >> - vsup-sd4-supply = <&vdd_5v0_sys>; >> - vsup-sd5-supply = <&vdd_5v0_sys>; >> - vin-ldo0-supply = <&vdd_1v35_lp0>; >> - vin-ldo1-6-supply = <&vdd_3v3_run>; >> - vin-ldo2-5-7-supply = <&vddio_1v8>; >> - vin-ldo3-4-supply = <&vdd_3v3_sys>; >> - vin-ldo9-10-supply = <&vdd_5v0_sys>; >> - vin-ldo11-supply = <&vdd_3v3_run>; >> - >> - sd0 { >> - regulator-name = "+VDD_CPU_AP"; >> - regulator-min-microvolt = <700000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-min-microamp = <3500000>; >> - regulator-max-microamp = <3500000>; >> - regulator-always-on; >> - regulator-boot-on; >> - ams,ext-control = <2>; >> - }; >> - >> - sd1 { >> - regulator-name = "+VDD_CORE"; >> - regulator-min-microvolt = <700000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-min-microamp = <2500000>; >> - regulator-max-microamp = <4000000>; >> - regulator-always-on; >> - regulator-boot-on; >> - ams,ext-control = <1>; >> - }; >> - >> - vdd_1v35_lp0: sd2 { >> - regulator-name = "+1.35V_LP0(sd2)"; >> - regulator-min-microvolt = <1350000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-always-on; >> - regulator-boot-on; >> - }; >> - >> - sd3 { >> - regulator-name = "+1.35V_LP0(sd3)"; >> - regulator-min-microvolt = <1350000>; >> - regulator-max-microvolt = <1350000>; >> - regulator-always-on; >> - regulator-boot-on; >> - }; >> - >> - vdd_1v05_run: sd4 { >> - regulator-name = "+1.05V_RUN"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - }; >> - >> - vddio_1v8: sd5 { >> - regulator-name = "+1.8V_VDDIO"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> - sd6 { >> - regulator-name = "+VDD_GPU_AP"; >> - regulator-min-microvolt = <650000>; >> - regulator-max-microvolt = <1200000>; >> - regulator-min-microamp = <3500000>; >> - regulator-max-microamp = <3500000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> - ldo0 { >> - regulator-name = "+1.05V_RUN_AVDD"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - regulator-boot-on; >> - regulator-always-on; >> - ams,ext-control = <1>; >> - }; >> - >> - ldo1 { >> - regulator-name = "+1.8V_RUN_CAM"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - }; >> - >> - ldo2 { >> - regulator-name = "+1.2V_GEN_AVDD"; >> - regulator-min-microvolt = <1200000>; >> - regulator-max-microvolt = <1200000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> - ldo3 { >> - regulator-name = "+1.00V_LP0_VDD_RTC"; >> - regulator-min-microvolt = <1000000>; >> - regulator-max-microvolt = <1000000>; >> - regulator-boot-on; >> - regulator-always-on; >> - ams,enable-tracking; >> - }; >> - >> - vdd_run_cam: ldo4 { >> - regulator-name = "+3.3V_RUN_CAM"; >> - regulator-min-microvolt = <2800000>; >> - regulator-max-microvolt = <2800000>; >> - }; >> - >> - ldo5 { >> - regulator-name = "+1.2V_RUN_CAM_FRONT"; >> - regulator-min-microvolt = <1200000>; >> - regulator-max-microvolt = <1200000>; >> - }; >> - >> - vddio_sdmmc3: ldo6 { >> - regulator-name = "+VDDIO_SDMMC3"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <3300000>; >> - }; >> - >> - ldo7 { >> - regulator-name = "+1.05V_RUN_CAM_REAR"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - }; >> - >> - ldo9 { >> - regulator-name = "+2.8V_RUN_TOUCH"; >> - regulator-min-microvolt = <2800000>; >> - regulator-max-microvolt = <2800000>; >> - }; >> - >> - ldo10 { >> - regulator-name = "+2.8V_RUN_CAM_AF"; >> - regulator-min-microvolt = <2800000>; >> - regulator-max-microvolt = <2800000>; >> - }; >> - >> - ldo11 { >> - regulator-name = "+1.8V_RUN_VPP_FUSE"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - }; >> - }; >> - }; >> - }; >> - >> - spi@0,7000d400 { >> - status = "okay"; >> - >> - cros_ec: cros-ec@0 { >> - compatible = "google,cros-ec-spi"; >> - spi-max-frequency = <3000000>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; >> - reg = <0>; >> - >> - google,cros-ec-spi-msg-delay = <2000>; >> - >> - i2c-tunnel { >> - compatible = "google,cros-ec-i2c-tunnel"; >> - #address-cells = <1>; >> - #size-cells = <0>; >> - >> - google,remote-bus = <0>; >> - >> - charger: bq24735@9 { >> - compatible = "ti,bq24735"; >> - reg = <0x9>; >> - interrupt-parent = <&gpio>; >> - interrupts = <TEGRA_GPIO(J, 0) >> - GPIO_ACTIVE_HIGH>; >> - ti,ac-detect-gpios = <&gpio >> - TEGRA_GPIO(J, 0) >> - GPIO_ACTIVE_HIGH>; >> - }; >> - >> - battery: sbs-battery@b { >> - compatible = "sbs,sbs-battery"; >> - reg = <0xb>; >> - sbs,i2c-retry-count = <2>; >> - sbs,poll-retry-count = <10>; >> - power-supplies = <&charger>; >> - }; >> - }; >> - }; >> - }; >> - >> - spi@0,7000da00 { >> - status = "okay"; >> - spi-max-frequency = <25000000>; >> - >> - flash@0 { >> - compatible = "winbond,w25q32dw"; >> - reg = <0>; >> - }; >> - }; >> - >> - pmc@0,7000e400 { >> - nvidia,invert-interrupt; >> - nvidia,suspend-mode = <0>; >> - nvidia,cpu-pwr-good-time = <500>; >> - nvidia,cpu-pwr-off-time = <300>; >> - nvidia,core-pwr-good-time = <641 3845>; >> - nvidia,core-pwr-off-time = <61036>; >> - nvidia,core-power-req-active-high; >> - nvidia,sys-clock-req-active-high; >> - }; >> - >> - hda@0,70030000 { >> - status = "okay"; >> - }; >> - >> - sdhci@0,700b0000 { /* WiFi/BT on this bus */ >> - status = "okay"; >> - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; >> - bus-width = <4>; >> - no-1-8-v; >> - non-removable; >> - }; >> - >> - sdhci@0,700b0400 { /* SD Card on this bus */ >> - status = "okay"; >> - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; >> - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; >> - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; >> - bus-width = <4>; >> - no-1-8-v; >> - vqmmc-supply = <&vddio_sdmmc3>; >> - }; >> - >> - sdhci@0,700b0600 { /* eMMC on this bus */ >> - status = "okay"; >> - bus-width = <8>; >> - no-1-8-v; >> - non-removable; >> - }; >> - >> - ahub@0,70300000 { >> - i2s@0,70301100 { >> - status = "okay"; >> - }; >> - }; >> - >> - usb@0,7d000000 { /* Rear external USB port. */ >> - status = "okay"; >> - }; >> - >> - usb-phy@0,7d000000 { >> - status = "okay"; >> - vbus-supply = <&vdd_usb1_vbus>; >> - }; >> - >> - usb@0,7d004000 { /* Internal webcam. */ >> - status = "okay"; >> - }; >> - >> - usb-phy@0,7d004000 { >> - status = "okay"; >> - vbus-supply = <&vdd_run_cam>; >> - }; >> - >> - usb@0,7d008000 { /* Left external USB port. */ >> - status = "okay"; >> - }; >> - >> - usb-phy@0,7d008000 { >> - status = "okay"; >> - vbus-supply = <&vdd_usb3_vbus>; >> - }; >> - >> - backlight: backlight { >> - compatible = "pwm-backlight"; >> - >> - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; >> - power-supply = <&vdd_led>; >> - pwms = <&pwm 1 1000000>; >> - >> - default-brightness-level = <224>; >> - brightness-levels = >> - < 0 1 2 3 4 5 6 7 >> - 8 9 10 11 12 13 14 15 >> - 16 17 18 19 20 21 22 23 >> - 24 25 26 27 28 29 30 31 >> - 32 33 34 35 36 37 38 39 >> - 40 41 42 43 44 45 46 47 >> - 48 49 50 51 52 53 54 55 >> - 56 57 58 59 60 61 62 63 >> - 64 65 66 67 68 69 70 71 >> - 72 73 74 75 76 77 78 79 >> - 80 81 82 83 84 85 86 87 >> - 88 89 90 91 92 93 94 95 >> - 96 97 98 99 100 101 102 103 >> - 104 105 106 107 108 109 110 111 >> - 112 113 114 115 116 117 118 119 >> - 120 121 122 123 124 125 126 127 >> - 128 129 130 131 132 133 134 135 >> - 136 137 138 139 140 141 142 143 >> - 144 145 146 147 148 149 150 151 >> - 152 153 154 155 156 157 158 159 >> - 160 161 162 163 164 165 166 167 >> - 168 169 170 171 172 173 174 175 >> - 176 177 178 179 180 181 182 183 >> - 184 185 186 187 188 189 190 191 >> - 192 193 194 195 196 197 198 199 >> - 200 201 202 203 204 205 206 207 >> - 208 209 210 211 212 213 214 215 >> - 216 217 218 219 220 221 222 223 >> - 224 225 226 227 228 229 230 231 >> - 232 233 234 235 236 237 238 239 >> - 240 241 242 243 244 245 246 247 >> - 248 249 250 251 252 253 254 255 >> - 256>; >> - }; >> - >> - clocks { >> - compatible = "simple-bus"; >> - #address-cells = <1>; >> - #size-cells = <0>; >> - >> - clk32k_in: clock@0 { >> - compatible = "fixed-clock"; >> - reg = <0>; >> - #clock-cells = <0>; >> - clock-frequency = <32768>; >> - }; >> - }; >> - >> - gpio-keys { >> - compatible = "gpio-keys"; >> - >> - lid { >> - label = "Lid"; >> - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; >> - linux,input-type = <5>; >> - linux,code = <KEY_RESERVED>; >> - debounce-interval = <1>; >> - gpio-key,wakeup; >> - }; >> - >> - power { >> - label = "Power"; >> - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; >> - linux,code = <KEY_POWER>; >> - debounce-interval = <30>; >> - gpio-key,wakeup; >> - }; >> - }; >> - >> - panel: panel { >> - compatible = "auo,b133xtn01"; >> - >> - backlight = <&backlight>; >> - ddc-i2c-bus = <&dpaux>; >> - }; >> - >> - regulators { >> - compatible = "simple-bus"; >> - #address-cells = <1>; >> - #size-cells = <0>; >> - >> - vdd_mux: regulator@0 { >> - compatible = "regulator-fixed"; >> - reg = <0>; >> - regulator-name = "+VDD_MUX"; >> - regulator-min-microvolt = <12000000>; >> - regulator-max-microvolt = <12000000>; >> - regulator-always-on; >> - regulator-boot-on; >> - }; >> - >> - vdd_5v0_sys: regulator@1 { >> - compatible = "regulator-fixed"; >> - reg = <1>; >> - regulator-name = "+5V_SYS"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - regulator-always-on; >> - regulator-boot-on; >> - vin-supply = <&vdd_mux>; >> - }; >> - >> - vdd_3v3_sys: regulator@2 { >> - compatible = "regulator-fixed"; >> - reg = <2>; >> - regulator-name = "+3.3V_SYS"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - regulator-always-on; >> - regulator-boot-on; >> - vin-supply = <&vdd_mux>; >> - }; >> - >> - vdd_3v3_run: regulator@3 { >> - compatible = "regulator-fixed"; >> - reg = <3>; >> - regulator-name = "+3.3V_RUN"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - regulator-always-on; >> - regulator-boot-on; >> - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_3v3_sys>; >> - }; >> - >> - vdd_3v3_hdmi: regulator@4 { >> - compatible = "regulator-fixed"; >> - reg = <4>; >> - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - vin-supply = <&vdd_3v3_run>; >> - }; >> - >> - vdd_led: regulator@5 { >> - compatible = "regulator-fixed"; >> - reg = <5>; >> - regulator-name = "+VDD_LED"; >> - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_mux>; >> - }; >> - >> - vdd_5v0_ts: regulator@6 { >> - compatible = "regulator-fixed"; >> - reg = <6>; >> - regulator-name = "+5V_VDD_TS_SW"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - regulator-boot-on; >> - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - >> - vdd_usb1_vbus: regulator@7 { >> - compatible = "regulator-fixed"; >> - reg = <7>; >> - regulator-name = "+5V_USB_HS"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - gpio-open-drain; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - >> - vdd_usb3_vbus: regulator@8 { >> - compatible = "regulator-fixed"; >> - reg = <8>; >> - regulator-name = "+5V_USB_SS"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - gpio-open-drain; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - >> - vdd_3v3_panel: regulator@9 { >> - compatible = "regulator-fixed"; >> - reg = <9>; >> - regulator-name = "+3.3V_PANEL"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_3v3_run>; >> - }; >> - >> - vdd_3v3_lp0: regulator@10 { >> - compatible = "regulator-fixed"; >> - reg = <10>; >> - regulator-name = "+3.3V_LP0"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - /* >> - * TODO: find a way to wire this up with the USB EHCI >> - * controllers so that it can be enabled on demand. >> - */ >> - regulator-always-on; >> - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_3v3_sys>; >> - }; >> - >> - vdd_hdmi_pll: regulator@11 { >> - compatible = "regulator-fixed"; >> - reg = <11>; >> - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; >> - regulator-min-microvolt = <1050000>; >> - regulator-max-microvolt = <1050000>; >> - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; >> - vin-supply = <&vdd_1v05_run>; >> - }; >> - >> - vdd_5v0_hdmi: regulator@12 { >> - compatible = "regulator-fixed"; >> - reg = <12>; >> - regulator-name = "+5V_HDMI_CON"; >> - regulator-min-microvolt = <5000000>; >> - regulator-max-microvolt = <5000000>; >> - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; >> - enable-active-high; >> - vin-supply = <&vdd_5v0_sys>; >> - }; >> - }; >> + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; >> >> sound { >> - compatible = "nvidia,tegra-audio-max98090-nyan-big", >> - "nvidia,tegra-audio-max98090"; >> - nvidia,model = "Acer Chromebook 13"; >> - >> - nvidia,audio-routing = >> - "Headphones", "HPR", >> - "Headphones", "HPL", >> - "Speakers", "SPKR", >> - "Speakers", "SPKL", >> - "Mic Jack", "MICBIAS", >> - "DMICL", "Int Mic", >> - "DMICR", "Int Mic", >> - "IN34", "Mic Jack"; >> - >> - nvidia,i2s-controller = <&tegra_i2s1>; >> - nvidia,audio-codec = <&acodec>; >> - >> - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, >> - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, >> - <&tegra_car TEGRA124_CLK_EXTERN1>; >> - clock-names = "pll_a", "pll_a_out0", "mclk"; >> - >> - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; >> + nvidia,model = "Acer Chromebook 13 CB5-311"; >> }; >> }; >> - >> -#include "cros-ec-keyboard.dtsi" >> diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi >> new file mode 100644 >> index 0000000..4c68658 >> --- /dev/null >> +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi >> @@ -0,0 +1,1133 @@ >> +#include <dt-bindings/input/input.h> >> +#include "tegra124.dtsi" >> + >> +/ { >> + compatible = "google,nyan", "nvidia,tegra124"; >> + >> + aliases { >> + rtc0 = "/i2c@0,7000d000/pmic@40"; >> + rtc1 = "/rtc@0,7000e000"; >> + serial0 = &uarta; >> + }; >> + >> + memory { >> + reg = <0x0 0x80000000 0x0 0x80000000>; >> + }; >> + >> + host1x@0,50000000 { >> + hdmi@0,54280000 { >> + status = "okay"; >> + >> + vdd-supply = <&vdd_3v3_hdmi>; >> + pll-supply = <&vdd_hdmi_pll>; >> + hdmi-supply = <&vdd_5v0_hdmi>; >> + >> + nvidia,ddc-i2c-bus = <&hdmi_ddc>; >> + nvidia,hpd-gpio = >> + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; >> + }; >> + >> + sor@0,54540000 { >> + status = "okay"; >> + >> + nvidia,dpaux = <&dpaux>; >> + nvidia,panel = <&panel>; >> + }; >> + >> + dpaux@0,545c0000 { >> + vdd-supply = <&vdd_3v3_panel>; >> + status = "okay"; >> + }; >> + }; >> + >> + pinmux@0,70000868 { >> + pinctrl-names = "boot"; >> + pinctrl-0 = <&pinmux_boot>; >> + >> + pinmux_boot: common { >> + dap_mclk1_pw4 { >> + nvidia,pins = "dap_mclk1_pw4"; >> + nvidia,function = "extperiph1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + dap2_din_pa4 { >> + nvidia,pins = "dap2_din_pa4"; >> + nvidia,function = "i2s1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + dap2_dout_pa5 { >> + nvidia,pins = "dap2_dout_pa5", >> + "dap2_fs_pa2", >> + "dap2_sclk_pa3"; >> + nvidia,function = "i2s1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + dvfs_pwm_px0 { >> + nvidia,pins = "dvfs_pwm_px0", >> + "dvfs_clk_px2"; >> + nvidia,function = "cldvfs"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ulpi_clk_py0 { >> + nvidia,pins = "ulpi_clk_py0", >> + "ulpi_nxt_py2", >> + "ulpi_stp_py3"; >> + nvidia,function = "spi1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ulpi_dir_py1 { >> + nvidia,pins = "ulpi_dir_py1"; >> + nvidia,function = "spi1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + cam_i2c_scl_pbb1 { >> + nvidia,pins = "cam_i2c_scl_pbb1", >> + "cam_i2c_sda_pbb2"; >> + nvidia,function = "i2c3"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + gen2_i2c_scl_pt5 { >> + nvidia,pins = "gen2_i2c_scl_pt5", >> + "gen2_i2c_sda_pt6"; >> + nvidia,function = "i2c2"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + pg4 { >> + nvidia,pins = "pg4", >> + "pg5", >> + "pg6", >> + "pi3"; >> + nvidia,function = "spi4"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pg7 { >> + nvidia,pins = "pg7"; >> + nvidia,function = "spi4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ph1 { >> + nvidia,pins = "ph1"; >> + nvidia,function = "pwm1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pk0 { >> + nvidia,pins = "pk0", >> + "kb_row15_ps7", >> + "clk_32k_out_pa0"; >> + nvidia,function = "soc"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + sdmmc1_clk_pz0 { >> + nvidia,pins = "sdmmc1_clk_pz0"; >> + nvidia,function = "sdmmc1"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc1_cmd_pz1 { >> + nvidia,pins = "sdmmc1_cmd_pz1", >> + "sdmmc1_dat0_py7", >> + "sdmmc1_dat1_py6", >> + "sdmmc1_dat2_py5", >> + "sdmmc1_dat3_py4"; >> + nvidia,function = "sdmmc1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc3_clk_pa6 { >> + nvidia,pins = "sdmmc3_clk_pa6"; >> + nvidia,function = "sdmmc3"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc3_cmd_pa7 { >> + nvidia,pins = "sdmmc3_cmd_pa7", >> + "sdmmc3_dat0_pb7", >> + "sdmmc3_dat1_pb6", >> + "sdmmc3_dat2_pb5", >> + "sdmmc3_dat3_pb4", >> + "kb_col4_pq4", >> + "sdmmc3_clk_lb_out_pee4", >> + "sdmmc3_clk_lb_in_pee5", >> + "sdmmc3_cd_n_pv2"; >> + nvidia,function = "sdmmc3"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc4_clk_pcc4 { >> + nvidia,pins = "sdmmc4_clk_pcc4"; >> + nvidia,function = "sdmmc4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + sdmmc4_cmd_pt7 { >> + nvidia,pins = "sdmmc4_cmd_pt7", >> + "sdmmc4_dat0_paa0", >> + "sdmmc4_dat1_paa1", >> + "sdmmc4_dat2_paa2", >> + "sdmmc4_dat3_paa3", >> + "sdmmc4_dat4_paa4", >> + "sdmmc4_dat5_paa5", >> + "sdmmc4_dat6_paa6", >> + "sdmmc4_dat7_paa7"; >> + nvidia,function = "sdmmc4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pwr_i2c_scl_pz6 { >> + nvidia,pins = "pwr_i2c_scl_pz6", >> + "pwr_i2c_sda_pz7"; >> + nvidia,function = "i2cpwr"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + jtag_rtck { >> + nvidia,pins = "jtag_rtck"; >> + nvidia,function = "rtck"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + clk_32k_in { >> + nvidia,pins = "clk_32k_in"; >> + nvidia,function = "clk"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + core_pwr_req { >> + nvidia,pins = "core_pwr_req"; >> + nvidia,function = "pwron"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + cpu_pwr_req { >> + nvidia,pins = "cpu_pwr_req"; >> + nvidia,function = "cpu"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + pwr_int_n { >> + nvidia,pins = "pwr_int_n"; >> + nvidia,function = "pmi"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + reset_out_n { >> + nvidia,pins = "reset_out_n"; >> + nvidia,function = "reset_out_n"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + clk3_out_pee0 { >> + nvidia,pins = "clk3_out_pee0"; >> + nvidia,function = "extperiph3"; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + gen1_i2c_sda_pc5 { >> + nvidia,pins = "gen1_i2c_sda_pc5", >> + "gen1_i2c_scl_pc4"; >> + nvidia,function = "i2c1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + hdmi_cec_pee3 { >> + nvidia,pins = "hdmi_cec_pee3"; >> + nvidia,function = "cec"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_DISABLE>; >> + }; >> + hdmi_int_pn7 { >> + nvidia,pins = "hdmi_int_pn7"; >> + nvidia,function = "rsvd1"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + }; >> + ddc_scl_pv4 { >> + nvidia,pins = "ddc_scl_pv4", >> + "ddc_sda_pv5"; >> + nvidia,function = "i2c4"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; >> + }; >> + kb_row10_ps2 { >> + nvidia,pins = "kb_row10_ps2"; >> + nvidia,function = "uarta"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + kb_row9_ps1 { >> + nvidia,pins = "kb_row9_ps1"; >> + nvidia,function = "uarta"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + usb_vbus_en0_pn4 { >> + nvidia,pins = "usb_vbus_en0_pn4", >> + "usb_vbus_en1_pn5"; >> + nvidia,function = "usb"; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,lock = <TEGRA_PIN_DISABLE>; >> + nvidia,open-drain = <TEGRA_PIN_ENABLE>; >> + }; >> + drive_sdio1 { >> + nvidia,pins = "drive_sdio1"; >> + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> + nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> + nvidia,pull-down-strength = <36>; >> + nvidia,pull-up-strength = <20>; >> + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; >> + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; >> + }; >> + drive_sdio3 { >> + nvidia,pins = "drive_sdio3"; >> + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> + nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> + nvidia,pull-down-strength = <22>; >> + nvidia,pull-up-strength = <36>; >> + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + }; >> + drive_gma { >> + nvidia,pins = "drive_gma"; >> + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; >> + nvidia,schmitt = <TEGRA_PIN_DISABLE>; >> + nvidia,pull-down-strength = <2>; >> + nvidia,pull-up-strength = <1>; >> + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; >> + nvidia,drive-type = <1>; >> + }; >> + codec_irq_l { >> + nvidia,pins = "ph4"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + lcd_bl_en { >> + nvidia,pins = "ph2"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + touch_irq_l { >> + nvidia,pins = "gpio_w3_aud_pw3"; >> + nvidia,function = "spi6"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + tpm_davint_l { >> + nvidia,pins = "ph6"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + ts_irq_l { >> + nvidia,pins = "pk2"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + ts_reset_l { >> + nvidia,pins = "pk4"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + ts_shdn_l { >> + nvidia,pins = "pk1"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + ph7 { >> + nvidia,pins = "ph7"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + kb_col0_ap { >> + nvidia,pins = "kb_col0_pq0"; >> + nvidia,function = "rsvd4"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + lid_open { >> + nvidia,pins = "kb_row4_pr4"; >> + nvidia,function = "rsvd3"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + en_vdd_sd { >> + nvidia,pins = "kb_row0_pr0"; >> + nvidia,function = "rsvd4"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + ac_ok { >> + nvidia,pins = "pj0"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + sensor_irq_l { >> + nvidia,pins = "pi6"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + wifi_en { >> + nvidia,pins = "gpio_x7_aud_px7"; >> + nvidia,function = "rsvd4"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + en_vdd_bl { >> + nvidia,pins = "dap3_dout_pp2"; >> + nvidia,function = "i2s2"; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + en_vdd_hdmi { >> + nvidia,pins = "spdif_in_pk6"; >> + nvidia,function = "spdif"; >> + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + soc_warm_reset_l { >> + nvidia,pins = "pi5"; >> + nvidia,function = "gmi"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_DISABLE>; >> + }; >> + hp_det_l { >> + nvidia,pins = "pi7"; >> + nvidia,function = "rsvd1"; >> + nvidia,pull = <TEGRA_PIN_PULL_NONE>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + mic_det_l { >> + nvidia,pins = "kb_row7_pr7"; >> + nvidia,function = "rsvd2"; >> + nvidia,pull = <TEGRA_PIN_PULL_UP>; >> + nvidia,tristate = <TEGRA_PIN_DISABLE>; >> + nvidia,enable-input = <TEGRA_PIN_ENABLE>; >> + }; >> + }; >> + }; >> + >> + serial@0,70006000 { >> + /* Debug connector on the bottom of the board near SD card. */ >> + status = "okay"; >> + }; >> + >> + pwm@0,7000a000 { >> + status = "okay"; >> + }; >> + >> + i2c@0,7000c000 { >> + status = "okay"; >> + clock-frequency = <100000>; >> + >> + acodec: audio-codec@10 { >> + compatible = "maxim,max98090"; >> + reg = <0x10>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; >> + }; >> + >> + temperature-sensor@4c { >> + compatible = "ti,tmp451"; >> + reg = <0x4c>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; >> + >> + #thermal-sensor-cells = <1>; >> + }; >> + }; >> + >> + i2c@0,7000c400 { >> + status = "okay"; >> + clock-frequency = <100000>; >> + }; >> + >> + i2c@0,7000c500 { >> + status = "okay"; >> + clock-frequency = <400000>; >> + >> + tpm@20 { >> + compatible = "infineon,slb9645tt"; >> + reg = <0x20>; >> + }; >> + }; >> + >> + hdmi_ddc: i2c@0,7000c700 { >> + status = "okay"; >> + clock-frequency = <100000>; >> + }; >> + >> + i2c@0,7000d000 { >> + status = "okay"; >> + clock-frequency = <400000>; >> + >> + pmic: pmic@40 { >> + compatible = "ams,as3722"; >> + reg = <0x40>; >> + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; >> + >> + ams,system-power-controller; >> + >> + #interrupt-cells = <2>; >> + interrupt-controller; >> + >> + gpio-controller; >> + #gpio-cells = <2>; >> + >> + pinctrl-names = "default"; >> + pinctrl-0 = <&as3722_default>; >> + >> + as3722_default: pinmux { >> + gpio0 { >> + pins = "gpio0"; >> + function = "gpio"; >> + bias-pull-down; >> + }; >> + >> + gpio1 { >> + pins = "gpio1"; >> + function = "gpio"; >> + bias-pull-up; >> + }; >> + >> + gpio2_4_7 { >> + pins = "gpio2", "gpio4", "gpio7"; >> + function = "gpio"; >> + bias-pull-up; >> + }; >> + >> + gpio3_6 { >> + pins = "gpio3", "gpio6"; >> + bias-high-impedance; >> + }; >> + >> + gpio5 { >> + pins = "gpio5"; >> + function = "clk32k-out"; >> + bias-pull-down; >> + }; >> + }; >> + >> + regulators { >> + vsup-sd2-supply = <&vdd_5v0_sys>; >> + vsup-sd3-supply = <&vdd_5v0_sys>; >> + vsup-sd4-supply = <&vdd_5v0_sys>; >> + vsup-sd5-supply = <&vdd_5v0_sys>; >> + vin-ldo0-supply = <&vdd_1v35_lp0>; >> + vin-ldo1-6-supply = <&vdd_3v3_run>; >> + vin-ldo2-5-7-supply = <&vddio_1v8>; >> + vin-ldo3-4-supply = <&vdd_3v3_sys>; >> + vin-ldo9-10-supply = <&vdd_5v0_sys>; >> + vin-ldo11-supply = <&vdd_3v3_run>; >> + >> + sd0 { >> + regulator-name = "+VDD_CPU_AP"; >> + regulator-min-microvolt = <700000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-min-microamp = <3500000>; >> + regulator-max-microamp = <3500000>; >> + regulator-always-on; >> + regulator-boot-on; >> + ams,ext-control = <2>; >> + }; >> + >> + sd1 { >> + regulator-name = "+VDD_CORE"; >> + regulator-min-microvolt = <700000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-min-microamp = <2500000>; >> + regulator-max-microamp = <4000000>; >> + regulator-always-on; >> + regulator-boot-on; >> + ams,ext-control = <1>; >> + }; >> + >> + vdd_1v35_lp0: sd2 { >> + regulator-name = "+1.35V_LP0(sd2)"; >> + regulator-min-microvolt = <1350000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-always-on; >> + regulator-boot-on; >> + }; >> + >> + sd3 { >> + regulator-name = "+1.35V_LP0(sd3)"; >> + regulator-min-microvolt = <1350000>; >> + regulator-max-microvolt = <1350000>; >> + regulator-always-on; >> + regulator-boot-on; >> + }; >> + >> + vdd_1v05_run: sd4 { >> + regulator-name = "+1.05V_RUN"; >> + regulator-min-microvolt = <1050000>; >> + regulator-max-microvolt = <1050000>; >> + }; >> + >> + vddio_1v8: sd5 { >> + regulator-name = "+1.8V_VDDIO"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + regulator-boot-on; >> + regulator-always-on; >> + }; >> + >> + sd6 { >> + regulator-name = "+VDD_GPU_AP"; >> + regulator-min-microvolt = <650000>; >> + regulator-max-microvolt = <1200000>; >> + regulator-min-microamp = <3500000>; >> + regulator-max-microamp = <3500000>; >> + regulator-boot-on; >> + regulator-always-on; >> + }; >> + >> + ldo0 { >> + regulator-name = "+1.05V_RUN_AVDD"; >> + regulator-min-microvolt = <1050000>; >> + regulator-max-microvolt = <1050000>; >> + regulator-boot-on; >> + regulator-always-on; >> + ams,ext-control = <1>; >> + }; >> + >> + ldo1 { >> + regulator-name = "+1.8V_RUN_CAM"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + }; >> + >> + ldo2 { >> + regulator-name = "+1.2V_GEN_AVDD"; >> + regulator-min-microvolt = <1200000>; >> + regulator-max-microvolt = <1200000>; >> + regulator-boot-on; >> + regulator-always-on; >> + }; >> + >> + ldo3 { >> + regulator-name = "+1.00V_LP0_VDD_RTC"; >> + regulator-min-microvolt = <1000000>; >> + regulator-max-microvolt = <1000000>; >> + regulator-boot-on; >> + regulator-always-on; >> + ams,enable-tracking; >> + }; >> + >> + vdd_run_cam: ldo4 { >> + regulator-name = "+3.3V_RUN_CAM"; >> + regulator-min-microvolt = <2800000>; >> + regulator-max-microvolt = <2800000>; >> + }; >> + >> + ldo5 { >> + regulator-name = "+1.2V_RUN_CAM_FRONT"; >> + regulator-min-microvolt = <1200000>; >> + regulator-max-microvolt = <1200000>; >> + }; >> + >> + vddio_sdmmc3: ldo6 { >> + regulator-name = "+VDDIO_SDMMC3"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <3300000>; >> + }; >> + >> + ldo7 { >> + regulator-name = "+1.05V_RUN_CAM_REAR"; >> + regulator-min-microvolt = <1050000>; >> + regulator-max-microvolt = <1050000>; >> + }; >> + >> + ldo9 { >> + regulator-name = "+2.8V_RUN_TOUCH"; >> + regulator-min-microvolt = <2800000>; >> + regulator-max-microvolt = <2800000>; >> + }; >> + >> + ldo10 { >> + regulator-name = "+2.8V_RUN_CAM_AF"; >> + regulator-min-microvolt = <2800000>; >> + regulator-max-microvolt = <2800000>; >> + }; >> + >> + ldo11 { >> + regulator-name = "+1.8V_RUN_VPP_FUSE"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1800000>; >> + }; >> + }; >> + }; >> + }; >> + >> + spi@0,7000d400 { >> + status = "okay"; >> + >> + cros_ec: cros-ec@0 { >> + compatible = "google,cros-ec-spi"; >> + spi-max-frequency = <3000000>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; >> + reg = <0>; >> + >> + google,cros-ec-spi-msg-delay = <2000>; >> + >> + i2c-tunnel { >> + compatible = "google,cros-ec-i2c-tunnel"; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + google,remote-bus = <0>; >> + >> + charger: bq24735@9 { >> + compatible = "ti,bq24735"; >> + reg = <0x9>; >> + interrupt-parent = <&gpio>; >> + interrupts = <TEGRA_GPIO(J, 0) >> + GPIO_ACTIVE_HIGH>; >> + ti,ac-detect-gpios = <&gpio >> + TEGRA_GPIO(J, 0) >> + GPIO_ACTIVE_HIGH>; >> + }; >> + >> + battery: sbs-battery@b { >> + compatible = "sbs,sbs-battery"; >> + reg = <0xb>; >> + sbs,i2c-retry-count = <2>; >> + sbs,poll-retry-count = <10>; >> + power-supplies = <&charger>; >> + }; >> + }; >> + }; >> + }; >> + >> + spi@0,7000da00 { >> + status = "okay"; >> + spi-max-frequency = <25000000>; >> + >> + flash@0 { >> + compatible = "winbond,w25q32dw"; >> + reg = <0>; >> + }; >> + }; >> + >> + pmc@0,7000e400 { >> + nvidia,invert-interrupt; >> + nvidia,suspend-mode = <0>; >> + nvidia,cpu-pwr-good-time = <500>; >> + nvidia,cpu-pwr-off-time = <300>; >> + nvidia,core-pwr-good-time = <641 3845>; >> + nvidia,core-pwr-off-time = <61036>; >> + nvidia,core-power-req-active-high; >> + nvidia,sys-clock-req-active-high; >> + }; >> + >> + hda@0,70030000 { >> + status = "okay"; >> + }; >> + >> + sdhci@0,700b0000 { /* WiFi/BT on this bus */ >> + status = "okay"; >> + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; >> + bus-width = <4>; >> + no-1-8-v; >> + non-removable; >> + }; >> + >> + sdhci@0,700b0400 { /* SD Card on this bus */ >> + status = "okay"; >> + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; >> + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; >> + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; >> + bus-width = <4>; >> + no-1-8-v; >> + vqmmc-supply = <&vddio_sdmmc3>; >> + }; >> + >> + sdhci@0,700b0600 { /* eMMC on this bus */ >> + status = "okay"; >> + bus-width = <8>; >> + no-1-8-v; >> + non-removable; >> + }; >> + >> + ahub@0,70300000 { >> + i2s@0,70301100 { >> + status = "okay"; >> + }; >> + }; >> + >> + usb@0,7d000000 { /* Rear external USB port. */ >> + status = "okay"; >> + }; >> + >> + usb-phy@0,7d000000 { >> + status = "okay"; >> + vbus-supply = <&vdd_usb1_vbus>; >> + }; >> + >> + usb@0,7d004000 { /* Internal webcam. */ >> + status = "okay"; >> + }; >> + >> + usb-phy@0,7d004000 { >> + status = "okay"; >> + vbus-supply = <&vdd_run_cam>; >> + }; >> + >> + usb@0,7d008000 { /* Left external USB port. */ >> + status = "okay"; >> + }; >> + >> + usb-phy@0,7d008000 { >> + status = "okay"; >> + vbus-supply = <&vdd_usb3_vbus>; >> + }; >> + >> + backlight: backlight { >> + compatible = "pwm-backlight"; >> + >> + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; >> + power-supply = <&vdd_led>; >> + pwms = <&pwm 1 1000000>; >> + >> + default-brightness-level = <224>; >> + brightness-levels = >> + < 0 1 2 3 4 5 6 7 >> + 8 9 10 11 12 13 14 15 >> + 16 17 18 19 20 21 22 23 >> + 24 25 26 27 28 29 30 31 >> + 32 33 34 35 36 37 38 39 >> + 40 41 42 43 44 45 46 47 >> + 48 49 50 51 52 53 54 55 >> + 56 57 58 59 60 61 62 63 >> + 64 65 66 67 68 69 70 71 >> + 72 73 74 75 76 77 78 79 >> + 80 81 82 83 84 85 86 87 >> + 88 89 90 91 92 93 94 95 >> + 96 97 98 99 100 101 102 103 >> + 104 105 106 107 108 109 110 111 >> + 112 113 114 115 116 117 118 119 >> + 120 121 122 123 124 125 126 127 >> + 128 129 130 131 132 133 134 135 >> + 136 137 138 139 140 141 142 143 >> + 144 145 146 147 148 149 150 151 >> + 152 153 154 155 156 157 158 159 >> + 160 161 162 163 164 165 166 167 >> + 168 169 170 171 172 173 174 175 >> + 176 177 178 179 180 181 182 183 >> + 184 185 186 187 188 189 190 191 >> + 192 193 194 195 196 197 198 199 >> + 200 201 202 203 204 205 206 207 >> + 208 209 210 211 212 213 214 215 >> + 216 217 218 219 220 221 222 223 >> + 224 225 226 227 228 229 230 231 >> + 232 233 234 235 236 237 238 239 >> + 240 241 242 243 244 245 246 247 >> + 248 249 250 251 252 253 254 255 >> + 256>; >> + }; >> + >> + clocks { >> + compatible = "simple-bus"; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + clk32k_in: clock@0 { >> + compatible = "fixed-clock"; >> + reg = <0>; >> + #clock-cells = <0>; >> + clock-frequency = <32768>; >> + }; >> + }; >> + >> + gpio-keys { >> + compatible = "gpio-keys"; >> + >> + lid { >> + label = "Lid"; >> + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; >> + linux,input-type = <5>; >> + linux,code = <KEY_RESERVED>; >> + debounce-interval = <1>; >> + gpio-key,wakeup; >> + }; >> + >> + power { >> + label = "Power"; >> + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; >> + linux,code = <KEY_POWER>; >> + debounce-interval = <30>; >> + gpio-key,wakeup; >> + }; >> + }; >> + >> + panel: panel { >> + compatible = "auo,b133xtn01"; >> + >> + backlight = <&backlight>; >> + ddc-i2c-bus = <&dpaux>; >> + }; > > Back when we merged the nyan-big DTS there was some discussion and it > was concluded that the devices are very similar, with the panel being > one notable exception. So I think that this belongs in the nyan-big > DTS and you need to add a similar property to the nyan-blaze DTS with > the compatible for the panel used in the design. And you might need > to add an entry for the panel in the panel-simple driver, too. That's correct. There are also variants of big and blaze with 1080p panels, so those will definitely need their own panel nodes as well. Other than that, Acked-by: Andrew Bresticker <abrestic@chromium.org> ^ permalink raw reply [flat|nested] 41+ messages in thread
[parent not found: <CAL1qeaETERAm6aTwWycCat-RzQz8UmixWtc-uK4dFsu7wL8HAg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT 2015-01-06 17:30 ` Andrew Bresticker (?) @ 2015-01-06 17:40 ` Olof Johansson -1 siblings, 0 replies; 41+ messages in thread From: Olof Johansson @ 2015-01-06 17:40 UTC (permalink / raw) To: Andrew Bresticker Cc: Thierry Reding, Tomeu Vizoso, linux-tegra-u79uwXL29TY76Z2rM5mHXA, Dylan Reid, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA On Tue, Jan 6, 2015 at 9:30 AM, Andrew Bresticker <abrestic-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org> wrote: > On Tue, Jan 6, 2015 at 5:06 AM, Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: >> >> Back when we merged the nyan-big DTS there was some discussion and it >> was concluded that the devices are very similar, with the panel being >> one notable exception. So I think that this belongs in the nyan-big >> DTS and you need to add a similar property to the nyan-blaze DTS with >> the compatible for the panel used in the design. And you might need >> to add an entry for the panel in the panel-simple driver, too. > > That's correct. There are also variants of big and blaze with 1080p > panels, so those will definitely need their own panel nodes as well. > > Other than that, > > Acked-by: Andrew Bresticker <abrestic-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> Shame on both of you for not pruning the patch when replying -- the emails go too long for gmail to show them by default. :) :P And yeah, this split looks reasonable to me (with the panel comment fixed) Feel free to carry: Acked-by: Olof Johansson <olof-nZhT3qVonbNeoWH0uzbU5w@public.gmane.org> ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 17:40 ` Olof Johansson 0 siblings, 0 replies; 41+ messages in thread From: Olof Johansson @ 2015-01-06 17:40 UTC (permalink / raw) To: linux-arm-kernel On Tue, Jan 6, 2015 at 9:30 AM, Andrew Bresticker <abrestic@google.com> wrote: > On Tue, Jan 6, 2015 at 5:06 AM, Thierry Reding <thierry.reding@gmail.com> wrote: >> >> Back when we merged the nyan-big DTS there was some discussion and it >> was concluded that the devices are very similar, with the panel being >> one notable exception. So I think that this belongs in the nyan-big >> DTS and you need to add a similar property to the nyan-blaze DTS with >> the compatible for the panel used in the design. And you might need >> to add an entry for the panel in the panel-simple driver, too. > > That's correct. There are also variants of big and blaze with 1080p > panels, so those will definitely need their own panel nodes as well. > > Other than that, > > Acked-by: Andrew Bresticker <abrestic@chromium.org> Shame on both of you for not pruning the patch when replying -- the emails go too long for gmail to show them by default. :) :P And yeah, this split looks reasonable to me (with the panel comment fixed) Feel free to carry: Acked-by: Olof Johansson <olof@lixom.net> ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 17:40 ` Olof Johansson 0 siblings, 0 replies; 41+ messages in thread From: Olof Johansson @ 2015-01-06 17:40 UTC (permalink / raw) To: Andrew Bresticker Cc: Thierry Reding, Tomeu Vizoso, linux-tegra, Dylan Reid, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On Tue, Jan 6, 2015 at 9:30 AM, Andrew Bresticker <abrestic@google.com> wrote: > On Tue, Jan 6, 2015 at 5:06 AM, Thierry Reding <thierry.reding@gmail.com> wrote: >> >> Back when we merged the nyan-big DTS there was some discussion and it >> was concluded that the devices are very similar, with the panel being >> one notable exception. So I think that this belongs in the nyan-big >> DTS and you need to add a similar property to the nyan-blaze DTS with >> the compatible for the panel used in the design. And you might need >> to add an entry for the panel in the panel-simple driver, too. > > That's correct. There are also variants of big and blaze with 1080p > panels, so those will definitely need their own panel nodes as well. > > Other than that, > > Acked-by: Andrew Bresticker <abrestic@chromium.org> Shame on both of you for not pruning the patch when replying -- the emails go too long for gmail to show them by default. :) :P And yeah, this split looks reasonable to me (with the panel comment fixed) Feel free to carry: Acked-by: Olof Johansson <olof@lixom.net> ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT 2015-01-06 10:37 ` Tomeu Vizoso (?) @ 2015-01-06 13:24 ` Eduardo Valentin -1 siblings, 0 replies; 41+ messages in thread From: Eduardo Valentin @ 2015-01-06 13:24 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA [-- Attachment #1: Type: text/plain, Size: 69953 bytes --] On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> For the (small part of the) thermal sensor: Acked-by: Eduardo Valentin <edubezval-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- > arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ > 2 files changed, 1136 insertions(+), 1128 deletions(-) > create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi > > diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts > index 4752572..2041077 100644 > --- a/arch/arm/boot/dts/tegra124-nyan-big.dts > +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts > @@ -1,1137 +1,12 @@ > /dts-v1/; > > -#include <dt-bindings/input/input.h> > -#include "tegra124.dtsi" > +#include "tegra124-nyan.dtsi" > > / { > model = "Acer Chromebook 13 CB5-311"; > - compatible = "google,nyan-big", "nvidia,tegra124"; > - > - aliases { > - rtc0 = "/i2c@0,7000d000/pmic@40"; > - rtc1 = "/rtc@0,7000e000"; > - serial0 = &uarta; > - }; > - > - memory { > - reg = <0x0 0x80000000 0x0 0x80000000>; > - }; > - > - host1x@0,50000000 { > - hdmi@0,54280000 { > - status = "okay"; > - > - vdd-supply = <&vdd_3v3_hdmi>; > - pll-supply = <&vdd_hdmi_pll>; > - hdmi-supply = <&vdd_5v0_hdmi>; > - > - nvidia,ddc-i2c-bus = <&hdmi_ddc>; > - nvidia,hpd-gpio = > - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > - }; > - > - sor@0,54540000 { > - status = "okay"; > - > - nvidia,dpaux = <&dpaux>; > - nvidia,panel = <&panel>; > - }; > - > - dpaux@0,545c0000 { > - vdd-supply = <&vdd_3v3_panel>; > - status = "okay"; > - }; > - }; > - > - pinmux@0,70000868 { > - pinctrl-names = "boot"; > - pinctrl-0 = <&pinmux_boot>; > - > - pinmux_boot: common { > - dap_mclk1_pw4 { > - nvidia,pins = "dap_mclk1_pw4"; > - nvidia,function = "extperiph1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_din_pa4 { > - nvidia,pins = "dap2_din_pa4"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_dout_pa5 { > - nvidia,pins = "dap2_dout_pa5", > - "dap2_fs_pa2", > - "dap2_sclk_pa3"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dvfs_pwm_px0 { > - nvidia,pins = "dvfs_pwm_px0", > - "dvfs_clk_px2"; > - nvidia,function = "cldvfs"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_clk_py0 { > - nvidia,pins = "ulpi_clk_py0", > - "ulpi_nxt_py2", > - "ulpi_stp_py3"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_dir_py1 { > - nvidia,pins = "ulpi_dir_py1"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cam_i2c_scl_pbb1 { > - nvidia,pins = "cam_i2c_scl_pbb1", > - "cam_i2c_sda_pbb2"; > - nvidia,function = "i2c3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - gen2_i2c_scl_pt5 { > - nvidia,pins = "gen2_i2c_scl_pt5", > - "gen2_i2c_sda_pt6"; > - nvidia,function = "i2c2"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - pg4 { > - nvidia,pins = "pg4", > - "pg5", > - "pg6", > - "pi3"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pg7 { > - nvidia,pins = "pg7"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ph1 { > - nvidia,pins = "ph1"; > - nvidia,function = "pwm1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pk0 { > - nvidia,pins = "pk0", > - "kb_row15_ps7", > - "clk_32k_out_pa0"; > - nvidia,function = "soc"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sdmmc1_clk_pz0 { > - nvidia,pins = "sdmmc1_clk_pz0"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc1_cmd_pz1 { > - nvidia,pins = "sdmmc1_cmd_pz1", > - "sdmmc1_dat0_py7", > - "sdmmc1_dat1_py6", > - "sdmmc1_dat2_py5", > - "sdmmc1_dat3_py4"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_clk_pa6 { > - nvidia,pins = "sdmmc3_clk_pa6"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_cmd_pa7 { > - nvidia,pins = "sdmmc3_cmd_pa7", > - "sdmmc3_dat0_pb7", > - "sdmmc3_dat1_pb6", > - "sdmmc3_dat2_pb5", > - "sdmmc3_dat3_pb4", > - "kb_col4_pq4", > - "sdmmc3_clk_lb_out_pee4", > - "sdmmc3_clk_lb_in_pee5", > - "sdmmc3_cd_n_pv2"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_clk_pcc4 { > - nvidia,pins = "sdmmc4_clk_pcc4"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_cmd_pt7 { > - nvidia,pins = "sdmmc4_cmd_pt7", > - "sdmmc4_dat0_paa0", > - "sdmmc4_dat1_paa1", > - "sdmmc4_dat2_paa2", > - "sdmmc4_dat3_paa3", > - "sdmmc4_dat4_paa4", > - "sdmmc4_dat5_paa5", > - "sdmmc4_dat6_paa6", > - "sdmmc4_dat7_paa7"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_i2c_scl_pz6 { > - nvidia,pins = "pwr_i2c_scl_pz6", > - "pwr_i2c_sda_pz7"; > - nvidia,function = "i2cpwr"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - jtag_rtck { > - nvidia,pins = "jtag_rtck"; > - nvidia,function = "rtck"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk_32k_in { > - nvidia,pins = "clk_32k_in"; > - nvidia,function = "clk"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - core_pwr_req { > - nvidia,pins = "core_pwr_req"; > - nvidia,function = "pwron"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cpu_pwr_req { > - nvidia,pins = "cpu_pwr_req"; > - nvidia,function = "cpu"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_int_n { > - nvidia,pins = "pwr_int_n"; > - nvidia,function = "pmi"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - reset_out_n { > - nvidia,pins = "reset_out_n"; > - nvidia,function = "reset_out_n"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk3_out_pee0 { > - nvidia,pins = "clk3_out_pee0"; > - nvidia,function = "extperiph3"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - gen1_i2c_sda_pc5 { > - nvidia,pins = "gen1_i2c_sda_pc5", > - "gen1_i2c_scl_pc4"; > - nvidia,function = "i2c1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - hdmi_cec_pee3 { > - nvidia,pins = "hdmi_cec_pee3"; > - nvidia,function = "cec"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_DISABLE>; > - }; > - hdmi_int_pn7 { > - nvidia,pins = "hdmi_int_pn7"; > - nvidia,function = "rsvd1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ddc_scl_pv4 { > - nvidia,pins = "ddc_scl_pv4", > - "ddc_sda_pv5"; > - nvidia,function = "i2c4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > - }; > - kb_row10_ps2 { > - nvidia,pins = "kb_row10_ps2"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_row9_ps1 { > - nvidia,pins = "kb_row9_ps1"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - usb_vbus_en0_pn4 { > - nvidia,pins = "usb_vbus_en0_pn4", > - "usb_vbus_en1_pn5"; > - nvidia,function = "usb"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - drive_sdio1 { > - nvidia,pins = "drive_sdio1"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <36>; > - nvidia,pull-up-strength = <20>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > - }; > - drive_sdio3 { > - nvidia,pins = "drive_sdio3"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <22>; > - nvidia,pull-up-strength = <36>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - }; > - drive_gma { > - nvidia,pins = "drive_gma"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <2>; > - nvidia,pull-up-strength = <1>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,drive-type = <1>; > - }; > - codec_irq_l { > - nvidia,pins = "ph4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lcd_bl_en { > - nvidia,pins = "ph2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - touch_irq_l { > - nvidia,pins = "gpio_w3_aud_pw3"; > - nvidia,function = "spi6"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - tpm_davint_l { > - nvidia,pins = "ph6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_irq_l { > - nvidia,pins = "pk2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_reset_l { > - nvidia,pins = "pk4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ts_shdn_l { > - nvidia,pins = "pk1"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ph7 { > - nvidia,pins = "ph7"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_col0_ap { > - nvidia,pins = "kb_col0_pq0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lid_open { > - nvidia,pins = "kb_row4_pr4"; > - nvidia,function = "rsvd3"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - en_vdd_sd { > - nvidia,pins = "kb_row0_pr0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ac_ok { > - nvidia,pins = "pj0"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sensor_irq_l { > - nvidia,pins = "pi6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - wifi_en { > - nvidia,pins = "gpio_x7_aud_px7"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_bl { > - nvidia,pins = "dap3_dout_pp2"; > - nvidia,function = "i2s2"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_hdmi { > - nvidia,pins = "spdif_in_pk6"; > - nvidia,function = "spdif"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - soc_warm_reset_l { > - nvidia,pins = "pi5"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - hp_det_l { > - nvidia,pins = "pi7"; > - nvidia,function = "rsvd1"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - mic_det_l { > - nvidia,pins = "kb_row7_pr7"; > - nvidia,function = "rsvd2"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - }; > - }; > - > - serial@0,70006000 { > - /* Debug connector on the bottom of the board near SD card. */ > - status = "okay"; > - }; > - > - pwm@0,7000a000 { > - status = "okay"; > - }; > - > - i2c@0,7000c000 { > - status = "okay"; > - clock-frequency = <100000>; > - > - acodec: audio-codec@10 { > - compatible = "maxim,max98090"; > - reg = <0x10>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > - }; > - > - temperature-sensor@4c { > - compatible = "ti,tmp451"; > - reg = <0x4c>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > - > - #thermal-sensor-cells = <1>; > - }; > - }; > - > - i2c@0,7000c400 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000c500 { > - status = "okay"; > - clock-frequency = <400000>; > - > - tpm@20 { > - compatible = "infineon,slb9645tt"; > - reg = <0x20>; > - }; > - }; > - > - hdmi_ddc: i2c@0,7000c700 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000d000 { > - status = "okay"; > - clock-frequency = <400000>; > - > - pmic: pmic@40 { > - compatible = "ams,as3722"; > - reg = <0x40>; > - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > - > - ams,system-power-controller; > - > - #interrupt-cells = <2>; > - interrupt-controller; > - > - gpio-controller; > - #gpio-cells = <2>; > - > - pinctrl-names = "default"; > - pinctrl-0 = <&as3722_default>; > - > - as3722_default: pinmux { > - gpio0 { > - pins = "gpio0"; > - function = "gpio"; > - bias-pull-down; > - }; > - > - gpio1 { > - pins = "gpio1"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio2_4_7 { > - pins = "gpio2", "gpio4", "gpio7"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio3_6 { > - pins = "gpio3", "gpio6"; > - bias-high-impedance; > - }; > - > - gpio5 { > - pins = "gpio5"; > - function = "clk32k-out"; > - bias-pull-down; > - }; > - }; > - > - regulators { > - vsup-sd2-supply = <&vdd_5v0_sys>; > - vsup-sd3-supply = <&vdd_5v0_sys>; > - vsup-sd4-supply = <&vdd_5v0_sys>; > - vsup-sd5-supply = <&vdd_5v0_sys>; > - vin-ldo0-supply = <&vdd_1v35_lp0>; > - vin-ldo1-6-supply = <&vdd_3v3_run>; > - vin-ldo2-5-7-supply = <&vddio_1v8>; > - vin-ldo3-4-supply = <&vdd_3v3_sys>; > - vin-ldo9-10-supply = <&vdd_5v0_sys>; > - vin-ldo11-supply = <&vdd_3v3_run>; > - > - sd0 { > - regulator-name = "+VDD_CPU_AP"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <2>; > - }; > - > - sd1 { > - regulator-name = "+VDD_CORE"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <2500000>; > - regulator-max-microamp = <4000000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <1>; > - }; > - > - vdd_1v35_lp0: sd2 { > - regulator-name = "+1.35V_LP0(sd2)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - sd3 { > - regulator-name = "+1.35V_LP0(sd3)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_1v05_run: sd4 { > - regulator-name = "+1.05V_RUN"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - vddio_1v8: sd5 { > - regulator-name = "+1.8V_VDDIO"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - sd6 { > - regulator-name = "+VDD_GPU_AP"; > - regulator-min-microvolt = <650000>; > - regulator-max-microvolt = <1200000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo0 { > - regulator-name = "+1.05V_RUN_AVDD"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - regulator-boot-on; > - regulator-always-on; > - ams,ext-control = <1>; > - }; > - > - ldo1 { > - regulator-name = "+1.8V_RUN_CAM"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - > - ldo2 { > - regulator-name = "+1.2V_GEN_AVDD"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo3 { > - regulator-name = "+1.00V_LP0_VDD_RTC"; > - regulator-min-microvolt = <1000000>; > - regulator-max-microvolt = <1000000>; > - regulator-boot-on; > - regulator-always-on; > - ams,enable-tracking; > - }; > - > - vdd_run_cam: ldo4 { > - regulator-name = "+3.3V_RUN_CAM"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo5 { > - regulator-name = "+1.2V_RUN_CAM_FRONT"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - }; > - > - vddio_sdmmc3: ldo6 { > - regulator-name = "+VDDIO_SDMMC3"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <3300000>; > - }; > - > - ldo7 { > - regulator-name = "+1.05V_RUN_CAM_REAR"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - ldo9 { > - regulator-name = "+2.8V_RUN_TOUCH"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo10 { > - regulator-name = "+2.8V_RUN_CAM_AF"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo11 { > - regulator-name = "+1.8V_RUN_VPP_FUSE"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - }; > - }; > - }; > - > - spi@0,7000d400 { > - status = "okay"; > - > - cros_ec: cros-ec@0 { > - compatible = "google,cros-ec-spi"; > - spi-max-frequency = <3000000>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > - reg = <0>; > - > - google,cros-ec-spi-msg-delay = <2000>; > - > - i2c-tunnel { > - compatible = "google,cros-ec-i2c-tunnel"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - google,remote-bus = <0>; > - > - charger: bq24735@9 { > - compatible = "ti,bq24735"; > - reg = <0x9>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - ti,ac-detect-gpios = <&gpio > - TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - }; > - > - battery: sbs-battery@b { > - compatible = "sbs,sbs-battery"; > - reg = <0xb>; > - sbs,i2c-retry-count = <2>; > - sbs,poll-retry-count = <10>; > - power-supplies = <&charger>; > - }; > - }; > - }; > - }; > - > - spi@0,7000da00 { > - status = "okay"; > - spi-max-frequency = <25000000>; > - > - flash@0 { > - compatible = "winbond,w25q32dw"; > - reg = <0>; > - }; > - }; > - > - pmc@0,7000e400 { > - nvidia,invert-interrupt; > - nvidia,suspend-mode = <0>; > - nvidia,cpu-pwr-good-time = <500>; > - nvidia,cpu-pwr-off-time = <300>; > - nvidia,core-pwr-good-time = <641 3845>; > - nvidia,core-pwr-off-time = <61036>; > - nvidia,core-power-req-active-high; > - nvidia,sys-clock-req-active-high; > - }; > - > - hda@0,70030000 { > - status = "okay"; > - }; > - > - sdhci@0,700b0000 { /* WiFi/BT on this bus */ > - status = "okay"; > - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > - bus-width = <4>; > - no-1-8-v; > - non-removable; > - }; > - > - sdhci@0,700b0400 { /* SD Card on this bus */ > - status = "okay"; > - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > - bus-width = <4>; > - no-1-8-v; > - vqmmc-supply = <&vddio_sdmmc3>; > - }; > - > - sdhci@0,700b0600 { /* eMMC on this bus */ > - status = "okay"; > - bus-width = <8>; > - no-1-8-v; > - non-removable; > - }; > - > - ahub@0,70300000 { > - i2s@0,70301100 { > - status = "okay"; > - }; > - }; > - > - usb@0,7d000000 { /* Rear external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d000000 { > - status = "okay"; > - vbus-supply = <&vdd_usb1_vbus>; > - }; > - > - usb@0,7d004000 { /* Internal webcam. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d004000 { > - status = "okay"; > - vbus-supply = <&vdd_run_cam>; > - }; > - > - usb@0,7d008000 { /* Left external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d008000 { > - status = "okay"; > - vbus-supply = <&vdd_usb3_vbus>; > - }; > - > - backlight: backlight { > - compatible = "pwm-backlight"; > - > - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > - power-supply = <&vdd_led>; > - pwms = <&pwm 1 1000000>; > - > - default-brightness-level = <224>; > - brightness-levels = > - < 0 1 2 3 4 5 6 7 > - 8 9 10 11 12 13 14 15 > - 16 17 18 19 20 21 22 23 > - 24 25 26 27 28 29 30 31 > - 32 33 34 35 36 37 38 39 > - 40 41 42 43 44 45 46 47 > - 48 49 50 51 52 53 54 55 > - 56 57 58 59 60 61 62 63 > - 64 65 66 67 68 69 70 71 > - 72 73 74 75 76 77 78 79 > - 80 81 82 83 84 85 86 87 > - 88 89 90 91 92 93 94 95 > - 96 97 98 99 100 101 102 103 > - 104 105 106 107 108 109 110 111 > - 112 113 114 115 116 117 118 119 > - 120 121 122 123 124 125 126 127 > - 128 129 130 131 132 133 134 135 > - 136 137 138 139 140 141 142 143 > - 144 145 146 147 148 149 150 151 > - 152 153 154 155 156 157 158 159 > - 160 161 162 163 164 165 166 167 > - 168 169 170 171 172 173 174 175 > - 176 177 178 179 180 181 182 183 > - 184 185 186 187 188 189 190 191 > - 192 193 194 195 196 197 198 199 > - 200 201 202 203 204 205 206 207 > - 208 209 210 211 212 213 214 215 > - 216 217 218 219 220 221 222 223 > - 224 225 226 227 228 229 230 231 > - 232 233 234 235 236 237 238 239 > - 240 241 242 243 244 245 246 247 > - 248 249 250 251 252 253 254 255 > - 256>; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - clk32k_in: clock@0 { > - compatible = "fixed-clock"; > - reg = <0>; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > - > - gpio-keys { > - compatible = "gpio-keys"; > - > - lid { > - label = "Lid"; > - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > - linux,input-type = <5>; > - linux,code = <KEY_RESERVED>; > - debounce-interval = <1>; > - gpio-key,wakeup; > - }; > - > - power { > - label = "Power"; > - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > - linux,code = <KEY_POWER>; > - debounce-interval = <30>; > - gpio-key,wakeup; > - }; > - }; > - > - panel: panel { > - compatible = "auo,b133xtn01"; > - > - backlight = <&backlight>; > - ddc-i2c-bus = <&dpaux>; > - }; > - > - regulators { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - vdd_mux: regulator@0 { > - compatible = "regulator-fixed"; > - reg = <0>; > - regulator-name = "+VDD_MUX"; > - regulator-min-microvolt = <12000000>; > - regulator-max-microvolt = <12000000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_5v0_sys: regulator@1 { > - compatible = "regulator-fixed"; > - reg = <1>; > - regulator-name = "+5V_SYS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_sys: regulator@2 { > - compatible = "regulator-fixed"; > - reg = <2>; > - regulator-name = "+3.3V_SYS"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_run: regulator@3 { > - compatible = "regulator-fixed"; > - reg = <3>; > - regulator-name = "+3.3V_RUN"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_3v3_hdmi: regulator@4 { > - compatible = "regulator-fixed"; > - reg = <4>; > - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_led: regulator@5 { > - compatible = "regulator-fixed"; > - reg = <5>; > - regulator-name = "+VDD_LED"; > - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_5v0_ts: regulator@6 { > - compatible = "regulator-fixed"; > - reg = <6>; > - regulator-name = "+5V_VDD_TS_SW"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-boot-on; > - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb1_vbus: regulator@7 { > - compatible = "regulator-fixed"; > - reg = <7>; > - regulator-name = "+5V_USB_HS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb3_vbus: regulator@8 { > - compatible = "regulator-fixed"; > - reg = <8>; > - regulator-name = "+5V_USB_SS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_3v3_panel: regulator@9 { > - compatible = "regulator-fixed"; > - reg = <9>; > - regulator-name = "+3.3V_PANEL"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_3v3_lp0: regulator@10 { > - compatible = "regulator-fixed"; > - reg = <10>; > - regulator-name = "+3.3V_LP0"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - /* > - * TODO: find a way to wire this up with the USB EHCI > - * controllers so that it can be enabled on demand. > - */ > - regulator-always-on; > - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_hdmi_pll: regulator@11 { > - compatible = "regulator-fixed"; > - reg = <11>; > - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > - vin-supply = <&vdd_1v05_run>; > - }; > - > - vdd_5v0_hdmi: regulator@12 { > - compatible = "regulator-fixed"; > - reg = <12>; > - regulator-name = "+5V_HDMI_CON"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - }; > + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; > > sound { > - compatible = "nvidia,tegra-audio-max98090-nyan-big", > - "nvidia,tegra-audio-max98090"; > - nvidia,model = "Acer Chromebook 13"; > - > - nvidia,audio-routing = > - "Headphones", "HPR", > - "Headphones", "HPL", > - "Speakers", "SPKR", > - "Speakers", "SPKL", > - "Mic Jack", "MICBIAS", > - "DMICL", "Int Mic", > - "DMICR", "Int Mic", > - "IN34", "Mic Jack"; > - > - nvidia,i2s-controller = <&tegra_i2s1>; > - nvidia,audio-codec = <&acodec>; > - > - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > - <&tegra_car TEGRA124_CLK_EXTERN1>; > - clock-names = "pll_a", "pll_a_out0", "mclk"; > - > - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + nvidia,model = "Acer Chromebook 13 CB5-311"; > }; > }; > - > -#include "cros-ec-keyboard.dtsi" > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi > new file mode 100644 > index 0000000..4c68658 > --- /dev/null > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi > @@ -0,0 +1,1133 @@ > +#include <dt-bindings/input/input.h> > +#include "tegra124.dtsi" > + > +/ { > + compatible = "google,nyan", "nvidia,tegra124"; > + > + aliases { > + rtc0 = "/i2c@0,7000d000/pmic@40"; > + rtc1 = "/rtc@0,7000e000"; > + serial0 = &uarta; > + }; > + > + memory { > + reg = <0x0 0x80000000 0x0 0x80000000>; > + }; > + > + host1x@0,50000000 { > + hdmi@0,54280000 { > + status = "okay"; > + > + vdd-supply = <&vdd_3v3_hdmi>; > + pll-supply = <&vdd_hdmi_pll>; > + hdmi-supply = <&vdd_5v0_hdmi>; > + > + nvidia,ddc-i2c-bus = <&hdmi_ddc>; > + nvidia,hpd-gpio = > + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > + }; > + > + sor@0,54540000 { > + status = "okay"; > + > + nvidia,dpaux = <&dpaux>; > + nvidia,panel = <&panel>; > + }; > + > + dpaux@0,545c0000 { > + vdd-supply = <&vdd_3v3_panel>; > + status = "okay"; > + }; > + }; > + > + pinmux@0,70000868 { > + pinctrl-names = "boot"; > + pinctrl-0 = <&pinmux_boot>; > + > + pinmux_boot: common { > + dap_mclk1_pw4 { > + nvidia,pins = "dap_mclk1_pw4"; > + nvidia,function = "extperiph1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_din_pa4 { > + nvidia,pins = "dap2_din_pa4"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_dout_pa5 { > + nvidia,pins = "dap2_dout_pa5", > + "dap2_fs_pa2", > + "dap2_sclk_pa3"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dvfs_pwm_px0 { > + nvidia,pins = "dvfs_pwm_px0", > + "dvfs_clk_px2"; > + nvidia,function = "cldvfs"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_clk_py0 { > + nvidia,pins = "ulpi_clk_py0", > + "ulpi_nxt_py2", > + "ulpi_stp_py3"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_dir_py1 { > + nvidia,pins = "ulpi_dir_py1"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cam_i2c_scl_pbb1 { > + nvidia,pins = "cam_i2c_scl_pbb1", > + "cam_i2c_sda_pbb2"; > + nvidia,function = "i2c3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + gen2_i2c_scl_pt5 { > + nvidia,pins = "gen2_i2c_scl_pt5", > + "gen2_i2c_sda_pt6"; > + nvidia,function = "i2c2"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + pg4 { > + nvidia,pins = "pg4", > + "pg5", > + "pg6", > + "pi3"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pg7 { > + nvidia,pins = "pg7"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ph1 { > + nvidia,pins = "ph1"; > + nvidia,function = "pwm1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pk0 { > + nvidia,pins = "pk0", > + "kb_row15_ps7", > + "clk_32k_out_pa0"; > + nvidia,function = "soc"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sdmmc1_clk_pz0 { > + nvidia,pins = "sdmmc1_clk_pz0"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc1_cmd_pz1 { > + nvidia,pins = "sdmmc1_cmd_pz1", > + "sdmmc1_dat0_py7", > + "sdmmc1_dat1_py6", > + "sdmmc1_dat2_py5", > + "sdmmc1_dat3_py4"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_clk_pa6 { > + nvidia,pins = "sdmmc3_clk_pa6"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_cmd_pa7 { > + nvidia,pins = "sdmmc3_cmd_pa7", > + "sdmmc3_dat0_pb7", > + "sdmmc3_dat1_pb6", > + "sdmmc3_dat2_pb5", > + "sdmmc3_dat3_pb4", > + "kb_col4_pq4", > + "sdmmc3_clk_lb_out_pee4", > + "sdmmc3_clk_lb_in_pee5", > + "sdmmc3_cd_n_pv2"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_clk_pcc4 { > + nvidia,pins = "sdmmc4_clk_pcc4"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_cmd_pt7 { > + nvidia,pins = "sdmmc4_cmd_pt7", > + "sdmmc4_dat0_paa0", > + "sdmmc4_dat1_paa1", > + "sdmmc4_dat2_paa2", > + "sdmmc4_dat3_paa3", > + "sdmmc4_dat4_paa4", > + "sdmmc4_dat5_paa5", > + "sdmmc4_dat6_paa6", > + "sdmmc4_dat7_paa7"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_i2c_scl_pz6 { > + nvidia,pins = "pwr_i2c_scl_pz6", > + "pwr_i2c_sda_pz7"; > + nvidia,function = "i2cpwr"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + jtag_rtck { > + nvidia,pins = "jtag_rtck"; > + nvidia,function = "rtck"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk_32k_in { > + nvidia,pins = "clk_32k_in"; > + nvidia,function = "clk"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + core_pwr_req { > + nvidia,pins = "core_pwr_req"; > + nvidia,function = "pwron"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cpu_pwr_req { > + nvidia,pins = "cpu_pwr_req"; > + nvidia,function = "cpu"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_int_n { > + nvidia,pins = "pwr_int_n"; > + nvidia,function = "pmi"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + reset_out_n { > + nvidia,pins = "reset_out_n"; > + nvidia,function = "reset_out_n"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk3_out_pee0 { > + nvidia,pins = "clk3_out_pee0"; > + nvidia,function = "extperiph3"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + gen1_i2c_sda_pc5 { > + nvidia,pins = "gen1_i2c_sda_pc5", > + "gen1_i2c_scl_pc4"; > + nvidia,function = "i2c1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + hdmi_cec_pee3 { > + nvidia,pins = "hdmi_cec_pee3"; > + nvidia,function = "cec"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_DISABLE>; > + }; > + hdmi_int_pn7 { > + nvidia,pins = "hdmi_int_pn7"; > + nvidia,function = "rsvd1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ddc_scl_pv4 { > + nvidia,pins = "ddc_scl_pv4", > + "ddc_sda_pv5"; > + nvidia,function = "i2c4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > + }; > + kb_row10_ps2 { > + nvidia,pins = "kb_row10_ps2"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_row9_ps1 { > + nvidia,pins = "kb_row9_ps1"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + usb_vbus_en0_pn4 { > + nvidia,pins = "usb_vbus_en0_pn4", > + "usb_vbus_en1_pn5"; > + nvidia,function = "usb"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + drive_sdio1 { > + nvidia,pins = "drive_sdio1"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <36>; > + nvidia,pull-up-strength = <20>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > + }; > + drive_sdio3 { > + nvidia,pins = "drive_sdio3"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <22>; > + nvidia,pull-up-strength = <36>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + }; > + drive_gma { > + nvidia,pins = "drive_gma"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <2>; > + nvidia,pull-up-strength = <1>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,drive-type = <1>; > + }; > + codec_irq_l { > + nvidia,pins = "ph4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lcd_bl_en { > + nvidia,pins = "ph2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + touch_irq_l { > + nvidia,pins = "gpio_w3_aud_pw3"; > + nvidia,function = "spi6"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + tpm_davint_l { > + nvidia,pins = "ph6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_irq_l { > + nvidia,pins = "pk2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_reset_l { > + nvidia,pins = "pk4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ts_shdn_l { > + nvidia,pins = "pk1"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ph7 { > + nvidia,pins = "ph7"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_col0_ap { > + nvidia,pins = "kb_col0_pq0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lid_open { > + nvidia,pins = "kb_row4_pr4"; > + nvidia,function = "rsvd3"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + en_vdd_sd { > + nvidia,pins = "kb_row0_pr0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ac_ok { > + nvidia,pins = "pj0"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sensor_irq_l { > + nvidia,pins = "pi6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + wifi_en { > + nvidia,pins = "gpio_x7_aud_px7"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_bl { > + nvidia,pins = "dap3_dout_pp2"; > + nvidia,function = "i2s2"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_hdmi { > + nvidia,pins = "spdif_in_pk6"; > + nvidia,function = "spdif"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + soc_warm_reset_l { > + nvidia,pins = "pi5"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + hp_det_l { > + nvidia,pins = "pi7"; > + nvidia,function = "rsvd1"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + mic_det_l { > + nvidia,pins = "kb_row7_pr7"; > + nvidia,function = "rsvd2"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + }; > + }; > + > + serial@0,70006000 { > + /* Debug connector on the bottom of the board near SD card. */ > + status = "okay"; > + }; > + > + pwm@0,7000a000 { > + status = "okay"; > + }; > + > + i2c@0,7000c000 { > + status = "okay"; > + clock-frequency = <100000>; > + > + acodec: audio-codec@10 { > + compatible = "maxim,max98090"; > + reg = <0x10>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > + }; > + > + temperature-sensor@4c { > + compatible = "ti,tmp451"; > + reg = <0x4c>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > + i2c@0,7000c400 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000c500 { > + status = "okay"; > + clock-frequency = <400000>; > + > + tpm@20 { > + compatible = "infineon,slb9645tt"; > + reg = <0x20>; > + }; > + }; > + > + hdmi_ddc: i2c@0,7000c700 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000d000 { > + status = "okay"; > + clock-frequency = <400000>; > + > + pmic: pmic@40 { > + compatible = "ams,as3722"; > + reg = <0x40>; > + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > + > + ams,system-power-controller; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&as3722_default>; > + > + as3722_default: pinmux { > + gpio0 { > + pins = "gpio0"; > + function = "gpio"; > + bias-pull-down; > + }; > + > + gpio1 { > + pins = "gpio1"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio2_4_7 { > + pins = "gpio2", "gpio4", "gpio7"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio3_6 { > + pins = "gpio3", "gpio6"; > + bias-high-impedance; > + }; > + > + gpio5 { > + pins = "gpio5"; > + function = "clk32k-out"; > + bias-pull-down; > + }; > + }; > + > + regulators { > + vsup-sd2-supply = <&vdd_5v0_sys>; > + vsup-sd3-supply = <&vdd_5v0_sys>; > + vsup-sd4-supply = <&vdd_5v0_sys>; > + vsup-sd5-supply = <&vdd_5v0_sys>; > + vin-ldo0-supply = <&vdd_1v35_lp0>; > + vin-ldo1-6-supply = <&vdd_3v3_run>; > + vin-ldo2-5-7-supply = <&vddio_1v8>; > + vin-ldo3-4-supply = <&vdd_3v3_sys>; > + vin-ldo9-10-supply = <&vdd_5v0_sys>; > + vin-ldo11-supply = <&vdd_3v3_run>; > + > + sd0 { > + regulator-name = "+VDD_CPU_AP"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <2>; > + }; > + > + sd1 { > + regulator-name = "+VDD_CORE"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <2500000>; > + regulator-max-microamp = <4000000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <1>; > + }; > + > + vdd_1v35_lp0: sd2 { > + regulator-name = "+1.35V_LP0(sd2)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + sd3 { > + regulator-name = "+1.35V_LP0(sd3)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_1v05_run: sd4 { > + regulator-name = "+1.05V_RUN"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + vddio_1v8: sd5 { > + regulator-name = "+1.8V_VDDIO"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sd6 { > + regulator-name = "+VDD_GPU_AP"; > + regulator-min-microvolt = <650000>; > + regulator-max-microvolt = <1200000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo0 { > + regulator-name = "+1.05V_RUN_AVDD"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + regulator-boot-on; > + regulator-always-on; > + ams,ext-control = <1>; > + }; > + > + ldo1 { > + regulator-name = "+1.8V_RUN_CAM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo2 { > + regulator-name = "+1.2V_GEN_AVDD"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3 { > + regulator-name = "+1.00V_LP0_VDD_RTC"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1000000>; > + regulator-boot-on; > + regulator-always-on; > + ams,enable-tracking; > + }; > + > + vdd_run_cam: ldo4 { > + regulator-name = "+3.3V_RUN_CAM"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo5 { > + regulator-name = "+1.2V_RUN_CAM_FRONT"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + }; > + > + vddio_sdmmc3: ldo6 { > + regulator-name = "+VDDIO_SDMMC3"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo7 { > + regulator-name = "+1.05V_RUN_CAM_REAR"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + ldo9 { > + regulator-name = "+2.8V_RUN_TOUCH"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo10 { > + regulator-name = "+2.8V_RUN_CAM_AF"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo11 { > + regulator-name = "+1.8V_RUN_VPP_FUSE"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + }; > + }; > + }; > + > + spi@0,7000d400 { > + status = "okay"; > + > + cros_ec: cros-ec@0 { > + compatible = "google,cros-ec-spi"; > + spi-max-frequency = <3000000>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > + reg = <0>; > + > + google,cros-ec-spi-msg-delay = <2000>; > + > + i2c-tunnel { > + compatible = "google,cros-ec-i2c-tunnel"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + google,remote-bus = <0>; > + > + charger: bq24735@9 { > + compatible = "ti,bq24735"; > + reg = <0x9>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + ti,ac-detect-gpios = <&gpio > + TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + }; > + > + battery: sbs-battery@b { > + compatible = "sbs,sbs-battery"; > + reg = <0xb>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <10>; > + power-supplies = <&charger>; > + }; > + }; > + }; > + }; > + > + spi@0,7000da00 { > + status = "okay"; > + spi-max-frequency = <25000000>; > + > + flash@0 { > + compatible = "winbond,w25q32dw"; > + reg = <0>; > + }; > + }; > + > + pmc@0,7000e400 { > + nvidia,invert-interrupt; > + nvidia,suspend-mode = <0>; > + nvidia,cpu-pwr-good-time = <500>; > + nvidia,cpu-pwr-off-time = <300>; > + nvidia,core-pwr-good-time = <641 3845>; > + nvidia,core-pwr-off-time = <61036>; > + nvidia,core-power-req-active-high; > + nvidia,sys-clock-req-active-high; > + }; > + > + hda@0,70030000 { > + status = "okay"; > + }; > + > + sdhci@0,700b0000 { /* WiFi/BT on this bus */ > + status = "okay"; > + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > + bus-width = <4>; > + no-1-8-v; > + non-removable; > + }; > + > + sdhci@0,700b0400 { /* SD Card on this bus */ > + status = "okay"; > + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > + bus-width = <4>; > + no-1-8-v; > + vqmmc-supply = <&vddio_sdmmc3>; > + }; > + > + sdhci@0,700b0600 { /* eMMC on this bus */ > + status = "okay"; > + bus-width = <8>; > + no-1-8-v; > + non-removable; > + }; > + > + ahub@0,70300000 { > + i2s@0,70301100 { > + status = "okay"; > + }; > + }; > + > + usb@0,7d000000 { /* Rear external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d000000 { > + status = "okay"; > + vbus-supply = <&vdd_usb1_vbus>; > + }; > + > + usb@0,7d004000 { /* Internal webcam. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d004000 { > + status = "okay"; > + vbus-supply = <&vdd_run_cam>; > + }; > + > + usb@0,7d008000 { /* Left external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d008000 { > + status = "okay"; > + vbus-supply = <&vdd_usb3_vbus>; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + > + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > + power-supply = <&vdd_led>; > + pwms = <&pwm 1 1000000>; > + > + default-brightness-level = <224>; > + brightness-levels = > + < 0 1 2 3 4 5 6 7 > + 8 9 10 11 12 13 14 15 > + 16 17 18 19 20 21 22 23 > + 24 25 26 27 28 29 30 31 > + 32 33 34 35 36 37 38 39 > + 40 41 42 43 44 45 46 47 > + 48 49 50 51 52 53 54 55 > + 56 57 58 59 60 61 62 63 > + 64 65 66 67 68 69 70 71 > + 72 73 74 75 76 77 78 79 > + 80 81 82 83 84 85 86 87 > + 88 89 90 91 92 93 94 95 > + 96 97 98 99 100 101 102 103 > + 104 105 106 107 108 109 110 111 > + 112 113 114 115 116 117 118 119 > + 120 121 122 123 124 125 126 127 > + 128 129 130 131 132 133 134 135 > + 136 137 138 139 140 141 142 143 > + 144 145 146 147 148 149 150 151 > + 152 153 154 155 156 157 158 159 > + 160 161 162 163 164 165 166 167 > + 168 169 170 171 172 173 174 175 > + 176 177 178 179 180 181 182 183 > + 184 185 186 187 188 189 190 191 > + 192 193 194 195 196 197 198 199 > + 200 201 202 203 204 205 206 207 > + 208 209 210 211 212 213 214 215 > + 216 217 218 219 220 221 222 223 > + 224 225 226 227 228 229 230 231 > + 232 233 234 235 236 237 238 239 > + 240 241 242 243 244 245 246 247 > + 248 249 250 251 252 253 254 255 > + 256>; > + }; > + > + clocks { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + clk32k_in: clock@0 { > + compatible = "fixed-clock"; > + reg = <0>; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + lid { > + label = "Lid"; > + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > + linux,input-type = <5>; > + linux,code = <KEY_RESERVED>; > + debounce-interval = <1>; > + gpio-key,wakeup; > + }; > + > + power { > + label = "Power"; > + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > + linux,code = <KEY_POWER>; > + debounce-interval = <30>; > + gpio-key,wakeup; > + }; > + }; > + > + panel: panel { > + compatible = "auo,b133xtn01"; > + > + backlight = <&backlight>; > + ddc-i2c-bus = <&dpaux>; > + }; > + > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdd_mux: regulator@0 { > + compatible = "regulator-fixed"; > + reg = <0>; > + regulator-name = "+VDD_MUX"; > + regulator-min-microvolt = <12000000>; > + regulator-max-microvolt = <12000000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_5v0_sys: regulator@1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "+5V_SYS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_sys: regulator@2 { > + compatible = "regulator-fixed"; > + reg = <2>; > + regulator-name = "+3.3V_SYS"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_run: regulator@3 { > + compatible = "regulator-fixed"; > + reg = <3>; > + regulator-name = "+3.3V_RUN"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_3v3_hdmi: regulator@4 { > + compatible = "regulator-fixed"; > + reg = <4>; > + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_led: regulator@5 { > + compatible = "regulator-fixed"; > + reg = <5>; > + regulator-name = "+VDD_LED"; > + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_5v0_ts: regulator@6 { > + compatible = "regulator-fixed"; > + reg = <6>; > + regulator-name = "+5V_VDD_TS_SW"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-boot-on; > + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb1_vbus: regulator@7 { > + compatible = "regulator-fixed"; > + reg = <7>; > + regulator-name = "+5V_USB_HS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb3_vbus: regulator@8 { > + compatible = "regulator-fixed"; > + reg = <8>; > + regulator-name = "+5V_USB_SS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_3v3_panel: regulator@9 { > + compatible = "regulator-fixed"; > + reg = <9>; > + regulator-name = "+3.3V_PANEL"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_3v3_lp0: regulator@10 { > + compatible = "regulator-fixed"; > + reg = <10>; > + regulator-name = "+3.3V_LP0"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + /* > + * TODO: find a way to wire this up with the USB EHCI > + * controllers so that it can be enabled on demand. > + */ > + regulator-always-on; > + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_hdmi_pll: regulator@11 { > + compatible = "regulator-fixed"; > + reg = <11>; > + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > + vin-supply = <&vdd_1v05_run>; > + }; > + > + vdd_5v0_hdmi: regulator@12 { > + compatible = "regulator-fixed"; > + reg = <12>; > + regulator-name = "+5V_HDMI_CON"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + }; > + > + sound { > + compatible = "nvidia,tegra-audio-max98090-nyan-big", > + "nvidia,tegra-audio-max98090"; > + > + nvidia,audio-routing = > + "Headphones", "HPR", > + "Headphones", "HPL", > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "Mic Jack", "MICBIAS", > + "DMICL", "Int Mic", > + "DMICR", "Int Mic", > + "IN34", "Mic Jack"; > + > + nvidia,i2s-controller = <&tegra_i2s1>; > + nvidia,audio-codec = <&acodec>; > + > + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > + <&tegra_car TEGRA124_CLK_EXTERN1>; > + clock-names = "pll_a", "pll_a_out0", "mclk"; > + > + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + }; > +}; > + > +#include "cros-ec-keyboard.dtsi" > -- > 1.9.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 13:24 ` Eduardo Valentin 0 siblings, 0 replies; 41+ messages in thread From: Eduardo Valentin @ 2015-01-06 13:24 UTC (permalink / raw) To: linux-arm-kernel On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> For the (small part of the) thermal sensor: Acked-by: Eduardo Valentin <edubezval@gmail.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- > arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ > 2 files changed, 1136 insertions(+), 1128 deletions(-) > create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi > > diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts > index 4752572..2041077 100644 > --- a/arch/arm/boot/dts/tegra124-nyan-big.dts > +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts > @@ -1,1137 +1,12 @@ > /dts-v1/; > > -#include <dt-bindings/input/input.h> > -#include "tegra124.dtsi" > +#include "tegra124-nyan.dtsi" > > / { > model = "Acer Chromebook 13 CB5-311"; > - compatible = "google,nyan-big", "nvidia,tegra124"; > - > - aliases { > - rtc0 = "/i2c at 0,7000d000/pmic at 40"; > - rtc1 = "/rtc at 0,7000e000"; > - serial0 = &uarta; > - }; > - > - memory { > - reg = <0x0 0x80000000 0x0 0x80000000>; > - }; > - > - host1x at 0,50000000 { > - hdmi at 0,54280000 { > - status = "okay"; > - > - vdd-supply = <&vdd_3v3_hdmi>; > - pll-supply = <&vdd_hdmi_pll>; > - hdmi-supply = <&vdd_5v0_hdmi>; > - > - nvidia,ddc-i2c-bus = <&hdmi_ddc>; > - nvidia,hpd-gpio = > - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > - }; > - > - sor at 0,54540000 { > - status = "okay"; > - > - nvidia,dpaux = <&dpaux>; > - nvidia,panel = <&panel>; > - }; > - > - dpaux at 0,545c0000 { > - vdd-supply = <&vdd_3v3_panel>; > - status = "okay"; > - }; > - }; > - > - pinmux at 0,70000868 { > - pinctrl-names = "boot"; > - pinctrl-0 = <&pinmux_boot>; > - > - pinmux_boot: common { > - dap_mclk1_pw4 { > - nvidia,pins = "dap_mclk1_pw4"; > - nvidia,function = "extperiph1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_din_pa4 { > - nvidia,pins = "dap2_din_pa4"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_dout_pa5 { > - nvidia,pins = "dap2_dout_pa5", > - "dap2_fs_pa2", > - "dap2_sclk_pa3"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dvfs_pwm_px0 { > - nvidia,pins = "dvfs_pwm_px0", > - "dvfs_clk_px2"; > - nvidia,function = "cldvfs"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_clk_py0 { > - nvidia,pins = "ulpi_clk_py0", > - "ulpi_nxt_py2", > - "ulpi_stp_py3"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_dir_py1 { > - nvidia,pins = "ulpi_dir_py1"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cam_i2c_scl_pbb1 { > - nvidia,pins = "cam_i2c_scl_pbb1", > - "cam_i2c_sda_pbb2"; > - nvidia,function = "i2c3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - gen2_i2c_scl_pt5 { > - nvidia,pins = "gen2_i2c_scl_pt5", > - "gen2_i2c_sda_pt6"; > - nvidia,function = "i2c2"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - pg4 { > - nvidia,pins = "pg4", > - "pg5", > - "pg6", > - "pi3"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pg7 { > - nvidia,pins = "pg7"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ph1 { > - nvidia,pins = "ph1"; > - nvidia,function = "pwm1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pk0 { > - nvidia,pins = "pk0", > - "kb_row15_ps7", > - "clk_32k_out_pa0"; > - nvidia,function = "soc"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sdmmc1_clk_pz0 { > - nvidia,pins = "sdmmc1_clk_pz0"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc1_cmd_pz1 { > - nvidia,pins = "sdmmc1_cmd_pz1", > - "sdmmc1_dat0_py7", > - "sdmmc1_dat1_py6", > - "sdmmc1_dat2_py5", > - "sdmmc1_dat3_py4"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_clk_pa6 { > - nvidia,pins = "sdmmc3_clk_pa6"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_cmd_pa7 { > - nvidia,pins = "sdmmc3_cmd_pa7", > - "sdmmc3_dat0_pb7", > - "sdmmc3_dat1_pb6", > - "sdmmc3_dat2_pb5", > - "sdmmc3_dat3_pb4", > - "kb_col4_pq4", > - "sdmmc3_clk_lb_out_pee4", > - "sdmmc3_clk_lb_in_pee5", > - "sdmmc3_cd_n_pv2"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_clk_pcc4 { > - nvidia,pins = "sdmmc4_clk_pcc4"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_cmd_pt7 { > - nvidia,pins = "sdmmc4_cmd_pt7", > - "sdmmc4_dat0_paa0", > - "sdmmc4_dat1_paa1", > - "sdmmc4_dat2_paa2", > - "sdmmc4_dat3_paa3", > - "sdmmc4_dat4_paa4", > - "sdmmc4_dat5_paa5", > - "sdmmc4_dat6_paa6", > - "sdmmc4_dat7_paa7"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_i2c_scl_pz6 { > - nvidia,pins = "pwr_i2c_scl_pz6", > - "pwr_i2c_sda_pz7"; > - nvidia,function = "i2cpwr"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - jtag_rtck { > - nvidia,pins = "jtag_rtck"; > - nvidia,function = "rtck"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk_32k_in { > - nvidia,pins = "clk_32k_in"; > - nvidia,function = "clk"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - core_pwr_req { > - nvidia,pins = "core_pwr_req"; > - nvidia,function = "pwron"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cpu_pwr_req { > - nvidia,pins = "cpu_pwr_req"; > - nvidia,function = "cpu"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_int_n { > - nvidia,pins = "pwr_int_n"; > - nvidia,function = "pmi"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - reset_out_n { > - nvidia,pins = "reset_out_n"; > - nvidia,function = "reset_out_n"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk3_out_pee0 { > - nvidia,pins = "clk3_out_pee0"; > - nvidia,function = "extperiph3"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - gen1_i2c_sda_pc5 { > - nvidia,pins = "gen1_i2c_sda_pc5", > - "gen1_i2c_scl_pc4"; > - nvidia,function = "i2c1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - hdmi_cec_pee3 { > - nvidia,pins = "hdmi_cec_pee3"; > - nvidia,function = "cec"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_DISABLE>; > - }; > - hdmi_int_pn7 { > - nvidia,pins = "hdmi_int_pn7"; > - nvidia,function = "rsvd1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ddc_scl_pv4 { > - nvidia,pins = "ddc_scl_pv4", > - "ddc_sda_pv5"; > - nvidia,function = "i2c4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > - }; > - kb_row10_ps2 { > - nvidia,pins = "kb_row10_ps2"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_row9_ps1 { > - nvidia,pins = "kb_row9_ps1"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - usb_vbus_en0_pn4 { > - nvidia,pins = "usb_vbus_en0_pn4", > - "usb_vbus_en1_pn5"; > - nvidia,function = "usb"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - drive_sdio1 { > - nvidia,pins = "drive_sdio1"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <36>; > - nvidia,pull-up-strength = <20>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > - }; > - drive_sdio3 { > - nvidia,pins = "drive_sdio3"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <22>; > - nvidia,pull-up-strength = <36>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - }; > - drive_gma { > - nvidia,pins = "drive_gma"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <2>; > - nvidia,pull-up-strength = <1>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,drive-type = <1>; > - }; > - codec_irq_l { > - nvidia,pins = "ph4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lcd_bl_en { > - nvidia,pins = "ph2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - touch_irq_l { > - nvidia,pins = "gpio_w3_aud_pw3"; > - nvidia,function = "spi6"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - tpm_davint_l { > - nvidia,pins = "ph6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_irq_l { > - nvidia,pins = "pk2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_reset_l { > - nvidia,pins = "pk4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ts_shdn_l { > - nvidia,pins = "pk1"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ph7 { > - nvidia,pins = "ph7"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_col0_ap { > - nvidia,pins = "kb_col0_pq0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lid_open { > - nvidia,pins = "kb_row4_pr4"; > - nvidia,function = "rsvd3"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - en_vdd_sd { > - nvidia,pins = "kb_row0_pr0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ac_ok { > - nvidia,pins = "pj0"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sensor_irq_l { > - nvidia,pins = "pi6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - wifi_en { > - nvidia,pins = "gpio_x7_aud_px7"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_bl { > - nvidia,pins = "dap3_dout_pp2"; > - nvidia,function = "i2s2"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_hdmi { > - nvidia,pins = "spdif_in_pk6"; > - nvidia,function = "spdif"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - soc_warm_reset_l { > - nvidia,pins = "pi5"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - hp_det_l { > - nvidia,pins = "pi7"; > - nvidia,function = "rsvd1"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - mic_det_l { > - nvidia,pins = "kb_row7_pr7"; > - nvidia,function = "rsvd2"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - }; > - }; > - > - serial at 0,70006000 { > - /* Debug connector on the bottom of the board near SD card. */ > - status = "okay"; > - }; > - > - pwm at 0,7000a000 { > - status = "okay"; > - }; > - > - i2c at 0,7000c000 { > - status = "okay"; > - clock-frequency = <100000>; > - > - acodec: audio-codec at 10 { > - compatible = "maxim,max98090"; > - reg = <0x10>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > - }; > - > - temperature-sensor at 4c { > - compatible = "ti,tmp451"; > - reg = <0x4c>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > - > - #thermal-sensor-cells = <1>; > - }; > - }; > - > - i2c at 0,7000c400 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c at 0,7000c500 { > - status = "okay"; > - clock-frequency = <400000>; > - > - tpm at 20 { > - compatible = "infineon,slb9645tt"; > - reg = <0x20>; > - }; > - }; > - > - hdmi_ddc: i2c at 0,7000c700 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c at 0,7000d000 { > - status = "okay"; > - clock-frequency = <400000>; > - > - pmic: pmic at 40 { > - compatible = "ams,as3722"; > - reg = <0x40>; > - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > - > - ams,system-power-controller; > - > - #interrupt-cells = <2>; > - interrupt-controller; > - > - gpio-controller; > - #gpio-cells = <2>; > - > - pinctrl-names = "default"; > - pinctrl-0 = <&as3722_default>; > - > - as3722_default: pinmux { > - gpio0 { > - pins = "gpio0"; > - function = "gpio"; > - bias-pull-down; > - }; > - > - gpio1 { > - pins = "gpio1"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio2_4_7 { > - pins = "gpio2", "gpio4", "gpio7"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio3_6 { > - pins = "gpio3", "gpio6"; > - bias-high-impedance; > - }; > - > - gpio5 { > - pins = "gpio5"; > - function = "clk32k-out"; > - bias-pull-down; > - }; > - }; > - > - regulators { > - vsup-sd2-supply = <&vdd_5v0_sys>; > - vsup-sd3-supply = <&vdd_5v0_sys>; > - vsup-sd4-supply = <&vdd_5v0_sys>; > - vsup-sd5-supply = <&vdd_5v0_sys>; > - vin-ldo0-supply = <&vdd_1v35_lp0>; > - vin-ldo1-6-supply = <&vdd_3v3_run>; > - vin-ldo2-5-7-supply = <&vddio_1v8>; > - vin-ldo3-4-supply = <&vdd_3v3_sys>; > - vin-ldo9-10-supply = <&vdd_5v0_sys>; > - vin-ldo11-supply = <&vdd_3v3_run>; > - > - sd0 { > - regulator-name = "+VDD_CPU_AP"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <2>; > - }; > - > - sd1 { > - regulator-name = "+VDD_CORE"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <2500000>; > - regulator-max-microamp = <4000000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <1>; > - }; > - > - vdd_1v35_lp0: sd2 { > - regulator-name = "+1.35V_LP0(sd2)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - sd3 { > - regulator-name = "+1.35V_LP0(sd3)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_1v05_run: sd4 { > - regulator-name = "+1.05V_RUN"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - vddio_1v8: sd5 { > - regulator-name = "+1.8V_VDDIO"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - sd6 { > - regulator-name = "+VDD_GPU_AP"; > - regulator-min-microvolt = <650000>; > - regulator-max-microvolt = <1200000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo0 { > - regulator-name = "+1.05V_RUN_AVDD"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - regulator-boot-on; > - regulator-always-on; > - ams,ext-control = <1>; > - }; > - > - ldo1 { > - regulator-name = "+1.8V_RUN_CAM"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - > - ldo2 { > - regulator-name = "+1.2V_GEN_AVDD"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo3 { > - regulator-name = "+1.00V_LP0_VDD_RTC"; > - regulator-min-microvolt = <1000000>; > - regulator-max-microvolt = <1000000>; > - regulator-boot-on; > - regulator-always-on; > - ams,enable-tracking; > - }; > - > - vdd_run_cam: ldo4 { > - regulator-name = "+3.3V_RUN_CAM"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo5 { > - regulator-name = "+1.2V_RUN_CAM_FRONT"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - }; > - > - vddio_sdmmc3: ldo6 { > - regulator-name = "+VDDIO_SDMMC3"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <3300000>; > - }; > - > - ldo7 { > - regulator-name = "+1.05V_RUN_CAM_REAR"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - ldo9 { > - regulator-name = "+2.8V_RUN_TOUCH"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo10 { > - regulator-name = "+2.8V_RUN_CAM_AF"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo11 { > - regulator-name = "+1.8V_RUN_VPP_FUSE"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - }; > - }; > - }; > - > - spi at 0,7000d400 { > - status = "okay"; > - > - cros_ec: cros-ec at 0 { > - compatible = "google,cros-ec-spi"; > - spi-max-frequency = <3000000>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > - reg = <0>; > - > - google,cros-ec-spi-msg-delay = <2000>; > - > - i2c-tunnel { > - compatible = "google,cros-ec-i2c-tunnel"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - google,remote-bus = <0>; > - > - charger: bq24735 at 9 { > - compatible = "ti,bq24735"; > - reg = <0x9>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - ti,ac-detect-gpios = <&gpio > - TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - }; > - > - battery: sbs-battery at b { > - compatible = "sbs,sbs-battery"; > - reg = <0xb>; > - sbs,i2c-retry-count = <2>; > - sbs,poll-retry-count = <10>; > - power-supplies = <&charger>; > - }; > - }; > - }; > - }; > - > - spi at 0,7000da00 { > - status = "okay"; > - spi-max-frequency = <25000000>; > - > - flash at 0 { > - compatible = "winbond,w25q32dw"; > - reg = <0>; > - }; > - }; > - > - pmc at 0,7000e400 { > - nvidia,invert-interrupt; > - nvidia,suspend-mode = <0>; > - nvidia,cpu-pwr-good-time = <500>; > - nvidia,cpu-pwr-off-time = <300>; > - nvidia,core-pwr-good-time = <641 3845>; > - nvidia,core-pwr-off-time = <61036>; > - nvidia,core-power-req-active-high; > - nvidia,sys-clock-req-active-high; > - }; > - > - hda at 0,70030000 { > - status = "okay"; > - }; > - > - sdhci at 0,700b0000 { /* WiFi/BT on this bus */ > - status = "okay"; > - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > - bus-width = <4>; > - no-1-8-v; > - non-removable; > - }; > - > - sdhci at 0,700b0400 { /* SD Card on this bus */ > - status = "okay"; > - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > - bus-width = <4>; > - no-1-8-v; > - vqmmc-supply = <&vddio_sdmmc3>; > - }; > - > - sdhci at 0,700b0600 { /* eMMC on this bus */ > - status = "okay"; > - bus-width = <8>; > - no-1-8-v; > - non-removable; > - }; > - > - ahub at 0,70300000 { > - i2s at 0,70301100 { > - status = "okay"; > - }; > - }; > - > - usb at 0,7d000000 { /* Rear external USB port. */ > - status = "okay"; > - }; > - > - usb-phy at 0,7d000000 { > - status = "okay"; > - vbus-supply = <&vdd_usb1_vbus>; > - }; > - > - usb at 0,7d004000 { /* Internal webcam. */ > - status = "okay"; > - }; > - > - usb-phy at 0,7d004000 { > - status = "okay"; > - vbus-supply = <&vdd_run_cam>; > - }; > - > - usb at 0,7d008000 { /* Left external USB port. */ > - status = "okay"; > - }; > - > - usb-phy at 0,7d008000 { > - status = "okay"; > - vbus-supply = <&vdd_usb3_vbus>; > - }; > - > - backlight: backlight { > - compatible = "pwm-backlight"; > - > - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > - power-supply = <&vdd_led>; > - pwms = <&pwm 1 1000000>; > - > - default-brightness-level = <224>; > - brightness-levels = > - < 0 1 2 3 4 5 6 7 > - 8 9 10 11 12 13 14 15 > - 16 17 18 19 20 21 22 23 > - 24 25 26 27 28 29 30 31 > - 32 33 34 35 36 37 38 39 > - 40 41 42 43 44 45 46 47 > - 48 49 50 51 52 53 54 55 > - 56 57 58 59 60 61 62 63 > - 64 65 66 67 68 69 70 71 > - 72 73 74 75 76 77 78 79 > - 80 81 82 83 84 85 86 87 > - 88 89 90 91 92 93 94 95 > - 96 97 98 99 100 101 102 103 > - 104 105 106 107 108 109 110 111 > - 112 113 114 115 116 117 118 119 > - 120 121 122 123 124 125 126 127 > - 128 129 130 131 132 133 134 135 > - 136 137 138 139 140 141 142 143 > - 144 145 146 147 148 149 150 151 > - 152 153 154 155 156 157 158 159 > - 160 161 162 163 164 165 166 167 > - 168 169 170 171 172 173 174 175 > - 176 177 178 179 180 181 182 183 > - 184 185 186 187 188 189 190 191 > - 192 193 194 195 196 197 198 199 > - 200 201 202 203 204 205 206 207 > - 208 209 210 211 212 213 214 215 > - 216 217 218 219 220 221 222 223 > - 224 225 226 227 228 229 230 231 > - 232 233 234 235 236 237 238 239 > - 240 241 242 243 244 245 246 247 > - 248 249 250 251 252 253 254 255 > - 256>; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - clk32k_in: clock at 0 { > - compatible = "fixed-clock"; > - reg = <0>; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > - > - gpio-keys { > - compatible = "gpio-keys"; > - > - lid { > - label = "Lid"; > - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > - linux,input-type = <5>; > - linux,code = <KEY_RESERVED>; > - debounce-interval = <1>; > - gpio-key,wakeup; > - }; > - > - power { > - label = "Power"; > - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > - linux,code = <KEY_POWER>; > - debounce-interval = <30>; > - gpio-key,wakeup; > - }; > - }; > - > - panel: panel { > - compatible = "auo,b133xtn01"; > - > - backlight = <&backlight>; > - ddc-i2c-bus = <&dpaux>; > - }; > - > - regulators { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - vdd_mux: regulator at 0 { > - compatible = "regulator-fixed"; > - reg = <0>; > - regulator-name = "+VDD_MUX"; > - regulator-min-microvolt = <12000000>; > - regulator-max-microvolt = <12000000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_5v0_sys: regulator at 1 { > - compatible = "regulator-fixed"; > - reg = <1>; > - regulator-name = "+5V_SYS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_sys: regulator at 2 { > - compatible = "regulator-fixed"; > - reg = <2>; > - regulator-name = "+3.3V_SYS"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_run: regulator at 3 { > - compatible = "regulator-fixed"; > - reg = <3>; > - regulator-name = "+3.3V_RUN"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_3v3_hdmi: regulator at 4 { > - compatible = "regulator-fixed"; > - reg = <4>; > - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_led: regulator at 5 { > - compatible = "regulator-fixed"; > - reg = <5>; > - regulator-name = "+VDD_LED"; > - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_5v0_ts: regulator at 6 { > - compatible = "regulator-fixed"; > - reg = <6>; > - regulator-name = "+5V_VDD_TS_SW"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-boot-on; > - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb1_vbus: regulator at 7 { > - compatible = "regulator-fixed"; > - reg = <7>; > - regulator-name = "+5V_USB_HS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb3_vbus: regulator at 8 { > - compatible = "regulator-fixed"; > - reg = <8>; > - regulator-name = "+5V_USB_SS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_3v3_panel: regulator at 9 { > - compatible = "regulator-fixed"; > - reg = <9>; > - regulator-name = "+3.3V_PANEL"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_3v3_lp0: regulator at 10 { > - compatible = "regulator-fixed"; > - reg = <10>; > - regulator-name = "+3.3V_LP0"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - /* > - * TODO: find a way to wire this up with the USB EHCI > - * controllers so that it can be enabled on demand. > - */ > - regulator-always-on; > - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_hdmi_pll: regulator at 11 { > - compatible = "regulator-fixed"; > - reg = <11>; > - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > - vin-supply = <&vdd_1v05_run>; > - }; > - > - vdd_5v0_hdmi: regulator at 12 { > - compatible = "regulator-fixed"; > - reg = <12>; > - regulator-name = "+5V_HDMI_CON"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - }; > + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; > > sound { > - compatible = "nvidia,tegra-audio-max98090-nyan-big", > - "nvidia,tegra-audio-max98090"; > - nvidia,model = "Acer Chromebook 13"; > - > - nvidia,audio-routing = > - "Headphones", "HPR", > - "Headphones", "HPL", > - "Speakers", "SPKR", > - "Speakers", "SPKL", > - "Mic Jack", "MICBIAS", > - "DMICL", "Int Mic", > - "DMICR", "Int Mic", > - "IN34", "Mic Jack"; > - > - nvidia,i2s-controller = <&tegra_i2s1>; > - nvidia,audio-codec = <&acodec>; > - > - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > - <&tegra_car TEGRA124_CLK_EXTERN1>; > - clock-names = "pll_a", "pll_a_out0", "mclk"; > - > - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + nvidia,model = "Acer Chromebook 13 CB5-311"; > }; > }; > - > -#include "cros-ec-keyboard.dtsi" > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi > new file mode 100644 > index 0000000..4c68658 > --- /dev/null > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi > @@ -0,0 +1,1133 @@ > +#include <dt-bindings/input/input.h> > +#include "tegra124.dtsi" > + > +/ { > + compatible = "google,nyan", "nvidia,tegra124"; > + > + aliases { > + rtc0 = "/i2c at 0,7000d000/pmic at 40"; > + rtc1 = "/rtc at 0,7000e000"; > + serial0 = &uarta; > + }; > + > + memory { > + reg = <0x0 0x80000000 0x0 0x80000000>; > + }; > + > + host1x at 0,50000000 { > + hdmi at 0,54280000 { > + status = "okay"; > + > + vdd-supply = <&vdd_3v3_hdmi>; > + pll-supply = <&vdd_hdmi_pll>; > + hdmi-supply = <&vdd_5v0_hdmi>; > + > + nvidia,ddc-i2c-bus = <&hdmi_ddc>; > + nvidia,hpd-gpio = > + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > + }; > + > + sor at 0,54540000 { > + status = "okay"; > + > + nvidia,dpaux = <&dpaux>; > + nvidia,panel = <&panel>; > + }; > + > + dpaux at 0,545c0000 { > + vdd-supply = <&vdd_3v3_panel>; > + status = "okay"; > + }; > + }; > + > + pinmux at 0,70000868 { > + pinctrl-names = "boot"; > + pinctrl-0 = <&pinmux_boot>; > + > + pinmux_boot: common { > + dap_mclk1_pw4 { > + nvidia,pins = "dap_mclk1_pw4"; > + nvidia,function = "extperiph1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_din_pa4 { > + nvidia,pins = "dap2_din_pa4"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_dout_pa5 { > + nvidia,pins = "dap2_dout_pa5", > + "dap2_fs_pa2", > + "dap2_sclk_pa3"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dvfs_pwm_px0 { > + nvidia,pins = "dvfs_pwm_px0", > + "dvfs_clk_px2"; > + nvidia,function = "cldvfs"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_clk_py0 { > + nvidia,pins = "ulpi_clk_py0", > + "ulpi_nxt_py2", > + "ulpi_stp_py3"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_dir_py1 { > + nvidia,pins = "ulpi_dir_py1"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cam_i2c_scl_pbb1 { > + nvidia,pins = "cam_i2c_scl_pbb1", > + "cam_i2c_sda_pbb2"; > + nvidia,function = "i2c3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + gen2_i2c_scl_pt5 { > + nvidia,pins = "gen2_i2c_scl_pt5", > + "gen2_i2c_sda_pt6"; > + nvidia,function = "i2c2"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + pg4 { > + nvidia,pins = "pg4", > + "pg5", > + "pg6", > + "pi3"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pg7 { > + nvidia,pins = "pg7"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ph1 { > + nvidia,pins = "ph1"; > + nvidia,function = "pwm1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pk0 { > + nvidia,pins = "pk0", > + "kb_row15_ps7", > + "clk_32k_out_pa0"; > + nvidia,function = "soc"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sdmmc1_clk_pz0 { > + nvidia,pins = "sdmmc1_clk_pz0"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc1_cmd_pz1 { > + nvidia,pins = "sdmmc1_cmd_pz1", > + "sdmmc1_dat0_py7", > + "sdmmc1_dat1_py6", > + "sdmmc1_dat2_py5", > + "sdmmc1_dat3_py4"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_clk_pa6 { > + nvidia,pins = "sdmmc3_clk_pa6"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_cmd_pa7 { > + nvidia,pins = "sdmmc3_cmd_pa7", > + "sdmmc3_dat0_pb7", > + "sdmmc3_dat1_pb6", > + "sdmmc3_dat2_pb5", > + "sdmmc3_dat3_pb4", > + "kb_col4_pq4", > + "sdmmc3_clk_lb_out_pee4", > + "sdmmc3_clk_lb_in_pee5", > + "sdmmc3_cd_n_pv2"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_clk_pcc4 { > + nvidia,pins = "sdmmc4_clk_pcc4"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_cmd_pt7 { > + nvidia,pins = "sdmmc4_cmd_pt7", > + "sdmmc4_dat0_paa0", > + "sdmmc4_dat1_paa1", > + "sdmmc4_dat2_paa2", > + "sdmmc4_dat3_paa3", > + "sdmmc4_dat4_paa4", > + "sdmmc4_dat5_paa5", > + "sdmmc4_dat6_paa6", > + "sdmmc4_dat7_paa7"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_i2c_scl_pz6 { > + nvidia,pins = "pwr_i2c_scl_pz6", > + "pwr_i2c_sda_pz7"; > + nvidia,function = "i2cpwr"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + jtag_rtck { > + nvidia,pins = "jtag_rtck"; > + nvidia,function = "rtck"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk_32k_in { > + nvidia,pins = "clk_32k_in"; > + nvidia,function = "clk"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + core_pwr_req { > + nvidia,pins = "core_pwr_req"; > + nvidia,function = "pwron"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cpu_pwr_req { > + nvidia,pins = "cpu_pwr_req"; > + nvidia,function = "cpu"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_int_n { > + nvidia,pins = "pwr_int_n"; > + nvidia,function = "pmi"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + reset_out_n { > + nvidia,pins = "reset_out_n"; > + nvidia,function = "reset_out_n"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk3_out_pee0 { > + nvidia,pins = "clk3_out_pee0"; > + nvidia,function = "extperiph3"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + gen1_i2c_sda_pc5 { > + nvidia,pins = "gen1_i2c_sda_pc5", > + "gen1_i2c_scl_pc4"; > + nvidia,function = "i2c1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + hdmi_cec_pee3 { > + nvidia,pins = "hdmi_cec_pee3"; > + nvidia,function = "cec"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_DISABLE>; > + }; > + hdmi_int_pn7 { > + nvidia,pins = "hdmi_int_pn7"; > + nvidia,function = "rsvd1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ddc_scl_pv4 { > + nvidia,pins = "ddc_scl_pv4", > + "ddc_sda_pv5"; > + nvidia,function = "i2c4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > + }; > + kb_row10_ps2 { > + nvidia,pins = "kb_row10_ps2"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_row9_ps1 { > + nvidia,pins = "kb_row9_ps1"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + usb_vbus_en0_pn4 { > + nvidia,pins = "usb_vbus_en0_pn4", > + "usb_vbus_en1_pn5"; > + nvidia,function = "usb"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + drive_sdio1 { > + nvidia,pins = "drive_sdio1"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <36>; > + nvidia,pull-up-strength = <20>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > + }; > + drive_sdio3 { > + nvidia,pins = "drive_sdio3"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <22>; > + nvidia,pull-up-strength = <36>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + }; > + drive_gma { > + nvidia,pins = "drive_gma"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <2>; > + nvidia,pull-up-strength = <1>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,drive-type = <1>; > + }; > + codec_irq_l { > + nvidia,pins = "ph4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lcd_bl_en { > + nvidia,pins = "ph2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + touch_irq_l { > + nvidia,pins = "gpio_w3_aud_pw3"; > + nvidia,function = "spi6"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + tpm_davint_l { > + nvidia,pins = "ph6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_irq_l { > + nvidia,pins = "pk2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_reset_l { > + nvidia,pins = "pk4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ts_shdn_l { > + nvidia,pins = "pk1"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ph7 { > + nvidia,pins = "ph7"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_col0_ap { > + nvidia,pins = "kb_col0_pq0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lid_open { > + nvidia,pins = "kb_row4_pr4"; > + nvidia,function = "rsvd3"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + en_vdd_sd { > + nvidia,pins = "kb_row0_pr0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ac_ok { > + nvidia,pins = "pj0"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sensor_irq_l { > + nvidia,pins = "pi6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + wifi_en { > + nvidia,pins = "gpio_x7_aud_px7"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_bl { > + nvidia,pins = "dap3_dout_pp2"; > + nvidia,function = "i2s2"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_hdmi { > + nvidia,pins = "spdif_in_pk6"; > + nvidia,function = "spdif"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + soc_warm_reset_l { > + nvidia,pins = "pi5"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + hp_det_l { > + nvidia,pins = "pi7"; > + nvidia,function = "rsvd1"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + mic_det_l { > + nvidia,pins = "kb_row7_pr7"; > + nvidia,function = "rsvd2"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + }; > + }; > + > + serial at 0,70006000 { > + /* Debug connector on the bottom of the board near SD card. */ > + status = "okay"; > + }; > + > + pwm at 0,7000a000 { > + status = "okay"; > + }; > + > + i2c at 0,7000c000 { > + status = "okay"; > + clock-frequency = <100000>; > + > + acodec: audio-codec at 10 { > + compatible = "maxim,max98090"; > + reg = <0x10>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > + }; > + > + temperature-sensor at 4c { > + compatible = "ti,tmp451"; > + reg = <0x4c>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > + i2c at 0,7000c400 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c at 0,7000c500 { > + status = "okay"; > + clock-frequency = <400000>; > + > + tpm at 20 { > + compatible = "infineon,slb9645tt"; > + reg = <0x20>; > + }; > + }; > + > + hdmi_ddc: i2c at 0,7000c700 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c at 0,7000d000 { > + status = "okay"; > + clock-frequency = <400000>; > + > + pmic: pmic at 40 { > + compatible = "ams,as3722"; > + reg = <0x40>; > + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > + > + ams,system-power-controller; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&as3722_default>; > + > + as3722_default: pinmux { > + gpio0 { > + pins = "gpio0"; > + function = "gpio"; > + bias-pull-down; > + }; > + > + gpio1 { > + pins = "gpio1"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio2_4_7 { > + pins = "gpio2", "gpio4", "gpio7"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio3_6 { > + pins = "gpio3", "gpio6"; > + bias-high-impedance; > + }; > + > + gpio5 { > + pins = "gpio5"; > + function = "clk32k-out"; > + bias-pull-down; > + }; > + }; > + > + regulators { > + vsup-sd2-supply = <&vdd_5v0_sys>; > + vsup-sd3-supply = <&vdd_5v0_sys>; > + vsup-sd4-supply = <&vdd_5v0_sys>; > + vsup-sd5-supply = <&vdd_5v0_sys>; > + vin-ldo0-supply = <&vdd_1v35_lp0>; > + vin-ldo1-6-supply = <&vdd_3v3_run>; > + vin-ldo2-5-7-supply = <&vddio_1v8>; > + vin-ldo3-4-supply = <&vdd_3v3_sys>; > + vin-ldo9-10-supply = <&vdd_5v0_sys>; > + vin-ldo11-supply = <&vdd_3v3_run>; > + > + sd0 { > + regulator-name = "+VDD_CPU_AP"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <2>; > + }; > + > + sd1 { > + regulator-name = "+VDD_CORE"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <2500000>; > + regulator-max-microamp = <4000000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <1>; > + }; > + > + vdd_1v35_lp0: sd2 { > + regulator-name = "+1.35V_LP0(sd2)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + sd3 { > + regulator-name = "+1.35V_LP0(sd3)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_1v05_run: sd4 { > + regulator-name = "+1.05V_RUN"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + vddio_1v8: sd5 { > + regulator-name = "+1.8V_VDDIO"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sd6 { > + regulator-name = "+VDD_GPU_AP"; > + regulator-min-microvolt = <650000>; > + regulator-max-microvolt = <1200000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo0 { > + regulator-name = "+1.05V_RUN_AVDD"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + regulator-boot-on; > + regulator-always-on; > + ams,ext-control = <1>; > + }; > + > + ldo1 { > + regulator-name = "+1.8V_RUN_CAM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo2 { > + regulator-name = "+1.2V_GEN_AVDD"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3 { > + regulator-name = "+1.00V_LP0_VDD_RTC"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1000000>; > + regulator-boot-on; > + regulator-always-on; > + ams,enable-tracking; > + }; > + > + vdd_run_cam: ldo4 { > + regulator-name = "+3.3V_RUN_CAM"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo5 { > + regulator-name = "+1.2V_RUN_CAM_FRONT"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + }; > + > + vddio_sdmmc3: ldo6 { > + regulator-name = "+VDDIO_SDMMC3"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo7 { > + regulator-name = "+1.05V_RUN_CAM_REAR"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + ldo9 { > + regulator-name = "+2.8V_RUN_TOUCH"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo10 { > + regulator-name = "+2.8V_RUN_CAM_AF"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo11 { > + regulator-name = "+1.8V_RUN_VPP_FUSE"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + }; > + }; > + }; > + > + spi at 0,7000d400 { > + status = "okay"; > + > + cros_ec: cros-ec at 0 { > + compatible = "google,cros-ec-spi"; > + spi-max-frequency = <3000000>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > + reg = <0>; > + > + google,cros-ec-spi-msg-delay = <2000>; > + > + i2c-tunnel { > + compatible = "google,cros-ec-i2c-tunnel"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + google,remote-bus = <0>; > + > + charger: bq24735 at 9 { > + compatible = "ti,bq24735"; > + reg = <0x9>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + ti,ac-detect-gpios = <&gpio > + TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + }; > + > + battery: sbs-battery at b { > + compatible = "sbs,sbs-battery"; > + reg = <0xb>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <10>; > + power-supplies = <&charger>; > + }; > + }; > + }; > + }; > + > + spi at 0,7000da00 { > + status = "okay"; > + spi-max-frequency = <25000000>; > + > + flash at 0 { > + compatible = "winbond,w25q32dw"; > + reg = <0>; > + }; > + }; > + > + pmc at 0,7000e400 { > + nvidia,invert-interrupt; > + nvidia,suspend-mode = <0>; > + nvidia,cpu-pwr-good-time = <500>; > + nvidia,cpu-pwr-off-time = <300>; > + nvidia,core-pwr-good-time = <641 3845>; > + nvidia,core-pwr-off-time = <61036>; > + nvidia,core-power-req-active-high; > + nvidia,sys-clock-req-active-high; > + }; > + > + hda at 0,70030000 { > + status = "okay"; > + }; > + > + sdhci at 0,700b0000 { /* WiFi/BT on this bus */ > + status = "okay"; > + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > + bus-width = <4>; > + no-1-8-v; > + non-removable; > + }; > + > + sdhci at 0,700b0400 { /* SD Card on this bus */ > + status = "okay"; > + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > + bus-width = <4>; > + no-1-8-v; > + vqmmc-supply = <&vddio_sdmmc3>; > + }; > + > + sdhci at 0,700b0600 { /* eMMC on this bus */ > + status = "okay"; > + bus-width = <8>; > + no-1-8-v; > + non-removable; > + }; > + > + ahub at 0,70300000 { > + i2s at 0,70301100 { > + status = "okay"; > + }; > + }; > + > + usb at 0,7d000000 { /* Rear external USB port. */ > + status = "okay"; > + }; > + > + usb-phy at 0,7d000000 { > + status = "okay"; > + vbus-supply = <&vdd_usb1_vbus>; > + }; > + > + usb at 0,7d004000 { /* Internal webcam. */ > + status = "okay"; > + }; > + > + usb-phy at 0,7d004000 { > + status = "okay"; > + vbus-supply = <&vdd_run_cam>; > + }; > + > + usb at 0,7d008000 { /* Left external USB port. */ > + status = "okay"; > + }; > + > + usb-phy at 0,7d008000 { > + status = "okay"; > + vbus-supply = <&vdd_usb3_vbus>; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + > + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > + power-supply = <&vdd_led>; > + pwms = <&pwm 1 1000000>; > + > + default-brightness-level = <224>; > + brightness-levels = > + < 0 1 2 3 4 5 6 7 > + 8 9 10 11 12 13 14 15 > + 16 17 18 19 20 21 22 23 > + 24 25 26 27 28 29 30 31 > + 32 33 34 35 36 37 38 39 > + 40 41 42 43 44 45 46 47 > + 48 49 50 51 52 53 54 55 > + 56 57 58 59 60 61 62 63 > + 64 65 66 67 68 69 70 71 > + 72 73 74 75 76 77 78 79 > + 80 81 82 83 84 85 86 87 > + 88 89 90 91 92 93 94 95 > + 96 97 98 99 100 101 102 103 > + 104 105 106 107 108 109 110 111 > + 112 113 114 115 116 117 118 119 > + 120 121 122 123 124 125 126 127 > + 128 129 130 131 132 133 134 135 > + 136 137 138 139 140 141 142 143 > + 144 145 146 147 148 149 150 151 > + 152 153 154 155 156 157 158 159 > + 160 161 162 163 164 165 166 167 > + 168 169 170 171 172 173 174 175 > + 176 177 178 179 180 181 182 183 > + 184 185 186 187 188 189 190 191 > + 192 193 194 195 196 197 198 199 > + 200 201 202 203 204 205 206 207 > + 208 209 210 211 212 213 214 215 > + 216 217 218 219 220 221 222 223 > + 224 225 226 227 228 229 230 231 > + 232 233 234 235 236 237 238 239 > + 240 241 242 243 244 245 246 247 > + 248 249 250 251 252 253 254 255 > + 256>; > + }; > + > + clocks { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + clk32k_in: clock at 0 { > + compatible = "fixed-clock"; > + reg = <0>; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + lid { > + label = "Lid"; > + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > + linux,input-type = <5>; > + linux,code = <KEY_RESERVED>; > + debounce-interval = <1>; > + gpio-key,wakeup; > + }; > + > + power { > + label = "Power"; > + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > + linux,code = <KEY_POWER>; > + debounce-interval = <30>; > + gpio-key,wakeup; > + }; > + }; > + > + panel: panel { > + compatible = "auo,b133xtn01"; > + > + backlight = <&backlight>; > + ddc-i2c-bus = <&dpaux>; > + }; > + > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdd_mux: regulator at 0 { > + compatible = "regulator-fixed"; > + reg = <0>; > + regulator-name = "+VDD_MUX"; > + regulator-min-microvolt = <12000000>; > + regulator-max-microvolt = <12000000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_5v0_sys: regulator at 1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "+5V_SYS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_sys: regulator at 2 { > + compatible = "regulator-fixed"; > + reg = <2>; > + regulator-name = "+3.3V_SYS"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_run: regulator at 3 { > + compatible = "regulator-fixed"; > + reg = <3>; > + regulator-name = "+3.3V_RUN"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_3v3_hdmi: regulator at 4 { > + compatible = "regulator-fixed"; > + reg = <4>; > + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_led: regulator at 5 { > + compatible = "regulator-fixed"; > + reg = <5>; > + regulator-name = "+VDD_LED"; > + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_5v0_ts: regulator at 6 { > + compatible = "regulator-fixed"; > + reg = <6>; > + regulator-name = "+5V_VDD_TS_SW"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-boot-on; > + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb1_vbus: regulator at 7 { > + compatible = "regulator-fixed"; > + reg = <7>; > + regulator-name = "+5V_USB_HS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb3_vbus: regulator at 8 { > + compatible = "regulator-fixed"; > + reg = <8>; > + regulator-name = "+5V_USB_SS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_3v3_panel: regulator at 9 { > + compatible = "regulator-fixed"; > + reg = <9>; > + regulator-name = "+3.3V_PANEL"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_3v3_lp0: regulator at 10 { > + compatible = "regulator-fixed"; > + reg = <10>; > + regulator-name = "+3.3V_LP0"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + /* > + * TODO: find a way to wire this up with the USB EHCI > + * controllers so that it can be enabled on demand. > + */ > + regulator-always-on; > + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_hdmi_pll: regulator at 11 { > + compatible = "regulator-fixed"; > + reg = <11>; > + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > + vin-supply = <&vdd_1v05_run>; > + }; > + > + vdd_5v0_hdmi: regulator at 12 { > + compatible = "regulator-fixed"; > + reg = <12>; > + regulator-name = "+5V_HDMI_CON"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + }; > + > + sound { > + compatible = "nvidia,tegra-audio-max98090-nyan-big", > + "nvidia,tegra-audio-max98090"; > + > + nvidia,audio-routing = > + "Headphones", "HPR", > + "Headphones", "HPL", > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "Mic Jack", "MICBIAS", > + "DMICL", "Int Mic", > + "DMICR", "Int Mic", > + "IN34", "Mic Jack"; > + > + nvidia,i2s-controller = <&tegra_i2s1>; > + nvidia,audio-codec = <&acodec>; > + > + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > + <&tegra_car TEGRA124_CLK_EXTERN1>; > + clock-names = "pll_a", "pll_a_out0", "mclk"; > + > + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + }; > +}; > + > +#include "cros-ec-keyboard.dtsi" > -- > 1.9.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: Digital signature URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150106/5209f8fa/attachment-0001.sig> ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 13:24 ` Eduardo Valentin 0 siblings, 0 replies; 41+ messages in thread From: Eduardo Valentin @ 2015-01-06 13:24 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 69873 bytes --] On Tue, Jan 06, 2015 at 11:37:27AM +0100, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> For the (small part of the) thermal sensor: Acked-by: Eduardo Valentin <edubezval@gmail.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 1131 +----------------------------- > arch/arm/boot/dts/tegra124-nyan.dtsi | 1133 +++++++++++++++++++++++++++++++ > 2 files changed, 1136 insertions(+), 1128 deletions(-) > create mode 100644 arch/arm/boot/dts/tegra124-nyan.dtsi > > diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts > index 4752572..2041077 100644 > --- a/arch/arm/boot/dts/tegra124-nyan-big.dts > +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts > @@ -1,1137 +1,12 @@ > /dts-v1/; > > -#include <dt-bindings/input/input.h> > -#include "tegra124.dtsi" > +#include "tegra124-nyan.dtsi" > > / { > model = "Acer Chromebook 13 CB5-311"; > - compatible = "google,nyan-big", "nvidia,tegra124"; > - > - aliases { > - rtc0 = "/i2c@0,7000d000/pmic@40"; > - rtc1 = "/rtc@0,7000e000"; > - serial0 = &uarta; > - }; > - > - memory { > - reg = <0x0 0x80000000 0x0 0x80000000>; > - }; > - > - host1x@0,50000000 { > - hdmi@0,54280000 { > - status = "okay"; > - > - vdd-supply = <&vdd_3v3_hdmi>; > - pll-supply = <&vdd_hdmi_pll>; > - hdmi-supply = <&vdd_5v0_hdmi>; > - > - nvidia,ddc-i2c-bus = <&hdmi_ddc>; > - nvidia,hpd-gpio = > - <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > - }; > - > - sor@0,54540000 { > - status = "okay"; > - > - nvidia,dpaux = <&dpaux>; > - nvidia,panel = <&panel>; > - }; > - > - dpaux@0,545c0000 { > - vdd-supply = <&vdd_3v3_panel>; > - status = "okay"; > - }; > - }; > - > - pinmux@0,70000868 { > - pinctrl-names = "boot"; > - pinctrl-0 = <&pinmux_boot>; > - > - pinmux_boot: common { > - dap_mclk1_pw4 { > - nvidia,pins = "dap_mclk1_pw4"; > - nvidia,function = "extperiph1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_din_pa4 { > - nvidia,pins = "dap2_din_pa4"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dap2_dout_pa5 { > - nvidia,pins = "dap2_dout_pa5", > - "dap2_fs_pa2", > - "dap2_sclk_pa3"; > - nvidia,function = "i2s1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - dvfs_pwm_px0 { > - nvidia,pins = "dvfs_pwm_px0", > - "dvfs_clk_px2"; > - nvidia,function = "cldvfs"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_clk_py0 { > - nvidia,pins = "ulpi_clk_py0", > - "ulpi_nxt_py2", > - "ulpi_stp_py3"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ulpi_dir_py1 { > - nvidia,pins = "ulpi_dir_py1"; > - nvidia,function = "spi1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cam_i2c_scl_pbb1 { > - nvidia,pins = "cam_i2c_scl_pbb1", > - "cam_i2c_sda_pbb2"; > - nvidia,function = "i2c3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - gen2_i2c_scl_pt5 { > - nvidia,pins = "gen2_i2c_scl_pt5", > - "gen2_i2c_sda_pt6"; > - nvidia,function = "i2c2"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - pg4 { > - nvidia,pins = "pg4", > - "pg5", > - "pg6", > - "pi3"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pg7 { > - nvidia,pins = "pg7"; > - nvidia,function = "spi4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ph1 { > - nvidia,pins = "ph1"; > - nvidia,function = "pwm1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pk0 { > - nvidia,pins = "pk0", > - "kb_row15_ps7", > - "clk_32k_out_pa0"; > - nvidia,function = "soc"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sdmmc1_clk_pz0 { > - nvidia,pins = "sdmmc1_clk_pz0"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc1_cmd_pz1 { > - nvidia,pins = "sdmmc1_cmd_pz1", > - "sdmmc1_dat0_py7", > - "sdmmc1_dat1_py6", > - "sdmmc1_dat2_py5", > - "sdmmc1_dat3_py4"; > - nvidia,function = "sdmmc1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_clk_pa6 { > - nvidia,pins = "sdmmc3_clk_pa6"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc3_cmd_pa7 { > - nvidia,pins = "sdmmc3_cmd_pa7", > - "sdmmc3_dat0_pb7", > - "sdmmc3_dat1_pb6", > - "sdmmc3_dat2_pb5", > - "sdmmc3_dat3_pb4", > - "kb_col4_pq4", > - "sdmmc3_clk_lb_out_pee4", > - "sdmmc3_clk_lb_in_pee5", > - "sdmmc3_cd_n_pv2"; > - nvidia,function = "sdmmc3"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_clk_pcc4 { > - nvidia,pins = "sdmmc4_clk_pcc4"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - sdmmc4_cmd_pt7 { > - nvidia,pins = "sdmmc4_cmd_pt7", > - "sdmmc4_dat0_paa0", > - "sdmmc4_dat1_paa1", > - "sdmmc4_dat2_paa2", > - "sdmmc4_dat3_paa3", > - "sdmmc4_dat4_paa4", > - "sdmmc4_dat5_paa5", > - "sdmmc4_dat6_paa6", > - "sdmmc4_dat7_paa7"; > - nvidia,function = "sdmmc4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_i2c_scl_pz6 { > - nvidia,pins = "pwr_i2c_scl_pz6", > - "pwr_i2c_sda_pz7"; > - nvidia,function = "i2cpwr"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - jtag_rtck { > - nvidia,pins = "jtag_rtck"; > - nvidia,function = "rtck"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk_32k_in { > - nvidia,pins = "clk_32k_in"; > - nvidia,function = "clk"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - core_pwr_req { > - nvidia,pins = "core_pwr_req"; > - nvidia,function = "pwron"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - cpu_pwr_req { > - nvidia,pins = "cpu_pwr_req"; > - nvidia,function = "cpu"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - pwr_int_n { > - nvidia,pins = "pwr_int_n"; > - nvidia,function = "pmi"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - reset_out_n { > - nvidia,pins = "reset_out_n"; > - nvidia,function = "reset_out_n"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - clk3_out_pee0 { > - nvidia,pins = "clk3_out_pee0"; > - nvidia,function = "extperiph3"; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - gen1_i2c_sda_pc5 { > - nvidia,pins = "gen1_i2c_sda_pc5", > - "gen1_i2c_scl_pc4"; > - nvidia,function = "i2c1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - hdmi_cec_pee3 { > - nvidia,pins = "hdmi_cec_pee3"; > - nvidia,function = "cec"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_DISABLE>; > - }; > - hdmi_int_pn7 { > - nvidia,pins = "hdmi_int_pn7"; > - nvidia,function = "rsvd1"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - }; > - ddc_scl_pv4 { > - nvidia,pins = "ddc_scl_pv4", > - "ddc_sda_pv5"; > - nvidia,function = "i2c4"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > - }; > - kb_row10_ps2 { > - nvidia,pins = "kb_row10_ps2"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_row9_ps1 { > - nvidia,pins = "kb_row9_ps1"; > - nvidia,function = "uarta"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - usb_vbus_en0_pn4 { > - nvidia,pins = "usb_vbus_en0_pn4", > - "usb_vbus_en1_pn5"; > - nvidia,function = "usb"; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,lock = <TEGRA_PIN_DISABLE>; > - nvidia,open-drain = <TEGRA_PIN_ENABLE>; > - }; > - drive_sdio1 { > - nvidia,pins = "drive_sdio1"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <36>; > - nvidia,pull-up-strength = <20>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > - }; > - drive_sdio3 { > - nvidia,pins = "drive_sdio3"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <22>; > - nvidia,pull-up-strength = <36>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - }; > - drive_gma { > - nvidia,pins = "drive_gma"; > - nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > - nvidia,schmitt = <TEGRA_PIN_DISABLE>; > - nvidia,pull-down-strength = <2>; > - nvidia,pull-up-strength = <1>; > - nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > - nvidia,drive-type = <1>; > - }; > - codec_irq_l { > - nvidia,pins = "ph4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lcd_bl_en { > - nvidia,pins = "ph2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - touch_irq_l { > - nvidia,pins = "gpio_w3_aud_pw3"; > - nvidia,function = "spi6"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - tpm_davint_l { > - nvidia,pins = "ph6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_irq_l { > - nvidia,pins = "pk2"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - ts_reset_l { > - nvidia,pins = "pk4"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ts_shdn_l { > - nvidia,pins = "pk1"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ph7 { > - nvidia,pins = "ph7"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - kb_col0_ap { > - nvidia,pins = "kb_col0_pq0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - lid_open { > - nvidia,pins = "kb_row4_pr4"; > - nvidia,function = "rsvd3"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - en_vdd_sd { > - nvidia,pins = "kb_row0_pr0"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - ac_ok { > - nvidia,pins = "pj0"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - sensor_irq_l { > - nvidia,pins = "pi6"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - wifi_en { > - nvidia,pins = "gpio_x7_aud_px7"; > - nvidia,function = "rsvd4"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_bl { > - nvidia,pins = "dap3_dout_pp2"; > - nvidia,function = "i2s2"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - en_vdd_hdmi { > - nvidia,pins = "spdif_in_pk6"; > - nvidia,function = "spdif"; > - nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - soc_warm_reset_l { > - nvidia,pins = "pi5"; > - nvidia,function = "gmi"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_DISABLE>; > - }; > - hp_det_l { > - nvidia,pins = "pi7"; > - nvidia,function = "rsvd1"; > - nvidia,pull = <TEGRA_PIN_PULL_NONE>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - mic_det_l { > - nvidia,pins = "kb_row7_pr7"; > - nvidia,function = "rsvd2"; > - nvidia,pull = <TEGRA_PIN_PULL_UP>; > - nvidia,tristate = <TEGRA_PIN_DISABLE>; > - nvidia,enable-input = <TEGRA_PIN_ENABLE>; > - }; > - }; > - }; > - > - serial@0,70006000 { > - /* Debug connector on the bottom of the board near SD card. */ > - status = "okay"; > - }; > - > - pwm@0,7000a000 { > - status = "okay"; > - }; > - > - i2c@0,7000c000 { > - status = "okay"; > - clock-frequency = <100000>; > - > - acodec: audio-codec@10 { > - compatible = "maxim,max98090"; > - reg = <0x10>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > - }; > - > - temperature-sensor@4c { > - compatible = "ti,tmp451"; > - reg = <0x4c>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > - > - #thermal-sensor-cells = <1>; > - }; > - }; > - > - i2c@0,7000c400 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000c500 { > - status = "okay"; > - clock-frequency = <400000>; > - > - tpm@20 { > - compatible = "infineon,slb9645tt"; > - reg = <0x20>; > - }; > - }; > - > - hdmi_ddc: i2c@0,7000c700 { > - status = "okay"; > - clock-frequency = <100000>; > - }; > - > - i2c@0,7000d000 { > - status = "okay"; > - clock-frequency = <400000>; > - > - pmic: pmic@40 { > - compatible = "ams,as3722"; > - reg = <0x40>; > - interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > - > - ams,system-power-controller; > - > - #interrupt-cells = <2>; > - interrupt-controller; > - > - gpio-controller; > - #gpio-cells = <2>; > - > - pinctrl-names = "default"; > - pinctrl-0 = <&as3722_default>; > - > - as3722_default: pinmux { > - gpio0 { > - pins = "gpio0"; > - function = "gpio"; > - bias-pull-down; > - }; > - > - gpio1 { > - pins = "gpio1"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio2_4_7 { > - pins = "gpio2", "gpio4", "gpio7"; > - function = "gpio"; > - bias-pull-up; > - }; > - > - gpio3_6 { > - pins = "gpio3", "gpio6"; > - bias-high-impedance; > - }; > - > - gpio5 { > - pins = "gpio5"; > - function = "clk32k-out"; > - bias-pull-down; > - }; > - }; > - > - regulators { > - vsup-sd2-supply = <&vdd_5v0_sys>; > - vsup-sd3-supply = <&vdd_5v0_sys>; > - vsup-sd4-supply = <&vdd_5v0_sys>; > - vsup-sd5-supply = <&vdd_5v0_sys>; > - vin-ldo0-supply = <&vdd_1v35_lp0>; > - vin-ldo1-6-supply = <&vdd_3v3_run>; > - vin-ldo2-5-7-supply = <&vddio_1v8>; > - vin-ldo3-4-supply = <&vdd_3v3_sys>; > - vin-ldo9-10-supply = <&vdd_5v0_sys>; > - vin-ldo11-supply = <&vdd_3v3_run>; > - > - sd0 { > - regulator-name = "+VDD_CPU_AP"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <2>; > - }; > - > - sd1 { > - regulator-name = "+VDD_CORE"; > - regulator-min-microvolt = <700000>; > - regulator-max-microvolt = <1350000>; > - regulator-min-microamp = <2500000>; > - regulator-max-microamp = <4000000>; > - regulator-always-on; > - regulator-boot-on; > - ams,ext-control = <1>; > - }; > - > - vdd_1v35_lp0: sd2 { > - regulator-name = "+1.35V_LP0(sd2)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - sd3 { > - regulator-name = "+1.35V_LP0(sd3)"; > - regulator-min-microvolt = <1350000>; > - regulator-max-microvolt = <1350000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_1v05_run: sd4 { > - regulator-name = "+1.05V_RUN"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - vddio_1v8: sd5 { > - regulator-name = "+1.8V_VDDIO"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - sd6 { > - regulator-name = "+VDD_GPU_AP"; > - regulator-min-microvolt = <650000>; > - regulator-max-microvolt = <1200000>; > - regulator-min-microamp = <3500000>; > - regulator-max-microamp = <3500000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo0 { > - regulator-name = "+1.05V_RUN_AVDD"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - regulator-boot-on; > - regulator-always-on; > - ams,ext-control = <1>; > - }; > - > - ldo1 { > - regulator-name = "+1.8V_RUN_CAM"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - > - ldo2 { > - regulator-name = "+1.2V_GEN_AVDD"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > - ldo3 { > - regulator-name = "+1.00V_LP0_VDD_RTC"; > - regulator-min-microvolt = <1000000>; > - regulator-max-microvolt = <1000000>; > - regulator-boot-on; > - regulator-always-on; > - ams,enable-tracking; > - }; > - > - vdd_run_cam: ldo4 { > - regulator-name = "+3.3V_RUN_CAM"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo5 { > - regulator-name = "+1.2V_RUN_CAM_FRONT"; > - regulator-min-microvolt = <1200000>; > - regulator-max-microvolt = <1200000>; > - }; > - > - vddio_sdmmc3: ldo6 { > - regulator-name = "+VDDIO_SDMMC3"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <3300000>; > - }; > - > - ldo7 { > - regulator-name = "+1.05V_RUN_CAM_REAR"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - }; > - > - ldo9 { > - regulator-name = "+2.8V_RUN_TOUCH"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo10 { > - regulator-name = "+2.8V_RUN_CAM_AF"; > - regulator-min-microvolt = <2800000>; > - regulator-max-microvolt = <2800000>; > - }; > - > - ldo11 { > - regulator-name = "+1.8V_RUN_VPP_FUSE"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - }; > - }; > - }; > - }; > - > - spi@0,7000d400 { > - status = "okay"; > - > - cros_ec: cros-ec@0 { > - compatible = "google,cros-ec-spi"; > - spi-max-frequency = <3000000>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > - reg = <0>; > - > - google,cros-ec-spi-msg-delay = <2000>; > - > - i2c-tunnel { > - compatible = "google,cros-ec-i2c-tunnel"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - google,remote-bus = <0>; > - > - charger: bq24735@9 { > - compatible = "ti,bq24735"; > - reg = <0x9>; > - interrupt-parent = <&gpio>; > - interrupts = <TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - ti,ac-detect-gpios = <&gpio > - TEGRA_GPIO(J, 0) > - GPIO_ACTIVE_HIGH>; > - }; > - > - battery: sbs-battery@b { > - compatible = "sbs,sbs-battery"; > - reg = <0xb>; > - sbs,i2c-retry-count = <2>; > - sbs,poll-retry-count = <10>; > - power-supplies = <&charger>; > - }; > - }; > - }; > - }; > - > - spi@0,7000da00 { > - status = "okay"; > - spi-max-frequency = <25000000>; > - > - flash@0 { > - compatible = "winbond,w25q32dw"; > - reg = <0>; > - }; > - }; > - > - pmc@0,7000e400 { > - nvidia,invert-interrupt; > - nvidia,suspend-mode = <0>; > - nvidia,cpu-pwr-good-time = <500>; > - nvidia,cpu-pwr-off-time = <300>; > - nvidia,core-pwr-good-time = <641 3845>; > - nvidia,core-pwr-off-time = <61036>; > - nvidia,core-power-req-active-high; > - nvidia,sys-clock-req-active-high; > - }; > - > - hda@0,70030000 { > - status = "okay"; > - }; > - > - sdhci@0,700b0000 { /* WiFi/BT on this bus */ > - status = "okay"; > - power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > - bus-width = <4>; > - no-1-8-v; > - non-removable; > - }; > - > - sdhci@0,700b0400 { /* SD Card on this bus */ > - status = "okay"; > - cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > - power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > - bus-width = <4>; > - no-1-8-v; > - vqmmc-supply = <&vddio_sdmmc3>; > - }; > - > - sdhci@0,700b0600 { /* eMMC on this bus */ > - status = "okay"; > - bus-width = <8>; > - no-1-8-v; > - non-removable; > - }; > - > - ahub@0,70300000 { > - i2s@0,70301100 { > - status = "okay"; > - }; > - }; > - > - usb@0,7d000000 { /* Rear external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d000000 { > - status = "okay"; > - vbus-supply = <&vdd_usb1_vbus>; > - }; > - > - usb@0,7d004000 { /* Internal webcam. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d004000 { > - status = "okay"; > - vbus-supply = <&vdd_run_cam>; > - }; > - > - usb@0,7d008000 { /* Left external USB port. */ > - status = "okay"; > - }; > - > - usb-phy@0,7d008000 { > - status = "okay"; > - vbus-supply = <&vdd_usb3_vbus>; > - }; > - > - backlight: backlight { > - compatible = "pwm-backlight"; > - > - enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > - power-supply = <&vdd_led>; > - pwms = <&pwm 1 1000000>; > - > - default-brightness-level = <224>; > - brightness-levels = > - < 0 1 2 3 4 5 6 7 > - 8 9 10 11 12 13 14 15 > - 16 17 18 19 20 21 22 23 > - 24 25 26 27 28 29 30 31 > - 32 33 34 35 36 37 38 39 > - 40 41 42 43 44 45 46 47 > - 48 49 50 51 52 53 54 55 > - 56 57 58 59 60 61 62 63 > - 64 65 66 67 68 69 70 71 > - 72 73 74 75 76 77 78 79 > - 80 81 82 83 84 85 86 87 > - 88 89 90 91 92 93 94 95 > - 96 97 98 99 100 101 102 103 > - 104 105 106 107 108 109 110 111 > - 112 113 114 115 116 117 118 119 > - 120 121 122 123 124 125 126 127 > - 128 129 130 131 132 133 134 135 > - 136 137 138 139 140 141 142 143 > - 144 145 146 147 148 149 150 151 > - 152 153 154 155 156 157 158 159 > - 160 161 162 163 164 165 166 167 > - 168 169 170 171 172 173 174 175 > - 176 177 178 179 180 181 182 183 > - 184 185 186 187 188 189 190 191 > - 192 193 194 195 196 197 198 199 > - 200 201 202 203 204 205 206 207 > - 208 209 210 211 212 213 214 215 > - 216 217 218 219 220 221 222 223 > - 224 225 226 227 228 229 230 231 > - 232 233 234 235 236 237 238 239 > - 240 241 242 243 244 245 246 247 > - 248 249 250 251 252 253 254 255 > - 256>; > - }; > - > - clocks { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - clk32k_in: clock@0 { > - compatible = "fixed-clock"; > - reg = <0>; > - #clock-cells = <0>; > - clock-frequency = <32768>; > - }; > - }; > - > - gpio-keys { > - compatible = "gpio-keys"; > - > - lid { > - label = "Lid"; > - gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > - linux,input-type = <5>; > - linux,code = <KEY_RESERVED>; > - debounce-interval = <1>; > - gpio-key,wakeup; > - }; > - > - power { > - label = "Power"; > - gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > - linux,code = <KEY_POWER>; > - debounce-interval = <30>; > - gpio-key,wakeup; > - }; > - }; > - > - panel: panel { > - compatible = "auo,b133xtn01"; > - > - backlight = <&backlight>; > - ddc-i2c-bus = <&dpaux>; > - }; > - > - regulators { > - compatible = "simple-bus"; > - #address-cells = <1>; > - #size-cells = <0>; > - > - vdd_mux: regulator@0 { > - compatible = "regulator-fixed"; > - reg = <0>; > - regulator-name = "+VDD_MUX"; > - regulator-min-microvolt = <12000000>; > - regulator-max-microvolt = <12000000>; > - regulator-always-on; > - regulator-boot-on; > - }; > - > - vdd_5v0_sys: regulator@1 { > - compatible = "regulator-fixed"; > - reg = <1>; > - regulator-name = "+5V_SYS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_sys: regulator@2 { > - compatible = "regulator-fixed"; > - reg = <2>; > - regulator-name = "+3.3V_SYS"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_3v3_run: regulator@3 { > - compatible = "regulator-fixed"; > - reg = <3>; > - regulator-name = "+3.3V_RUN"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-always-on; > - regulator-boot-on; > - gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_3v3_hdmi: regulator@4 { > - compatible = "regulator-fixed"; > - reg = <4>; > - regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_led: regulator@5 { > - compatible = "regulator-fixed"; > - reg = <5>; > - regulator-name = "+VDD_LED"; > - gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_mux>; > - }; > - > - vdd_5v0_ts: regulator@6 { > - compatible = "regulator-fixed"; > - reg = <6>; > - regulator-name = "+5V_VDD_TS_SW"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - regulator-boot-on; > - gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb1_vbus: regulator@7 { > - compatible = "regulator-fixed"; > - reg = <7>; > - regulator-name = "+5V_USB_HS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_usb3_vbus: regulator@8 { > - compatible = "regulator-fixed"; > - reg = <8>; > - regulator-name = "+5V_USB_SS"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - gpio-open-drain; > - vin-supply = <&vdd_5v0_sys>; > - }; > - > - vdd_3v3_panel: regulator@9 { > - compatible = "regulator-fixed"; > - reg = <9>; > - regulator-name = "+3.3V_PANEL"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_run>; > - }; > - > - vdd_3v3_lp0: regulator@10 { > - compatible = "regulator-fixed"; > - reg = <10>; > - regulator-name = "+3.3V_LP0"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - /* > - * TODO: find a way to wire this up with the USB EHCI > - * controllers so that it can be enabled on demand. > - */ > - regulator-always-on; > - gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_3v3_sys>; > - }; > - > - vdd_hdmi_pll: regulator@11 { > - compatible = "regulator-fixed"; > - reg = <11>; > - regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > - regulator-min-microvolt = <1050000>; > - regulator-max-microvolt = <1050000>; > - gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > - vin-supply = <&vdd_1v05_run>; > - }; > - > - vdd_5v0_hdmi: regulator@12 { > - compatible = "regulator-fixed"; > - reg = <12>; > - regulator-name = "+5V_HDMI_CON"; > - regulator-min-microvolt = <5000000>; > - regulator-max-microvolt = <5000000>; > - gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > - enable-active-high; > - vin-supply = <&vdd_5v0_sys>; > - }; > - }; > + compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; > > sound { > - compatible = "nvidia,tegra-audio-max98090-nyan-big", > - "nvidia,tegra-audio-max98090"; > - nvidia,model = "Acer Chromebook 13"; > - > - nvidia,audio-routing = > - "Headphones", "HPR", > - "Headphones", "HPL", > - "Speakers", "SPKR", > - "Speakers", "SPKL", > - "Mic Jack", "MICBIAS", > - "DMICL", "Int Mic", > - "DMICR", "Int Mic", > - "IN34", "Mic Jack"; > - > - nvidia,i2s-controller = <&tegra_i2s1>; > - nvidia,audio-codec = <&acodec>; > - > - clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > - <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > - <&tegra_car TEGRA124_CLK_EXTERN1>; > - clock-names = "pll_a", "pll_a_out0", "mclk"; > - > - nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + nvidia,model = "Acer Chromebook 13 CB5-311"; > }; > }; > - > -#include "cros-ec-keyboard.dtsi" > diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi > new file mode 100644 > index 0000000..4c68658 > --- /dev/null > +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi > @@ -0,0 +1,1133 @@ > +#include <dt-bindings/input/input.h> > +#include "tegra124.dtsi" > + > +/ { > + compatible = "google,nyan", "nvidia,tegra124"; > + > + aliases { > + rtc0 = "/i2c@0,7000d000/pmic@40"; > + rtc1 = "/rtc@0,7000e000"; > + serial0 = &uarta; > + }; > + > + memory { > + reg = <0x0 0x80000000 0x0 0x80000000>; > + }; > + > + host1x@0,50000000 { > + hdmi@0,54280000 { > + status = "okay"; > + > + vdd-supply = <&vdd_3v3_hdmi>; > + pll-supply = <&vdd_hdmi_pll>; > + hdmi-supply = <&vdd_5v0_hdmi>; > + > + nvidia,ddc-i2c-bus = <&hdmi_ddc>; > + nvidia,hpd-gpio = > + <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; > + }; > + > + sor@0,54540000 { > + status = "okay"; > + > + nvidia,dpaux = <&dpaux>; > + nvidia,panel = <&panel>; > + }; > + > + dpaux@0,545c0000 { > + vdd-supply = <&vdd_3v3_panel>; > + status = "okay"; > + }; > + }; > + > + pinmux@0,70000868 { > + pinctrl-names = "boot"; > + pinctrl-0 = <&pinmux_boot>; > + > + pinmux_boot: common { > + dap_mclk1_pw4 { > + nvidia,pins = "dap_mclk1_pw4"; > + nvidia,function = "extperiph1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_din_pa4 { > + nvidia,pins = "dap2_din_pa4"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dap2_dout_pa5 { > + nvidia,pins = "dap2_dout_pa5", > + "dap2_fs_pa2", > + "dap2_sclk_pa3"; > + nvidia,function = "i2s1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + dvfs_pwm_px0 { > + nvidia,pins = "dvfs_pwm_px0", > + "dvfs_clk_px2"; > + nvidia,function = "cldvfs"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_clk_py0 { > + nvidia,pins = "ulpi_clk_py0", > + "ulpi_nxt_py2", > + "ulpi_stp_py3"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ulpi_dir_py1 { > + nvidia,pins = "ulpi_dir_py1"; > + nvidia,function = "spi1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cam_i2c_scl_pbb1 { > + nvidia,pins = "cam_i2c_scl_pbb1", > + "cam_i2c_sda_pbb2"; > + nvidia,function = "i2c3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + gen2_i2c_scl_pt5 { > + nvidia,pins = "gen2_i2c_scl_pt5", > + "gen2_i2c_sda_pt6"; > + nvidia,function = "i2c2"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + pg4 { > + nvidia,pins = "pg4", > + "pg5", > + "pg6", > + "pi3"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pg7 { > + nvidia,pins = "pg7"; > + nvidia,function = "spi4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ph1 { > + nvidia,pins = "ph1"; > + nvidia,function = "pwm1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pk0 { > + nvidia,pins = "pk0", > + "kb_row15_ps7", > + "clk_32k_out_pa0"; > + nvidia,function = "soc"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sdmmc1_clk_pz0 { > + nvidia,pins = "sdmmc1_clk_pz0"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc1_cmd_pz1 { > + nvidia,pins = "sdmmc1_cmd_pz1", > + "sdmmc1_dat0_py7", > + "sdmmc1_dat1_py6", > + "sdmmc1_dat2_py5", > + "sdmmc1_dat3_py4"; > + nvidia,function = "sdmmc1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_clk_pa6 { > + nvidia,pins = "sdmmc3_clk_pa6"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc3_cmd_pa7 { > + nvidia,pins = "sdmmc3_cmd_pa7", > + "sdmmc3_dat0_pb7", > + "sdmmc3_dat1_pb6", > + "sdmmc3_dat2_pb5", > + "sdmmc3_dat3_pb4", > + "kb_col4_pq4", > + "sdmmc3_clk_lb_out_pee4", > + "sdmmc3_clk_lb_in_pee5", > + "sdmmc3_cd_n_pv2"; > + nvidia,function = "sdmmc3"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_clk_pcc4 { > + nvidia,pins = "sdmmc4_clk_pcc4"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + sdmmc4_cmd_pt7 { > + nvidia,pins = "sdmmc4_cmd_pt7", > + "sdmmc4_dat0_paa0", > + "sdmmc4_dat1_paa1", > + "sdmmc4_dat2_paa2", > + "sdmmc4_dat3_paa3", > + "sdmmc4_dat4_paa4", > + "sdmmc4_dat5_paa5", > + "sdmmc4_dat6_paa6", > + "sdmmc4_dat7_paa7"; > + nvidia,function = "sdmmc4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_i2c_scl_pz6 { > + nvidia,pins = "pwr_i2c_scl_pz6", > + "pwr_i2c_sda_pz7"; > + nvidia,function = "i2cpwr"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + jtag_rtck { > + nvidia,pins = "jtag_rtck"; > + nvidia,function = "rtck"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk_32k_in { > + nvidia,pins = "clk_32k_in"; > + nvidia,function = "clk"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + core_pwr_req { > + nvidia,pins = "core_pwr_req"; > + nvidia,function = "pwron"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + cpu_pwr_req { > + nvidia,pins = "cpu_pwr_req"; > + nvidia,function = "cpu"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + pwr_int_n { > + nvidia,pins = "pwr_int_n"; > + nvidia,function = "pmi"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + reset_out_n { > + nvidia,pins = "reset_out_n"; > + nvidia,function = "reset_out_n"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + clk3_out_pee0 { > + nvidia,pins = "clk3_out_pee0"; > + nvidia,function = "extperiph3"; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + gen1_i2c_sda_pc5 { > + nvidia,pins = "gen1_i2c_sda_pc5", > + "gen1_i2c_scl_pc4"; > + nvidia,function = "i2c1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + hdmi_cec_pee3 { > + nvidia,pins = "hdmi_cec_pee3"; > + nvidia,function = "cec"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_DISABLE>; > + }; > + hdmi_int_pn7 { > + nvidia,pins = "hdmi_int_pn7"; > + nvidia,function = "rsvd1"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + }; > + ddc_scl_pv4 { > + nvidia,pins = "ddc_scl_pv4", > + "ddc_sda_pv5"; > + nvidia,function = "i2c4"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,rcv-sel = <TEGRA_PIN_ENABLE>; > + }; > + kb_row10_ps2 { > + nvidia,pins = "kb_row10_ps2"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_row9_ps1 { > + nvidia,pins = "kb_row9_ps1"; > + nvidia,function = "uarta"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + usb_vbus_en0_pn4 { > + nvidia,pins = "usb_vbus_en0_pn4", > + "usb_vbus_en1_pn5"; > + nvidia,function = "usb"; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,lock = <TEGRA_PIN_DISABLE>; > + nvidia,open-drain = <TEGRA_PIN_ENABLE>; > + }; > + drive_sdio1 { > + nvidia,pins = "drive_sdio1"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <36>; > + nvidia,pull-up-strength = <20>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_SLOW>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_SLOW>; > + }; > + drive_sdio3 { > + nvidia,pins = "drive_sdio3"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <22>; > + nvidia,pull-up-strength = <36>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + }; > + drive_gma { > + nvidia,pins = "drive_gma"; > + nvidia,high-speed-mode = <TEGRA_PIN_ENABLE>; > + nvidia,schmitt = <TEGRA_PIN_DISABLE>; > + nvidia,pull-down-strength = <2>; > + nvidia,pull-up-strength = <1>; > + nvidia,slew-rate-rising = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,slew-rate-falling = <TEGRA_PIN_SLEW_RATE_FASTEST>; > + nvidia,drive-type = <1>; > + }; > + codec_irq_l { > + nvidia,pins = "ph4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lcd_bl_en { > + nvidia,pins = "ph2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + touch_irq_l { > + nvidia,pins = "gpio_w3_aud_pw3"; > + nvidia,function = "spi6"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + tpm_davint_l { > + nvidia,pins = "ph6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_irq_l { > + nvidia,pins = "pk2"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + ts_reset_l { > + nvidia,pins = "pk4"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ts_shdn_l { > + nvidia,pins = "pk1"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ph7 { > + nvidia,pins = "ph7"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + kb_col0_ap { > + nvidia,pins = "kb_col0_pq0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + lid_open { > + nvidia,pins = "kb_row4_pr4"; > + nvidia,function = "rsvd3"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + en_vdd_sd { > + nvidia,pins = "kb_row0_pr0"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + ac_ok { > + nvidia,pins = "pj0"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + sensor_irq_l { > + nvidia,pins = "pi6"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + wifi_en { > + nvidia,pins = "gpio_x7_aud_px7"; > + nvidia,function = "rsvd4"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_bl { > + nvidia,pins = "dap3_dout_pp2"; > + nvidia,function = "i2s2"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + en_vdd_hdmi { > + nvidia,pins = "spdif_in_pk6"; > + nvidia,function = "spdif"; > + nvidia,pull = <TEGRA_PIN_PULL_DOWN>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + soc_warm_reset_l { > + nvidia,pins = "pi5"; > + nvidia,function = "gmi"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_DISABLE>; > + }; > + hp_det_l { > + nvidia,pins = "pi7"; > + nvidia,function = "rsvd1"; > + nvidia,pull = <TEGRA_PIN_PULL_NONE>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + mic_det_l { > + nvidia,pins = "kb_row7_pr7"; > + nvidia,function = "rsvd2"; > + nvidia,pull = <TEGRA_PIN_PULL_UP>; > + nvidia,tristate = <TEGRA_PIN_DISABLE>; > + nvidia,enable-input = <TEGRA_PIN_ENABLE>; > + }; > + }; > + }; > + > + serial@0,70006000 { > + /* Debug connector on the bottom of the board near SD card. */ > + status = "okay"; > + }; > + > + pwm@0,7000a000 { > + status = "okay"; > + }; > + > + i2c@0,7000c000 { > + status = "okay"; > + clock-frequency = <100000>; > + > + acodec: audio-codec@10 { > + compatible = "maxim,max98090"; > + reg = <0x10>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>; > + }; > + > + temperature-sensor@4c { > + compatible = "ti,tmp451"; > + reg = <0x4c>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>; > + > + #thermal-sensor-cells = <1>; > + }; > + }; > + > + i2c@0,7000c400 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000c500 { > + status = "okay"; > + clock-frequency = <400000>; > + > + tpm@20 { > + compatible = "infineon,slb9645tt"; > + reg = <0x20>; > + }; > + }; > + > + hdmi_ddc: i2c@0,7000c700 { > + status = "okay"; > + clock-frequency = <100000>; > + }; > + > + i2c@0,7000d000 { > + status = "okay"; > + clock-frequency = <400000>; > + > + pmic: pmic@40 { > + compatible = "ams,as3722"; > + reg = <0x40>; > + interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>; > + > + ams,system-power-controller; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + > + gpio-controller; > + #gpio-cells = <2>; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&as3722_default>; > + > + as3722_default: pinmux { > + gpio0 { > + pins = "gpio0"; > + function = "gpio"; > + bias-pull-down; > + }; > + > + gpio1 { > + pins = "gpio1"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio2_4_7 { > + pins = "gpio2", "gpio4", "gpio7"; > + function = "gpio"; > + bias-pull-up; > + }; > + > + gpio3_6 { > + pins = "gpio3", "gpio6"; > + bias-high-impedance; > + }; > + > + gpio5 { > + pins = "gpio5"; > + function = "clk32k-out"; > + bias-pull-down; > + }; > + }; > + > + regulators { > + vsup-sd2-supply = <&vdd_5v0_sys>; > + vsup-sd3-supply = <&vdd_5v0_sys>; > + vsup-sd4-supply = <&vdd_5v0_sys>; > + vsup-sd5-supply = <&vdd_5v0_sys>; > + vin-ldo0-supply = <&vdd_1v35_lp0>; > + vin-ldo1-6-supply = <&vdd_3v3_run>; > + vin-ldo2-5-7-supply = <&vddio_1v8>; > + vin-ldo3-4-supply = <&vdd_3v3_sys>; > + vin-ldo9-10-supply = <&vdd_5v0_sys>; > + vin-ldo11-supply = <&vdd_3v3_run>; > + > + sd0 { > + regulator-name = "+VDD_CPU_AP"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <2>; > + }; > + > + sd1 { > + regulator-name = "+VDD_CORE"; > + regulator-min-microvolt = <700000>; > + regulator-max-microvolt = <1350000>; > + regulator-min-microamp = <2500000>; > + regulator-max-microamp = <4000000>; > + regulator-always-on; > + regulator-boot-on; > + ams,ext-control = <1>; > + }; > + > + vdd_1v35_lp0: sd2 { > + regulator-name = "+1.35V_LP0(sd2)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + sd3 { > + regulator-name = "+1.35V_LP0(sd3)"; > + regulator-min-microvolt = <1350000>; > + regulator-max-microvolt = <1350000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_1v05_run: sd4 { > + regulator-name = "+1.05V_RUN"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + vddio_1v8: sd5 { > + regulator-name = "+1.8V_VDDIO"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + sd6 { > + regulator-name = "+VDD_GPU_AP"; > + regulator-min-microvolt = <650000>; > + regulator-max-microvolt = <1200000>; > + regulator-min-microamp = <3500000>; > + regulator-max-microamp = <3500000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo0 { > + regulator-name = "+1.05V_RUN_AVDD"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + regulator-boot-on; > + regulator-always-on; > + ams,ext-control = <1>; > + }; > + > + ldo1 { > + regulator-name = "+1.8V_RUN_CAM"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + > + ldo2 { > + regulator-name = "+1.2V_GEN_AVDD"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3 { > + regulator-name = "+1.00V_LP0_VDD_RTC"; > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1000000>; > + regulator-boot-on; > + regulator-always-on; > + ams,enable-tracking; > + }; > + > + vdd_run_cam: ldo4 { > + regulator-name = "+3.3V_RUN_CAM"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo5 { > + regulator-name = "+1.2V_RUN_CAM_FRONT"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + }; > + > + vddio_sdmmc3: ldo6 { > + regulator-name = "+VDDIO_SDMMC3"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo7 { > + regulator-name = "+1.05V_RUN_CAM_REAR"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + }; > + > + ldo9 { > + regulator-name = "+2.8V_RUN_TOUCH"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo10 { > + regulator-name = "+2.8V_RUN_CAM_AF"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + }; > + > + ldo11 { > + regulator-name = "+1.8V_RUN_VPP_FUSE"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + }; > + }; > + }; > + }; > + > + spi@0,7000d400 { > + status = "okay"; > + > + cros_ec: cros-ec@0 { > + compatible = "google,cros-ec-spi"; > + spi-max-frequency = <3000000>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>; > + reg = <0>; > + > + google,cros-ec-spi-msg-delay = <2000>; > + > + i2c-tunnel { > + compatible = "google,cros-ec-i2c-tunnel"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + google,remote-bus = <0>; > + > + charger: bq24735@9 { > + compatible = "ti,bq24735"; > + reg = <0x9>; > + interrupt-parent = <&gpio>; > + interrupts = <TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + ti,ac-detect-gpios = <&gpio > + TEGRA_GPIO(J, 0) > + GPIO_ACTIVE_HIGH>; > + }; > + > + battery: sbs-battery@b { > + compatible = "sbs,sbs-battery"; > + reg = <0xb>; > + sbs,i2c-retry-count = <2>; > + sbs,poll-retry-count = <10>; > + power-supplies = <&charger>; > + }; > + }; > + }; > + }; > + > + spi@0,7000da00 { > + status = "okay"; > + spi-max-frequency = <25000000>; > + > + flash@0 { > + compatible = "winbond,w25q32dw"; > + reg = <0>; > + }; > + }; > + > + pmc@0,7000e400 { > + nvidia,invert-interrupt; > + nvidia,suspend-mode = <0>; > + nvidia,cpu-pwr-good-time = <500>; > + nvidia,cpu-pwr-off-time = <300>; > + nvidia,core-pwr-good-time = <641 3845>; > + nvidia,core-pwr-off-time = <61036>; > + nvidia,core-power-req-active-high; > + nvidia,sys-clock-req-active-high; > + }; > + > + hda@0,70030000 { > + status = "okay"; > + }; > + > + sdhci@0,700b0000 { /* WiFi/BT on this bus */ > + status = "okay"; > + power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>; > + bus-width = <4>; > + no-1-8-v; > + non-removable; > + }; > + > + sdhci@0,700b0400 { /* SD Card on this bus */ > + status = "okay"; > + cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; > + power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; > + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; > + bus-width = <4>; > + no-1-8-v; > + vqmmc-supply = <&vddio_sdmmc3>; > + }; > + > + sdhci@0,700b0600 { /* eMMC on this bus */ > + status = "okay"; > + bus-width = <8>; > + no-1-8-v; > + non-removable; > + }; > + > + ahub@0,70300000 { > + i2s@0,70301100 { > + status = "okay"; > + }; > + }; > + > + usb@0,7d000000 { /* Rear external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d000000 { > + status = "okay"; > + vbus-supply = <&vdd_usb1_vbus>; > + }; > + > + usb@0,7d004000 { /* Internal webcam. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d004000 { > + status = "okay"; > + vbus-supply = <&vdd_run_cam>; > + }; > + > + usb@0,7d008000 { /* Left external USB port. */ > + status = "okay"; > + }; > + > + usb-phy@0,7d008000 { > + status = "okay"; > + vbus-supply = <&vdd_usb3_vbus>; > + }; > + > + backlight: backlight { > + compatible = "pwm-backlight"; > + > + enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>; > + power-supply = <&vdd_led>; > + pwms = <&pwm 1 1000000>; > + > + default-brightness-level = <224>; > + brightness-levels = > + < 0 1 2 3 4 5 6 7 > + 8 9 10 11 12 13 14 15 > + 16 17 18 19 20 21 22 23 > + 24 25 26 27 28 29 30 31 > + 32 33 34 35 36 37 38 39 > + 40 41 42 43 44 45 46 47 > + 48 49 50 51 52 53 54 55 > + 56 57 58 59 60 61 62 63 > + 64 65 66 67 68 69 70 71 > + 72 73 74 75 76 77 78 79 > + 80 81 82 83 84 85 86 87 > + 88 89 90 91 92 93 94 95 > + 96 97 98 99 100 101 102 103 > + 104 105 106 107 108 109 110 111 > + 112 113 114 115 116 117 118 119 > + 120 121 122 123 124 125 126 127 > + 128 129 130 131 132 133 134 135 > + 136 137 138 139 140 141 142 143 > + 144 145 146 147 148 149 150 151 > + 152 153 154 155 156 157 158 159 > + 160 161 162 163 164 165 166 167 > + 168 169 170 171 172 173 174 175 > + 176 177 178 179 180 181 182 183 > + 184 185 186 187 188 189 190 191 > + 192 193 194 195 196 197 198 199 > + 200 201 202 203 204 205 206 207 > + 208 209 210 211 212 213 214 215 > + 216 217 218 219 220 221 222 223 > + 224 225 226 227 228 229 230 231 > + 232 233 234 235 236 237 238 239 > + 240 241 242 243 244 245 246 247 > + 248 249 250 251 252 253 254 255 > + 256>; > + }; > + > + clocks { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + clk32k_in: clock@0 { > + compatible = "fixed-clock"; > + reg = <0>; > + #clock-cells = <0>; > + clock-frequency = <32768>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + lid { > + label = "Lid"; > + gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>; > + linux,input-type = <5>; > + linux,code = <KEY_RESERVED>; > + debounce-interval = <1>; > + gpio-key,wakeup; > + }; > + > + power { > + label = "Power"; > + gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; > + linux,code = <KEY_POWER>; > + debounce-interval = <30>; > + gpio-key,wakeup; > + }; > + }; > + > + panel: panel { > + compatible = "auo,b133xtn01"; > + > + backlight = <&backlight>; > + ddc-i2c-bus = <&dpaux>; > + }; > + > + regulators { > + compatible = "simple-bus"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + vdd_mux: regulator@0 { > + compatible = "regulator-fixed"; > + reg = <0>; > + regulator-name = "+VDD_MUX"; > + regulator-min-microvolt = <12000000>; > + regulator-max-microvolt = <12000000>; > + regulator-always-on; > + regulator-boot-on; > + }; > + > + vdd_5v0_sys: regulator@1 { > + compatible = "regulator-fixed"; > + reg = <1>; > + regulator-name = "+5V_SYS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_sys: regulator@2 { > + compatible = "regulator-fixed"; > + reg = <2>; > + regulator-name = "+3.3V_SYS"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_3v3_run: regulator@3 { > + compatible = "regulator-fixed"; > + reg = <3>; > + regulator-name = "+3.3V_RUN"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + regulator-boot-on; > + gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_3v3_hdmi: regulator@4 { > + compatible = "regulator-fixed"; > + reg = <4>; > + regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_led: regulator@5 { > + compatible = "regulator-fixed"; > + reg = <5>; > + regulator-name = "+VDD_LED"; > + gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_mux>; > + }; > + > + vdd_5v0_ts: regulator@6 { > + compatible = "regulator-fixed"; > + reg = <6>; > + regulator-name = "+5V_VDD_TS_SW"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + regulator-boot-on; > + gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb1_vbus: regulator@7 { > + compatible = "regulator-fixed"; > + reg = <7>; > + regulator-name = "+5V_USB_HS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_usb3_vbus: regulator@8 { > + compatible = "regulator-fixed"; > + reg = <8>; > + regulator-name = "+5V_USB_SS"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + gpio-open-drain; > + vin-supply = <&vdd_5v0_sys>; > + }; > + > + vdd_3v3_panel: regulator@9 { > + compatible = "regulator-fixed"; > + reg = <9>; > + regulator-name = "+3.3V_PANEL"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + gpio = <&pmic 4 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_run>; > + }; > + > + vdd_3v3_lp0: regulator@10 { > + compatible = "regulator-fixed"; > + reg = <10>; > + regulator-name = "+3.3V_LP0"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + /* > + * TODO: find a way to wire this up with the USB EHCI > + * controllers so that it can be enabled on demand. > + */ > + regulator-always-on; > + gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_3v3_sys>; > + }; > + > + vdd_hdmi_pll: regulator@11 { > + compatible = "regulator-fixed"; > + reg = <11>; > + regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL"; > + regulator-min-microvolt = <1050000>; > + regulator-max-microvolt = <1050000>; > + gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>; > + vin-supply = <&vdd_1v05_run>; > + }; > + > + vdd_5v0_hdmi: regulator@12 { > + compatible = "regulator-fixed"; > + reg = <12>; > + regulator-name = "+5V_HDMI_CON"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; > + enable-active-high; > + vin-supply = <&vdd_5v0_sys>; > + }; > + }; > + > + sound { > + compatible = "nvidia,tegra-audio-max98090-nyan-big", > + "nvidia,tegra-audio-max98090"; > + > + nvidia,audio-routing = > + "Headphones", "HPR", > + "Headphones", "HPL", > + "Speakers", "SPKR", > + "Speakers", "SPKL", > + "Mic Jack", "MICBIAS", > + "DMICL", "Int Mic", > + "DMICR", "Int Mic", > + "IN34", "Mic Jack"; > + > + nvidia,i2s-controller = <&tegra_i2s1>; > + nvidia,audio-codec = <&acodec>; > + > + clocks = <&tegra_car TEGRA124_CLK_PLL_A>, > + <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, > + <&tegra_car TEGRA124_CLK_EXTERN1>; > + clock-names = "pll_a", "pll_a_out0", "mclk"; > + > + nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>; > + }; > +}; > + > +#include "cros-ec-keyboard.dtsi" > -- > 1.9.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT 2015-01-06 10:37 ` Tomeu Vizoso @ 2015-01-06 17:10 ` Stephen Warren -1 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-06 17:10 UTC (permalink / raw) To: Tomeu Vizoso, linux-tegra Cc: Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. "git format-patch -M" and/or "git format-patch -C" should make this patch a lot easier to review, since it'll show the patch as a file copy/rename rather than a full-file cut/paste. ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT @ 2015-01-06 17:10 ` Stephen Warren 0 siblings, 0 replies; 41+ messages in thread From: Stephen Warren @ 2015-01-06 17:10 UTC (permalink / raw) To: linux-arm-kernel On 01/06/2015 03:37 AM, Tomeu Vizoso wrote: > In preparation for adding the DT for the nyan-blaze board. "git format-patch -M" and/or "git format-patch -C" should make this patch a lot easier to review, since it'll show the patch as a file copy/rename rather than a full-file cut/paste. ^ permalink raw reply [flat|nested] 41+ messages in thread
[parent not found: <1420540653-14816-1-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org>]
* [PATCH 3/4] ARM: tegra: Add DTS for the nyan-blaze board 2015-01-06 10:37 ` Tomeu Vizoso (?) @ 2015-01-06 10:37 ` Tomeu Vizoso -1 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra-u79uwXL29TY76Z2rM5mHXA Cc: Javier Martinez Canillas, Tomeu Vizoso, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree-u79uwXL29TY76Z2rM5mHXA, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, linux-kernel-u79uwXL29TY76Z2rM5mHXA It's commercial name is HP Chromebook 14 and is substantially similar to the Acer Chromebook 13 (nyan-big). Signed-off-by: Tomeu Vizoso <tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> --- arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/tegra124-nyan-blaze.dts | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 arch/arm/boot/dts/tegra124-nyan-blaze.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 91bd5bd..7c9d83b 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -497,6 +497,7 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ tegra114-tn7.dtb \ tegra124-jetson-tk1.dtb \ tegra124-nyan-big.dtb \ + tegra124-nyan-blaze.dtb \ tegra124-venice2.dtb dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \ diff --git a/arch/arm/boot/dts/tegra124-nyan-blaze.dts b/arch/arm/boot/dts/tegra124-nyan-blaze.dts new file mode 100644 index 0000000..69fe66f --- /dev/null +++ b/arch/arm/boot/dts/tegra124-nyan-blaze.dts @@ -0,0 +1,12 @@ +/dts-v1/; + +#include "tegra124-nyan.dtsi" + +/ { + model = "HP Chromebook 14"; + compatible = "google,nyan-blaze", "google,nyan", "nvidia,tegra124"; + + sound { + nvidia,model = "HP Chromebook 14"; + }; +}; -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 3/4] ARM: tegra: Add DTS for the nyan-blaze board @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-arm-kernel It's commercial name is HP Chromebook 14 and is substantially similar to the Acer Chromebook 13 (nyan-big). Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/tegra124-nyan-blaze.dts | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 arch/arm/boot/dts/tegra124-nyan-blaze.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 91bd5bd..7c9d83b 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -497,6 +497,7 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ tegra114-tn7.dtb \ tegra124-jetson-tk1.dtb \ tegra124-nyan-big.dtb \ + tegra124-nyan-blaze.dtb \ tegra124-venice2.dtb dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \ diff --git a/arch/arm/boot/dts/tegra124-nyan-blaze.dts b/arch/arm/boot/dts/tegra124-nyan-blaze.dts new file mode 100644 index 0000000..69fe66f --- /dev/null +++ b/arch/arm/boot/dts/tegra124-nyan-blaze.dts @@ -0,0 +1,12 @@ +/dts-v1/; + +#include "tegra124-nyan.dtsi" + +/ { + model = "HP Chromebook 14"; + compatible = "google,nyan-blaze", "google,nyan", "nvidia,tegra124"; + + sound { + nvidia,model = "HP Chromebook 14"; + }; +}; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 3/4] ARM: tegra: Add DTS for the nyan-blaze board @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra Cc: Javier Martinez Canillas, Tomeu Vizoso, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel It's commercial name is HP Chromebook 14 and is substantially similar to the Acer Chromebook 13 (nyan-big). Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/tegra124-nyan-blaze.dts | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 arch/arm/boot/dts/tegra124-nyan-blaze.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 91bd5bd..7c9d83b 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -497,6 +497,7 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ tegra114-tn7.dtb \ tegra124-jetson-tk1.dtb \ tegra124-nyan-big.dtb \ + tegra124-nyan-blaze.dtb \ tegra124-venice2.dtb dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \ diff --git a/arch/arm/boot/dts/tegra124-nyan-blaze.dts b/arch/arm/boot/dts/tegra124-nyan-blaze.dts new file mode 100644 index 0000000..69fe66f --- /dev/null +++ b/arch/arm/boot/dts/tegra124-nyan-blaze.dts @@ -0,0 +1,12 @@ +/dts-v1/; + +#include "tegra124-nyan.dtsi" + +/ { + model = "HP Chromebook 14"; + compatible = "google,nyan-blaze", "google,nyan", "nvidia,tegra124"; + + sound { + nvidia,model = "HP Chromebook 14"; + }; +}; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 4/4] ARM: tegra: remove wp-gpios from the generic nyan dtsi 2015-01-06 10:37 ` Tomeu Vizoso @ 2015-01-06 10:37 ` Tomeu Vizoso -1 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-tegra Cc: Javier Martinez Canillas, Tomeu Vizoso, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Thierry Reding, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel As the nyan-blaze has a micro-sd slot, as opposed to nyan-big, which has a full SD slot. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 4 ++++ arch/arm/boot/dts/tegra124-nyan.dtsi | 1 - 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 2041077..598c090 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -6,6 +6,10 @@ model = "Acer Chromebook 13 CB5-311"; compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; + sdhci@0,700b0400 { /* SD Card on this bus */ + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; + }; + sound { nvidia,model = "Acer Chromebook 13 CB5-311"; }; diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi index 4c68658..12d757e 100644 --- a/arch/arm/boot/dts/tegra124-nyan.dtsi +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi @@ -820,7 +820,6 @@ status = "okay"; cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; bus-width = <4>; no-1-8-v; vqmmc-supply = <&vddio_sdmmc3>; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH 4/4] ARM: tegra: remove wp-gpios from the generic nyan dtsi @ 2015-01-06 10:37 ` Tomeu Vizoso 0 siblings, 0 replies; 41+ messages in thread From: Tomeu Vizoso @ 2015-01-06 10:37 UTC (permalink / raw) To: linux-arm-kernel As the nyan-blaze has a micro-sd slot, as opposed to nyan-big, which has a full SD slot. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> --- arch/arm/boot/dts/tegra124-nyan-big.dts | 4 ++++ arch/arm/boot/dts/tegra124-nyan.dtsi | 1 - 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/tegra124-nyan-big.dts b/arch/arm/boot/dts/tegra124-nyan-big.dts index 2041077..598c090 100644 --- a/arch/arm/boot/dts/tegra124-nyan-big.dts +++ b/arch/arm/boot/dts/tegra124-nyan-big.dts @@ -6,6 +6,10 @@ model = "Acer Chromebook 13 CB5-311"; compatible = "google,nyan-big", "google,nyan", "nvidia,tegra124"; + sdhci at 0,700b0400 { /* SD Card on this bus */ + wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; + }; + sound { nvidia,model = "Acer Chromebook 13 CB5-311"; }; diff --git a/arch/arm/boot/dts/tegra124-nyan.dtsi b/arch/arm/boot/dts/tegra124-nyan.dtsi index 4c68658..12d757e 100644 --- a/arch/arm/boot/dts/tegra124-nyan.dtsi +++ b/arch/arm/boot/dts/tegra124-nyan.dtsi @@ -820,7 +820,6 @@ status = "okay"; cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; - wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>; bus-width = <4>; no-1-8-v; vqmmc-supply = <&vddio_sdmmc3>; -- 1.9.3 ^ permalink raw reply related [flat|nested] 41+ messages in thread
* Re: [PATCH 4/4] ARM: tegra: remove wp-gpios from the generic nyan dtsi 2015-01-06 10:37 ` Tomeu Vizoso (?) @ 2015-01-06 13:08 ` Thierry Reding -1 siblings, 0 replies; 41+ messages in thread From: Thierry Reding @ 2015-01-06 13:08 UTC (permalink / raw) To: Tomeu Vizoso Cc: Mark Rutland, Alexandre Courbot, Russell King, Pawel Moll, Ian Campbell, Stephen Warren, linux-kernel, devicetree, Rob Herring, Kumar Gala, linux-tegra, Javier Martinez Canillas, linux-arm-kernel [-- Attachment #1.1: Type: text/plain, Size: 441 bytes --] On Tue, Jan 06, 2015 at 11:37:29AM +0100, Tomeu Vizoso wrote: > As the nyan-blaze has a micro-sd slot, as opposed to nyan-big, which has a full SD > slot. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 4 ++++ > arch/arm/boot/dts/tegra124-nyan.dtsi | 1 - > 2 files changed, 4 insertions(+), 1 deletion(-) Shouldn't this be squashed into patch 2/4? Thierry [-- Attachment #1.2: Type: application/pgp-signature, Size: 819 bytes --] [-- Attachment #2: Type: text/plain, Size: 176 bytes --] _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH 4/4] ARM: tegra: remove wp-gpios from the generic nyan dtsi @ 2015-01-06 13:08 ` Thierry Reding 0 siblings, 0 replies; 41+ messages in thread From: Thierry Reding @ 2015-01-06 13:08 UTC (permalink / raw) To: linux-arm-kernel On Tue, Jan 06, 2015 at 11:37:29AM +0100, Tomeu Vizoso wrote: > As the nyan-blaze has a micro-sd slot, as opposed to nyan-big, which has a full SD > slot. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 4 ++++ > arch/arm/boot/dts/tegra124-nyan.dtsi | 1 - > 2 files changed, 4 insertions(+), 1 deletion(-) Shouldn't this be squashed into patch 2/4? Thierry -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150106/ed6766f3/attachment.sig> ^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH 4/4] ARM: tegra: remove wp-gpios from the generic nyan dtsi @ 2015-01-06 13:08 ` Thierry Reding 0 siblings, 0 replies; 41+ messages in thread From: Thierry Reding @ 2015-01-06 13:08 UTC (permalink / raw) To: Tomeu Vizoso Cc: linux-tegra, Javier Martinez Canillas, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala, Russell King, Stephen Warren, Alexandre Courbot, devicetree, linux-arm-kernel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 441 bytes --] On Tue, Jan 06, 2015 at 11:37:29AM +0100, Tomeu Vizoso wrote: > As the nyan-blaze has a micro-sd slot, as opposed to nyan-big, which has a full SD > slot. > > Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> > --- > arch/arm/boot/dts/tegra124-nyan-big.dts | 4 ++++ > arch/arm/boot/dts/tegra124-nyan.dtsi | 1 - > 2 files changed, 4 insertions(+), 1 deletion(-) Shouldn't this be squashed into patch 2/4? Thierry [-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 41+ messages in thread
end of thread, other threads:[~2015-01-07 17:15 UTC | newest] Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2015-01-06 10:37 [PATCH 0/4] Add support for nyan-blaze Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso 2015-01-06 10:37 ` [PATCH 1/4] ARM: tegra: rely on bootloader pinmux programming on nyan-big Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso [not found] ` <1420540653-14816-2-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> 2015-01-06 17:09 ` Stephen Warren 2015-01-06 17:09 ` Stephen Warren 2015-01-06 17:09 ` Stephen Warren [not found] ` <54AC16B0.5050703-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org> 2015-01-07 3:37 ` Andrew Bresticker 2015-01-07 3:37 ` Andrew Bresticker 2015-01-07 3:37 ` Andrew Bresticker 2015-01-07 8:06 ` Tomeu Vizoso 2015-01-07 8:06 ` Tomeu Vizoso 2015-01-07 8:06 ` Tomeu Vizoso [not found] ` <CAAObsKB1gMcLZ=n8Mc6JSLQHn5-6VWOhERLgYTdi6nit6yCj5w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-01-07 17:15 ` Stephen Warren 2015-01-07 17:15 ` Stephen Warren 2015-01-07 17:15 ` Stephen Warren 2015-01-06 10:37 ` [PATCH 2/4] ARM: tegra: Move out nyan-generic parts out from the nyan-big DT Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso [not found] ` <1420540653-14816-3-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> 2015-01-06 13:06 ` Thierry Reding 2015-01-06 13:06 ` Thierry Reding 2015-01-06 13:06 ` Thierry Reding [not found] ` <20150106130656.GF31830-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org> 2015-01-06 17:30 ` Andrew Bresticker 2015-01-06 17:30 ` Andrew Bresticker [not found] ` <CAL1qeaETERAm6aTwWycCat-RzQz8UmixWtc-uK4dFsu7wL8HAg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-01-06 17:40 ` Olof Johansson 2015-01-06 17:40 ` Olof Johansson 2015-01-06 17:40 ` Olof Johansson 2015-01-06 13:24 ` Eduardo Valentin 2015-01-06 13:24 ` Eduardo Valentin 2015-01-06 13:24 ` Eduardo Valentin 2015-01-06 17:10 ` Stephen Warren 2015-01-06 17:10 ` Stephen Warren [not found] ` <1420540653-14816-1-git-send-email-tomeu.vizoso-ZGY8ohtN/8qB+jHODAdFcQ@public.gmane.org> 2015-01-06 10:37 ` [PATCH 3/4] ARM: tegra: Add DTS for the nyan-blaze board Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso 2015-01-06 10:37 ` [PATCH 4/4] ARM: tegra: remove wp-gpios from the generic nyan dtsi Tomeu Vizoso 2015-01-06 10:37 ` Tomeu Vizoso 2015-01-06 13:08 ` Thierry Reding 2015-01-06 13:08 ` Thierry Reding 2015-01-06 13:08 ` Thierry Reding
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.