Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Arch Linux ARM does not boot from Internal Hard Drive / Internal Flash Memory - (veyron [RK3288] - Asus Flip C100PA "minnie", Asus c201 "speedy") #3
Hi! Thanks for this script.
I tested on my Asus Flip C100PA.
Install on SDCARD works.
Install on INTERNAL Memory works without errors, but, when I reboot and CTRL-D to start from disk, I get "Chrome OS is missing or damaged". OS verification is OFF. Booting from SDCARD still works.
It looks like OS verification is still ON. Hence it could be a problem related with this particular model more than with your script.
If I find how to solve it, I'll post here.
Try this while you are running arch off of your sdcard:
wget https://raw.githubusercontent.com/altreact/archbk-utils/master/archbk-bu.sh && sudo sh archbk-bu.sh mmcblk0
Then reboot, and press Ctrl + D
Please let me know if that works for you
It looks like the same problem.
After some trials and errors, I found how to install arch on the internal memory. As far I understood (but I am not an expert!), partitions on the internal memory must be different from partitions on the sdcard. This should be the reason why the machine complains with "Chrome OS is missing or damaged" when it does not find the expected format.
If you do not run vbutil_kernel, the system will boot, but it will terminate with kernel panic. The logs says something like
Meaning that the boot loader is using the wrong kernel flags (not sure, please correct me if I am wrong).
I have not tested it yet, but it boots and I can login.
Sorry for the late reply. Life showed up, and I've been busy being responsible and such.
Awesome detective work!
To be clear, you followed the instruction at
changed the title
Arch Linux ARM does not boot from Internal Hard Drive / Internal Flash Memory - (Asus Flip C100PA "minnie", Asus c201)
Sep 1, 2017
Yes, I followed the instructions in that section. I changed only the name of the kernel and I used kernel.keyblock and kernel_data_key.vbprivk for veyron minnie that you can find at the link I provided.
I tested the new installation. Arch is booting from the internal memory. I was able to install i3wm with Xorg. I still have some problems, but I do not think they are related to the installation process. For example, sounds do not work and (randomly) the ui is sluggish.
Hey, did you follow the exact commands in that Debian tutorial?
Firstly, yeah you should do this when running from the SD.
I figured out a way to do this relatively cleanly, so I'll explain a few notes:
The default archlinuxarm kpart does work for booting from the eMMC, as long as the root partition is the next partition after the kernel partition (in the numbering order).
So in reference to the InstallingDebianOn guide that was linked above, firstly it doesnt move ROOT-B out of the way so expanding the STATE partition wouldnt work as-written.
And then did the priorities as he listed.
This is the fdisk printout of the partition table for this system:
Unfortunately, I will be swamped for at least the next three months with work, so I don't have time to thoroughly go through the Debian documentation, to collaborate with you guys, and to incorporate a solution anytime soon.
Pull requests and/or fork are welcomed and encouraged.
When my schedule clears up a bit, I can devote more time to this issue. For now, help me in helping you, by contributing solutions in the form of usable code.
I'm not in a hurry to test this again, sorry, but I'll try to write an untested set of commands (that are simpler than the mess my bash history on the SD is, since i messed it up at first etc) that you can use as a basis to get the idea.
I just followed your exact instructions, but did a powerwash on the chromeOS first, to make sure the partitions were defaulted. Worked flawlessly, thank you so much.
EDIT: Managed to get audio to work:
Press F6 and select the rockchip sound card
I also had the same issue. I was disappointed to find out that the C100P tutorial linked around threads of people trying to get arch on their C201 is actually only for an arch-on-USB install, which sucks. This thread finally gave me an on-internal-disk install.
What I did:
I never ran
I then created the USB using this repo's main method of running
I had to run
Here's what my internal disk partition table looked like at boot of the USB system:
I then ran urjaman's commands slightly modified for the specifics of my partition table:
(let me just say that the fact that the partitions are not shown in the order they appear on disk made these steps slightly more annoying since I had to look at the start and end sectors to reason about what was sitting where, instead of just looking at them laid out in order by
My partition table then looked as follows (output of
I then ran the rest of their commands the same: formatted ROOT-A as ext4 using
Although I do still hear a beep, I know I could probably change this by restoring chromeOS and running a command to flash some flags into the firmware or something... I don't really feel like doing this all again. So I'll just live with pressing CTRL+D or just learn to love the beep.
I hope this thread helps someone else in future!
So, my initial install had issues running accelerated graphics and had no audio. Given that, I decided to powerwash.
1. Why I powerwashed
I read in the useful-if-not-arch-specific "Installing Debian on ASUS C201" that I would need some files from the Chrome OS install. I also read the hint in the "OpenGL ES" section that I'd need some libraries for accelerated graphics.
With the above in mind, I decided to powerwash again using my recovery medium, so I could grab the files.
2. What I did once I was back in Chrome OS
2.1. side note: disable beep on boot screen
When I booted in, I made sure to "enable debugging features", to get a root account and allow firmware writing. I wanted to disable the annoying beep on boot up. The instructions here worked fine.
2.2. grabbing libraries and conf files only found in Chrome OS
... and I stored them onto the arch install USB so I can put them back into their system locations during install.
3. After I installed
(to install I followed my exact same steps as posted in my comment above)
After having got the base arch system installed (during which I copied the drivers / config files above into their proper places), there are a few things I did to configure basic quality of life:
3.1. install X and a graphics driver and allow normal users to run it
3.2. fixed no audio
I also followed the recommendation of this page and ran:
(if you read the link, you'll notice they had a typo in probably copy-pasting 'Right' two times, they didn't unmute the left DAC. My commands above are the correct ones.)
I have no idea which of the above was necessary and which was incidental, and I don't feel like testing.
I also have no idea how the internals of the audio system work on this machine, all I know is that once I did the above, and opened alsamixer to unmute the main 'Speaker' item, I could hear sweet music coming out of my speakers. Headphones work too. I would strongly advise anyone reading this to not mess around with any of the other settings as it seems quite possible to fry the speakers from the general rumours I've heard spoken in various threads.
I then went on to set up a normal user, give them sudo, import all my dot files and configs, install fonts, install a window manager (i3gaps ftw) and all that good stuff. But this isn't really relevant to the issue of just getting a basic arch system working on this machine.