TJ-25是一个基于ARM处理器(MOTOROLA i.MXL 200MHz)的入门 级PDA,最大特点在于OS5和320x320, 16bit的屏幕
详细规格在这里(PDF格式)
我使用的Linux发行版是gentoo,PC端硬件为
duron 1400
EPoX 8KTA3(KT133A+686B)
略...
我使用的内核包括2.4.22-ac4和未patch的2.6.0以及gentoo-dev-source-2.6.0。它们在具体实现步骤上,并没有明显的差别。
本文完全适用于TJ-35,基本适用于其他OS5的机器。
USB Support ---> [M] USB Mass Storage support USB Serial Converter Support ---> [*] USB Generic Serial Driver [M] USB Handspring Visor / Palm m50x / Sony Clie Driver如果您使用debian/redhat/mdk等基于binary的发行版,这一步可以跳过,直接选择合适的内核升级即可。另外,加入usb-storage模块是为了后面使用MemoryStick。
由于目前内核不直接支持该型号之CLIE,需要按照如下方法操作:
/sbin/modprobe visor vendor=0x054c product=0x0169其中vendor和product的数值,可以通过查这个表得到。或者,在开始同步之后,在pc端使用lsusb命令,查看输出。 如果和我一样,有多个PDA需要同步,那么就改考虑修改内核,直接加入该型号的支持。最简单的办法是,移花接木,直接修改visor.h中的deviceid。
#define SONY_CLIE_NZ90V_ID 0x00E9改成
#define SONY_CLIE_NZ90V_ID 0x0169就这么简单。
对于该型号的PDA,同步时使用/dev/ttyUSB0设备(大部分visor/palm都使用/dev/ttyUSB1)
在2.6内核上使用devfs会造成同步困难,在2.4.x中,没有大问题,但是我个人不推荐使用devfs,以下讲解以无devfs的系统为准。
使用bash,以root身份登录
for i in 0 1 2 3; do mknod /dev/ttyUSB$i c 188 $i; chmod a+rwx /dev/ttyUSB$i; done;
pilot-xfer -p /dev/ttyUSB0 -i novel.pdb然后在CLIE端启动hotsync程序 没什么意外的话,应该可以顺利同步。
按照下图所示,设置j-pilot
使用非devfs,不用在意先后顺序,在PC和CLIE端分别启动hotsync即可。
如果使用devfs,请先在CLIE端启动hotsync程序。
CLIE机型的一大特点就是对MemoryStick的支持。在Windows下,SONY提供了对应的驱动,在Linux下,它的支持也比较完善了;但是因为是OS5设备的缘故,还是需要一些额外的工作。
从我的使用情况看,2.4.22-ac4是没问题的,2.4.x的更高系列也应该可以,如果不行,请参照2.6的办法自己patch。
如果使用2.6.x内核,需要自己patch drivers/usb/storage/transport.c,大概在828行
if (us->iobuf[0]) { US_DEBUGP("CBI IRQ data showed reserved bType %d\n", us->iobuf[0]); return USB_STOR_TRANSPORT_ERROR; }
把这一段整个注释掉。重编译内核。
启动CLIE端的Data Import程序
连接
检查PC端lsusb的输出
# /usr/sbin/lsusb Bus 002 Device 015: ID 054c:016a Sony Corp. Bus 002 Device 002: ID 045e:0047 Microsoft Corp.然后加载模块
# modprobe usb-storage看看dmesg的输出
Attached scsi removable disk sdb at scsi9, channel 0, id 0, lun 0 Attached scsi generic sg1 at scsi9, channel 0, id 0, lun 0, type 0 WARNING: USB Mass Storage data integrity not assured USB Mass Storage device found at 14 drivers/usb/core/usb.c: registered new driver usb-storage USB Mass Storage support registered. usb 2-2: USB disconnect, address 14 hub 2-0:1.0: new USB device on port 2, assigned address 15 scsi10 : SCSI emulation for USB Mass Storage devices Vendor: Sony Model: CLIE MS Rev: 1.00 Type: Direct-Access ANSI SCSI revision: 02 Attached scsi removable disk sdb at scsi10, channel 0, id 0, lun 0 Attached scsi generic sg1 at scsi10, channel 0, id 0, lun 0, type 0 WARNING: USB Mass Storage data integrity not assured USB Mass Storage device found at 15 SCSI device sdb: 63424 512-byte hdwr sectors (32 MB) sdb: Write Protect is off sdb: Mode Sense: 00 6a 10 00 sdb: assuming drive cache: write through SCSI device sdb: 63424 512-byte hdwr sectors (32 MB) sdb: Write Protect is off sdb: Mode Sense: 00 6a 10 00 sdb: assuming drive cache: write through sdb: sdb1最后一行显示该设备已被识别,位于/dev/sdb1
# mkdir -p /mnt/clie # mount /dev/sdb1 /mnt/clie然后就可以直接访问MemoryStick了。