nuttx icon indicating copy to clipboard operation
nuttx copied to clipboard

[HELP] Verify correct RPi 4B operation for different RAM sizes

Open linguini1 opened this issue 4 months ago • 5 comments

Description

The RPi 4B supports several different RAM sizes: 1GB, 2GB, 4GB or 8GB.

The current port has been written using a Pi 4B with the 4GB RAM size. I need other people with Pi 4Bs of different RAM sizes to verify whether or no the port works for them with the different RAM size.

Verification

  • [x] I have verified before submitting the report.

linguini1 avatar Sep 01 '25 18:09 linguini1

Appears to work properly on 8GB version, testing thanks to @cederom.

linguini1 avatar Nov 08 '25 05:11 linguini1

Appears to work properly on 8GB version, testing thanks to @cederom.

  • The NuttX runs on rPI 4B 8GB but it only can see 2GB of RAM looks like another pink panther TODO ToDo todo todo todooooo todo :-P
  • I just ordered rPI 4B 1GB and 2GB RAM versions so we can see how much RAM will be detected and/or if crashes happen on 1GB version when 2GB is detected :-) We have long weekend here so it arrives is ~4..5 days. Now we should have coverage for all 1,2,8GB (mine) and 4GB (yours). For now I can only help like that sorry :-)
- Boot from EL2
- Boot from EL1
- Boot to C runtime for OS Initialize
[    0.002000] bcm2711_mbox_sendreq: Unknown response code: 00000000
[    0.215000] bcm2711_waitresponse: Got error: -110
[    0.219000] mmcsd_sendcmdpoll: ERROR: Wait for response to cmd: 00008101 failed: -110
[    0.227000] bcm2711_recvshort: Error: -110

NuttShell (NSH) NuttX-10.4.0
nsh> uname -a
NuttX 10.4.0 89e841fed4 Nov  4 2025 01:33:33 arm64 raspberrypi-4b
nsh> ?
help usage:  help [-v] [<cmd>]

    .           cp          expr        mkdir       rm          uname
    [           cmp         false       mkfatfs     rmdir       umount
    ?           dirname     fdinfo      mkrd        set         unset
    alias       df          free        mount       sleep       uptime
    unalias     dmesg       help        mv          source      usleep
    basename    echo        hexdump     pidof       test        watch
    break       env         kill        printf      time        xd
    cat         exec        pkill       ps          true        wait
    cd          exit        ls          pwd         truncate

Builtin Apps:
    dd          getprime    nsh         ostest      sdstress    sh

nsh> free
      total       used       free    maxused    maxfree  nused  nfree name
18446744073637310464      2279218446744073637287672      2346418446744073637287672     28      1 Umem

cederom avatar Nov 08 '25 14:11 cederom

Wow @cederom ! Super helpful! What are you going to do with all those Pis now?

I wonder why that's the case, I'll have to investigate the startup code. Is the free memory output in bytes? It seems almost too big?

linguini1 avatar Nov 08 '25 14:11 linguini1

Wow @cederom ! Super helpful! What are you going to do with all those Pis now?

NXDART :-)

I wonder why that's the case, I'll have to investigate the startup code. Is the free memory output in bytes? It seems almost too big?

No low level experience with rPI 4B sorry :-( Quick search indicates RAM problems may come from:

  1. 32/64-bit mode: https://forums.raspberrypi.com/viewtopic.php?t=244367.
  2. UBoot: https://github.com/orangepi-xunlong/u-boot-orangepi/issues/19.
  3. Various and pretty frequent hardware failures (i.e. BGA, pmic): https://www.reddit.com/r/raspberry_pi/comments/10cnoug/pi_4_8gb_sdram_failure/, https://github.com/raspberrypi/rpi-eeprom/issues/328, ... .

cederom avatar Nov 08 '25 18:11 cederom

Sorry, I meant is the output of the free program the amount of memory in bytes? Because those numbers from a glance look much larger than 2-8GB.

linguini1 avatar Nov 08 '25 20:11 linguini1