接上一节iTop-4412 SCP 精英版 linux-4.14.12 内核移植(1)
linux-4.14.12中对iTop-4412 SCP 精英版有支持的设备树的,只需要修改一些细节就可以直接使用了,在arch/arm/boot/dts目录下有精英版支持的设备树
(一)修改exynos4412-itop-elite.dts
根据讯为给的开发版原理图,led2接的是gpl2_0的管脚,看图
修改exynos4412-itop-elite.dts文件下的led节点
- gpios = <&gpx1 0 GPIO_ACTIVE_HIGH>;
+ gpios = <&gpl2 0 GPIO_ACTIVE_HIGH>;
注:我这里还改了led灯的默认状态
(二)修改exynos4412-itop-scp-core.dtsi
把 firmware 节点注释了,因为我们的iTop-4412 SCP 精英版 “没有固件”,或者说没有把引导烧进固件,所以直接注释掉
(三)修改exynos4412-itop-scp-core.dtsi
当你编译运行后,你会发现系统会跑飞,怎么解决呢?
你会发现在exynos4412-itop-scp-core.dtsi文件中有 devfreq-events 这样的节点属性
但是这个属性是不能被识别的,原因在识别这个属性的驱动文件里边,
在drivers/devfreq/目录下有歌devfreq-event.c的文件,
这是识别的devfreq-event属性,不是devfreq-events,所以将exynos4412-itop-scp-core.dtsi文件中的devfreq-events改成devfreq-event就行了。
编译烧写之后,你会发现可以进入文件系统了。
(四)解决电平问题(不能正常输入)
虽然能进入文件系统了,但是不能输入,或者说输入有点卡,其实这是电平的问题,怎么解决呢?其实控制台输出的时候就给了提示了
按照这上面的提示数据和scp核心板的原理图中的s5m8767芯片引脚修改就行了
&i2c_1 {
#address-cells = <1>;
#size-cells = <0>;
samsung,i2c-sda-delay = <100>;
samsung,i2c-max-bus-freq = <400000>;
pinctrl-0 = <&i2c1_bus>;
pinctrl-names = "default";
status = "okay";
s5m8767: s5m8767-pmic@66 {
com