02-13-2009, 10:13 PM | #1 |
Member
Posts: 13
Karma: 299
Join Date: Nov 2007
Device: E-Ink
|
iLiad kernel development
Hi folks, Adam,
I've been a bit slow getting on board. Adam was kind enough to send me an iLiad a while back and I'm fairly eager to get started. To introduce myself, I'm Jaya Kumar, a hobbyist. I'm also the author of the defio framewrok in the Linux kernel, and the drivers for the current E-Ink controllers in the Linux kernel such as hecubafb, metronomefb, and broadsheetfb. I've been posting demos and videos of some of my E-Ink related exploits and travails on youtube here, http://www.youtube.com/user/jayakumarlkml . Okay, now, I'm looking for where we are with making iLiad kernel development and improvement possible. I wanted to collect the info and put it in one nice place, here. It would also be nice to document a step-by-step guide so that any new developer coming here will be able to follow a common sequence of steps to quickly get up to where everyone else is. So here are my notes and we can reorganize them on a wiki if possible. 1. irex has published 2.4 kernel sources http://developer.irexnet.com/pub/iLiad/Linux%20kernel/ but we would want to be on 2.6 so that's only useful as a reference. there are some binary only drivers but i think these were also recently open sourced. are there any standing items that are still binary only? Matthijs' has posted some details of what would be needed to go to 2.6 here: http://forum.irexnet.com/viewtopic.php?t=1569 Nalim says: " I have backported 2.6.7 kexec patch to stock irex-er0100 2.4 kernel + crosscompile arm patched kexec-tools 1.101 for irex. So now you can can boot another kernel (maybe 2.6) from the stock kernel without the need to reflash the kernel. Let me know if you like to have the new kernel + kexec bin. I managed to boot patched 2.6.21 handheld.org kernel fom the ramdisk using kexec from the stock 2.4 kernel. The next step is to pivot the root fs back to the mounted cf card.. " He has then posted what looks like a successful result here including all the binaries and sources he used: http://www.kwik.cz/irex/ 2. toolchain http://developer.irexnet.com/pub/iLiad/Toolchain/ OE based so might as well just use straight OE. 3. serial console i consider this the most important part. Matthijs has said: " The serial port is not exported to the outside of the device, it needs a small flatcable on the PCB. If anyone is really committed (and able) to attempt a 2.6 port, we can send that person a serial-enabled device and debug-board (for loan). If anyone should want to start, we should talk about what we have done internally first, in order to avoid duplicate work." I have not asked them for this debug board yet. Maybe I should. Has anyone else done so? Someone called jtag has reverse engineered the jtag connector pinout and console uart. a diagram of it here: https://www.mobileread.com/forums/showthread.php?t=15142 That is pretty useful. Having jtag means we could reflash even if we bricked the unit. That would be very very handy. ---- Step-by-step guide a) I think first one has to get the dev package from irex: https://myirex.irexnet.com/user.php/developer so that one can then reflash with the ability to make modifications. but apparently, this is not available if you are connecting from China. I haven't done this yet. Okay, I think I'll stop here and make sure there's no newer info that I've missed. |
02-13-2009, 10:35 PM | #2 |
Guru
Posts: 976
Karma: 687
Join Date: Nov 2007
Device: Dell X51v; iLiad v2
|
Thanx for the organized info. I did want to try Nalim's experimental kernel, but I haven't actually had a try. The kernel porting task is too far from my reach, so I can only step aside and wish you developers good luck.
|
Advert | |
|
02-14-2009, 10:33 AM | #3 |
Researcher and Consultant
Posts: 210
Karma: 364
Join Date: Nov 2008
Location: Bangkok, THAILAND
Device: MACBOOKPRO17" HP2400TX SONYUX27
|
Hi,jayakumar
I have seen your work on the android topic, Nice to hear you starting here, I love to help but too busy with Hanlin clone for while, But prefer to discuss on this project.. |
02-14-2009, 12:57 PM | #4 |
Developer
Posts: 345
Karma: 3473
Join Date: Apr 2007
Location: Brooklyn, NY, USA
Device: iRex iLiad v1, Blackberry Tour, Kindle DX, iPad.
|
Hi, Jaya! Glad to see someone starting work on the 2.6 kernel.
I also don't have a lot of time at the moment, but I'll be glad to comment when I can. In a month or two I should have some time to spend on iLiad work again. My first comment is that you definitely need to get shell access and the developer package, then make sure your iLiad is fully up to date. Once you've gotten that far you'll be able to reflash with a new kernel/initrd/filesystem to test things out. Are you located in China? If you have trouble downloading the developer package, you might post on the iRex forums or PM Matthijs there, and ask him specially for a copy. In a pinch you might be able to get a copy from another developer, but this is technically not allowed under the Terms Of Service so it should be avoided if possible. The developer reflash package is not supposed to be redistributed, but I think the best way to start is by modifying it in pieces to test things out on your own iLiad. Eventually the iLiad OS project will have built a new reflash package, and you can add the kernel to that for distribution. Second, Nalim's work seems pretty interesting and (if I understand correctly) should allow you to test out new kernels without having to reflash every time. Third, my impression is that you really need that console output for kernel work. But in order to get it, you will either need: 1. to request a loaner iLiad from iRex that has a serial connector installed on the motherboard; or 2. to follow jtag's guide and solder connectors onto your iLiad's motherboard's serial pinouts as shown in this post. Hmm... I guess I'm just mostly confirming what you already said. Anyway, it's great to see you working on this! I'm very excited to see what you do with the 2.6 kernel and I'd love to help any way I can -- once I'm finished with my thesis! |
02-14-2009, 08:48 PM | #5 |
Addict
Posts: 325
Karma: 1725
Join Date: Dec 2007
Location: Münster, Germany
Device: iRex iLiad v2
|
Hey,
nice to see the 2.6 development living up again. Regarding the hardware drivers: The delta.o, button.o etc. drivers have been recently open-sourced by iRex, you will have found them on their developer's site. For the cf8385.o (that's the WLAN chip) there's some development going on here. I didn't find recent infos about the TFFS module that "controls" the flash chip. Don't know if it's needed or if it can be replaced by some other MTD module. Some output from the kernel log: Code:
tffs: TrueFFS driver 7100.76 tffs: will not use IRQ<7>tffs: TffsMapMem: request_mem_region(0,20000) OK tffs: TffsMapMem: ioremap_nocache(0,20000) mapped to c485a000 tffs: G3/P3 found<6>tffs: Socket 0 in addr 0x0 tffs: Device 0x0: size 0xe620000 HW sector 0x200 (recommended 0x1000) tffs: C/H/S (0) 526 16 56 tffs: mDOC H3 not found; multi-sector polled I/O disabled<6>tffs: use major device number 100 Partition check: tffsa: tffsa1 tffsa3 < tffsa5 tffsa6 tffsa7 > tffs: disk partition: dev_number=0x6401, 149084 sectors, start_sector=52 tffs: disk partition: dev_number=0x6403, 2 sectors, start_sector=149136 tffs: disk partition: dev_number=0x6405, 57980 sectors, start_sector=149188 tffs: disk partition: dev_number=0x6406, 262652 sectors, start_sector=207220 tffs: disk partition: dev_number=0x6407, 1196 sectors, start_sector=469924 If I see it correctly there's no binary driver left, so let the hacking begin |
Advert | |
|
02-15-2009, 11:56 AM | #6 | |
Evangelist
Posts: 423
Karma: 1517132
Join Date: Jun 2006
Location: Madrid, Spain
Device: quaderno, remarkable2, yotaphone2, prs950, iliad, onhandpc, newton
|
TFFS module
Quote:
If it is only a FS, we could use UBIFS instead, now that it is stable in 2.6. As an alternative we can use the old jffs2. Console output A solution for the console output is using Netconsole: netconsole.txt Netconsole howto: send kernel boot messages over ethernet Basically netconsole is what I said in the iRex forums I that was intending to code, but RedHat's Ingo Molnar had it already done, and it has been ported to kernel 2.6. Good luck with the port :-). Last edited by Antartica; 02-15-2009 at 11:58 AM. |
|
02-15-2009, 12:44 PM | #7 |
Developer
Posts: 345
Karma: 3473
Join Date: Apr 2007
Location: Brooklyn, NY, USA
Device: iRex iLiad v1, Blackberry Tour, Kindle DX, iPad.
|
I once looked up tffs and thought that it had something to do with making and accessing hidden/secure partitions. In this case it would be used for boot-time access to the "secure" or "hidden" partitions where the kernel and initrd are stored.
However, I found almost no information, so this is basically a guess. It might be worth asking Matthijs about it. At least he can say whether it's important or not... |
03-12-2009, 07:29 AM | #8 | |
Member
Posts: 13
Karma: 299
Join Date: Nov 2007
Device: E-Ink
|
Quote:
But when I go to the https://myirex.irexnet.com/user.php/developer developer page , the select your MAC address has no entries which I have interpreted as meaning that it doesn't like my IDS connection or refused since I am connecting from an illegitimate country? :-) I guess I should mail Matthijs and see if he can help me make progress. |
|
03-12-2009, 11:46 AM | #9 |
Addict
Posts: 325
Karma: 1725
Join Date: Dec 2007
Location: Münster, Germany
Device: iRex iLiad v2
|
There are issues with some browsers when accessing the site you mentioned. E.g. Safari and Konqueror are known for showing an empty MAC list. Please try the site again with Firefox or IE. If you have done so already, you should probably ask Mathijs for some advice.
|
03-14-2009, 06:20 PM | #10 |
Connoisseur
Posts: 59
Karma: 136
Join Date: Dec 2008
Device: iRex DR1000
|
I had a similar issue with eternally empty MAC address field and got an official response from iRex stuff that the iLiad I am using is listed among "Chinese" at iDS. Chinese iLiads are simply refused developer access. In order to get the unlock package officially you have to own a device specially made for Europe (Language code 002) AND it must connect to European iDS server (different from the Chinese one). It should be possible to reconstruct the package from any unlocked device, but how are you going to install it?
If asked for an advice, I would propose to sell iLiad and get a DR1000 instead. It has faster hardware and open software for the same price. I temporarily have both and I love DR1000. Last edited by Viacheslav; 03-14-2009 at 06:28 PM. |
03-14-2009, 11:15 PM | #11 |
Guru
Posts: 976
Karma: 687
Join Date: Nov 2007
Device: Dell X51v; iLiad v2
|
There was unofficial solution for Chinese version iLiad to get developer package. I don't know if iRex close the backdoor, if iRex leave the backdoor open, the solution still works.
|
03-21-2009, 11:54 AM | #12 | |
Stunt Programmer
Posts: 31
Karma: 449
Join Date: Mar 2007
Location: Washington, DC
Device: iRex iLiad, Sony PRS500, Treo 650
|
Quote:
I can't find the HTML files that I used, but it basically allowed me to write to /etc/er_registry.txt to add an entry for sh files. For the modern version of the iLiad software, you would need to edit /mnt/settings/registry/registry.xml and hope that you don't mess it up. The application section looks like this: Code:
<application type="SHELL"> <appCategory>viewer</appCategory> <xResourceName>sh</xResourceName> <ipcChannel>14</ipcChannel> <argMask>_FILENAME_</argMask> <execute>/bin/sh</execute> <supportFormat> <extName>sh</extName> </supportFormat> <appIconPath/> </application> |
|
10-17-2009, 12:42 PM | #13 |
Member
Posts: 14
Karma: 10
Join Date: Oct 2009
Location: Tartu, Estonia/ Arlington, VA, U.S.
Device: irex iliad
|
Hi all,
I just joined the iliad user community. I would like to go the way and run some customized arm eabi debian port (usually run for testing in a qemu envirment) from cf-disc on the iliad. If I piece information together right, I will have to run a newer kernel. I have looked at some hardware drivers like the marvel drivers for the wifi and it seems to be included in kernels higher than the 2.6.21. I would actually like to go into the direction of creating a purely djvu based (because of speed) alternative os for the iliad with some kind of fuse of xournal and djvu as only gui and a Desktop frontend (as few and as fast software on the iliad as possible) - but this is future work. Is there any new activity in the kernel development apart from nalim's 2.6.21 port on [URL="http://www.kwik.cz/irex/"]? Best, Uli |
10-17-2009, 01:51 PM | #14 |
Guru
Posts: 976
Karma: 687
Join Date: Nov 2007
Device: Dell X51v; iLiad v2
|
|
10-17-2009, 04:06 PM | #15 |
Member
Posts: 14
Karma: 10
Join Date: Oct 2009
Location: Tartu, Estonia/ Arlington, VA, U.S.
Device: irex iliad
|
Ok, thanks for the info. I will try to toy a little bit around with the kexec patch and take a look at nalims patch.
Uli |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
iLiad iLiad Full Development Tutorial | Hamatole | iRex Developer's Corner | 5 | 10-12-2009 07:29 AM |
iLiad Linux Kernel flashing to iliad | atmel | iRex Developer's Corner | 1 | 11-20-2007 10:55 AM |
iLiad Linux 2.6 Kernel Port for the Iliad | CommanderROR | iRex Developer's Corner | 6 | 08-21-2007 09:33 AM |
I've ceased all iLiad development | scotty1024 | iRex | 54 | 03-07-2007 12:08 PM |
iLiad Professional development on the iLiad: | Riocaz | iRex Developer's Corner | 2 | 11-29-2006 02:36 PM |