Difference between revisions of "Rockpi4/dev/kernel-mainline"
Line 6: | Line 6: | ||
ROCK Pi 4 is officially supported in mainline kernel since v5.1 thanks to developer Akash Gajjar from Mentor. Below is how to build it on a X86 Linux host PC and run on ROCK Pi 4. | ROCK Pi 4 is officially supported in mainline kernel since v5.1 thanks to developer Akash Gajjar from Mentor. Below is how to build it on a X86 Linux host PC and run on ROCK Pi 4. | ||
+ | |||
+ | === Requirement === | ||
+ | |||
+ | $ sudo apt-get install libncurses-dev flex bison libssl-dev git | ||
=== Get the mainline kernel source === | === Get the mainline kernel source === | ||
− | + | $ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git | |
− | + | $ cd linux | |
− | cd linux | + | |
=== Install toolchain from Linaro === | === Install toolchain from Linaro === | ||
− | wget https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz | + | $ wget https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz |
− | sudo tar xvf gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz -C /usr/local/ | + | $ sudo tar xvf gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz -C /usr/local/ |
− | export ARCH=arm64 | + | $ export ARCH=arm64 |
− | export CROSS_COMPILE=/usr/local/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- | + | $ export CROSS_COMPILE=/usr/local/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- |
=== Build kernel=== | === Build kernel=== | ||
− | make | + | $ make defconfig |
− | + | $ make -j6 | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | make -j6 | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Copy '''arch/arm64/boot/Image''' and '''arch/arm64/boot/dts/rk3399-rock-pi-4.dtb''' to your ROCK Pi 4. | |
==== Install it on ROCK Pi 4.==== | ==== Install it on ROCK Pi 4.==== | ||
− | + | $ sudo cp Image rk3399-rock-pi-4.dtb /boot/ | |
− | + | $ sudo vim /boot/extlinux/extlinux.conf | |
*Change the contents to: | *Change the contents to: |
Revision as of 11:07, 19 November 2019
ROCK Pi 4 > Development > Build mainline kernel(5.x)
ROCK Pi 4 is officially supported in mainline kernel since v5.1 thanks to developer Akash Gajjar from Mentor. Below is how to build it on a X86 Linux host PC and run on ROCK Pi 4.
Contents
Requirement
$ sudo apt-get install libncurses-dev flex bison libssl-dev git
Get the mainline kernel source
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git $ cd linux
Install toolchain from Linaro
$ wget https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz $ sudo tar xvf gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz -C /usr/local/ $ export ARCH=arm64 $ export CROSS_COMPILE=/usr/local/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
Build kernel
$ make defconfig $ make -j6
Copy arch/arm64/boot/Image and arch/arm64/boot/dts/rk3399-rock-pi-4.dtb to your ROCK Pi 4.
Install it on ROCK Pi 4.
$ sudo cp Image rk3399-rock-pi-4.dtb /boot/ $ sudo vim /boot/extlinux/extlinux.conf
- Change the contents to:
label kernel-mainline kernel /Image fdt /rk3399-rock-pi-4.dtb append earlycon=uart8250,mmio32,0xff1a0000 swiotlb=1 coherent_pool=1m earlyprintk console=ttyS2,1500000n8 rw root=PARTUUID=b921b045-1d rootfstype=ext4 init=/sbin/init rootwait
Reboot you will have the new kernel booting.