sunxi: add kernel DT for NanoPi NEO Plus2 board
Linux Kernel upstream commit d73413058 Signed-off-by: Antony Antony <antony@phenome.org>
This commit is contained in:
		 Antony Antony
					Antony Antony
				
			
				
					committed by
					
						 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
			
				
	
			
			
			 Hauke Mehrtens
						Hauke Mehrtens
					
				
			
						parent
						
							6247929d66
						
					
				
				
					commit
					b7a1aa4df2
				
			| @@ -0,0 +1,224 @@ | |||||||
|  | From d7341305863bcc054ee168bd77864100e0c3b144 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: Antony Antony <antony@phenome.org> | ||||||
|  | Date: Thu, 7 Sep 2017 18:42:22 +0200 | ||||||
|  | Subject: [PATCH] arm64: allwinner: h5: add NanoPi NEO Plus2 DT support | ||||||
|  |  | ||||||
|  | Add initial DT for NanoPi NEO Plus2 by FriendlyARM | ||||||
|  | - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU | ||||||
|  | - 1 GB DDR3 RAM | ||||||
|  | - 8GB eMMC flash (Samsung KLM8G1WEPD-B031) | ||||||
|  | - micro SD card slot | ||||||
|  | - Gigabit Ethernet (external RTL8211E-VB-CG chip) | ||||||
|  | - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module) | ||||||
|  | - 2x USB 2.0 host ports & 2x USB via headers | ||||||
|  |  | ||||||
|  | Kernel 4.15 commit d7341305863b | ||||||
|  |  | ||||||
|  | Signed-off-by: Antony Antony <antony@phenome.org> | ||||||
|  |  | ||||||
|  | --- a/arch/arm64/boot/dts/allwinner/Makefile | ||||||
|  | +++ b/arch/arm64/boot/dts/allwinner/Makefile | ||||||
|  | @@ -9,6 +9,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-or | ||||||
|  |  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus2.dtb | ||||||
|  |  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo2.dtb | ||||||
|  | +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-nanopi-neo-plus2.dtb | ||||||
|  |   | ||||||
|  |  always		:= $(dtb-y) | ||||||
|  |  subdir-y	:= $(dts-dirs) | ||||||
|  | --- /dev/null | ||||||
|  | +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo-plus2.dts | ||||||
|  | @@ -0,0 +1,193 @@ | ||||||
|  | +/* | ||||||
|  | + * Copyright (C) 2017 Antony Antony <antony@phenome.org> | ||||||
|  | + * Copyright (C) 2016 ARM Ltd. | ||||||
|  | + * | ||||||
|  | + * This file is dual-licensed: you can use it either under the terms | ||||||
|  | + * of the GPL or the X11 license, at your option. Note that this dual | ||||||
|  | + * licensing only applies to this file, and not this project as a | ||||||
|  | + * whole. | ||||||
|  | + * | ||||||
|  | + *  a) This file is free software; you can redistribute it and/or | ||||||
|  | + *     modify it under the terms of the GNU General Public License as | ||||||
|  | + *     published by the Free Software Foundation; either version 2 of the | ||||||
|  | + *     License, or (at your option) any later version. | ||||||
|  | + * | ||||||
|  | + *     This file is distributed in the hope that it will be useful, | ||||||
|  | + *     but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  | + *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||||
|  | + *     GNU General Public License for more details. | ||||||
|  | + * | ||||||
|  | + * Or, alternatively, | ||||||
|  | + * | ||||||
|  | + *  b) Permission is hereby granted, free of charge, to any person | ||||||
|  | + *     obtaining a copy of this software and associated documentation | ||||||
|  | + *     files (the "Software"), to deal in the Software without | ||||||
|  | + *     restriction, including without limitation the rights to use, | ||||||
|  | + *     copy, modify, merge, publish, distribute, sublicense, and/or | ||||||
|  | + *     sell copies of the Software, and to permit persons to whom the | ||||||
|  | + *     Software is furnished to do so, subject to the following | ||||||
|  | + *     conditions: | ||||||
|  | + * | ||||||
|  | + *     The above copyright notice and this permission notice shall be | ||||||
|  | + *     included in all copies or substantial portions of the Software. | ||||||
|  | + * | ||||||
|  | + *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||||||
|  | + *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||||||
|  | + *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||||||
|  | + *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||||||
|  | + *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||||||
|  | + *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||||||
|  | + *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||||||
|  | + *     OTHER DEALINGS IN THE SOFTWARE. | ||||||
|  | + */ | ||||||
|  | + | ||||||
|  | +/dts-v1/; | ||||||
|  | +#include "sun50i-h5.dtsi" | ||||||
|  | + | ||||||
|  | +#include <dt-bindings/gpio/gpio.h> | ||||||
|  | +#include <dt-bindings/input/input.h> | ||||||
|  | +#include <dt-bindings/pinctrl/sun4i-a10.h> | ||||||
|  | + | ||||||
|  | +/ { | ||||||
|  | +	model = "FriendlyARM NanoPi NEO Plus2"; | ||||||
|  | +	compatible = "friendlyarm,nanopi-neo-plus2", "allwinner,sun50i-h5"; | ||||||
|  | + | ||||||
|  | +	aliases { | ||||||
|  | +		serial0 = &uart0; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	chosen { | ||||||
|  | +		stdout-path = "serial0:115200n8"; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	leds { | ||||||
|  | +		compatible = "gpio-leds"; | ||||||
|  | + | ||||||
|  | +		pwr { | ||||||
|  | +			label = "nanopi:green:pwr"; | ||||||
|  | +			gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; | ||||||
|  | +			default-state = "on"; | ||||||
|  | +		}; | ||||||
|  | + | ||||||
|  | +		status { | ||||||
|  | +			label = "nanopi:red:status"; | ||||||
|  | +			gpios = <&pio 0 20 GPIO_ACTIVE_HIGH>; | ||||||
|  | +		}; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	reg_gmac_3v3: gmac-3v3 { | ||||||
|  | +		compatible = "regulator-fixed"; | ||||||
|  | +		pinctrl-names = "default"; | ||||||
|  | +		regulator-name = "gmac-3v3"; | ||||||
|  | +		regulator-min-microvolt = <3300000>; | ||||||
|  | +		regulator-max-microvolt = <3300000>; | ||||||
|  | +		startup-delay-us = <100000>; | ||||||
|  | +		enable-active-high; | ||||||
|  | +		gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	reg_vcc3v3: vcc3v3 { | ||||||
|  | +		compatible = "regulator-fixed"; | ||||||
|  | +		regulator-name = "vcc3v3"; | ||||||
|  | +		regulator-min-microvolt = <3300000>; | ||||||
|  | +		regulator-max-microvolt = <3300000>; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	vdd_cpux: gpio-regulator { | ||||||
|  | +		compatible = "regulator-gpio"; | ||||||
|  | +		pinctrl-names = "default"; | ||||||
|  | +		regulator-name = "vdd-cpux"; | ||||||
|  | +		regulator-type = "voltage"; | ||||||
|  | +		regulator-boot-on; | ||||||
|  | +		regulator-always-on; | ||||||
|  | +		regulator-min-microvolt = <1100000>; | ||||||
|  | +		regulator-max-microvolt = <1300000>; | ||||||
|  | +		regulator-ramp-delay = <50>; /* 4ms */ | ||||||
|  | +		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; | ||||||
|  | +		gpios-states = <0x1>; | ||||||
|  | +		states = <1100000 0x0 | ||||||
|  | +			  1300000 0x1>; | ||||||
|  | +	}; | ||||||
|  | + | ||||||
|  | +	wifi_pwrseq: wifi_pwrseq { | ||||||
|  | +		compatible = "mmc-pwrseq-simple"; | ||||||
|  | +		pinctrl-names = "default"; | ||||||
|  | +		reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */ | ||||||
|  | +		post-power-on-delay-ms = <200>; | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&codec { | ||||||
|  | +	allwinner,audio-routing = | ||||||
|  | +		"Line Out", "LINEOUT", | ||||||
|  | +		"MIC1", "Mic", | ||||||
|  | +		"Mic",  "MBIAS"; | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&ehci0 { | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&ehci3 { | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&mmc0 { | ||||||
|  | +	pinctrl-names = "default"; | ||||||
|  | +	pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; | ||||||
|  | +	vmmc-supply = <®_vcc3v3>; | ||||||
|  | +	bus-width = <4>; | ||||||
|  | +	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&mmc1 { | ||||||
|  | +	pinctrl-names = "default"; | ||||||
|  | +	pinctrl-0 = <&mmc1_pins_a>; | ||||||
|  | +	vmmc-supply = <®_vcc3v3>; | ||||||
|  | +	vqmmc-supply = <®_vcc3v3>; | ||||||
|  | +	mmc-pwrseq = <&wifi_pwrseq>; | ||||||
|  | +	bus-width = <4>; | ||||||
|  | +	non-removable; | ||||||
|  | +	status = "okay"; | ||||||
|  | + | ||||||
|  | +	brcmf: wifi@1 { | ||||||
|  | +		reg = <1>; | ||||||
|  | +		compatible = "brcm,bcm4329-fmac"; | ||||||
|  | +	}; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&mmc2 { | ||||||
|  | +	pinctrl-names = "default"; | ||||||
|  | +	pinctrl-0 = <&mmc2_8bit_pins>; | ||||||
|  | +	vmmc-supply = <®_vcc3v3>; | ||||||
|  | +	bus-width = <8>; | ||||||
|  | +	non-removable; | ||||||
|  | +	cap-mmc-hw-reset; | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&ohci0 { | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&ohci3 { | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&uart0 { | ||||||
|  | +	pinctrl-names = "default"; | ||||||
|  | +	pinctrl-0 = <&uart0_pins_a>; | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&usb_otg { | ||||||
|  | +	dr_mode = "host"; | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
|  | + | ||||||
|  | +&usbphy { | ||||||
|  | +	/* USB Type-A ports' VBUS is always on */ | ||||||
|  | +	status = "okay"; | ||||||
|  | +}; | ||||||
		Reference in New Issue
	
	Block a user