Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Armbian EMMC Image for NanoPi-K2

Featured Replies

i have a S905 TV box with eMMC ,  i did tried all methods to boot from eMMC, boot from SD is working even with mainline uboot.

if any testing required i can do it 

On 3/15/2020 at 4:08 PM, martinayotte said:

Thank you, I  was able to do it with the android way, compiled from Amlogic source code. the distro is busybox. now trying to use debian 

 

I'm posting here in the hope someone with a NanoPi-K2 board can test-boot the following LibreELEC image from an eMMC module and SD (the same image should boot both). If it does work the long-running mystery of how to combine various bits of upstream u-boot (2022.07) with Amlogic signed firmware and MBR structures is solved. I'm able to boot an S905 set-top box (WeTek Play2) so I'm fairly confident it should work.

 

Here's the test image: https://chewitt.libreelec.tv/testing/LibreELEC-AMLGX.arm-10.85.0-nanopi-k2.img.gz

hi @chewitt - i cannot test it as i gave my k2 away a while ago, but i would be curious about what you did still :) ... can you maybe say a bit about it or link the patches used?

 

best wishes - hexdump

See commits here: https://github.com/chewitt/amlogic-boot-fip/commits/gxbb-sd-emmc which is based on the original detective work done by @Kwiboo here https://github.com/Kwiboo/u-boot/commit/6d0a17632922077a2e64b13ae1a6bdf0024b718f .. waaaay back in 2016, so the solution has been sitting under our noses all this time :)

 

The one difference from his instructions is that I don't use the same 'fusing' instructions, I use the standard LE ones https://github.com/LibreELEC/LibreELEC.tv/blob/master/projects/Amlogic/bootloader/mkimage#L8-L9

 

Here's the u-boot log https://pastebin.com/raw/pVSHMueQ and dmesg https://pastebin.com/raw/n5E3Rq96 showing emmc boot on the WP2.

hi 

yesterday I was able put armbian on emmc and boot from emmc without SD/USB on s905.

may be it can help? 

 

That's interesting (some clever work) but a slightly different topic. You're manipulating the Amlogic (2015.01 based) u-boot and the custom partition layout to suit Armbian/Linux. It looks rather fiddly to execute but suits TV box devices where you have no access to the vendor customised u-boot sources. I'm creating new distro images that boot using upstream u-boot (2022.07) from SD or eMMC and clean-install the OS with standard mbr/msdos partitions. This is cleaner, but needs access to the vendor u-boot sources to build/extract the FIPs and customised software bits needed for signing the modern u-boot binaries.

 

NB: I'd like to see an effort to script or create tools that deconstruct the contents of vendor images to extract the acs.bin/bl2.bin/bl301.bin files which are tweaked for the device (esp. acs.bin which has the often low-bin RAM timings). These could then be used with other common files (bl21.bin/bl30.bin/etc.) to create a FIP package for signing modern u-boot.

 

Спасибо, что поделились!

@chewitt - not really automated, but at least a way to get the acs info from a box boot block: look at an existing acs file for that type of soc - usually it is possible to find the signature of its beginning in the boot area of a box dump and iirc the end is clear from size and some free space afterwards as well - this worked well for me for g12a and sm1 where acs can be assembed in properly when building new boot blocks - see: https://github.com/hexdump0815/u-boot-misc/blob/d75cf6cbb8f95d7b32ab7f66111c79196d7f7c07/readme.gxy#L153-L158

 

for gxl i extracted the bl* parts (one of which also contains the ram timing) from the box boot blocks via glximg and reassembled new bootblocks based on them - see: https://github.com/hexdump0815/u-boot-misc/blob/b10b9a5aca46438233fde86f96b452d76d7158f8/readme.gxl#L115-L160

 

but i guess you know most of that already

 

best wishes - hexdump

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.