Fake 4Gb RAM?

Hi all

So I have this animal, which works quite ok with CoreELEC: X88 Pro X3
It works as far as I use the 2GB generic S905X3 dtb for 1Gbit devices: sm1_s905x3_2g_1gbit.dtb

It won’t boot with 4Gb DTB sm1_s905x3_4g_1gbit.dtb, as reported by another user with 4/128 version (mine is 4/32).

Can we conclude that it is a fake 4Gb RAM box or there is something else worth to check?

Thanks!

You can open the box and look which RAM modules are used.

There are 8 Samsung chip K4B4G0446D so it is a real 4Gb box with 1Gx4 organization per chip.

How comes the 4G dtb does not work? Strange…

1 Like

@vpeter The chip memory organization has anything to do with the dtb?

I don’t think so.

Is there anything I can check?

This is the memory configuration entry in dtb

2Gb:

linux,usable-memory = < 0x00 0x00 0x00 0x80000000 >;

4Gb:

linux,usable-memory = < 0x00 0x100000 0x00 0xf5700000 >;

in the 4Gb it seems there is a reserved region and the legth it is somwhow strage…

EDIT:
Add coreelec='nopkmute' in config.ini and setup a UART connection. When DC power on it should start printing all logs and dmesg to the console.

So, @Portisch debug board arrived

This is the 2Gb dtb that boot fine:

And this is the 4Gb dtb that hang just after Uboot attemp to load kernal (on screen there is the vendor logo and nothing else)

I cannot see any evident differences, once again it seems to be a legit 4Gb box

  1. DDR cs0 size: 2048MB

  2. DDR cs1 size: 0MB

  3. DMC_DDR_CTRL: 0000002cDDR size: 2048MB

  4. cs0 DataBus test pass

  5. cs0 AddrBus test pass

Mmmmm, WTF?!?!?!

It’s true, it’s only 2gb detected.
If there is more ram assembled in hardware it is maybe a wrong configured compiled bootloader. Android shows 4gb?
You only can check with your seller if he will replace the box. But what I know 2gb are more than enough for CE.

I have two of them, and both have the same problem.
And there is also at least another user on the forum who has the same problem with the same box

Anyhow Android show 4GB! Checked with AIDA64

This is the boot into Android log

Chinese box vendors like to fake real ram size by hardcode it in Android. Maybe it’s 4gb assembled but the bootloader is configured wrong so only one bank get detected. So they fake the ram to fix it what in real does only cheat the user. He get 4g but he can use only 2gb.

1 Like

Makes sense and it is sooooooo stupid…
Question (just my curiosity) I guess it is coded in Uboot FIP right? There is some work ongoing with mainline Uboot?

Hardware options need to be configured for each single board. So it’s quite hard to tell what is wrong.
Maybe you get any option to get the source of the device from the vendor. But I don’t think so.

Maybe you try to find other images with a different bootloader for your device and check the debug output. It should be 4GB as 8x1Gbx4 is correct.

Can you perform any ram test on Android? When it’s fake 4GB it should crash, maybe. Then you can send the box back because of “damaged” ram.

Anyhow it is ridiculous. They have built a box with 4Gb of ram which is the most expensive part after (if after!) the CPU and they lost themself in making a proper bootloader and tweaking android to show 4Gb!

There are some different Android images out there for this box. Try them and maybe you are lucky and get a working bootloader showing all 4GB of RAM. Or you send it back and try another (not soooo cheap) hardware or even better on hardware of the vendors supporting CE.

Maybe, but in case I will send them back at the end of the warranty period.

This people must learn something…

On the end of warranty period you need to prove a faulty RAM to them. This is kind of hard and depends on the seller if he accept it or not. Better is to use the 14 days, or is it 30 days to return without any reason - if this option is still possible.

Naaaa, bought on Amazon :wink: (Prime)