On Thu, Jan 13, 2022 at 05:02:05PM +0800, Kevin Lo wrote: > The PINE H64 ver. B is a minor revision of the original H64. > I copied the device tree from the Linux kernel. > > dmesg: http://ix.io/3M3r > > ok?
ok on the atf change To make u-boot less of a mess the model b device tree selection should be done with the existing h64 target not a new one. A related patch series to yours https://lists.denx.de/pipermail/u-boot/2021-December/469475.html though this was not merged upstream In case you missed it I am no longer maintainer on the u-boot port. > > Index: sysutils/arm-trusted-firmware/Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/arm-trusted-firmware/Makefile,v > retrieving revision 1.16 > diff -u -p -u -p -r1.16 Makefile > --- sysutils/arm-trusted-firmware/Makefile 18 Jun 2021 09:17:28 -0000 > 1.16 > +++ sysutils/arm-trusted-firmware/Makefile 13 Jan 2022 08:54:30 -0000 > @@ -9,6 +9,7 @@ GH_PROJECT= arm-trusted-firmware > GH_TAGNAME= v2.5 > > EPOCH= 0 > +REVISION= 0 > > CATEGORIES= sysutils > > @@ -32,7 +33,8 @@ CFLAGS= > PLATFORMS=\ > rk3328 \ > rk3399 \ > - sun50i_a64 > + sun50i_a64 \ > + sun50i_h6 > > do-build: > .for P in ${PLATFORMS} > @@ -49,5 +51,7 @@ do-install: > ${PREFIX}/share/arm-trusted-firmware/rk3399-bl31.elf > ${INSTALL_DATA} ${WRKBUILD}/build/sun50i_a64/debug/bl31.bin \ > ${PREFIX}/share/arm-trusted-firmware/sun50i_a64-bl31.bin > + ${INSTALL_DATA} ${WRKBUILD}/build/sun50i_h6/debug/bl31.bin \ > + ${PREFIX}/share/arm-trusted-firmware/sun50i_h6-bl31.bin > > .include <bsd.port.mk> > Index: sysutils/arm-trusted-firmware/pkg/PLIST > =================================================================== > RCS file: /cvs/ports/sysutils/arm-trusted-firmware/pkg/PLIST,v > retrieving revision 1.4 > diff -u -p -u -p -r1.4 PLIST > --- sysutils/arm-trusted-firmware/pkg/PLIST 27 Sep 2019 15:43:29 -0000 > 1.4 > +++ sysutils/arm-trusted-firmware/pkg/PLIST 13 Jan 2022 08:54:30 -0000 > @@ -4,3 +4,4 @@ share/arm-trusted-firmware/ > share/arm-trusted-firmware/rk3328-bl31.elf > share/arm-trusted-firmware/rk3399-bl31.elf > share/arm-trusted-firmware/sun50i_a64-bl31.bin > +share/arm-trusted-firmware/sun50i_h6-bl31.bin > Index: sysutils/u-boot/Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/Makefile,v > retrieving revision 1.89 > diff -u -p -u -p -r1.89 Makefile > --- sysutils/u-boot/Makefile 17 Dec 2021 23:00:41 -0000 1.89 > +++ sysutils/u-boot/Makefile 13 Jan 2022 08:54:31 -0000 > @@ -8,7 +8,7 @@ FLAVOR?= arm > > COMMENT= U-Boot firmware > VERSION= 2021.10 > -REVISION= 2 > +REVISION= 3 > DISTNAME= u-boot-${VERSION} > PKGNAME= u-boot-${FLAVOR}-${VERSION:S/-//} > FULLPKGNAME= ${PKGNAME} > @@ -44,6 +44,7 @@ MAKE_ENV+= CROSS_COMPILE="aarch64-none-e > RK3328_BL31= "${LOCALBASE}/share/arm-trusted-firmware/rk3328-bl31.elf" > RK3399_BL31= "${LOCALBASE}/share/arm-trusted-firmware/rk3399-bl31.elf" > SUNXI_BL31= "${LOCALBASE}/share/arm-trusted-firmware/sun50i_a64-bl31.bin" > +SUNXI_H6_BL31= > "${LOCALBASE}/share/arm-trusted-firmware/sun50i_h6-bl31.bin" > .elif "${FLAVOR}" == "arm" > BUILD_DEPENDS+= devel/arm-none-eabi/gcc-linaro>=7.4.2019.02 > MAKE_ENV+= CROSS_COMPILE="arm-none-eabi-" > @@ -69,6 +70,7 @@ SUNXI64=\ > orangepi_zero_plus \ > pine64-lts \ > pine64_plus \ > + pine_h64-model-b \ > pinebook \ > sopine_baseboard > BOARDS=\ > @@ -203,6 +205,16 @@ do-build: > .endif > .endfor > .for BOARD in ${SUNXI64} > +.if "${BOARD:M*_h64*}" > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} BL31=${SUNXI_H6_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig && \ > + ${SETENV} ${MAKE_ENV} BL31=${SUNXI_H6_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.else > cd ${WRKSRC} && \ > mkdir -p build/${BOARD} && \ > ${SETENV} ${MAKE_ENV} BL31=${SUNXI_BL31} ${MAKE_PROGRAM} \ > @@ -211,6 +223,7 @@ do-build: > ${SETENV} ${MAKE_ENV} BL31=${SUNXI_BL31} ${MAKE_PROGRAM} \ > ${MAKE_FLAGS} O="build/${BOARD}" \ > -f ${MAKE_FILE} ${ALL_TARGET} > +.endif > if [[ -f ${WRKSRC}/build/${BOARD}/spl/sunxi-spl.bin && \ > -f ${WRKSRC}/build/${BOARD}/u-boot.itb ]]; then \ > cd ${WRKSRC}/build/${BOARD} && \ > Index: sysutils/u-boot/patches/patch-arch_arm_dts_Makefile > =================================================================== > RCS file: sysutils/u-boot/patches/patch-arch_arm_dts_Makefile > diff -N sysutils/u-boot/patches/patch-arch_arm_dts_Makefile > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ sysutils/u-boot/patches/patch-arch_arm_dts_Makefile 13 Jan 2022 > 08:54:31 -0000 > @@ -0,0 +1,13 @@ > +$OpenBSD$ > + > +Index: arch/arm/dts/Makefile > +--- arch/arm/dts/Makefile.orig > ++++ arch/arm/dts/Makefile > +@@ -642,6 +642,7 @@ dtb-$(CONFIG_MACH_SUN50I_H6) += \ > + sun50i-h6-orangepi-lite2.dtb \ > + sun50i-h6-orangepi-one-plus.dtb \ > + sun50i-h6-pine-h64.dtb \ > ++ sun50i-h6-pine-h64-model-b.dtb \ > + sun50i-h6-tanix-tx6.dtb > + dtb-$(CONFIG_MACH_SUN50I_H616) += \ > + sun50i-h616-orangepi-zero2.dtb > Index: > sysutils/u-boot/patches/patch-arch_arm_dts_sun50i-h6-pine-h64-model-b_dts > =================================================================== > RCS file: > sysutils/u-boot/patches/patch-arch_arm_dts_sun50i-h6-pine-h64-model-b_dts > diff -N > sysutils/u-boot/patches/patch-arch_arm_dts_sun50i-h6-pine-h64-model-b_dts > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ sysutils/u-boot/patches/patch-arch_arm_dts_sun50i-h6-pine-h64-model-b_dts > 13 Jan 2022 08:54:31 -0000 > @@ -0,0 +1,57 @@ > +$OpenBSD$ > + > +Index: arch/arm/dts/sun50i-h6-pine-h64-model-b.dts > +--- arch/arm/dts/sun50i-h6-pine-h64-model-b.dts.orig > ++++ arch/arm/dts/sun50i-h6-pine-h64-model-b.dts > +@@ -0,0 +1,51 @@ > ++// SPDX-License-Identifier: (GPL-2.0+ or MIT) > ++/* > ++ * Copyright (C) 2019 Corentin LABBE <cla...@baylibre.com> > ++ */ > ++ > ++#include "sun50i-h6-pine-h64.dts" > ++ > ++/ { > ++ model = "Pine H64 model B"; > ++ compatible = "pine64,pine-h64-model-b", "allwinner,sun50i-h6"; > ++ > ++ /delete-node/ reg_gmac_3v3; > ++ > ++ wifi_pwrseq: wifi_pwrseq { > ++ compatible = "mmc-pwrseq-simple"; > ++ reset-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; /* PM3 */ > ++ post-power-on-delay-ms = <200>; > ++ }; > ++}; > ++ > ++&hdmi_connector { > ++ /delete-property/ ddc-en-gpios; > ++}; > ++ > ++&emac { > ++ phy-supply = <®_aldo2>; > ++}; > ++ > ++&mmc1 { > ++ vmmc-supply = <®_cldo3>; > ++ vqmmc-supply = <®_aldo1>; > ++ mmc-pwrseq = <&wifi_pwrseq>; > ++ bus-width = <4>; > ++ non-removable; > ++ status = "okay"; > ++}; > ++ > ++&uart1 { > ++ pinctrl-names = "default"; > ++ pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; > ++ uart-has-rtscts; > ++ status = "okay"; > ++ > ++ bluetooth { > ++ compatible = "realtek,rtl8723bs-bt"; > ++ device-wake-gpios = <&r_pio 1 2 GPIO_ACTIVE_HIGH>; /* PM2 */ > ++ host-wake-gpios = <&r_pio 1 1 GPIO_ACTIVE_HIGH>; /* PM1 */ > ++ enable-gpios = <&r_pio 1 4 GPIO_ACTIVE_HIGH>; /* PM4 */ > ++ max-speed = <1500000>; > ++ }; > ++}; > Index: sysutils/u-boot/patches/patch-configs_pine_h64-model-b_defconfig > =================================================================== > RCS file: sysutils/u-boot/patches/patch-configs_pine_h64-model-b_defconfig > diff -N sysutils/u-boot/patches/patch-configs_pine_h64-model-b_defconfig > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ sysutils/u-boot/patches/patch-configs_pine_h64-model-b_defconfig 13 Jan > 2022 08:54:31 -0000 > @@ -0,0 +1,27 @@ > +$OpenBSD$ > + > +Index: configs/pine_h64-model-b_defconfig > +--- configs/pine_h64-model-b_defconfig.orig > ++++ configs/pine_h64-model-b_defconfig > +@@ -0,0 +1,21 @@ > ++CONFIG_ARM=y > ++CONFIG_ARCH_SUNXI=y > ++CONFIG_DEFAULT_DEVICE_TREE="sun50i-h6-pine-h64-model-b" > ++CONFIG_SPL=y > ++CONFIG_MACH_SUN50I_H6=y > ++CONFIG_SUNXI_DRAM_H6_LPDDR3=y > ++CONFIG_MACPWR="PC16" > ++CONFIG_MMC0_CD_PIN="PF6" > ++CONFIG_MMC_SUNXI_SLOT_EXTRA=2 > ++CONFIG_USB3_VBUS_PIN="PL5" > ++CONFIG_SPL_SPI_SUNXI=y > ++# CONFIG_PSCI_RESET is not set > ++# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set > ++CONFIG_SUN8I_EMAC=y > ++CONFIG_PHY_SUN50I_USB3=y > ++CONFIG_USB_XHCI_HCD=y > ++CONFIG_USB_XHCI_DWC3=y > ++CONFIG_USB_EHCI_HCD=y > ++CONFIG_USB_OHCI_HCD=y > ++CONFIG_USB_DWC3=y > ++# CONFIG_USB_DWC3_GADGET is not set > Index: sysutils/u-boot/pkg/PFRAG.aarch64 > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/pkg/PFRAG.aarch64,v > retrieving revision 1.26 > diff -u -p -u -p -r1.26 PFRAG.aarch64 > --- sysutils/u-boot/pkg/PFRAG.aarch64 29 Oct 2021 11:14:46 -0000 1.26 > +++ sysutils/u-boot/pkg/PFRAG.aarch64 13 Jan 2022 08:54:31 -0000 > @@ -117,6 +117,13 @@ share/u-boot/pine64_plus/sunxi-spl.bin > share/u-boot/pine64_plus/u-boot-sunxi-with-spl.bin > @comment share/u-boot/pine64_plus/u-boot.bin > @comment share/u-boot/pine64_plus/u-boot.img > +share/u-boot/pine_h64-model-b/ > +share/u-boot/pine_h64-model-b/sunxi-spl.bin > +@comment share/u-boot/pine_h64-model-b/u-boot > +@comment share/u-boot/pine_h64-model-b/u-boot-spl.bin > +share/u-boot/pine_h64-model-b/u-boot-sunxi-with-spl.bin > +@comment share/u-boot/pine_h64-model-b/u-boot.bin > +@comment share/u-boot/pine_h64-model-b/u-boot.img > share/u-boot/pinebook-pro-rk3399/ > share/u-boot/pinebook-pro-rk3399/idbloader.img > @comment share/u-boot/pinebook-pro-rk3399/u-boot > >