[tiny4412][kernel]tiny4412 Linux4.4内核移植

硬件:
    核心板  : Tiny4412-1306-Schematic
    底板    : Tiny4412SDK-1308(没有micro USB)其他都一样

参考博客:https://www.cnblogs.com/pengdonglin137/p/5143516.html

在此感谢前辈分享。

代码已上传至github上管理。https://github.com/Jason543716996/tiny4412.git

使用完别忘记点赞,关注,方便交流学习

一、修改设备树文件

diff --git a/arch/arm/boot/dts/exynos4412-tiny4412.dts b/arch/arm/boot/dts/exynos4412-tiny4412.dts
index 4840bbd..013f52f 100644
--- a/arch/arm/boot/dts/exynos4412-tiny4412.dts
+++ b/arch/arm/boot/dts/exynos4412-tiny4412.dts
@@ -18,7 +18,7 @@
 / {
        model = "FriendlyARM TINY4412 board based on Exynos4412";
        compatible = "friendlyarm,tiny4412", "samsung,exynos4412", "samsung,exynos4";
-
+       bootargs = "root=/dev/ram0 rw rootfstype=ext4 console=ttySAC0,115200 init=/linuxrc earlyprintk";
        chosen {
                stdout-path = &serial_0;
        };
@@ -78,7 +78,7 @@
        bus-width = <4>;
        pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>;
        pinctrl-names = "default";
-       status = "okay";
+       status = "disabled";
 };

二、编译

    export ARCH=arm
    export CROSS_COMPILE=arm-none-linux-gnueabi-
    
    make exynos_defconfig
    make uImage LOADADDR=0x40008000 -j2
    make dtbs

三、配置u-boot环境变量

将编译好的内核:uImage 
        设备树:exynos4412-tiny4412.dtb
        根文件系统镜像:ramdisk.img 放入内存指定内存地址。
由于1308的底板没有micro USB,可以选择用loadb 将内核、设备树、根文件系统镜像放入指定位置,或者读取SDMMC
这里选择通过fatload读取:
    set bootcmd "fatload mmc 1 40500000 uImage;fatload mmc 1 41000000  ramdisk.img;fatload mmc 1 42000000 exynos4412-tiny4412.dtb;bootm  0x40500000 0x41000000 0x42000000"
    save
    boot
    可以看到已经启动了内核。

================================================================================================

但是,由于没有加载SDMMC  或者 EMMC,看到的文件系统分区的空间很小。

[tiny4412][kernel]tiny4412 Linux4.4内核移植_第1张图片

       接下来,移植网卡驱动,通过网络文件系统进行调试,最后可以移植SD卡驱动或者MMC,将内核、设备树、根文件系统放入MMC中存储,运行。

 

你可能感兴趣的:(Tiny4412)