Date: Mon, 16 Sep 2019 22:06:01 +1200 From: mko <me@mko.io> To: John-Mark Gurney <jmg@funkthat.com> Cc: "freebsd-arm@freebsd.org" <freebsd-arm@FreeBSD.org> Subject: Re: RockPro64 booting w/ u-boot v2019-rc3 Message-ID: <EF2E4FC6-E490-47F0-9BA0-12B652980E94@mko.io> In-Reply-To: <20190916064640.GN96402@funkthat.com> References: <20190916064640.GN96402@funkthat.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi John, I=E2=80=99m also trying to make a RK3399 board work, in my case I=E2=80=99= m using the Rock Pi 4 which is raspberry pi form factor and much = cheaper.=20 For rockpro64, manu has already submit the uboot for it, it's = sysutils/u-boot-rockpro64, and I just make a trivial change to rock pi 4 = u-boot config, and it u-boot=E2=80=99s fine into multi-user mode, then = panic. Here=E2=80=99s the related bug report Bug 240541 - Generic kernel on Rock Pi 4 RK3399 board panic=20 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D240541 Bug 240538 - Rock Pi 4 runtime time error panic: = clknode_init_parent_idx: Invalid parent index 5 for clock sclk_sdmmc https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D240538 mko > On 16/09/2019, at 6:46 PM, John-Mark Gurney <jmg@funkthat.com> wrote: >=20 > I recently received my RockPro64, and w/ a bit of help from manu, I > built a new u-boot firmware and get it booting from SD card. The > u-boot port firmware will boot, but receives an Unhandled System Error > shortly after going to multiuser mode. >=20 > It doesn't yet set the PCIe slot. Is anyone working on this? If so, > can you point me to code? I'd like to get this working. >=20 > Building u-boot isn't hard, but finding the correct part to build took > some help. >=20 > Possibly imcomplete list of packages used: > aarch64-none-elf-binutils-2.32_1,1 GNU binutils for bare metal AArch64 = cross-development > aarch64-none-elf-gcc-6.4.0_6 Cross GNU Compiler Collection for = aarch64noneelf > atf-rk3399-v2.1 ARM TF-A for platform rk3399 > bison-3.4.1,1 Parser generator from FSF, (mostly) = compatible with Yacc > dtc-1.4.7 Device Tree Compiler > gmake-4.2.1_3 GNU version of 'make' utility > gsed-4.7 GNU stream editor > python3-3_3 The "meta-port" for version 3 of the = Python interpreter >=20 > The default sed fails at one point, so used this patch: > diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib > index ef116e0e0a..e0dedf8943 100644 > --- a/scripts/Makefile.lib > +++ b/scripts/Makefile.lib > @@ -302,7 +302,7 @@ cmd_dtc =3D mkdir -p $(dir ${dtc-tmp}) ; \ > -i $(dir $<) $(DTC_FLAGS) \ > -d $(depfile).dtc.tmp $(dtc-tmp) ; \ > cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile) ; \ > - sed -i "s:$(pre-tmp):$(<):" $(depfile) > + gsed -i "s:$(pre-tmp):$(<):" $(depfile) >=20 > $(obj)/%.dtb: $(src)/%.dts FORCE > $(call if_changed_dep,dtc) >=20 >=20 > There is also a failure on the config step, and needs this patch as > well: > diff --git a/scripts/config_whitelist.txt = b/scripts/config_whitelist.txt > index b18eab1707..3260c472b9 100644 > --- a/scripts/config_whitelist.txt > +++ b/scripts/config_whitelist.txt > @@ -3100,6 +3100,7 @@ CONFIG_SYS_MACB2_BASE > CONFIG_SYS_MACB3_BASE > CONFIG_SYS_MAIN_PWR_ON > CONFIG_SYS_MALLOC_BASE > +CONFIG_SYS_MALLOC_CLEAR_ON_INIT > CONFIG_SYS_MALLOC_SIMPLE > CONFIG_SYS_MAMR > CONFIG_SYS_MAPLE >=20 >=20 > And then built using the following commands: > export BL31=3D/usr/local/share/atf-rk3399/bl31.elf > gmake clean > gmake rockpro64-rk3399_defconfig > CROSS_COMPILE=3Daarch64-none-elf- gmake -j 4 >=20 > I may have forgotten to include some steps. After building, I > installed the parts via: > dd if=3Didbloader.img of=3D/dev/disk4 oseek=3D64 bs=3D512 > dd if=3Du-boot.itb of=3D/dev/disk4 oseek=3D16384 bs=3D512 >=20 > I used = FreeBSD-13.0-CURRENT-arm64-aarch64-20190906-r351901-memstick.img > as a base, but it has the UEFI boot partition in this area, so I used > mdconfig to extract the parts, and then expanded the image, created a > new freebsd-boot partition to cover the space for the above, and then > replaced the images... >=20 > =3D> 3 2111549 mmcsd0 GPT (30G) [CORRUPT] > 3 32765 2 freebsd-boot (16M) > 32768 67584 1 efi (33M) > 100352 2011200 3 freebsd (982M) >=20 > The corrupt tag is because I haven't expanded the gpt to cover the > full SD card yet. >=20 > --=20 > John-Mark Gurney Voice: +1 415 225 5579 >=20 > "All that I will do, has been done, All that I have, has not." > _______________________________________________ > freebsd-arm@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EF2E4FC6-E490-47F0-9BA0-12B652980E94>