System

Q1: 编译完kernel,如何对板子进行kernel升级?

复制编译kernel后生成的uImage.xz文件到image下重命名kernel,替换掉原来的kernel文件,再通过tftp或者ISP工具进行升级。

Q2: 怎么通过当前编译project的defconfig确定kernel所使用的config及dts?

在project/configs/defconfigs/目录下存放着当前所有的config文件,打开所使用的config文件可以看到CONFIG_KERNEL_CONFIG参数所指定的配置即为当前kernel所使用的配置,如:

tianhui.he@xml0bc6401:~/codes/sourcecode/project$ cat configs/defconfigs/
dispcam_m6_spinand.glibc-9.1.0-squashfs.016a.512x512.bga2.demo_defconfig
 | grep "CONFIG_KERNEL_CONFIG"

CONFIG_KERNEL_CONFIG="mercury6_ssc016a_s01a_spinand_dispcam_defconfig"

或者在make image时也可以看到一行log:linux-config:"mercury6_ssc016a_s01a_spinand_dispcam_defconfig" 在kernel目录下打开所使用的defconfig,搜索CONFIG_SS_DTB_NAME对应的值即为所使用的dts文件名(后缀“.dts”),如:

tianhui.he@xml0bc6401:~/codes/sourcecode/kernel$ cat arch/arm/configs/mer
cury6_ssc016a_s01a_spinand_dispcam_defconfig | grep "CONFIG_SS_DTB_NAME"

CONFIG_SS_DTB_NAME="mercury6-ssc016a-s01a-dispcam"