Jump to content

Recommended Posts

Posted (edited)

Preexisting builds of Armbian won't run on my X96Q TV box because mine uses DDR3 instead of LPDDR3.

 

U-Boot SPL 2024.01_armbian-2024.01-S866c-P4a40-H8869-Vad24-Bbf55-R448a (Nov 15 2025 - 02:36:36 +0000)
This DRAM setup is currently not supported.


How do I change the DRAM (and possibly other) configuration U-Boot is built with?

 

I'll be quite frank: Quite annoyed by this whole process. The build process for both Armbian and U-Boot has exhausted my patience and I'm very much not in the mood for digging through (often hard to find) documentation. (Like why is there no standard for adding a board?)

 

Here's the UART boot log of the device:x96q_boot_log.cap

 

Oh and I almost forgot! The stock firmware! https://archive.org/details/x96q_h313_mmcblk0.img.7z

 

Something about extracting "device trees" or something? Honestly I couldn't locate the copy of u-boot in there, but I'm probably doing something wrong there. I'm sure someone WAY smarter then me in this stuff could probably figure it out.

Edited by qwerty keyboard
Add link to stock firmware.
Posted (edited)

@qwerty keyboard here are some links that will help you.


Find your Dram settings 

https://forum.armbian.com/topic/29794-how-to-install-armbian-in-h618/#findComment-218660

 

Find boot.bin and extract dts.

https://forum.armbian.com/topic/29794-how-to-install-armbian-in-h618/#findComment-187672

 

Uboot defconfig. I have two x96q builds with ddr3.

https://github.com/NickAlilovic/build/blob/v20250306/patch/u-boot/u-boot-h616/151-add-x96-q-ddr3-defconfig.patch

Or
https://github.com/NickAlilovic/build/blob/v20250306/patch/u-boot/u-boot-h616/163-add-x96-q-ddr3-v5.1-defconfig.patch

 

You can edit the patch and enter the new values. 
 

If you need to add a new line in the defconfig patch. At the bottom of the patch add your newline and put a "+" infront of it. Also, for x96q ddr3 increase @@ -0,0 +1,37 @@ to @@ -0,0 +1,38 @@ or for x96q ddr3 v5.1 @@ -0,0 +1,39 @@ to @@ -0,0 +1,40 @@.

 

Download and compile my build:

git clone https://github.com/NickAlilovic/build.git --branch v20250306

cd build

./compile.sh

choose "Do not change kernel configuration"

choose "Show CSC/WIP/EOS/TVB"

choose "I understand and agree"

choose "X96Q DDR3” or “X96Q DDR3 v5.1”

choose "edge"

rest is up to you.

Edited by Nick A
Posted

I don't have a "boot_a", just a regular "boot". Isn't that "_a"/"_b" thing just a redundancy thing on some android devices?

 

Also do I HAVE to use this "gradlew" program? Because it just errors out with some mystery "25.0.1" error code.

 

qwerty@cod-waw-grenade-spam:~/Documents/compiling/Android_boot_image_editor$ ./gradlew unpack ./bootload
er.img  
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::load has been called by net.rubygrapefruit.platform.internal.NativeLibraryLoa
der in an unnamed module (file:/home/qwerty/.gradle/wrapper/dists/gradle-8.14-bin/38aieal9i53h9rfe7vjup9
5b9/gradle-8.14/lib/native-platform-0.22-milestone-28.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled


FAILURE: Build failed with an exception.

* What went wrong:
25.0.1

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.

BUILD FAILED in 795ms

Why is this damn thing fighting me tooth and nail? Man I hate when this happens.

 

People mention how web browsers are bloated and slow. This is true, but people should also talk about command line utilities that are bloated and slow. (Why does it have to build stuff on first run?)

Posted

I can't seem to manage to extract the device tree because of garbage software stacks (Wtf is "gradle"? Doing everything in BrainF*ck as a joke would unironically be better) but I can atleast extract the DRAM settings!

 

Just running sunxi-fw against the whole firmware image did the trick!

 

@  16: boot0: Allwinner boot0
	size: 49152 bytes
	eGON checksum matches: 0xf6e7eb45
	DRAM parameters:           A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1f12      0x1f12
		PARA0       :           -           -         0x1
		PARA1       :      0x1f12      0x30fb      0x30fb
		PARA2       :         0x1   0x8000000   0x8000000
		MR0         :      0x30fb      0x1f14      0x1f14
		MR1         :   0x8000000         0x4         0x4
		MR2         :      0x1f14        0x20        0x20
		MR3         :         0x4           0           0
		TPR0        :        0x20  0xc0001002           0
		TPR1        :           0  0x80000000           0
		TPR2        :           0           0  0xc0001002
		TPR3        :           0           0  0x80000000
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f1107    0x2f1107
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0001002  0xeddc7665  0xeddc7665
		TPR13       :  0x80000000      0x6041      0x6041
	DRAM parameters 1:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1c12      0x1c12
		PARA0       :           -           -         0x1
		PARA1       :      0x1c12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0000a05           0
		TPR2        :           0           0  0xc0000a05
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f0006    0x2f0006
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0000a05  0xeddc7564  0xeddc7564
		TPR13       :           0        0x40        0x40
	DRAM parameters 2:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1c12      0x1c12
		PARA0       :           -           -         0x1
		PARA1       :      0x1c12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0000a05           0
		TPR2        :           0           0  0xc0000a05
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f0006    0x2f0006
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0000a05  0xeddc7564  0xeddc7564
		TPR13       :           0        0x40        0x40
	DRAM parameters 3:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1c12      0x1c12
		PARA0       :           -           -         0x1
		PARA1       :      0x1c12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0000a05           0
		TPR2        :           0           0  0xc0000a05
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f0006    0x2f0006
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0000a05  0xeddc7564  0xeddc7564
		TPR13       :           0        0x40        0x40
	DRAM parameters 4:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1c12      0x1c12
		PARA0       :           -           -         0x1
		PARA1       :      0x1c12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0000a05           0
		TPR2        :           0           0  0xc0000a05
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f0006    0x2f0006
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0000a05  0xeddc7564  0xeddc7564
		TPR13       :           0        0x40        0x40
	DRAM parameters 5:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1c12      0x1c12
		PARA0       :           -           -         0x1
		PARA1       :      0x1c12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0000a05           0
		TPR2        :           0           0  0xc0000a05
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f0006    0x2f0006
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0000a05  0xeddc7564  0xeddc7564
		TPR13       :           0        0x40        0x40
	DRAM parameters 6:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1c12      0x1c12
		PARA0       :           -           -         0x1
		PARA1       :      0x1c12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0000a05           0
		TPR2        :           0           0  0xc0000a05
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f0006    0x2f0006
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0000a05  0xeddc7564  0xeddc7564
		TPR13       :           0        0x40        0x40
	DRAM parameters 7:         A64        H616        A133   
		DRAM clock  :         600         600         600
		DRAM type   :         0x3         0x3         0x3
		ZQ value    :   0x3030303           -           -
		ODT enabled :   0xe0e0e0e         0x1           -
		DX ODT      :           -   0x3030303   0x3030303
		DX DRI      :           -   0xe0e0e0e   0xe0e0e0e
		CA DRI      :           -      0x1f12      0x1f12
		PARA0       :           -           -         0x1
		PARA1       :      0x1f12      0x30fb      0x30fb
		PARA2       :         0x1           0           0
		MR0         :      0x30fb       0x840       0x840
		MR1         :           0         0x4         0x4
		MR2         :       0x840         0x8         0x8
		MR3         :         0x4           0           0
		TPR0        :         0x8  0xc0001002           0
		TPR2        :           0           0  0xc0001002
		TPR6        :           0  0x33808080  0x33808080
		TPR10       :           0    0x2f1107    0x2f1107
		TPR11       :           0  0xddddcccc  0xddddcccc
		TPR12       :  0xc0001002  0xeddc7665  0xeddc7665
		TPR13       :           0        0x40        0x40

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines