mirror of
https://github.com/Fishwaldo/build.git
synced 2025-06-05 05:41:43 +00:00
Rename, split and improve H3 DT overlays
Fix OPi Zero DT Improve DT loading reliability
This commit is contained in:
parent
33732029a6
commit
bacf567104
4 changed files with 175 additions and 165 deletions
|
@ -3,8 +3,9 @@
|
|||
# Please edit /boot/armbianEnv.txt to set supported parameters
|
||||
#
|
||||
|
||||
# default values
|
||||
setenv load_addr "0x44000000"
|
||||
setenv overlay_error "false"
|
||||
# default values
|
||||
setenv rootdev "/dev/mmcblk0p1"
|
||||
setenv verbosity "1"
|
||||
setenv console "both"
|
||||
|
@ -44,9 +45,13 @@ if load ${devtype} 0 0x00000000 /boot/.next || load ${devtype} 0 0x00000000 .nex
|
|||
for overlay_file in ${overlays}; do
|
||||
if load ${devtype} 0 ${load_addr} boot/dtb/overlay/${overlay_file}.dtbo || load ${devtype} 0 ${load_addr} dtb/overlay/${overlay_file}.dtbo; then
|
||||
echo "Applying DT overlay ${overlay_file}.dtbo"
|
||||
fdt apply ${load_addr}
|
||||
fdt apply ${load_addr} || setenv overlay_error "true"
|
||||
fi
|
||||
done
|
||||
if test "${overlay_error}" = "true"; then
|
||||
echo "Error applying DT overlays, restoring original DT"
|
||||
load ${devtype} 0 ${fdt_addr_r} /boot/dtb/${fdtfile} || load ${devtype} 0 ${fdt_addr_r} /dtb/${fdtfile}
|
||||
fi
|
||||
bootz ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}
|
||||
else
|
||||
load ${devtype} 0 ${fdt_addr_r} /boot/script.bin || load ${devtype} 0 ${fdt_addr_r} script.bin
|
||||
|
|
|
@ -1,69 +1,24 @@
|
|||
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
|
||||
index ab30cc63..cc176797 100644
|
||||
--- a/arch/arm/Makefile
|
||||
+++ b/arch/arm/Makefile
|
||||
@@ -339,6 +339,9 @@ $(INSTALL_TARGETS):
|
||||
%.dtb: | scripts
|
||||
$(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@
|
||||
|
||||
+%.dtbo: | scripts
|
||||
+ $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@
|
||||
+
|
||||
PHONY += dtbs dtbs_install
|
||||
|
||||
dtbs: prepare scripts
|
||||
diff --git a/arch/arm/boot/.gitignore b/arch/arm/boot/.gitignore
|
||||
index 3c79f859..eaaeb17e 100644
|
||||
--- a/arch/arm/boot/.gitignore
|
||||
+++ b/arch/arm/boot/.gitignore
|
||||
@@ -3,4 +3,4 @@ zImage
|
||||
xipImage
|
||||
bootpImage
|
||||
uImage
|
||||
-*.dtb
|
||||
+*.dtb*
|
||||
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
|
||||
index 01d178a2..48e5a5f5 100644
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -984,10 +984,16 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
|
||||
dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
|
||||
dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc-opp-palmetto.dtb \
|
||||
aspeed-ast2500-evb.dtb
|
||||
+
|
||||
+targets += dtbs dtbs_install
|
||||
+targets += $(dtb-y)
|
||||
endif
|
||||
|
||||
dtstree := $(srctree)/$(src)
|
||||
dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
|
||||
|
||||
always := $(dtb-y)
|
||||
+subdir-y := overlay
|
||||
clean-files := *.dtb
|
||||
+
|
||||
+dts-dirs += overlay
|
||||
diff --git a/arch/arm/boot/dts/overlay/Makefile b/arch/arm/boot/dts/overlay/Makefile
|
||||
new file mode 100644
|
||||
index 00000000..5153998d
|
||||
index 00000000..3047c5a6
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/Makefile
|
||||
@@ -0,0 +1,23 @@
|
||||
+ifeq ($(CONFIG_OF_CONFIGFS),y)
|
||||
+
|
||||
+dtbo-$(CONFIG_MACH_SUN8I) += \
|
||||
+ analog-codec.dtbo \
|
||||
+ crypto.dtbo \
|
||||
+ i2c0.dtbo \
|
||||
+ spi0-spidev.dtbo \
|
||||
+ spi1-spidev.dtbo \
|
||||
+ uart1.dtbo \
|
||||
+ uart2.dtbo \
|
||||
+ uart3.dtbo \
|
||||
+ usbhost0.dtbo \
|
||||
+ usbhost2.dtbo \
|
||||
+ usbhost3.dtbo \
|
||||
+ w1.dtbo
|
||||
+ sun8i-h3-analog-codec.dtbo \
|
||||
+ sun8i-h3-crypto.dtbo \
|
||||
+ sun8i-h3-i2c0.dtbo \
|
||||
+ sun8i-h3-spi0-spidev.dtbo \
|
||||
+ sun8i-h3-spi1-spidev.dtbo \
|
||||
+ sun8i-h3-uart1.dtbo \
|
||||
+ sun8i-h3-uart2.dtbo \
|
||||
+ sun8i-h3-uart3.dtbo \
|
||||
+ sun8i-h3-usbhost0.dtbo \
|
||||
+ sun8i-h3-usbhost2.dtbo \
|
||||
+ sun8i-h3-usbhost3.dtbo \
|
||||
+ sun8i-h3-w1.dtbo
|
||||
+
|
||||
+targets += dtbs dtbs_install
|
||||
+targets += $(dtbo-y)
|
||||
|
@ -72,11 +27,11 @@ index 00000000..5153998d
|
|||
+
|
||||
+always := $(dtbo-y)
|
||||
+clean-files := *.dtbo
|
||||
diff --git a/arch/arm/boot/dts/overlay/analog-codec.dts b/arch/arm/boot/dts/overlay/analog-codec.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-analog-codec.dts b/arch/arm/boot/dts/overlay/sun8i-h3-analog-codec.dts
|
||||
new file mode 100644
|
||||
index 00000000..c788c3f0
|
||||
index 00000000..ddcd8e84
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/analog-codec.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-analog-codec.dts
|
||||
@@ -0,0 +1,16 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -94,11 +49,11 @@ index 00000000..c788c3f0
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/crypto.dts b/arch/arm/boot/dts/overlay/crypto.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-crypto.dts b/arch/arm/boot/dts/overlay/sun8i-h3-crypto.dts
|
||||
new file mode 100644
|
||||
index 00000000..6b9ea6b8
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/crypto.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-crypto.dts
|
||||
@@ -0,0 +1,12 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -112,12 +67,12 @@ index 00000000..6b9ea6b8
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/i2c0.dts b/arch/arm/boot/dts/overlay/i2c0.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-i2c0.dts b/arch/arm/boot/dts/overlay/sun8i-h3-i2c0.dts
|
||||
new file mode 100644
|
||||
index 00000000..f7436137
|
||||
index 00000000..f6d287ec
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/i2c0.dts
|
||||
@@ -0,0 +1,19 @@
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-i2c0.dts
|
||||
@@ -0,0 +1,18 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
+/ {
|
||||
|
@ -126,8 +81,7 @@ index 00000000..f7436137
|
|||
+ fragment@0 {
|
||||
+ target-path = "/aliases";
|
||||
+ __overlay__ {
|
||||
+ /* Path to the i2c0 controller node */
|
||||
+ i2c0 = "/soc@01c00000/i2c@01c2ac00";
|
||||
+ i2c0 = "/soc/i2c@01c2ac00";
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
|
@ -137,12 +91,12 @@ index 00000000..f7436137
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/spi0-spidev.dts b/arch/arm/boot/dts/overlay/spi0-spidev.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-spi0-spidev.dts b/arch/arm/boot/dts/overlay/sun8i-h3-spi0-spidev.dts
|
||||
new file mode 100644
|
||||
index 00000000..2216a4da
|
||||
index 00000000..dd8ec87a
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/spi0-spidev.dts
|
||||
@@ -0,0 +1,26 @@
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-spi0-spidev.dts
|
||||
@@ -0,0 +1,25 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
+/ {
|
||||
|
@ -151,16 +105,15 @@ index 00000000..2216a4da
|
|||
+ fragment@0 {
|
||||
+ target-path = "/aliases";
|
||||
+ __overlay__ {
|
||||
+ /* Path to the SPI controller nodes */
|
||||
+ spi0 = "/soc@01c00000/spi@01c68000";
|
||||
+ spi0 = "/soc/spi@01c68000";
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
+ target = <&spi0>;
|
||||
+ __overlay__ {
|
||||
+ status = "okay";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ status = "okay";
|
||||
+ spidev@0 {
|
||||
+ compatible = "spidev";
|
||||
+ reg = <0>;
|
||||
|
@ -169,12 +122,12 @@ index 00000000..2216a4da
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/spi1-spidev.dts b/arch/arm/boot/dts/overlay/spi1-spidev.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-spi1-spidev.dts b/arch/arm/boot/dts/overlay/sun8i-h3-spi1-spidev.dts
|
||||
new file mode 100644
|
||||
index 00000000..671aaffd
|
||||
index 00000000..65ace688
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/spi1-spidev.dts
|
||||
@@ -0,0 +1,26 @@
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-spi1-spidev.dts
|
||||
@@ -0,0 +1,25 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
+/ {
|
||||
|
@ -183,16 +136,15 @@ index 00000000..671aaffd
|
|||
+ fragment@0 {
|
||||
+ target-path = "/aliases";
|
||||
+ __overlay__ {
|
||||
+ /* Path to the SPI controller nodes */
|
||||
+ spi1 = "/soc@01c00000/spi@01c69000";
|
||||
+ spi1 = "/soc/spi@01c69000";
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
+ target = <&spi1>;
|
||||
+ __overlay__ {
|
||||
+ status = "okay";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ status = "okay";
|
||||
+ spidev@0 {
|
||||
+ compatible = "spidev";
|
||||
+ reg = <0>;
|
||||
|
@ -201,11 +153,11 @@ index 00000000..671aaffd
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/uart1.dts b/arch/arm/boot/dts/overlay/uart1.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-uart1.dts b/arch/arm/boot/dts/overlay/sun8i-h3-uart1.dts
|
||||
new file mode 100644
|
||||
index 00000000..cd39f21a
|
||||
index 00000000..00084c0c
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/uart1.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-uart1.dts
|
||||
@@ -0,0 +1,20 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -215,7 +167,7 @@ index 00000000..cd39f21a
|
|||
+ fragment@0 {
|
||||
+ target-path = "/aliases";
|
||||
+ __overlay__ {
|
||||
+ uart1 = "/soc@01c00000/serial@01c28400";
|
||||
+ serial1 = "/soc/serial@01c28400";
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
|
@ -227,11 +179,11 @@ index 00000000..cd39f21a
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/uart2.dts b/arch/arm/boot/dts/overlay/uart2.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-uart2.dts b/arch/arm/boot/dts/overlay/sun8i-h3-uart2.dts
|
||||
new file mode 100644
|
||||
index 00000000..9a7b3d8e
|
||||
index 00000000..eb9aa917
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/uart2.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-uart2.dts
|
||||
@@ -0,0 +1,20 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -241,7 +193,7 @@ index 00000000..9a7b3d8e
|
|||
+ fragment@0 {
|
||||
+ target-path = "/aliases";
|
||||
+ __overlay__ {
|
||||
+ uart2 = "/soc@01c00000/serial@01c28800";
|
||||
+ serial2 = "/soc/serial@01c28800";
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
|
@ -253,11 +205,11 @@ index 00000000..9a7b3d8e
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/uart3.dts b/arch/arm/boot/dts/overlay/uart3.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-uart3.dts b/arch/arm/boot/dts/overlay/sun8i-h3-uart3.dts
|
||||
new file mode 100644
|
||||
index 00000000..b780e7f6
|
||||
index 00000000..f93fd205
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/uart3.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-uart3.dts
|
||||
@@ -0,0 +1,20 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -267,7 +219,7 @@ index 00000000..b780e7f6
|
|||
+ fragment@0 {
|
||||
+ target-path = "/aliases";
|
||||
+ __overlay__ {
|
||||
+ uart3 = "/soc@01c00000/serial@01c28c00";
|
||||
+ serial3 = "/soc/serial@01c28c00";
|
||||
+ };
|
||||
+ };
|
||||
+ fragment@1 {
|
||||
|
@ -279,11 +231,11 @@ index 00000000..b780e7f6
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/usbhost0.dts b/arch/arm/boot/dts/overlay/usbhost0.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost0.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost0.dts
|
||||
new file mode 100644
|
||||
index 00000000..6b1b85f0
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/usbhost0.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost0.dts
|
||||
@@ -0,0 +1,18 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -303,11 +255,11 @@ index 00000000..6b1b85f0
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/usbhost2.dts b/arch/arm/boot/dts/overlay/usbhost2.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost2.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost2.dts
|
||||
new file mode 100644
|
||||
index 00000000..385811a7
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/usbhost2.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost2.dts
|
||||
@@ -0,0 +1,18 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -327,11 +279,11 @@ index 00000000..385811a7
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/usbhost3.dts b/arch/arm/boot/dts/overlay/usbhost3.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-usbhost3.dts b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost3.dts
|
||||
new file mode 100644
|
||||
index 00000000..dd1f7601
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/usbhost3.dts
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-usbhost3.dts
|
||||
@@ -0,0 +1,18 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
|
@ -351,12 +303,12 @@ index 00000000..dd1f7601
|
|||
+ };
|
||||
+ };
|
||||
+};
|
||||
diff --git a/arch/arm/boot/dts/overlay/w1.dts b/arch/arm/boot/dts/overlay/w1.dts
|
||||
diff --git a/arch/arm/boot/dts/overlay/sun8i-h3-w1.dts b/arch/arm/boot/dts/overlay/sun8i-h3-w1.dts
|
||||
new file mode 100644
|
||||
index 00000000..faf3650e
|
||||
index 00000000..afd60dde
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/overlay/w1.dts
|
||||
@@ -0,0 +1,35 @@
|
||||
+++ b/arch/arm/boot/dts/overlay/sun8i-h3-w1.dts
|
||||
@@ -0,0 +1,34 @@
|
||||
+/dts-v1/ /plugin/;
|
||||
+
|
||||
+/ {
|
||||
|
@ -365,7 +317,6 @@ index 00000000..faf3650e
|
|||
+ fragment@0 {
|
||||
+ target-path = "/";
|
||||
+ __overlay__ {
|
||||
+
|
||||
+ w1: onewire@0 {
|
||||
+ compatible = "w1-gpio";
|
||||
+ pinctrl-names = "default";
|
||||
|
@ -392,59 +343,3 @@ index 00000000..faf3650e
|
|||
+ <&w1_pins>,"allwinner,pins:0";
|
||||
+ };
|
||||
+};
|
||||
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
|
||||
index a1be75d0..ad8dc1c9 100644
|
||||
--- a/scripts/Makefile.dtbinst
|
||||
+++ b/scripts/Makefile.dtbinst
|
||||
@@ -27,6 +27,7 @@ ifeq ("$(dtbinst-root)", "$(obj)")
|
||||
endif
|
||||
|
||||
dtbinst-files := $(dtb-y)
|
||||
+dtboinst-files := $(dtbo-y)
|
||||
dtbinst-dirs := $(dts-dirs)
|
||||
|
||||
# Helper targets for Installing DTBs into the boot directory
|
||||
@@ -35,15 +36,18 @@ quiet_cmd_dtb_install = INSTALL $<
|
||||
|
||||
install-dir = $(patsubst $(dtbinst-root)%,$(INSTALL_DTBS_PATH)%,$(obj))
|
||||
|
||||
-$(dtbinst-files) $(dtbinst-dirs): | __dtbs_install_prep
|
||||
+$(dtbinst-files) $(dtboinst-files) $(dtbinst-dirs): | __dtbs_install_prep
|
||||
|
||||
$(dtbinst-files): %.dtb: $(obj)/%.dtb
|
||||
$(call cmd,dtb_install,$(install-dir))
|
||||
|
||||
+$(dtboinst-files): %.dtbo: $(obj)/%.dtbo
|
||||
+ $(call cmd,dtb_install,$(install-dir))
|
||||
+
|
||||
$(dtbinst-dirs):
|
||||
$(Q)$(MAKE) $(dtbinst)=$(obj)/$@
|
||||
|
||||
-PHONY += $(dtbinst-files) $(dtbinst-dirs)
|
||||
-__dtbs_install: $(dtbinst-files) $(dtbinst-dirs)
|
||||
+PHONY += $(dtbinst-files) $(dtboinst-files) $(dtbinst-dirs)
|
||||
+__dtbs_install: $(dtbinst-files) $(dtboinst-files) $(dtbinst-dirs)
|
||||
|
||||
.PHONY: $(PHONY)
|
||||
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
|
||||
index 0a07f901..5ccd3490 100644
|
||||
--- a/scripts/Makefile.lib
|
||||
+++ b/scripts/Makefile.lib
|
||||
@@ -312,6 +312,17 @@ cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
|
||||
$(obj)/%.dtb: $(src)/%.dts FORCE
|
||||
$(call if_changed_dep,dtc)
|
||||
|
||||
+quiet_cmd_dtco = DTCO $@
|
||||
+cmd_dtco = mkdir -p $(dir ${dtc-tmp}) ; \
|
||||
+ $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
|
||||
+ $(DTC) -O dtb -o $@ -b 0 \
|
||||
+ -i $(dir $<) $(DTC_FLAGS) \
|
||||
+ -d $(depfile).dtc.tmp $(dtc-tmp) ; \
|
||||
+ cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)
|
||||
+
|
||||
+$(obj)/%.dtbo: $(src)/%.dts FORCE
|
||||
+ $(call if_changed_dep,dtco)
|
||||
+
|
||||
dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
||||
|
||||
# Bzip2
|
||||
|
|
|
@ -15,7 +15,7 @@ new file mode 100644
|
|||
index 00000000..98a44240
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/sun8i-h2plus-orangepi-zero.dts
|
||||
@@ -0,0 +1,97 @@
|
||||
@@ -0,0 +1,106 @@
|
||||
+
|
||||
+#include "sun8i-h3-orangepi-one.dts"
|
||||
+
|
||||
|
@ -27,6 +27,13 @@ index 00000000..98a44240
|
|||
+ ethernet1 = &xr819wifi;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&leds_r_opc>;
|
||||
+
|
||||
+ /delete-node/ status_led;
|
||||
+ };
|
||||
+
|
||||
+ vdd_wifi: vdd_wifi@0 {
|
||||
+ compatible = "regulator-fixed";
|
||||
+ regulator-name = "wifi";
|
||||
|
@ -69,6 +76,8 @@ index 00000000..98a44240
|
|||
+};
|
||||
+
|
||||
+&pio {
|
||||
+ /delete-node/ leds_opc;
|
||||
+
|
||||
+ wifi_wake: wifi_wake@0 {
|
||||
+ allwinner,pins = "PG10";
|
||||
+ allwinner,function = "irq";
|
||||
|
|
101
patch/kernel/sun8i-dev/add-overlay-compilation-support.patch
Normal file
101
patch/kernel/sun8i-dev/add-overlay-compilation-support.patch
Normal file
|
@ -0,0 +1,101 @@
|
|||
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
|
||||
index ab30cc63..cc176797 100644
|
||||
--- a/arch/arm/Makefile
|
||||
+++ b/arch/arm/Makefile
|
||||
@@ -339,6 +339,9 @@ $(INSTALL_TARGETS):
|
||||
%.dtb: | scripts
|
||||
$(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@
|
||||
|
||||
+%.dtbo: | scripts
|
||||
+ $(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@
|
||||
+
|
||||
PHONY += dtbs dtbs_install
|
||||
|
||||
dtbs: prepare scripts
|
||||
diff --git a/arch/arm/boot/.gitignore b/arch/arm/boot/.gitignore
|
||||
index 3c79f859..eaaeb17e 100644
|
||||
--- a/arch/arm/boot/.gitignore
|
||||
+++ b/arch/arm/boot/.gitignore
|
||||
@@ -3,4 +3,4 @@ zImage
|
||||
xipImage
|
||||
bootpImage
|
||||
uImage
|
||||
-*.dtb
|
||||
+*.dtb*
|
||||
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
|
||||
index 01d178a2..48e5a5f5 100644
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -984,10 +984,16 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
|
||||
dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
|
||||
dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc-opp-palmetto.dtb \
|
||||
aspeed-ast2500-evb.dtb
|
||||
+
|
||||
+targets += dtbs dtbs_install
|
||||
+targets += $(dtb-y)
|
||||
endif
|
||||
|
||||
dtstree := $(srctree)/$(src)
|
||||
dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))
|
||||
|
||||
always := $(dtb-y)
|
||||
+subdir-y := overlay
|
||||
clean-files := *.dtb
|
||||
+
|
||||
+dts-dirs += overlay
|
||||
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
|
||||
index a1be75d0..ad8dc1c9 100644
|
||||
--- a/scripts/Makefile.dtbinst
|
||||
+++ b/scripts/Makefile.dtbinst
|
||||
@@ -27,6 +27,7 @@ ifeq ("$(dtbinst-root)", "$(obj)")
|
||||
endif
|
||||
|
||||
dtbinst-files := $(dtb-y)
|
||||
+dtboinst-files := $(dtbo-y)
|
||||
dtbinst-dirs := $(dts-dirs)
|
||||
|
||||
# Helper targets for Installing DTBs into the boot directory
|
||||
@@ -35,15 +36,18 @@ quiet_cmd_dtb_install = INSTALL $<
|
||||
|
||||
install-dir = $(patsubst $(dtbinst-root)%,$(INSTALL_DTBS_PATH)%,$(obj))
|
||||
|
||||
-$(dtbinst-files) $(dtbinst-dirs): | __dtbs_install_prep
|
||||
+$(dtbinst-files) $(dtboinst-files) $(dtbinst-dirs): | __dtbs_install_prep
|
||||
|
||||
$(dtbinst-files): %.dtb: $(obj)/%.dtb
|
||||
$(call cmd,dtb_install,$(install-dir))
|
||||
|
||||
+$(dtboinst-files): %.dtbo: $(obj)/%.dtbo
|
||||
+ $(call cmd,dtb_install,$(install-dir))
|
||||
+
|
||||
$(dtbinst-dirs):
|
||||
$(Q)$(MAKE) $(dtbinst)=$(obj)/$@
|
||||
|
||||
-PHONY += $(dtbinst-files) $(dtbinst-dirs)
|
||||
-__dtbs_install: $(dtbinst-files) $(dtbinst-dirs)
|
||||
+PHONY += $(dtbinst-files) $(dtboinst-files) $(dtbinst-dirs)
|
||||
+__dtbs_install: $(dtbinst-files) $(dtboinst-files) $(dtbinst-dirs)
|
||||
|
||||
.PHONY: $(PHONY)
|
||||
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
|
||||
index 0a07f901..5ccd3490 100644
|
||||
--- a/scripts/Makefile.lib
|
||||
+++ b/scripts/Makefile.lib
|
||||
@@ -312,6 +312,17 @@ cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
|
||||
$(obj)/%.dtb: $(src)/%.dts FORCE
|
||||
$(call if_changed_dep,dtc)
|
||||
|
||||
+quiet_cmd_dtco = DTCO $@
|
||||
+cmd_dtco = mkdir -p $(dir ${dtc-tmp}) ; \
|
||||
+ $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
|
||||
+ $(DTC) -O dtb -o $@ -b 0 \
|
||||
+ -i $(dir $<) $(DTC_FLAGS) \
|
||||
+ -d $(depfile).dtc.tmp $(dtc-tmp) ; \
|
||||
+ cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile)
|
||||
+
|
||||
+$(obj)/%.dtbo: $(src)/%.dts FORCE
|
||||
+ $(call if_changed_dep,dtco)
|
||||
+
|
||||
dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
||||
|
||||
# Bzip2
|
Loading…
Add table
Reference in a new issue