diff options
Diffstat (limited to 'gnu/packages/patches/u-boot-pinebook-dts.patch')
-rw-r--r-- | gnu/packages/patches/u-boot-pinebook-dts.patch | 388 |
1 files changed, 0 insertions, 388 deletions
diff --git a/gnu/packages/patches/u-boot-pinebook-dts.patch b/gnu/packages/patches/u-boot-pinebook-dts.patch deleted file mode 100644 index 48c004fdfc..0000000000 --- a/gnu/packages/patches/u-boot-pinebook-dts.patch +++ /dev/null @@ -1,388 +0,0 @@ -From b972831c3cd24f3c9bb0995ed61db8f8239f3391 Mon Sep 17 00:00:00 2001 -From: Vasily Khoruzhick <anarsoul@gmail.com> -Date: Mon, 5 Nov 2018 20:24:31 -0800 -Subject: [PATCH 10/13] sunxi: DT: add support for Pinebook - -Pinebook is a laptop produced by Pine64, with USB-connected keyboard, -USB-connected touchpad and an eDP LCD panel connected via a RGB-eDP -bridge from Analogix. - -Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> -Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> -Tested-by: Maxime Ripard <maxime.ripard@bootlin.com> -Cc: Vagrant Cascadian <vagrant@debian.org> -Reviewed-by: Jagan Teki <jagan@openedev.com> ---- - arch/arm/dts/Makefile | 1 + - arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi | 15 ++ - arch/arm/dts/sun50i-a64-pinebook.dts | 294 +++++++++++++++++++++++++++ - configs/pinebook_defconfig | 22 ++ - 4 files changed, 332 insertions(+) - create mode 100644 arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi - create mode 100644 arch/arm/dts/sun50i-a64-pinebook.dts - create mode 100644 configs/pinebook_defconfig - -diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile -index 3093c1185e..eae6b9ee5d 100644 ---- a/arch/arm/dts/Makefile -+++ b/arch/arm/dts/Makefile -@@ -406,6 +406,7 @@ dtb-$(CONFIG_MACH_SUN50I) += \ - sun50i-a64-orangepi-win.dtb \ - sun50i-a64-pine64-plus.dtb \ - sun50i-a64-pine64.dtb \ -+ sun50i-a64-pinebook.dtb \ - sun50i-a64-sopine-baseboard.dtb - dtb-$(CONFIG_MACH_SUN9I) += \ - sun9i-a80-optimus.dtb \ -diff --git a/arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi b/arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi -new file mode 100644 -index 0000000000..a99b7171d0 ---- /dev/null -+++ b/arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi -@@ -0,0 +1,15 @@ -+// SPDX-License-Identifier: (GPL-2.0+ OR MIT) -+/* -+ * Copyright (C) 2018 Vasily Khoruzhick <anarsoul@gmail.com> -+ * -+ */ -+ -+/* The ANX6345 eDP-bridge is on r_i2c */ -+&r_i2c { -+ anx6345: edp-bridge@38 { -+ compatible = "analogix,anx6345"; -+ reg = <0x38>; -+ reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */ -+ status = "okay"; -+ }; -+}; -diff --git a/arch/arm/dts/sun50i-a64-pinebook.dts b/arch/arm/dts/sun50i-a64-pinebook.dts -new file mode 100644 -index 0000000000..ec537c5297 ---- /dev/null -+++ b/arch/arm/dts/sun50i-a64-pinebook.dts -@@ -0,0 +1,294 @@ -+// SPDX-License-Identifier: (GPL-2.0+ OR MIT) -+/* -+ * Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.xyz> -+ * Copyright (C) 2018 Vasily Khoruzhick <anarsoul@gmail.com> -+ * -+ */ -+ -+/dts-v1/; -+ -+#include "sun50i-a64.dtsi" -+ -+#include <dt-bindings/gpio/gpio.h> -+#include <dt-bindings/input/input.h> -+#include <dt-bindings/pwm/pwm.h> -+ -+/ { -+ model = "Pinebook"; -+ compatible = "pine64,pinebook", "allwinner,sun50i-a64"; -+ -+ aliases { -+ serial0 = &uart0; -+ ethernet0 = &rtl8723cs; -+ }; -+ -+ vdd_bl: regulator@0 { -+ compatible = "regulator-fixed"; -+ regulator-name = "bl-3v3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */ -+ enable-active-high; -+ }; -+ -+ backlight: backlight { -+ compatible = "pwm-backlight"; -+ pwms = <&pwm 0 50000 0>; -+ brightness-levels = <0 5 10 15 20 30 40 55 70 85 100>; -+ default-brightness-level = <2>; -+ enable-gpios = <&pio 3 23 GPIO_ACTIVE_HIGH>; /* PD23 */ -+ power-supply = <&vdd_bl>; -+ }; -+ -+ chosen { -+ stdout-path = "serial0:115200n8"; -+ -+ framebuffer-lcd { -+ panel-supply = <®_dc1sw>; -+ dvdd25-supply = <®_dldo2>; -+ dvdd12-supply = <®_fldo1>; -+ }; -+ }; -+ -+ gpio_keys { -+ compatible = "gpio-keys"; -+ -+ lid_switch { -+ label = "Lid Switch"; -+ gpios = <&r_pio 0 12 GPIO_ACTIVE_LOW>; /* PL12 */ -+ linux,input-type = <EV_SW>; -+ linux,code = <SW_LID>; -+ linux,can-disable; -+ wakeup-source; -+ }; -+ }; -+ -+ reg_vcc3v3: vcc3v3 { -+ compatible = "regulator-fixed"; -+ regulator-name = "vcc3v3"; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ }; -+ -+ wifi_pwrseq: wifi_pwrseq { -+ compatible = "mmc-pwrseq-simple"; -+ reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ -+ }; -+}; -+ -+&ehci0 { -+ phys = <&usbphy 0>; -+ phy-names = "usb"; -+ status = "okay"; -+}; -+ -+&ehci1 { -+ status = "okay"; -+}; -+ -+&mmc0 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&mmc0_pins>; -+ vmmc-supply = <®_dcdc1>; -+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; -+ disable-wp; -+ bus-width = <4>; -+ status = "okay"; -+}; -+ -+&mmc1 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&mmc1_pins>; -+ vmmc-supply = <®_dldo4>; -+ vqmmc-supply = <®_eldo1>; -+ mmc-pwrseq = <&wifi_pwrseq>; -+ bus-width = <4>; -+ non-removable; -+ status = "okay"; -+ -+ rtl8723cs: wifi@1 { -+ reg = <1>; -+ }; -+}; -+ -+&mmc2 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&mmc2_pins>, <&mmc2_ds_pin>; -+ vmmc-supply = <®_dcdc1>; -+ vqmmc-supply = <®_eldo1>; -+ bus-width = <8>; -+ non-removable; -+ cap-mmc-hw-reset; -+ mmc-hs200-1_8v; -+ status = "okay"; -+}; -+ -+&ohci0 { -+ phys = <&usbphy 0>; -+ phy-names = "usb"; -+ status = "okay"; -+}; -+ -+&ohci1 { -+ status = "okay"; -+}; -+ -+&pwm { -+ status = "okay"; -+}; -+ -+&r_rsb { -+ status = "okay"; -+ -+ axp803: pmic@3a3 { -+ compatible = "x-powers,axp803"; -+ reg = <0x3a3>; -+ interrupt-parent = <&r_intc>; -+ interrupts = <0 IRQ_TYPE_LEVEL_LOW>; -+ }; -+}; -+ -+/* The ANX6345 eDP-bridge is on r_i2c */ -+&r_i2c { -+ clock-frequency = <100000>; -+ pinctrl-names = "default"; -+ pinctrl-0 = <&r_i2c_pl89_pins>; -+ status = "okay"; -+}; -+ -+#include "axp803.dtsi" -+ -+®_aldo1 { -+ regulator-min-microvolt = <2800000>; -+ regulator-max-microvolt = <2800000>; -+ regulator-name = "vcc-csi"; -+}; -+ -+®_aldo2 { -+ regulator-always-on; -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "vcc-pl"; -+}; -+ -+®_aldo3 { -+ regulator-always-on; -+ regulator-min-microvolt = <2700000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "vcc-pll-avcc"; -+}; -+ -+®_dc1sw { -+ regulator-name = "vcc-lcd"; -+}; -+ -+®_dcdc1 { -+ regulator-always-on; -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "vcc-3v3"; -+}; -+ -+®_dcdc2 { -+ regulator-always-on; -+ regulator-min-microvolt = <1000000>; -+ regulator-max-microvolt = <1300000>; -+ regulator-name = "vdd-cpux"; -+}; -+ -+/* DCDC3 is polyphased with DCDC2 */ -+ -+®_dcdc5 { -+ regulator-always-on; -+ regulator-min-microvolt = <1200000>; -+ regulator-max-microvolt = <1200000>; -+ regulator-name = "vcc-dram"; -+}; -+ -+®_dcdc6 { -+ regulator-always-on; -+ regulator-min-microvolt = <1100000>; -+ regulator-max-microvolt = <1100000>; -+ regulator-name = "vdd-sys"; -+}; -+ -+®_dldo1 { -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "vcc-hdmi"; -+}; -+ -+®_dldo2 { -+ regulator-min-microvolt = <2500000>; -+ regulator-max-microvolt = <2500000>; -+ regulator-name = "vcc-edp"; -+}; -+ -+®_dldo3 { -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "avdd-csi"; -+}; -+ -+®_dldo4 { -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "vcc-wifi"; -+}; -+ -+®_eldo1 { -+ regulator-always-on; -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-name = "cpvdd"; -+}; -+ -+®_eldo3 { -+ regulator-min-microvolt = <1800000>; -+ regulator-max-microvolt = <1800000>; -+ regulator-name = "vdd-1v8-csi"; -+}; -+ -+®_fldo1 { -+ regulator-min-microvolt = <1200000>; -+ regulator-max-microvolt = <1200000>; -+ regulator-name = "vcc-1v2-hsic"; -+}; -+ -+®_fldo2 { -+ regulator-always-on; -+ regulator-min-microvolt = <1100000>; -+ regulator-max-microvolt = <1100000>; -+ regulator-name = "vdd-cpus"; -+}; -+ -+®_ldo_io0 { -+ regulator-min-microvolt = <3300000>; -+ regulator-max-microvolt = <3300000>; -+ regulator-name = "vcc-usb"; -+ status = "okay"; -+}; -+ -+®_rtc_ldo { -+ regulator-name = "vcc-rtc"; -+}; -+ -+&simplefb_hdmi { -+ vcc-hdmi-supply = <®_dldo1>; -+}; -+ -+&uart0 { -+ pinctrl-names = "default"; -+ pinctrl-0 = <&uart0_pb_pins>; -+ status = "okay"; -+}; -+ -+&usb_otg { -+ dr_mode = "host"; -+}; -+ -+&usbphy { -+ usb0_vbus-supply = <®_ldo_io0>; -+ usb1_vbus-supply = <®_ldo_io0>; -+ status = "okay"; -+}; -diff --git a/configs/pinebook_defconfig b/configs/pinebook_defconfig -new file mode 100644 -index 0000000000..5294dbd2eb ---- /dev/null -+++ b/configs/pinebook_defconfig -@@ -0,0 +1,22 @@ -+CONFIG_ARM=y -+CONFIG_ARCH_SUNXI=y -+CONFIG_SPL=y -+CONFIG_MACH_SUN50I=y -+CONFIG_SUNXI_DRAM_LPDDR3_STOCK=y -+CONFIG_DRAM_CLK=552 -+CONFIG_DRAM_ZQ=3881949 -+CONFIG_MMC_SUNXI_SLOT_EXTRA=2 -+CONFIG_R_I2C_ENABLE=y -+# CONFIG_CMD_FLASH is not set -+# CONFIG_SPL_DOS_PARTITION is not set -+# CONFIG_SPL_EFI_PARTITION is not set -+CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pinebook" -+CONFIG_DM_REGULATOR=y -+CONFIG_DM_REGULATOR_FIXED=y -+CONFIG_DM_PWM=y -+CONFIG_PWM_SUNXI=y -+CONFIG_USB_EHCI_HCD=y -+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y -+# CONFIG_USB_GADGET is not set -+CONFIG_VIDEO_BRIDGE=y -+CONFIG_VIDEO_BRIDGE_ANALOGIX_ANX6345=y --- -2.11.0 - |