build/patch/kernel/archive/meson64-5.10/general-meson64-overlays.patch

263 lines
7.8 KiB
Diff

From 58c5526eb1798e61e4e76d37140cf10c8d325bc7 Mon Sep 17 00:00:00 2001
From: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
Date: Thu, 19 Sep 2019 16:20:31 +0800
Subject: [PATCH] general: meson64 overlays
Signed-off-by: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
---
arch/arm64/boot/dts/amlogic/Makefile | 2 ++
arch/arm64/boot/dts/amlogic/overlay/Makefile | 20 ++++++++++++
.../dts/amlogic/overlay/README.meson-overlays | 20 ++++++++++++
.../dts/amlogic/overlay/meson-fixup.scr-cmd | 4 +++
.../boot/dts/amlogic/overlay/meson-i2cA.dts | 17 ++++++++++
.../boot/dts/amlogic/overlay/meson-i2cB.dts | 17 ++++++++++
.../boot/dts/amlogic/overlay/meson-uartA.dts | 11 +++++++
.../boot/dts/amlogic/overlay/meson-uartC.dts | 11 +++++++
.../dts/amlogic/overlay/meson-w1-gpio.dts | 20 ++++++++++++
.../dts/amlogic/overlay/meson-w1AB-gpio.dts | 32 +++++++++++++++++++
scripts/Makefile.lib | 3 ++
12 files changed, 165 insertions(+)
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/Makefile
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/README.meson-overlays
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-fixup.scr-cmd
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-i2cA.dts
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-i2cB.dts
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-uartA.dts
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-uartC.dts
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-w1-gpio.dts
create mode 100644 arch/arm64/boot/dts/amlogic/overlay/meson-w1AB-gpio.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 07b861f..9d12b15 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -32,3 +32,5 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q200.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-sei610.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-a1-ad401.dtb
+
+subdir-y := $(dts-dirs) overlay
diff --git a/arch/arm64/boot/dts/amlogic/overlay/Makefile b/arch/arm64/boot/dts/amlogic/overlay/Makefile
new file mode 100644
index 000000000000..8630fd1a182d
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/Makefile
@@ -0,0 +1,20 @@
+# SPDX-License-Identifier: GPL-2.0
+dtbo-$(CONFIG_ARCH_MESON) += \
+ meson-i2cA.dtbo \
+ meson-i2cB.dtbo \
+ meson-uartA.dtbo \
+ meson-uartC.dtbo \
+ meson-w1-gpio.dtbo \
+ meson-w1AB-gpio.dtbo
+
+scr-$(CONFIG_ARCH_MESON) += \
+ meson-fixup.scr
+
+dtbotxt-$(CONFIG_ARCH_MESON) += \
+ README.meson-overlays
+
+targets += $(dtbo-y) $(scr-y) $(dtbotxt-y)
+
+always := $(dtbo-y) $(scr-y) $(dtbotxt-y)
+clean-files := *.dtbo *.scr
+
diff --git a/arch/arm64/boot/dts/amlogic/overlay/README.meson-overlays b/arch/arm64/boot/dts/amlogic/overlay/README.meson-overlays
new file mode 100644
index 000000000000..1b169a7a1525
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/README.meson-overlays
@@ -0,0 +1,20 @@
+This document describes overlays provided in the kernel packages
+For generic Armbian overlays documentation please see
+https://docs.armbian.com/User-Guide_Allwinner_overlays/
+
+### Platform:
+
+meson (Amlogic)
+
+### Provided overlays:
+
+- i2c8
+
+### Overlay details:
+
+### i2c8
+
+Activates TWI/I2C bus 8
+
+I2C8 pins (SCL, SDA): GPIO1-C4, GPIO1-C5
+
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-fixup.scr-cmd b/arch/arm64/boot/dts/amlogic/overlay/meson-fixup.scr-cmd
new file mode 100644
index 000000000000..d4c39e20a3a2
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-fixup.scr-cmd
@@ -0,0 +1,4 @@
+# overlays fixup script
+# implements (or rather substitutes) overlay arguments functionality
+# using u-boot scripting, environment variables and "fdt" command
+
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-i2cA.dts b/arch/arm64/boot/dts/amlogic/overlay/meson-i2cA.dts
new file mode 100644
index 000000000000..bfb72feb7e36
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-i2cA.dts
@@ -0,0 +1,17 @@
+/dts-v1/;
+
+/ {
+ compatible = "amlogic,meson-gxbb";
+ fragment@0 {
+ target-path = "/aliases";
+ __overlay__ {
+ i2cA = "/soc/bus@c1100000/i2c@8500";
+ };
+ };
+ fragment@1 {
+ target-path = "/soc/bus@c1100000/i2c@8500";
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-i2cB.dts b/arch/arm64/boot/dts/amlogic/overlay/meson-i2cB.dts
new file mode 100644
index 000000000000..d75867bce99b
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-i2cB.dts
@@ -0,0 +1,17 @@
+/dts-v1/;
+
+/ {
+ compatible = "amlogic,meson-gxbb";
+ fragment@0 {
+ target-path = "/aliases";
+ __overlay__ {
+ i2cA = "/soc/bus@c1100000/i2c@87c0";
+ };
+ };
+ fragment@1 {
+ target-path = "/soc/bus@c1100000/i2c@87c0";
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-uartA.dts b/arch/arm64/boot/dts/amlogic/overlay/meson-uartA.dts
new file mode 100644
index 000000000000..3aecd60aaf64
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-uartA.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+/ {
+ compatible = "amlogic,meson-gxbb";
+ fragment@0 {
+ target-path = "/soc/bus@c1100000/serial@84c0";
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-uartC.dts b/arch/arm64/boot/dts/amlogic/overlay/meson-uartC.dts
new file mode 100644
index 000000000000..2b40ee4c02d3
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-uartC.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+/ {
+ compatible = "amlogic,meson-gxbb";
+ fragment@0 {
+ target-path = "/soc/bus@c1100000/serial@8700";
+ __overlay__ {
+ status = "okay";
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-w1-gpio.dts b/arch/arm64/boot/dts/amlogic/overlay/meson-w1-gpio.dts
new file mode 100644
index 000000000000..ac76a4f20ab7
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-w1-gpio.dts
@@ -0,0 +1,20 @@
+// Definitions for w1-gpio module (without external pullup)
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "amlogic,meson-gxbb";
+
+ fragment@0 {
+ target-path = "/";
+ __overlay__ {
+
+ w1: onewire@0 {
+ compatible = "w1-gpio";
+ pinctrl-names = "default";
+ gpios = <&gpio 91 6>; // GPIOY_16
+ status = "okay";
+ };
+ };
+ };
+};
diff --git a/arch/arm64/boot/dts/amlogic/overlay/meson-w1AB-gpio.dts b/arch/arm64/boot/dts/amlogic/overlay/meson-w1AB-gpio.dts
new file mode 100644
index 000000000000..f6b0d7eff158
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlay/meson-w1AB-gpio.dts
@@ -0,0 +1,32 @@
+// Definitions for w1-gpio module (without external pullup)
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "amlogic,meson-gxbb";
+
+ fragment@0 {
+ target-path = "/";
+ __overlay__ {
+
+ w1a: onewire@0 {
+ compatible = "w1-gpio";
+ pinctrl-names = "default";
+ gpios = <&gpio 91 6>; // GPIOY_16
+ status = "okay";
+ };
+ };
+ };
+ fragment@1 {
+ target-path = "/";
+ __overlay__ {
+
+ w1b: onewire@1 {
+ compatible = "w1-gpio";
+ pinctrl-names = "default";
+ gpios = <&gpio 90 6>; // GPIOY_15
+ status = "okay";
+ };
+ };
+ };
+};
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 41c50f9461e5..387659d5b252 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -79,6 +79,9 @@ header-test-y += $(filter-out $(header-test-), \
extra-$(CONFIG_HEADER_TEST) += $(addsuffix .s, $(header-test-y) $(header-test-m))
+# Overlay targets
+extra-y += $(dtbo-y) $(scr-y) $(dtbotxt-y)
+
# Add subdir path
extra-y := $(addprefix $(obj)/,$(extra-y))
--
2.20.1