天嵌 ARM开发社区

 找回密码
 注册
查看: 10250|回复: 13

E8——SD卡更新ubuntu系统

[复制链接]
Calvin 发表于 2013-9-30 09:14:43 | 显示全部楼层 |阅读模式
本帖最后由 Calvin 于 2013-9-30 10:06 编辑

SD卡更新ubuntu系统
Ø 首先根据前面的章节制作好SD启动卡之后,在SD卡根目录下新建名为“images”的目录(如果已经存在请您跳过这一步)。
Ø 在images目录下存放自动烧写脚本“EmbedSky.ini”文件(建议直接从光盘拷贝过来)。
根据您的SD卡下的实际路径编辑“EmbedSky.ini”的内容(E8配套光盘里面提供的“EmbedSky.ini”文件的框架仅供参考,实际路径以您的SD卡的目录结构为准)。
下面是本手册编写者修改用于更新Ubuntu系统的,您一定要根据您的实际情况来做修改。下面是本手册编写者根据自己SD卡中保存镜像路径修改的:
以下是Embedsky.ini内容
#### This is E8 SD config files ####
operating condition=install   #注释1
OS Type=Ubuntu       #注释2
LED indicator=on
Beep=on
#### Others ####
bootloader=images\u-boot.bin   #注释3
LOGO=images\logo_1024x768_24bit.bin    #注释4
#### Others end ####
#### Linux ####
kernel=images\zImage.bin
rootfs=images\rootfs_dir.tar.bz
#### Linux end ####
#### Windows CE ####
NK=images\wince\MLC256MB_A104\NK.bin
#### Windows CE end ####
#### Android ####
kernel=images\zImage.bin     
rootfs=images\rootfs_android_4.0.4_E8.tar.bz2
#### Android end ####
#### Ubuntu ####
kernel=images\zImage.bin     #注释5
rootfs=images\rootfs_ubuntu_12.0.4_E8.tar.bz2 #注释 6
#### Ubuntu end ####
#### uCOS-II ####
uCOS-II Image=images\uCOS-II\E8_UCOS-II.bin
#### uCOS-II end ####
#### User Application ####
Application Image=images\UserAPPS\E8_Test.bin
#### User Application end 6###
备注:此EmbedSky.ini文件的格式不要随意改动,读者只需修改“=”后面的路径值,不然会导致烧写不成功。
注释1:此处应设置为install, 其中run命令暂不支持。
注释2:此处填写烧写的系统类型为Ubuntu。
注释3:指定需要下载的bootloader镜像路径,如果为空则不进行bootloader的烧写,会自动跳过此步
注释4:指定需要下载的logo镜像路径,如果为空则不进行logo的烧写,会自动跳过此步。(目前E8的默认分辨率是1024*768,那么logo的图片也应为1024*768,否则显示可能会不正常)
注释5:指定需要下载的内核镜像,如果为空则不进行内核镜像的烧写,会自动跳过此步。(Ubuntu用的内核是与LInux的内核是一样的,所以这里烧写的路径要注意一下,不要选择了Android的内核)
注释6:指定需要下载的文件系统压缩包,文件系统类型是tar.bz2(后缀名是:.tar.bz2),如果为空则不进行文件系统的烧写,会自动跳过此步。
下面准备好E8和显示器,开始进行更新操作。
特别说明1:请尽量少更新u-boot、内核、文件系统和开机logo,尽量避免因为多次烧写而引起eMMC损坏的情况;由于文件系统有块疲劳管理机制,对坏块的产生可以自动尽可能的避免。
1)、更新uboot
备注:(如果板子已经烧写了uboot可以直接跳过)
Ø 上电启动时,有两种方法进入uboot主菜单界面:第一,使用串口线连接E8和宿主机,在宿主机运行minicomLinux平台),在上电时按着宿主机键盘的空格键,即可。第二,E8连接监视器,并配备USB键盘/鼠标,在上电时同时按住E8的三个按键(先按着大小音量按键即紧靠着的两个按键,然后按着不放再按电源开关按键)
Ø 进入uboot菜单后,选1,下载ubooteMMC
Ø 下载完成后,选择h,关电;
Ø 再按启动键,重启E8按空格键重新进入uboot主菜单界面。
2)、给eMMC分区
备注:(如果板子原来的系统是Android或者Linux必须执行此步,此步是用于从Android/Linux操作系统更换为Ubuntu系统做准备的)
Ø 在uboot菜单输入命令9,进入子菜单;
注意:如果烧写Ubuntu就选[1] Create 2 partitions。这是因为Ubuntu的文件系统比Android大得多,而4GBeMMC空间给了Ubuntu后,就不够多开一个分区了。
Ø 分区完成后,选[3] Erase Env partition,刷新一下启动参数分区。
Ø 按q返回第一级菜单。
3)、烧写用于自动烧写的内核镜像
备注:(如果板子本来就有Android的内核镜像,那么可以跳过此步,否则必须执行此步)
Ø 在一键式菜单输入命令3,进入子菜单,选1烧写Android内核镜像:
4)、烧写RAMDISK镜像
备注:(如果板子本来就有Ramdisk,那么可以跳过此步,否则必须执行此步)
Ø 在uboot菜单输入命令5,烧写RAMDISK镜像(直接用光盘的文件不用解压)
5)、设置启动参数
Ø 在uboot菜单输入命令0,进入下一级菜单,再选5,设置成从Ramdisk启动:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| Calvin 发表于 2013-9-30 09:25:42 | 显示全部楼层
本帖最后由 Calvin 于 2013-9-30 10:03 编辑

6)、启动自动烧写
Ø 返回uboot第一级菜单,输入命令[8] Boot the system,E8启动系统,启动后挂载Ramdisk文件系统;
Ø 然后,系统将按照SD卡的images目录下的EmbedSky.ini进行自动烧写,完成后自动关机。
说明:这里的操作要花一点时间,但是全程都是自动执行的,用户只需要输入命令8就可以了,操作完成后,E8会自动关机,用户再进行下一步动作。
Ø E8烧写完成后会自动关机, 读者需要手动按电源键开机并且进入uboot菜单(参考第一步如何进入uboot菜单),接着进入第七步。
7)、启动系统
要想每次开机自动启动Ubuntu,需要重复5)、设置启动参数;
首先,先进入uboot菜单选项,然后选择[0] Set the boot parameters,最后选择[3] Set EXT4FS boot parameter for Ubuntu;此时还需要特别注意一点——需要保存刚刚操作 Save the parameters to board.以后就可以默认启动Ubuntu启动了。
备注:如果重新上电之后系统没有起来可以按以下步骤检查一下:
1、EmbedSky.ini文件格式是否正确,这里的Embedsky.ini文件一定要严格按照光盘的格式,不要随便更改,只可以修改“=”号后面的路径,其余不要做任何修改(参考第一步之前的说明);特别是内核的选择问题,(Ubuntu用的内核是与LInux的内核是一样的,所以这里烧写的路径要注意一下,不要选择了Android的内核)
2、是否把启动参数设置对了(参考第七步)
3、文件系统的压缩包是否是拷贝于光盘的出厂镜像目录下的,可以直接打开文件系统压缩包,检查一下文件系统是否压缩于当前./目录下的,如下图所示
再双击.目录 如下所示

如果不是,那么可以先把文件系统解压(假设文件系统名字为rootfs.tar.bz2,那么用命令“tar -xjvf rootfs.tar.bz2 -C /opt/Embedsky/TQ210/E8/”)之后转到文件系统的目录下(假设文件系统假压后所在目录为/opt/Embedsky/TQ210/E8/rootfs,那么就用命令“cd /opt/Embedsky/TQ210/E8/rootfs”),再进行压缩(用命令“tar -cjvf ../rootfs_for_E8_ubuntu.tar.bz2 ./”,此命令作用是把/opt/Embedsky/TQ210/E8/rootfs目录下的东西压缩到上层目录/opt/Embedsky/TQ210/E8/的rootfs_for_E8_ubuntu.tar.bz2文件)。
检查这几步之后,基本可以解决问题。如果上面3点中有其中一个环节出现操作失误,那么笔者建议读者重新从第一步开始操作。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
apple3 发表于 2013-9-30 09:34:23 | 显示全部楼层
本帖最后由 apple3 于 2013-9-30 09:47 编辑

顶一个!!:lol
天嵌技术支持01 发表于 2013-9-30 09:56:33 | 显示全部楼层
灌水大人  值得学习
蘑菇点点 发表于 2013-9-30 17:13:48 | 显示全部楼层
本帖最后由 蘑菇点点 于 2013-9-30 18:42 编辑

我按照你的步骤进行更新。前面6步所有的都正常。系统更新用了几十分钟,然后自动关闭,跟你前面描述的完全一样。但更新完系统后,最后却无法启动。最后一部分错误提示如下:
FIMC0 registered successfully
FIMC1 registered successfully
FIMC2 registered successfully
S5PC1XX TVOUT Driver, (c) 2009 Samsung Electronics
s5p-tvout s5p-tvout: hpd status is cable removed
EXT4-fs (mmcblk0p3): 6 orphan inodes deleted
EXT4-fs (mmcblk0p3): recovery complete
EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 179:3.
Freeing init memory: 188K
Failed to execute /init.  Attempting defaults...
modprobe: FATAL: Could not load /lib/modules/3.0.8-EmbedSky/modules.dep: No such file or directory

* Starting system logging daemon[ OK ]
* Starting configure network device security[ OK ]
* Starting configure network device[ OK ]
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
speech-dispatcher disabled; edit /etc/default/speech-dispatcher
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
* Starting system PulseAudio Daemon        (stc): gdata/new_proto/recv or reg_complete_cb not ready
fmdrv: Failed to get ST write func pointer
(stc):  chnl_id 8 not supported
fmdrv: Unable to prepare FM CORE
vo_open::check tvout start !!
vo_open::check tvout start !!
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
init: Failed to create pty - disabling logging for job
[ OK ]
saned disabled; edit /etc/default/saned
init: Failed to create pty - disabling logging for job
samsung-i2s samsung-i2s.0: i2s_set_sysclk:533 Other DAI busy
-----------------------------------------------------------------------------
对比一下,这是我烧录成功的带qt4.5的linux的对应部分:
FIMC0 registered successfully
FIMC1 registered successfully
FIMC2 registered successfully
S5PC1XX TVOUT Driver, (c) 2009 Samsung Electronics
s5p-tvout s5p-tvout: hpd status is cable removed
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 179:2.
Freeing init memory: 188K
rtusb init rt2870 --->
usbcore: registered new interface driver rt2870
Try to bring net interface up ...
sh: 1: unknown operand
ifconfig eth0 hw ether 10:23:45:67:89:ab
dm9000 dm9000: eth0: link down
ADDRCONF(NETDEV_UP): eth0: link is not ready
ifconfig eth0 192.168.1.6 netmask 255.255.255.0 up
add default gw 192.168.1.2
Done
蘑菇点点 发表于 2013-9-30 17:16:56 | 显示全部楼层
本帖最后由 蘑菇点点 于 2013-9-30 18:41 编辑

这个是我init的部分:
#### This is E8 SD config files ####
operating condition=install
OS Type=ubuntu
LED indicator=on
Beep=on

#### Others ####
bootloader=images\u-boot_E8_20130826.bin
LOGO=images\
#### Others end ####

#### Linux ####
kernel=images\
rootfs=images\
#### Linux end ####

#### Windows CE ####
NK=images\wince\NK.bin
#### Windows CE end ####

#### Android ####
kernel=
rootfs=images\android\rootfs_android_4.0.4_E8_20130823.tar.bz2
#### Android end ####

#### Ubuntu ####
kernel=images\zImage_E8_linux_20130823.bin
rootfs=images\ubuntu1204_20130821_camera.tar.bz2
#### Ubuntu end ####

#### uCOS-II ####
uCOS-II Image=images\uCOS-II\E8_UCOS-II.bin
#### uCOS-II end ####

#### User Application ####
Application Image=images\UserAPPS\E8_Test.bin
#### User Application end #####

 楼主| Calvin 发表于 2013-10-8 09:47:24 | 显示全部楼层
本帖最后由 Calvin 于 2013-10-8 17:33 编辑
蘑菇点点 发表于 2013-9-30 17:16
这个是我init的部分:
#### This is E8 SD config files ####
operating condition=install


我看了一下你描述的问题,你贴出来的串口信息提示不代表系统没跑起来,你有没有接上VGA来看下,因为如果ubuntu的登录界面出来之后,串口就不会有信息出现的了,想要操作需要接上usb鼠键来操作,ubuntu的用户名是root密码是ubuntu
如果在VGA显示器也没有显示的话,那么文件系统烧写不成功,可以重新再烧写一遍 问题基本会得到解决。
蘑菇点点 发表于 2013-10-9 19:38:05 | 显示全部楼层
本帖最后由 蘑菇点点 于 2013-10-9 19:44 编辑

连接vga,显示成功。

还有如下的问题:
1.连接hdmi,包括1080p和720p,都没有显示。其中我用了三根hdmi线做的实验,这三根线都能正常将笔记本,ps3,平板电脑连接到显示器和电视。
2.在vga模式下,按关机按钮,无法关机,只能退到登录界面。这是正常现象还是bug。
3.感觉cpu在运行期间特别的烫,为什么没有在cpu上面加个散热片。
4.在ubuntu下面,速度特别的慢。我家里的512m的电脑,运行ubuntu也没有慢到这个程度,是系统优化问题,还是a8运行ubuntu本来就是这样的。。
 楼主| Calvin 发表于 2013-10-10 14:44:45 | 显示全部楼层
蘑菇点点 发表于 2013-10-9 19:38
连接vga,显示成功。

还有如下的问题:

1、ubuntu还没有实现HDMI功能
2、ubuntu的vga模式下,按一下关机按键,就会弹出关机请求界面(60s之后会自动关机或者点击关机)
3、散热片请联系一下销售(QQ:1296032250 电话13590661229)
4、是优化问题,还没有进行深入优化,这个会陆续进行
蘑菇点点 发表于 2013-10-11 08:27:47 | 显示全部楼层
那什么时候能完善ubuntu的hdmi驱动?
是否正在做?
 楼主| Calvin 发表于 2013-10-12 08:58:39 | 显示全部楼层
蘑菇点点 发表于 2013-10-11 08:27
那什么时候能完善ubuntu的hdmi驱动?
是否正在做?

正在做,我们会尽快给出来的
e516343175 发表于 2016-4-14 15:55:21 | 显示全部楼层
Calvin 发表于 2013-10-8 09:47
我看了一下你描述的问题,你贴出来的串口信息提示不代表系统没跑起来,你有没有接上VGA来看下,因为如 ...

如果我希望在串口登录终端,而不是接显示器登入图形界面,有办法吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-4-20 01:46 , Processed in 1.046875 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表