1、Linux系统开发板s5p6818分布及烧写Linux内核和rootfs文件系统

1、开发板emmc存储分布

        uboot(启动)                  linux内核                                  rootfs(文件系统)                    appfs(应用程序)
    0------------------------1M---------------------------65M------------------------------------------------------819M--------------------------|
                           1024KB                      65×1024KB                                                 819×1024KB
                           2048sector                 65×2 sector                                                 819×2 sector                           512字节为1扇区

2、查看下emmc分区情况

    fdisk 2                  -------查看第二个启动磁盘emmc分区情况
    
            ---------------------------------------------------------------------------
            Partition Map for MMC device 2  --   Partition Type: DOS
            Part    Start Sector    Num Sectors     UUID            Type
              1     2048            131072          00000000-01     83
              2     133120          1544192         00000000-02     83
            Vendor: Man 000015 Snr 16304d18 Rev: 0.6 Prod: 8GTF4R
                        Type: Removable Hard Disk
                        Capacity: 7456.0 MB = 7.2 GB (15269888 x 512)
            ------------------------------------------------------------------------------

3、给emmc重新分区

    分区命令     fdisk 2 3 0x100000:0x4000000     0x4100000:0x2f200000  0x33300000:0
                                给第2个emmc设备分成3个区,
                                            第一区从0x100000字节(1MB)开始分配0x4000000个字节(64MB)        Linux内核区
                                            第二区从0x4100000字节(65MB)开始分配0x2f200000个字节(764MB)    rootfs文件系统区
                                            第三区从0x33300000字节(819MB)开始分配0剩余所有字节(剩余全部分配)appfs应用程序区
    重新查看     fdisk 2

                                -----------------------------------------------------------------------------
                                Partition Map for MMC device 2  --   Partition Type: DOS
                                Part    Start Sector    Num Sectors     UUID            Type
                                  1     2048            131072          00000000-01     83
                                  2     133120          1544192         00000000-02     83
                                  3     1677312         13592576        00000000-03     83
                                Vendor: Man 000015 Snr 16304d18 Rev: 0.6 Prod: 8GTF4R
                                            Type: Removable Hard Disk
                                            Capacity: 7456.0 MB = 7.2 GB (15269888 x 512)
                                -------------------------------------------------------------------------------

4、给emmc分区写入Linux内核和rootfs文件系统

    mmc write 48000000 0x800 0x3000                      ----uImage                Linux内核镜像文件名
                把内存48000000的数据向mmc设备从800扇区开始连续写入3000个扇区        ---48000000提前下载好Linux内核镜像文件
    mmc write 48000000 0x20800 0x32000                ----rootfs_ext4.img    文件系统镜像文件名
                把内存48000000的数据向mmc设备从20800扇区开始连续写入32000个扇区  ---48000000提前下载好rootfs文件系统镜像文件

5、设置uboot环境变量bootcmd开机加载Linux内核

    开机自动启动linux内核
    设置环境变量bootcmd指令格式一:setenv bootcmd mmc read 48000000 800 3000 \; bootm 48000000
    设置环境变量bootcmd指令格式二:setenv bootcmd ‘mmc read 48000000 800 3000;bootm 48000000’
    保存环境变量                  :saveenv

    -----------------------------------------------------------------------------------------------------------------------------
    说明:
            mmc read 48000000 800 3000
            加载Linux内核:从emmc偏移为800扇区开始连续读取3000个扇区内容到内存48000000的位置
            bootm 48000000
            启动Linux内核:bootm会先准备好内核启动所需要的参数 然后跳转48000000位置去执行
    ------------------------------------------------------------------------------------------------------------------------------

6、设置uboot环境变量bootargs指定文件系统位置等信息

    设置环境变量bootargs指令:setenv bootargs root=/dev/mmcblk0p2 rootfstype=ext4 init=/linuxrc console=ttySAC0 maxcpus=1 lcd=wy070ml tp=gslx680 loglevel=2
             root, 指定根文件系统位置
             rootfstype,指定根文件系统类型
             init,指定用户空间的1号进程
             console,指定控制台 ttySAC0即uart0     例如:console=ttySAC0,115200     控制台使用串口0,波特率115200.
             maxcpus=1, 单核启动
             lcd
             tp ,指定LCD 触摸屏类型
             loglevel=2,设置打印优先级阈值 (驱动课解释)
      保存环境变量                    :saveenv
    --------------------------------------------------------------------------------------------------------
    注意:
            setenv bootargs .... loglevel=2....
                    uboot设置此项解决Linux启动重复输出WARN问题(此为驱动打印的调试信息,硬件不稳定造成的,可能是串口线松动--但是我感觉不对,串口线松了怎么会有信息传递过来!)

7、重启开发板登录使用

	uboot中使用 re 命令重启开发板
	账户:root
	密码:123456
	ifconfig eth0 192.168.1.6                  --------设置网卡ip
	ping 192.168.1.8                              --------ping远程服务器
	tftp -g -r 文件名 192.168.1.8             --------远程下载文件
            -g: get
            -r : remove 远程
    chmod +x 文件名                             --------给文件加执行权限
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值