Jump to content

eMMC support & DT overlays


RMSVolt

Recommended Posts

Hello everyone,

 

This is my 1st post on the forum.

My intention with this post is not to report a specific issue that I am running into, but more because I would like to collect info and suggestions from people with more experience than myself.

I've recently received an Orange Pi 5 Plus and have spent a bit of time exploring operating systems suitable for this system and have settled on the Armbian solution.

I'm a HW designer by trade, and have done some SW work, but I do not consider myself proficient in SW at all. I find my way around things, but that's about as far as it goes....
 

For the my planned use of the OPi5+, I will need eMMC boot (for the improved OS performance and longevity) and access to the various interfaces (mainly SPI and I2C) on the GPIO header.

What I have discovered so far:
- Version 6.1 of the Armbian built kernel supports the GPIO interfaces quite well (I haven't actually communicated with anything yet, just got the interfaces showing up in /dev), but I could not get it to see the eMMC storage on the board. I tried various different options and flavours of the 6.1 images and I never saw /dev mmcblk0 listed.

- Version 6.10 kernel builds were successful at accessing the eMMC (/dev/mmcblk0 was present) and I have successfully transferred the OS to the eMMC storage on the board. However this version of the kernel has a limited number of device tree overlays (mostly different UART options, and one I2C option).

 

I'm assuming that the 6.10 kernel is quite a new build and that more support for the board's IO should be available soon.

 

Did I overlook something on the 6.1 version regarding the eMMC support?

Am I missing something regarding overlays in the 6.10 build?

 

My thinking is to stay with 6.10 as it supports eMMC and it's the newest kernel version.

 

Cheers

Volt

Link to comment
Share on other sites

Armbian & Khadas are rewarding contributors

Hi Werner,

 

Thanks for relying.

Yeah, I did, mmcblk1 (the SD card) was always present. When I ran the 6.10 kernel I would see both mmblk0 and mmcblk1.

I'll generate the logs and upload them later today.

 

Regards

 

Link to comment
Share on other sites

Okay, so I ran into a bit of an issue with the 6.10 kernel I had flashed to the eMMC.

I've just replaced my monitors with 8K displays, and when I tried to boot the OPi5+, the monitor reported no signal.

 

After a bit of messing about with that, I decided to try a 6.1 kernel, and it booted fine...

 

https://paste.armbian.com/lakexafonu

 

As you can see in the logs, there are no mmcblk0 partitions found at all.

 

This img does include "all" the overlays to set up SPI and I2C though. But one needs to edit the /boot/armbianEnv.txt file and change the overlay_prefix to point at the correct overlays:

verbosity=1
bootlogo=true
console=both
overlay_prefix=rk3588
fdtfile=rockchip/rk3588-orangepi-5-plus.dtb
rootdev=UUID=6e51db83-4189-4ec4-9621-ab7d79f3af93
rootfstype=ext4
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u

the default is rockchip-rk3588.

 

I'll try another 6.10 img to see if I can get it displaying on the 8K display.

I'll try to upload some logs from that too.

 

Cheers

V

 

P.S. My OPi 5 Plus is a version V1.3.1

Edited by RMSVolt
Link to comment
Share on other sites

So, I booted a new 6.10 image via the SD card, but because the HDMI output was not functioning on my 8K display, I blindly entered all the info required for the first-time-boot initialization and only needed to repeat it once before nailing it! 🤣

 

The logs I generated on this system are:

 

https://paste.armbian.com/goqizeponi

 

You'll see the partitions on the eMMC device (mmcblk0).

 

The 6.10 kernels only have a limited set of DT overlay:

root@orangepi5-plus:~# ls -al /boot/dtb/rockchip/overlay/
total 176
drwxr-xr-x 2 root root  4096 Aug 26 18:52 .
drwxr-xr-x 3 root root 12288 Aug 26 18:52 ..
-rw-r--r-- 1 root root   362 Aug 21 17:29 rockchip-rk3588-hdmirx.dtbo
-rw-r--r-- 1 root root   343 Aug 21 17:29 rockchip-rk3588-i2c8-m2.dtbo
-rw-r--r-- 1 root root   343 Aug 21 17:29 rockchip-rk3588-pwm0-m0.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm0-m1.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm0-m2.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm10-m0.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm11-m0.dtbo
-rw-r--r-- 1 root root   543 Aug 21 17:29 rockchip-rk3588-pwm11-m1.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm12-m0.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm13-m0.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm13-m2.dtbo
-rw-r--r-- 1 root root   345 Aug 21 17:29 rockchip-rk3588-pwm14-m0.dtbo
-rw-r--r-- 1 root root   345 Aug 21 17:29 rockchip-rk3588-pwm14-m1.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm14-m2.dtbo
-rw-r--r-- 1 root root   543 Aug 21 17:29 rockchip-rk3588-pwm15-m0.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm15-m1.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-pwm15-m2.dtbo
-rw-r--r-- 1 root root   587 Aug 21 17:29 rockchip-rk3588-pwm15-m3.dtbo
-rw-r--r-- 1 root root   343 Aug 21 17:29 rockchip-rk3588-pwm1-m0.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm1-m1.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm1-m2.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm2-m1.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm3-m0.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm3-m1.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm3-m2.dtbo
-rw-r--r-- 1 root root   309 Aug 21 17:29 rockchip-rk3588-pwm3-m3.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm5-m2.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm6-m0.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm6-m2.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm7-m0.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm7-m3.dtbo
-rw-r--r-- 1 root root   541 Aug 21 17:29 rockchip-rk3588-pwm8-m0.dtbo
-rw-r--r-- 1 root root   350 Aug 21 17:29 rockchip-rk3588-sata1.dtbo
-rw-r--r-- 1 root root   350 Aug 21 17:29 rockchip-rk3588-sata2.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-uart1-m1.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-uart3-m1.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-uart4-m2.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-uart6-m1.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-uart7-m2.dtbo
-rw-r--r-- 1 root root   311 Aug 21 17:29 rockchip-rk3588-uart8-m1.dtbo

 

 

V

Link to comment
Share on other sites

6 minutes ago, Efe Çetin said:

What if you clear SPI Flash and then try to boot emmc?

I am able to boot from eMMC fine with other build versions.
The issue is that the eMMC is not available in the dev tree with some versions of Armbian (6.1.75), while it is listed with others (6.10).

I had various builds with the 6.10 kernel boot just fine from eMMC.

So I don't think it's an SPI issue. Although I have as yet not written anything to SPI, it doesn't imply that it's clear, but I'm assuming it's not the cause of the problem as the system does work as expected with certain versions (I've tried Orange Pi's official images, various Armbian versions and also Joshua Riek's version).

 

When I say that I don't see the eMMC in the dev tree, this is after booting the system from SD Card.

 

 

One last thing. I keep forgetting to mention that I have the 32GB version of the Opi5+.

 

 

 

Link to comment
Share on other sites

Orangepi-5-plus-Gnome with kernel-6.1.75-vendor-rk35xx able to detect EMMC with "lsblk" (SPI loaded).

 

$ lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda            8:0    1   3.6G  0 disk 
└─sda1         8:1    1   3.6G  0 part /media/jfl/5B21D34023086316
mtdblock0     31:0    0    16M  0 disk 
mmcblk1      179:0    0  57.6G  0 disk 
└─mmcblk1p1  179:1    0    57G  0 part /var/log.hdd
                                       /
mmcblk0      179:32   0   233G  0 disk 
mmcblk0boot0 179:64   0     4M  1 disk 
mmcblk0boot1 179:96   0     4M  1 disk 
zram0        252:0    0   7.8G  0 disk [SWAP]
zram1        252:1    0    50M  0 disk /var/log
zram2        252:2    0     0B  0 disk 
nvme0n1      259:0    0 476.9G  0 disk 
├─nvme0n1p1  259:1    0   512M  0 part 
└─nvme0n1p2  259:2    0 476.4G  0 part 

 

Link to comment
Share on other sites

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