刘世伟 的blog

蚂蚁战车的diy以及变砖,白屏的修复

蚂蚁战车使用神州龙芯的cpu CQ8401 

文件系统是使用的squashfs  v3.3  跟目前在2.6.29内核的v4.0不兼容。

大家可以使用debian lenny的squashfs-tool来打包firmware包, 如果用4.0就会有问题。

bootloader用的是 u-boot, 在flash 中u-boot的区域是设置为readonly的, 一般不会被覆盖重写。

如果rootfs或者kernel 被写坏了, 可以通过串口登录蚂蚁战车, 通过tftp服务器来重写 kernel  和rootfs

通过/dev/mem 获取 pmon备份

dd if=/dev/mem of=/home/pmon   bs=1 skip=469762048 count=524288

dd if=/dev/mem of=/home/pmon1 bs=1 skip=470286336 count=524288

得到2个文件  /home/pmon 和/home/pmon1应该完全一样:

md5sum /home/pmon /home/pmon1

在文件的最后, 应该可以看到pmon的set的变量 karg al啥de

strings /home/pmon

龙芯本的拆解

发现2年前的一个帖子, 收藏过来

http://bbs.lemote.com/viewthread.php?tid=19367&extra=&highlight=...

取掉电池

 


打开HDD COVER,取掉内部锁键盘的螺丝、sd卡/硬盘,同时去掉底部所有螺丝以便正面拆装

 

今天整理comcat写的ffmpeg的idct补丁

补丁的汇编看不懂, 我也就是做些编辑的工作吧,

在2007年,comcat的这个补丁, 某些指令的写法跟2008年的binutils的龙芯2有些不同,

我在 http://forum.openrays.org/read-htm-tid-3808.html 找到一篇comcat写的汇编清单,

然后对照binutils-2.20.1里面的as的op-mips.c 可以找到汇编指令的不同之处,

比如在补丁中用到fxor,   D,V,T,   0x47800002, 0xffe0003f

2.6.33 电源容量显示0.0%问题

 用软件源里面的2.6.33,应该已经可以显示真实的电量%

uname -a

2.6.33-lemote2f-bfs #3 PREEMPT Thu Mar 4 19:44:34 CST 2010

如果还是不行, 可能就是ec或者 pmon的问题了。

版本: cat /proc/cmdline

看到 pmon应该1.4.3以上,

ec应该能显示版本,并且是12版本以上。

升级pmon:

http://dev.lemote.com/drupal/node/70

升级ec:
http://dev.lemote.com/drupal/node/57

龙芯笔记本的显卡驱动

龙梦提供的是2.2.8 是由 显卡芯片厂家, 在1.5.1的基础上开发出来的一个分支,

厂家继续开发的 Release 在http://docs.google.com/View?id=dcf76qpd_108f4x96td9

现在xorg的silicon的显卡版本是1.7.3, 增加了很多的功能,目前部分加速功能已经移植到 1.7.3, 但是外接显示器没有输出。

gnome充电进度的显示修复

2.6.33的内核, 使用了新的 power_supply结构来显示电池信息, 停止了apm方式的电池信息,

这样在gnome-power-manage 中, 就可以显示电源信息, 而不再依赖于 基于 apm的apply小程序了。

但是在龙芯的power_supply中有些小问题, 使得gnome-power-manage中只能显示电池状态, 比如充电中,放电中, 已充满, 而不能显示裆前的电量百分比,

debian6下龙芯笔记本的显卡速度提升3倍

 

rixed把龙梦的2.2.8的显卡驱动的龙芯加速, 移植到了1.7.4版本,这样我們在debian6下也有高速的显卡驱动可以用了。

新的显卡已经放进源, 可以直接升级, 下面是升级前后的对比:

loongson@yeeloong:~$ mplayer -benchmark -nosound -vo xv Flack.avi
no loongson2f patch:

3G上网卡在yeeloong的使用

目前龙芯的内核, 使用的是2.6.32 只要linux支持的设备, 都可以在龙芯使用,我在编译内核的时候,把几乎所有的usb设备都编译成了模块。

今天遇到一块EC1261 上网卡,插上后不能找到tty设备,设备id是12d1:1446 在网上搜了一下,找到姚飞老神仙的一篇文章,提示说要装一个usb-modeswitch,这个软件会对设备id进行修改,运行后,设备由"12d1:1446E1552"变成了"ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem"

debian6安装包(附赠品android1.5)

日前,龙梦公司公布了android在龙芯笔记本上的android

拿到压缩包后, 重新打包到了debian6的安装盘上(修改到hda1分区),

目前,android只支持龙芯笔记本。


http://www.anheng.com.cn/loongson/20100131.tar.bz2

解压上面这个文件包到fat32格式的u盘(或者可以作u盘的手机,mp3,存储卡),

启动笔记本,按tab,出现恢复界面,按提示从u盘恢复系统。

利用pmon的热键,制作自动安装包

 

Loong Linux Installer  就是一个5M左右的vmlinux    放在fat格式的u盘的根目录, 然后就可以在笔记本启动的时候,按tab对系统进行初始化。

初始化过程中,会搜索所有的u盘, 包括sd卡上面的符合 loongson?_*_201xxxxx*.tar.*命名规则的安装包,比如

loongson2_debian6_20100111.tar.gz

loongson2_gentoo_20100111.tar.bz2

loongson2_debian5_20100214.tar.gz

Udev:介绍现代Linux系统的设备管理

Udev:介绍现代Linux系统的设备管理

现代Linux发行版可以在已经运行的系统里面识别一个新加入的硬件。有许多用户友好的发行版,比如Ubuntu,可以在像iPod这样的移动设备插入系统时自动运行指定的应用程序,比如Rhythmbox。 Linux发行版里面的热插拔(这个词用于描述将设备插入已经运行的系统的过程)功能

现代Linux发行版可以在已经运行的系统里面识别一个新加入的硬件。

unas的远程维护方案

在我的一个项目中,使用了unas,  为了减少现场维护量,采取了一些措施,

同unas一起部署的是一台灌入了openwrt的无线路由器, 这台无线路由器,跟unas的串口是相联的, 可以用无线路由器里面的minicom来通过串口登录unas的pmon ,也可以登录linux控制台,此外从无线路由器还有一条GPIO的线路,控制unas的复位。

内核源码git地址

1.官方kernel,目前包含fuloong2e

http://kernel.org

2.mips的开发git  目前在准备2.6.33,fuloong2f已经加入2.6.33

http://www.linux-mips.org/git?p=linux-queue.git

3.吴章金维护的git  有2.6.28/2.6.29/2.6.30/2.6.31/2.6.32/2.6.33 内核源码,成熟的代码会提交到2

http://dev.lemote.com/git?p=rt4ls.git;a=summary

4.龙梦的git 2.6.27的内核源码, 一直在完善

http://dev.lemote.com/git?p=linux_loongson.git;a=summary

聚合内容