PINE64
rock64, compile problems "illegal instruction", "memory fault" -> ddr_333Mhz? - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=85)
+--- Forum: General Discussion on ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=86)
+--- Thread: rock64, compile problems "illegal instruction", "memory fault" -> ddr_333Mhz? (/showthread.php?tid=7387)

Pages: 1 2


RE: rock64, compile problems "illegal instruction", "memory fault" -> ddr_333Mhz? - Johannes - 11-17-2020

(06-22-2019, 12:36 PM)redfish Wrote: Thank you for this thread. Changing the boot image to 333Mhz fixed the "internal compiler error" that was sporadically happening when building software in parallel. This is on Rock64 ver2.

For Arch Linux ARM (boots from SD card, not eMMC), this is the concrete steps:


Get the original image:



Code:
wget http://os.archlinuxarm.org/os/rockchip/boot/rock64/idbloader.img


md5sum idbloader.img
a903e86cc8fa81ae0f0e79915c7dc758  idbloader.img

This image contains rk3328_ddr_786MHz v1.06 and rk3328_miniloader v2.43 and one other image at the front, which I couldn't identify. Next, replace both the ddr init image (to change frequency to 333MHz and to update to latest version) and the miniloader (just to update to latest).

Download these files from ayufan Github: https://github.com/ayufan-rock64/rkbin/tree/master/rk33
a3e3ac380f794d50b06bbd76258b982d  rk3328_ddr_333MHz_v1.13.bin
79bfbe6ba1cde99372685a4be273994b  rk3328_miniloader_v2.46.bin


Replace the subimages in the image:


Code:
dd if=rk3328_ddr_333MHz_v1.13.bin seek=$((0x800)) conv=notrunc of=idbloader.img
dd if=rk3328_miniloader_v2.46.bin seek=$((0x6800)) conv=notrunc of=idbloader.img


Write the modified image to SD card (replace X with your device name):

Code:
 sudo dd if=idbloader.img of=/dev/sdX seek=64 conv=notrunc


Hi, I used a similar file which works on my rock64 v2 board rk3328_ddr_400MHz_v1.16.bin 
ejolson fond this on https://github.com/rockchip-linux/rkbin/tree/master/bin/rk33 
My rock64 is rock-solid now.

My question is about the offsets (3 seeks) you mention for the dd commands. How did you determine that?

Regards,
Johannes