__Dirk__ Posted December 19, 2019 Posted December 19, 2019 Hi all, I hope someone can help me with an annoying but not pressing eMMC boot problem. Recently I bought myself a Pin64 H64 3GB SBC and an 32GB eMMC module (actually ordered a 16GB but got a 32GB :-) ) I have a Waveshare 7" TFT touchscreen attached. SBC and Screen are powered either a 5V/3A PSU or a batterypack. Now the board boots fine and fast! from a Samsung EVO sd card .. no problems there, but I cannot get the board to boot from the eMMC module. What I have done so far: 1) Flash an Armbian Buster image to the eMMC (using a USB_eMMC converter) with Etcher on Linux Mint... Boot the board from eMMC WITHOUT sd card installed. The system hangs when the kernel is started.. see attached picture and u-boot output. 2) Wipe the whole eMMC clean, format as ext4. Install it on the board, insert sd card .. boot the board.. OK.. try 'nand-sata-install' from cli or armbian-config->system->install ... both methods just hang instantly. Apart from these boot attempts I tried to access the (ext4 formatted) eMMC module after bootup from sd. But I do not see the device in the 'mount' output or /dev/disk/by-uuid listing. Is there anything else I can verify/try ? The eMMC module 'seems' to be functioning fine in the USB_eMMC converter ? Best regards and a big thank you to the dev team for Armbian.. it's running very swiftly ! Well worth my (first) donation :-) Dirk, Netherlands Armbian_boot_eMMC.txt
Igor Posted December 19, 2019 Posted December 19, 2019 Does your board looks like the one from the download pages?
martinayotte Posted December 19, 2019 Posted December 19, 2019 17 minutes ago, Igor said: Does your board looks like the one from the download pages? This is the old Rev.A ... The one I use successfully is the Rev.B : https://www.pine64.org/wp-content/uploads/2019/04/PINE-H64-model-B-1-2.jpg
Igor Posted December 19, 2019 Posted December 19, 2019 1 minute ago, martinayotte said: The one I use successfully is the Rev.B : And the one I use successfully is Rev. A Is there another revision we don't know for?
martinayotte Posted December 19, 2019 Posted December 19, 2019 9 minutes ago, Igor said: Is there another revision we don't know for? Do you mean a third one ? I don't know, but I don't think so. My Rev.B is also marked as 2018-12-12 ...
Igor Posted December 19, 2019 Posted December 19, 2019 4 minutes ago, martinayotte said: Do you mean a third one ? I don't know, but I don't think so. Yes. This is the second time that someone pops up with a problem that the board doesn't boot. But A boots for me and B boots for you ... That's strange.
martinayotte Posted December 19, 2019 Posted December 19, 2019 3 minutes ago, Igor said: Yes. Let ask to that person ... 6 hours ago, __Dirk__ said: both methods just hang instantly. Dirk ? What is the revision shown on your board ?
__Dirk__ Posted December 19, 2019 Author Posted December 19, 2019 Gents, Thank you for your reply. I have a pine_H64_MODEL_B revision board. Production date? 2018-12-12
martinayotte Posted December 19, 2019 Posted December 19, 2019 26 minutes ago, __Dirk__ said: Thank you for your reply. I have a pine_H64_MODEL_B revision board. Production date? 2018-12-12 So, it looks identical as mine... If you wish, you can try out my own DEV 5.4.2 image that I've built on Dec 12th ! https://mega.nz/#!DXIBmYDS!Wm6XQC0TKWL1uGyyyZJ98c56i_CGqaeK4NLaJ5pYu9s
__Dirk__ Posted December 19, 2019 Author Posted December 19, 2019 Martin, Sounds like an idea. I'll give it a try.. thnx! :-D Btw.. probably not related.. but on the site of Pine64.. there is no 32GB related eMMC product.. only the 16GB and 64GB...coincidence? Since I have the 32GB.. https://store.pine64.org/?product=pine-h64-model-b-3gb-single-board-computer Regards, Dirk
martinayotte Posted December 19, 2019 Posted December 19, 2019 14 minutes ago, __Dirk__ said: Btw.. probably not related.. but on the site of Pine64.. there is no 32GB related eMMC product.. only the 16GB and 64GB...coincidence? Since I have the 32GB.. When I received some eMMC modules recently, TL shipped me one 16GB and one 32GB, my PineH64 is currently using the 32GB.
Neko May Posted December 20, 2019 Posted December 20, 2019 I mentioned in another thread, but it may be worth mentioning here, the Pine64 H64 Model A is discontinued; I can't find anyone selling it new and several sites mention that it's been superseded by the Model B.
__Dirk__ Posted December 20, 2019 Author Posted December 20, 2019 Martin, I gave your image a try on the eMMC module.. unfortunately.. same behavior.. it hangs after: Begin: Running /script/local-block .. done.. I guess I have to go to the reseller and verify the working of either the eMMC module or the board.. :-( Thanks for your effort though! Regards and happy holidays! Dirk
__Dirk__ Posted December 20, 2019 Author Posted December 20, 2019 Btw.. the ext4 or FAT32 formatted eMMC should show up in /dev/disk/by-uuid ..when the board fully booted from SD card... right? Dirk
Igor Posted December 20, 2019 Posted December 20, 2019 26 minutes ago, __Dirk__ said: the ext4 or FAT32 formatted eMMC should show up in /dev/disk/by-uuid ..when the board fully booted from SD card... right? No, Armbian doesn't use windows file system. No need.
Neko May Posted December 20, 2019 Posted December 20, 2019 2 hours ago, __Dirk__ said: Btw.. the ext4 or FAT32 formatted eMMC should show up in /dev/disk/by-uuid ..when the board fully booted from SD card... right? Dirk It should show up as a /dev/mmcblk device; if you're booting off an SD card and have the eMMC module installed, you should see two, one for the SD card and one for the eMMC module. If you don't see two, check dmesg for any failures to attach or even detect the eMMC module.
martinayotte Posted December 20, 2019 Posted December 20, 2019 4 hours ago, __Dirk__ said: Btw.. the ext4 or FAT32 formatted eMMC should show up in /dev/disk/by-uuid ..when the board fully booted from SD card... right? In fact, yes, but only if kernel was able to read partition table and create a symbolic link accordingly, as shown here on my PineH64 : lrwxrwxrwx 1 root root 15 Dec 13 08:33 /dev/disk/by-uuid/b946f914-a80f-4551-abe3-68afa0b85b03 -> ../../mmcblk2p1 But, as @Neko May said, check "dmesg | grep mmc" to see if you have such things : [ 4.921793] sunxi-mmc 4022000.mmc: initialized, max. request size: 2048 KB, uses new timings mode [ 5.140450] mmc2: new DDR MMC card at address 0001 [ 5.146020] mmcblk2: mmc2:0001 DA4032 29.1 GiB [ 5.150955] mmcblk2boot0: mmc2:0001 DA4032 partition 1 4.00 MiB [ 5.157231] mmcblk2boot1: mmc2:0001 DA4032 partition 2 4.00 MiB [ 5.164534] mmcblk2: p1 If not, your eMMC module is maybe defective. (The only thing I see in your picture of the module is that mine is blue while your is green)
NicoD Posted December 20, 2019 Posted December 20, 2019 I just tried with my H64 model b. Disco Server 5.3 from download page on 32GB eMMC module. The eMMC module looks almost identical to the one in the picture. Except mine has a few caps less. There's nothing soldered to those pads. It is the same pad arrangement otherwise. All works fine for me.
__Dirk__ Posted February 15, 2020 Author Posted February 15, 2020 (edited) Gents, Giving it a 2nd, 3rd, 4th .... try... dmesg show trouble with reading the eMMC module (mmcblk2) on startup. When the system is booted there is no trace of the mmcblk2 block device and running "fdisk -l " just never returns.. whereas it does when the eMMC is not installed. Edit: The dmesg output is from the EMMC module installed and formatted as ext4 without any further content. SBC booting from SD. The eMMC does work from the USB2eMMC converter... so the question is.. is the board broken or incompatible with the eMMC module ? I can ask the seller for support.. but I am not expecting to much from them.. @NicoD , Would it be an option to send my board and eMMC module to you so you can filter out the culprit with your "know to be working" hardware ? [ 3.320856] libphy: stmmac: probed [ 3.476407] mmc2: new DDR MMC card at address 0001 [ 3.477631] mmcblk2: mmc2:0001 NCard 28.9 GiB [ 3.478413] mmcblk2boot0: mmc2:0001 NCard partition 1 4.00 MiB [ 3.479158] mmcblk2boot1: mmc2:0001 NCard partition 2 4.00 MiB [ 3.480389] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.480690] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.480957] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.481223] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.481488] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.509232] EXT4-fs (mmcblk0p1): mounted filesystem with writeback data mode. Opts: (null) [ 3.596826] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.596887] blk_update_request: I/O error, dev mmcblk2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [ 3.596897] Buffer I/O error on dev mmcblk2, logical block 0, async page read [ 3.597218] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.597491] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.597758] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.598024] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.598291] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.598559] sunxi-mmc 4022000.mmc: data error, sending stop command [ 3.598598] blk_update_request: I/O error, dev mmcblk2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0 [ 3.598604] Buffer I/O error on dev mmcblk2, logical block 0, async page read [ 3.598623] mmcblk2: unable to read partition table Regards and thank you in advance, __dirk__ Netherlands Edited February 15, 2020 by __Dirk__ Additional info
__Dirk__ Posted February 15, 2020 Author Posted February 15, 2020 Update: Out of curiosity I downloaded the "AOSC Community Build Image with Mate Desktop [eMMC Boot] [20180216]" for my Pine64 H64 and wrote the image to the eMMC module using Balena etcher... It's running.. without any issues...... __Dirk__
_JK_ Posted February 23, 2020 Posted February 23, 2020 (edited) You are not the only one who is having trouble to get the eMMC card working. I've got several H64B in 2GB and 3GB all got a date stamp 2018-12-12 and I also have several 16GB eMMC Modules with an Foresee NCEMAM8B-16G Chip on them and Armbian has trouble to recognise the Modules which results in the exact behaviour as _Dirk_ described. The armbian-config tool offers to copy the OS onto the Module but as soon as that option is selected it reports file not found and is unable to complete the task. Copying armbian directly onto the module via etcher results in a kernel hung at boot as shown in the opening post. On the other hand the AOSC image works straight out of the box, so there must be an issue with armbian and how the eMMc is handled by the OS. At some point I was able to get armbian to boot from eMMC and working even through reboots, but then I switched off the board for a couple of days only to be greeted again with a hung kernel at boot and eMMC not initialised/recognised.:-( Update: even with the image Armbian_20.02.1_Pineh64-b_buster_current_5.4.20 I get the exact same behaviour. Whilst booting from SD-Card it shows both eMMC and SD-Card with "lsblk" so it could be an issue with uboot i think. JK Edited February 23, 2020 by _JK_ Update, result with latest image.
_JK_ Posted March 5, 2020 Posted March 5, 2020 I did some further testing and it turns out the the script within Ambian-Config for copying the OS from SD-Card onto eMMC card does not work as intended, because instead of formatting the eMMC Card it formats the SD-Card instead and therefore is unable to copy any file in the next step and creating a continues loop of error messages which can only be stopped by pressing the reset button on the H64B twice. But there is also some good news, if the image gets flashed onto the eMMC card with etcher and SD-Card and eMMC card are installed at the same time on the H64B it will boot from SD-Card of course but then in Armbian-Config in the install submodule the second option can be used to update the bootloader on the eMMC (uboot?) and then the board can be shutdown and the SD-Card can be removed and the board will boot from the eMMC Card as long as power is connected and the green LED is lit. Once power is disrupted or disconnected the H64B will not boot from eMMC anymore and hang with the same error as in the opening post. JK
__Dirk__ Posted March 23, 2020 Author Posted March 23, 2020 JK, Thanks for sharing your findings! :-) I was looking into compiling Armbian with an older version of u-boot (same as the AOSC) but the extended compile options for armbian do not support this... as far as I can see.. Armbian dev's do not seem to care for the few boards that do not work out of the box either. So for now I chucked the Pine aside and switched to a Raspberry 4.. just costs me to much time to get all things I want running on the H64 B Regards, __Dirk__
Igor Posted March 23, 2020 Posted March 23, 2020 4 hours ago, __Dirk__ said: Armbian dev's do not seem to care for the few boards that do not work out of the box either. Resources are limited and support generate costs which you and board maker doesn't cover. Go here: https://forum.armbian.com/forum/22-board-bring-up/ and reasons why would we need to invest into this hardware? And add your own time & cash. Then you will have some rights to complain ... - budget for R&D is exactly zero. Its developers private cost. - budget for dealing with you is the same, zero. Its developers private cost. - I work from 10 - 16h per day on this project. Its my private cost. There are 5-10 people in similar, perhaps less dramatic situation - there is around 15 EUR of donations from you per day for whole project. Its not enough to pay for the download costs you create. - not a single EUR ever came from this board makers. That zero budget will not be used on a board from this topic. Personally I don't even have this board and certainly no time to deal with it more then I already did: https://github.com/armbian/documentation/issues/49
__Dirk__ Posted March 26, 2020 Author Posted March 26, 2020 Igor, Thank you for your reply. I did not mean to insult anybody by stating 'Armbian dev's do not seem to care for the few boards that do not work out of the box either.' but it's a fact and an understandable one as you already noted .. budget, time , etc.. Another fact is that there seems to be a bug in the Armbian build for certain eMMC modules... the hardware (Pine64 H64-B and eMMC I have) are verified to be working... it's running on AOSC without any problems. I am happy to put time in investigating why.. (although my knowledge about SBC's in not by far as extended as your's)... From the thread all I got from my questions is.. it works for me ... that is not helpful .. and I understand that if you don't have the board you can't test anything.. even if you DO have the board.. if you can't reproduce the problem, it's difficult to help. But you do have the knowledge to give me a hint on where to start, it's somewhere in the booting process.. so is it u-boot not setting up the environment correctly, or is it the kernel , or the board config files? ... or.. .? I think I posted all the logs (Console output, dmesg) to give me some hint on where to start looking... older kernel, older u-boot ... kernel patch .. any other hints.. That's what I was looking for.. a hint to continue.. not asking anybody to solve my problem.. To end this reply... A big thank you for developing Armbian and sharing it with the community! Kind regards, __Dirk__
Igor Posted March 26, 2020 Posted March 26, 2020 1 hour ago, __Dirk__ said: But you do have the knowledge to give me a hint on where to start Use search engine. You will be surprised how much know-how is accumulated in this forum. There are also other people that needs attention and I have to (try to) share my time in a fair manner. Once we might hire people to be able to attach to your problems - if you are willing to pay them, we will educate them. But until then, waiting time is measured in months and years and most of the support cases are simply ignored. Because we have to eat, sleep, ...
martinayotte Posted March 26, 2020 Posted March 26, 2020 4 hours ago, __Dirk__ said: Another fact is that there seems to be a bug in the Armbian build for certain eMMC modules... Could be the eMMC speed ...
__Dirk__ Posted March 30, 2020 Author Posted March 30, 2020 Dear all, Finally managed to get my Pine64 H64 model-B to boot from the Foresee 32GB eMMC module after applying the next patch that adds HS200 and HS400 support to the device tree. --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts 2020-03-30 11:24:41.176470382 +0200 +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts 2020-03-30 11:24:41.176470382 +0200 @@ -127,8 +127,10 @@ pinctrl-0 = <&mmc2_pins>; vmmc-supply = <®_vcc3v3>; vqmmc-supply = <®_vcc1v8>; - non-removable; cap-mmc-hw-reset; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; status = "okay"; }; Don know how this patch will impact other brand/type eMMC modules... but for me this now works!!!!! @martinayotte, I guess your remark pushed me in the correct way :-D Regards, __Dirk__
_JK_ Posted April 1, 2020 Posted April 1, 2020 Many thanks to _Dirk_ for figuring that out and resolving a long-standing issue in Armbian. I am a User, I am able find my way around the Terminal and resolve a dependency issue whilst using cmake and so on, but applying a patch to the device tree is beyond my competency. @Igor @martinayotte Is there any chance that this patch can be put into one of the next image builds of Armbian? That would be greatly appreciated.
Recommended Posts