01-19-2019, 11:30 AM
Hello,
It would be helpful if you could post the entire boot log and not just the parts that you think might be interesting. The devil is in the details
I am currently on holiday and thus did not play with linux 4.20 yet, I'll give it a try when I get back home.
Here is my wild guess just by reading your post: Am I right that you are running arch linux from an MMC instead of an SD card? Maybe your boot loader is looking at the wrong place for you files. Also, did you really rename /boot/extlinux/extlinux.conf to /boot/extlinux/extlinux.conf.new ? Your bootloader then might still be looking at the wrong extlinux file to get boot parameters from.
Greetings,
Matyas
It would be helpful if you could post the entire boot log and not just the parts that you think might be interesting. The devil is in the details
I am currently on holiday and thus did not play with linux 4.20 yet, I'll give it a try when I get back home.
Here is my wild guess just by reading your post: Am I right that you are running arch linux from an MMC instead of an SD card? Maybe your boot loader is looking at the wrong place for you files. Also, did you really rename /boot/extlinux/extlinux.conf to /boot/extlinux/extlinux.conf.new ? Your bootloader then might still be looking at the wrong extlinux file to get boot parameters from.
Greetings,
Matyas
(01-13-2019, 12:41 PM)p1x3l3d Wrote:(11-24-2018, 04:09 AM)mmatyas Wrote: When you look into his PKGBUILD in his sources, you can find the link to the linux kernel resources he used to get the kernel sources from.
...
Finally got around to trying my hand at compiling a kernel and installing it. This worked, but (after an afternoon of trying) I never got the kernel to work.
What I did was the following:
- clone your repo (https://github.com/matyas1995/linux-aarch64-rockpro64),
- update the 'PKGBUILD' and 'linux-rockpro64.install' files to fetch and build the latest release (4.20.0-1083, commit),
- run 'makepkg', answer 'y' and 'n' to the inclusion of some modules (following the suggested answers mostly) and wait for approx 1h for the compiling to finish (also applied your tip of setting MAKEFLAGS to "-j7"),
- install the newly made package ('pacman -U linux-rockpro64-4.20.0-1083-aarch64.pkg.tar.xz'),
- and finally, change '/boot/extlinux/extlinux.conf' to:
Code:cat /boot/extlinux/extlinux.conf.new
timeout 10
default arch
menu title select kernel
label arch
kernel /boot/Image
initrd /boot/initramfs-linux.img
devicetreedir /boot/dtbs
append rw panic=10 init=/sbin/init coherent_pool=1M ethaddr=${ethaddr} eth1addr=${eth1addr} serial=${serial#} cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1 root=LABEL=linux-root rootwait rootfstype=ext4
After that I rebooted the system. Sadly it did not come up anymore. To see what was happening I attached the rockpro directly to my laptop through GPIO>USB with a serial console and watched the startup messages scroll by. I think the following bit is interesting:
... end then it basically stops.Code:...
...
[ 2.973624] RAMDISK: Couldn't find valid RAM disk image starting at 0.
[ 2.974239] Waiting for root device LABEL=linux-root...
It complains that it can't find the RAMDISK. This is odd, because in the beginning of the startup progress, before attempting to start the kernel, it states this:
Code:switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:7...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
379 bytes read in 112 ms (2.9 KiB/s)
select kernel
1: arch
Enter choice: 1: arch
Retrieving file: /boot/initramfs-linux.img
5685385 bytes read in 303 ms (17.9 MiB/s)
Retrieving file: /boot/Image
32614912 bytes read in 1484 ms (21 MiB/s)
append: rw panic=10 init=/sbin/init coherent_pool=1M ethaddr=xxx eth1addr= serial=xxx cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1 root=LABEL=linux-root rootwait rootfstype=ext4
Retrieving file: /boot/dtbs/rockchip/rk3399-rockpro64.dtb
55324 bytes read in 269 ms (200.2 KiB/s)
## Flattened Device Tree blob at 01f00000
Booting using the fdt blob at 0x1f00000
Loading Ramdisk to f5997000, end f5f03089 ... OK
Loading Device Tree to 00000000f5986000, end 00000000f599681b ... OK
Also, the message right after, Waiting for root device LABEL=linux-root..., is odd because this is still partition 6, which still has the right label (I double checked by running 'blkid').
So it seems as if it correctly finds and reads the extlinux config, finds the images, and loads them into memory; and then seems to forget about it later during the actual booting of the kernel.
Does anyone have any idea what I'm doing wrong?