0
rocksa

custom kernel boot - rockpro64

Recommended Posts

Hello.

I wanted preempt-rt kernel for my armbian rockpro64 so i have compiled and generated preempt-rt 4.4.167 deb kernel package.

I have installed my custom kernel deb package but after reboot the system boot in old kernel not the custom kernel.

How i can set the system to boot from custom installed kernel ?(4.4.167-rt176 is my custom kernel)

$ ls -a /boot
.                               boot.cmd                   dtb-4.4.174-rockchip64         System.map-4.4.174-rockchip64
..                              boot-desktop.png           Image                          uInitrd
armbianEnv.txt                  boot.scr                   initrd.img-4.4.167-rt176       uInitrd-4.4.167-rt176
armbianEnv.txt.out              config-4.4.167-rt176       initrd.img-4.4.174-rockchip64  uInitrd-4.4.174-rockchip64
armbian_first_run.txt.template  config-4.4.174-rockchip64  .next                          vmlinuz-4.4.167-rt176
boot.bmp                        dtb                        System.map-4.4.167-rt176       vmlinuz-4.4.174-rockchip64

 

Share this post


Link to post
Share on other sites
3 hours ago, rocksa said:

but after reboot the system boot in old kernel not the custom kernel.

Check the /boot/Image, /boot/uInitrd and /boot/dtb, they are symbolic links that need to be redone pointing to newer bins/folder .

Share this post


Link to post
Share on other sites
14 minutes ago, rocksa said:

What is dtb ?

My custom kernel has no dtb.

DTB = Device Tree Binaries

Normally, when you did your build, you should have a dtb package generated.

Since 4.4.167 and 4.4.174 are not to far from each other, the DTBs are maybe compatible, in such case try out your new kernel with the old DTB.

Share this post


Link to post
Share on other sites

No it does generated when i install custom kernel deb at /boot.

If fail to boot my custom kernel with 4.4.174 dtb can i recover boot

to 4.4.174 armbian kernel?

Share this post


Link to post
Share on other sites
31 minutes ago, rocksa said:

No it does generated when i install custom kernel deb at /boot.

No, it is a separate DEB, for example, something like : output/debs/linux-dtb-dev-rockpro64_5.81_arm64.deb

 

34 minutes ago, rocksa said:

can i recover boot to 4.4.174 armbian kernel?

Yes, by replacing the symbolic links like it was before ...

Share this post


Link to post
Share on other sites

no does not generated separate deb for dtb generated only kernel/headers/libc debs.

I made symlinks and now system does not boot.

How can i recover easily ?

Share this post


Link to post
Share on other sites
1 hour ago, rocksa said:

no does not generated separate deb for dtb generated only kernel/headers/libc debs.

Are you using Armbian build scripts or plain make ?

Armbian build scripts are producing something like : output/debs/linux-dtb-dev-rockpro64_5.81_arm64.deb

1 hour ago, rocksa said:

I made symlinks and now system does not boot.

Replacing symlinks properly should work since it was booting before ... Check them again, make sure they are pointing to previous files.

Share this post


Link to post
Share on other sites
1 hour ago, rocksa said:

no iam not used armbian scripts

i have done

make menuconfig

make deb-pkg

Then, using make, you can build DTBs with "make INSTALL_DTBS_PATH=$PWD/output/dtb dtbs" ... They will be copied into $PWD/output/dtb ...

 

BTW, are you compiling that locally on the RockPro64, or thru cross-compiling ?

Share this post


Link to post
Share on other sites

locally on rockpro64

i have done this but no dtb generated..

$ make INSTALL_DTBS_PATH=$PWD/../output/dtb dtbs
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CHK     include/generated/utsrelease.h
  CHK     include/generated/bounds.h
  CHK     include/generated/timeconst.h
  CHK     include/generated/asm-offsets.h
  CALL    scripts/checksyscalls.sh
make[1]: 'include/generated/vdso-offsets.h' is up to date.
  CHK     scripts/mod/devicetable-offsets.h

$ ls -la ../output
total 8
drwxr-xr-x 2 labros labros 4096 May 23 08:10 .
drwxr-xr-x 6 labros labros 4096 May 23 08:10 ..

but is found this in custom kernel.

Can i copy this dir manually in /boot and make symlink ?

 

$ ls arch/arm64/boot/dts/rockchip
Makefile                            rk3308-evb-amic-v11.dtb             rk3328-box-liantong-avb.dts       rk3368-px5-evb.dtb               rk3399-evb-rev1-cros.dtb              rk3399-opp.dtsi
modules.order                       rk3308-evb-amic-v11.dts             rk3328-box-liantong.dtb           rk3368-px5-evb.dts               rk3399-evb-rev1-cros.dts              rk3399pro.dtsi
px30-ad-d6-anx6345.dtb              rk3308-evb-dmic-i2s-v10.dtb         rk3328-box-liantong.dts           rk3368-r88-dcdc.dtb              rk3399-evb-rev1.dtsi                  rk3399pro-evb-v10.dtb
px30-ad-d6-anx6345.dts              rk3308-evb-dmic-i2s-v10.dts         rk3328-box-liantong.dtsi          rk3368-r88-dcdc.dts              rk3399-evb-rev2-android-6.0.dtb       rk3399pro-evb-v10.dts
px30-ad-r35-mb-rk618-dual-lvds.dtb  rk3308-evb-dmic-i2s-v11.dtb         rk3328-box-plus-dram-timing.dtsi  rk3368-r88.dtb                   rk3399-evb-rev2-android-6.0.dts       rk3399pro-evb-v11.dtb
px30-ad-r35-mb-rk618-dual-lvds.dts  rk3308-evb-dmic-i2s-v11.dts         rk3328-dram-2layer-timing.dtsi    rk3368-r88.dts                   rk3399-evb-rev2-android.dtb           rk3399pro-evb-v11.dts
px30-ad-r35-mb-rk618-hdmi.dtb       rk3308-evb-dmic-pdm-v10.dtb         rk3328-dram-default-timing.dtsi   rk3368-sheep.dtb                 rk3399-evb-rev2-android.dts           rk3399pro-npu.dtsi
px30-ad-r35-mb-rk618-hdmi.dts       rk3308-evb-dmic-pdm-v10.dts         rk3328.dtsi                       rk3368-sheep.dts                 rk3399-evb-rev2-cros.dtb              rk3399pro-npu-evb-v10.dtb
px30-ad-r35-mb-rk618-hdmi-lvds.dtb  rk3308-evb-dmic-pdm-v11.dtb         rk3328-evb-android-avb.dtb        rk3368-sheep-lvds.dtb            rk3399-evb-rev2-cros.dts              rk3399pro-npu-evb-v10.dts
px30-ad-r35-mb-rk618-hdmi-lvds.dts  rk3308-evb-dmic-pdm-v11.dts         rk3328-evb-android-avb.dts        rk3368-sheep-lvds.dts            rk3399-evb-rev2.dtsi                  rk3399-rock960-ab.dtb
px30-ad-r35-mb-rk618-lvds.dtb       rk3308-evb-ext-v10.dtsi             rk3328-evb-android.dtb            rk3368-sziauto-rk618.dtb         rk3399-evb-rev3-android-6.0.dtb       rk3399-rock960-ab.dts
px30-ad-r35-mb-rk618-lvds.dts       rk3308-evb-v10.dtsi                 rk3328-evb-android.dts            rk3368-sziauto-rk618.dts         rk3399-evb-rev3-android-6.0.dts       rk3399-rockpro64.dtb
px30-android.dtsi                   rk3308-evb-v11.dtsi                 rk3328-evb-android.dtsi           rk3368-xikp-avb.dts              rk3399-evb-rev3-android-6.0-edp.dtb   rk3399-rockpro64.dts
px30-dram-default-timing.dtsi       rk3308-fpga.dtb                     rk3328-evb.dtb                    rk3368-xikp.dtb                  rk3399-evb-rev3-android-6.0-edp.dts   rk3399-rv1-android.dtb
px30.dtsi                           rk3308-fpga.dts                     rk3328-evb.dts                    rk3368-xikp.dts                  rk3399-evb-rev3-android.dtb           rk3399-rv1-android.dts
px30-evb-ddr3-lvds-v10.dtb          rk3308k.dtsi                        rk3328-rock64-android-avb.dtb     rk3368-xikp.dtsi                 rk3399-evb-rev3-android.dts           rk3399-sapphire.dtsi
px30-evb-ddr3-lvds-v10.dts          rk3308-voice-module-board-v10.dtb   rk3328-rock64-android-avb.dts     rk3399-android-6.0.dtsi          rk3399-evb-rev3-android-edp.dtb       rk3399-sapphire-excavator-box-android-6.0.dtb
px30-evb-ddr3-v10.dtb               rk3308-voice-module-board-v10.dts   rk3328-rock64-android.dtb         rk3399-android.dtsi              rk3399-evb-rev3-android-edp.dts       rk3399-sapphire-excavator-box-android-6.0.dts
px30-evb-ddr3-v10.dts               rk3326-863-cif-sensor.dtsi          rk3328-rock64-android.dts         rk3399-box-808-android-6.0.dtb   rk3399-evb-rev3-android-lp4.dtb       rk3399-sapphire-excavator-box.dtb
px30-evb-ddr3-v10-linux.dtb         rk3326-863-lp3-v10-avb.dtb          rk3328-rock64-android.dtsi        rk3399-box-808-android-6.0.dts   rk3399-evb-rev3-android-lp4.dts       rk3399-sapphire-excavator-box.dts
px30-evb-ddr3-v10-linux.dts         rk3326-863-lp3-v10-avb.dts          rk3328-rock64.dtb                 rk3399-box-android-6.0.dtsi      rk3399-evb-rev3-android-mipi-edp.dtb  rk3399-sapphire-excavator-disvr.dtb
px30-evb-ddr4-v10.dtb               rk3326-863-lp3-v10.dtb              rk3328-rock64.dts                 rk3399-box.dtsi                  rk3399-evb-rev3-android-mipi-edp.dts  rk3399-sapphire-excavator-disvr.dts
px30-evb-ddr4-v10.dts               rk3326-863-lp3-v10.dts              rk3366-android-6.0.dtsi           rk3399-box-rev1-android-6.0.dtb  rk3399-evb-rev3-cros.dtb              rk3399-sapphire-excavator-edp-android-6.0.dtb
px30-evb-ext-rk618.dtb              rk3326-863-lp3-v10.dtsi             rk3366-android.dtsi               rk3399-box-rev1-android-6.0.dts  rk3399-evb-rev3-cros.dts              rk3399-sapphire-excavator-edp-android-6.0.dts
px30-evb-ext-rk618.dts              rk3326-86v-v10.dtb                  rk3366.dtsi                       rk3399-box-rev1-disvr.dtb        rk3399-evb-rev3.dtsi                  rk3399-sapphire-excavator-edp-avb.dtb
px30-z7-a0-rk618-dsi.dtb            rk3326-86v-v10.dts                  rk3366-fpga.dtb                   rk3399-box-rev1-disvr.dts        rk3399-excavator-sapphire.dtsi        rk3399-sapphire-excavator-edp-avb.dts
px30-z7-a0-rk618-dsi.dts            rk3326.dtsi                         rk3366-fpga.dts                   rk3399-box-rev1.dtb              rk3399-firefly-android.dtb            rk3399-sapphire-excavator-edp.dtb
rk1808-dram-default-timing.dtsi     rk3326-evb-ai-va-v10.dtb            rk3366-sheep.dtb                  rk3399-box-rev1.dts              rk3399-firefly-android.dts            rk3399-sapphire-excavator-edp.dts
rk1808.dtsi                         rk3326-evb-ai-va-v10.dts            rk3366-sheep.dts                  rk3399-box-rev2-android-6.0.dtb  rk3399-firefly-linux.dtb              rk3399-sapphire-excavator-edp.dtsi
rk1808-evb.dtsi                     rk3326-evb-ai-va-v11.dtb            rk3366-tb.dts                     rk3399-box-rev2-android-6.0.dts  rk3399-firefly-linux.dts              rk3399-sapphire-excavator-linux.dtb
rk1808-evb-v10.dtb                  rk3326-evb-ai-va-v11.dts            rk3368-android.dtsi               rk3399-box-rev2-disvr.dtb        rk3399-fpga.dtb                       rk3399-sapphire-excavator-linux.dts
rk1808-evb-v10.dts                  rk3326-evb-ai-va-v11-i2s-dmic.dtb   rk3368-cif-sensor.dtsi            rk3399-box-rev2-disvr.dts        rk3399-fpga.dts                       rk3399-sched-energy.dtsi
rk1808-evb-x4.dtb                   rk3326-evb-ai-va-v11-i2s-dmic.dts   rk3368-dram-default-timing.dtsi   rk3399-box-rev2.dtb              rk3399-gru.dtsi                       rk3399-tve1030g-avb.dtb
rk1808-evb-x4.dts                   rk3326-evb-lp3-v10-avb.dtb          rk3368.dtsi                       rk3399-box-rev2.dts              rk3399-gru-gru.dtb                    rk3399-tve1030g-avb.dts
rk1808-fpga.dtb                     rk3326-evb-lp3-v10-avb.dts          rk3368-evb-act8846.dtb            rk3399-disvr-android.dtb         rk3399-gru-gru.dts                    rk3399-tve1030g.dtb
rk1808-fpga.dts                     rk3326-evb-lp3-v10.dtb              rk3368-evb-act8846.dts            rk3399-disvr-android.dts         rk3399-gru-kevin-r0.dtb               rk3399-tve1030g.dts
rk3308-ai-va-v10.dtb                rk3326-evb-lp3-v10.dts              rk3368-evb.dtsi                   rk3399-dram-default-timing.dtsi  rk3399-gru-kevin-r0.dts               rk3399-tve1030g.dtsi
rk3308-ai-va-v10.dts                rk3326-evb-lp3-v10.dtsi             rk3368-geekbox.dtb                rk3399.dtsi                      rk3399-gru-kevin-r1.dtb               rk3399-tve1205g.dtb
rk3308b-evb-amic-v10.dtb            rk3326-evb-lp3-v10-linux.dtb        rk3368-geekbox.dts                rk3399-early-opp.dtsi            rk3399-gru-kevin-r1.dts               rk3399-tve1205g.dts
rk3308b-evb-amic-v10.dts            rk3326-evb-lp3-v10-linux.dts        rk3368-p9-avb.dts                 rk3399-evb-cros.dtsi             rk3399k-opp.dtsi                      rk3399-videostrong-linux.dtb
rk3308b-evb-ext-v10.dtsi            rk3326-evb-lp3-v10-robot-linux.dtb  rk3368-p9.dtb                     rk3399-evb.dtsi                  rk3399-linux.dtsi                     rk3399-videostrong-linux.dts
rk3308b-evb-v10.dtsi                rk3326-evb-lp3-v10-robot-linux.dts  rk3368-p9.dts                     rk3399-evb-rev1-android-6.0.dtb  rk3399-mid-818-android-6.0.dtb        rk3399-vop-clk-set.dtsi
rk3308.dtsi                         rk3326-linux.dtsi                   rk3368-p9.dtsi                    rk3399-evb-rev1-android-6.0.dts  rk3399-mid-818-android-6.0.dts        rk3399-vr-android.dtb
rk3308-evb-amic-v10.dtb             rk3328-android.dtsi                 rk3368-px5-evb-android.dtb        rk3399-evb-rev1-android.dtb      rk3399-mid-818-android.dtb            rk3399-vr-android.dts
rk3308-evb-amic-v10.dts             rk3328-box-liantong-avb.dtb         rk3368-px5-evb-android.dts        rk3399-evb-rev1-android.dts      rk3399-mid-818-android.dts

 

Share this post


Link to post
Share on other sites
0