Rockbox.org home
Downloads
Releases releases
Current build current build
Extras extras
themes themes
Documentation
Help FAQ
Manual manual
Wiki wiki
Docs index docs index
Support
Mailing lists mailing lists
IRC IRC
Forums forums
Tracker
Bugs bugs
Patches patches
Search




Welcome, Guest. Please login or register.
Did you miss your activation email?
July 31, 2010, 01:05:44 AM
Home Help Search Login Register

+  Rockbox Technical Forums
|-+  Rockbox Development
| |-+  New Ports
| | |-+  iaudio7
0 Members and 1 Guest are viewing this topic. « previous next »
Pages: [1] 2 Print
Author Topic: iaudio7  (Read 14225 times)
shivramk
Member
*
Offline Offline

Posts: 2


iaudio7
« on: February 07, 2008, 02:36:58 AM »

Hi,

I downloaded the latest source and saw that there is some code for the tcc77xx series chip used by the iaudio 7. I'm wondering if somebody is working on the iaudio7 port?

I would like to help.
Logged
linuxstb
Developer
*
Offline Offline

Posts: 1129


Re: iaudio7
« Reply #1 on: February 07, 2008, 03:57:23 AM »

There has been a little bit of work, but it seems to have stalled for now.

What's required now is someone with C and ARM assembler skills to continue the low-level work of writing drivers for the hardware (the LCD driver is probably the part that should be done next).  

Do you have any C/ARM experience?
Logged
shivramk
Member
*
Offline Offline

Posts: 2


Re: iaudio7
« Reply #2 on: February 07, 2008, 04:25:02 AM »

I'm a fairly competent C programmer and know a bit about the ARM architecture. Haven't done any ARM assembly programming though. But I'm willing to learn.
Logged
linuxstb
Developer
*
Offline Offline

Posts: 1129


Re: iaudio7
« Reply #3 on: February 07, 2008, 09:44:41 AM »

You probably want to start by downloading the TCC77x related files/datasheets from these links:

http://forums.rockbox.org...10164.msg109942#msg109942

You'll also want to grab a copy of the Cowon firmware update for your device, and an ARM disassembler (arm-elf-objdump does a basic job), and start reading that...

For further pointers, probably best to come to IRC and talk to me, or (if he's around), "TMM", who has been working on the port so far.

Logged
vitja
Member
*
Offline Offline

Posts: 10


iaudio 7
« Reply #4 on: July 30, 2008, 12:48:12 AM »

Hi!

I've recently started playing with my iaudio7, with writting very simple asm code.
Now I know something about GPIO assignment: hold, usb-charger, backlight, beeper.

So my simple code can beep and flash while hold button is pressed, then let OF go.
Today I'm going to find some time to play with LCD.

Quote from: linuxstb on February 07, 2008, 09:44:41 AM
You probably want to start by downloading the TCC77x related files/datasheets from these links:

http://forums.rockbox.org...10164.msg109942#msg109942


The links you point at doesn't work for me, has anyone mirrored them?

ps: I've started a new topic, as forum engine sad to me.

Thanks,
vitja.
Logged
vitja
Member
*
Offline Offline

Posts: 10


Re: iaudio7
« Reply #5 on: July 30, 2008, 03:36:19 PM »

I'm now trying to understand how does original firmware work with LCD, how it is connected and so on.
I want to adopt softgun or skyeye emulator to reverse-engineering  some HW configuration, does anyone have success here?
« Last Edit: August 02, 2008, 01:29:53 PM by linuxstb » Logged
saratoga
Developer
*
*
Offline Offline

Posts: 3457


Re: iaudio7
« Reply #6 on: July 30, 2008, 03:41:56 PM »

Quote from: vitja on July 30, 2008, 03:36:19 PM
I'm now trying to understand how does original firmware work with LCD, how it is connected and so on.
I want to adopt softgun or skyeye emulator to reverse-engineering  some HW configuration, does anyone have success here?

We had a project to do this over the summer, but the student working on it ended up quitting.  The closest thing we have to an emulator is an older PortalPlayer ARM emulator in the patch tracker, but its not 100% working and is somewhat specific to PP hardware.
« Last Edit: August 02, 2008, 01:29:33 PM by linuxstb » Logged
linuxstb
Developer
*
Offline Offline

Posts: 1129


Re: iaudio7
« Reply #7 on: July 30, 2008, 08:12:35 PM »

vitja,

Regarding the LCD:

http://www.rockbox.org/irc/log-20071028#01:43:31
Logged
vitja
Member
*
Offline Offline

Posts: 10


Re: iaudio7
« Reply #8 on: July 31, 2008, 04:21:26 AM »

I've written simple program that splits arm-objdump listings into several html files
it colorizes output and adds references for some addresses. I did't find a tool to browse large asm listings (>15M)
Ordinary text viewer/editor was too slow for me

example usage: arm-elf-objdump  -b binary -m arm --adjust-vma 0x20000000 -D fw.bin | python ref.py
That will create files in ./out/

hope it could be useful: ftp://stop.qc.to/vitja/ref.tar.bz2

vitja.
Logged
linuxstb
Developer
*
Offline Offline

Posts: 1129


Re: iaudio7
« Reply #9 on: July 31, 2008, 08:04:08 AM »

You could also check out the ARM disassembler in the Rockbox SVN - utils/disassembler/arm/

This is still very basic, but is a small improvement on objdump.  Patches to that would be welcome...
Logged
vitja
Member
*
Offline Offline

Posts: 10


First success
« Reply #10 on: August 01, 2008, 01:28:26 AM »

First success.

I've replaced LCD lcd initialization in original firmware with my own hook,
now I can init lcd display, thanks to TMM. The problem is CS1 configuration, when it will be solved, original firmware will not be needed to display things.


update:

I've compiled iaudio7 bootloader, it starts and shows me debug screen, that seems that all the tops buttons are on ADC0. Power on/off/hold is on GPIO_A.


* iaudio7.jpg (61.63 KB, 800x600 - viewed 4902 times.)
« Last Edit: August 02, 2008, 11:32:25 PM by vitja » Logged
mcuelenaere
Developer
*
Offline Offline

Posts: 391


Re: iaudio7
« Reply #11 on: August 11, 2008, 04:49:28 AM »

Just as a reference:

a Flyspray patch is available here.
Logged
moneytoo
Member
*
Offline Offline

Posts: 1


Re: iaudio7
« Reply #12 on: September 07, 2008, 05:24:09 AM »

Great progress, vitja.

I wanted to try it on my iAudio 7 (16 GB) but I wasn't much successful. I used the latest revision (18435) with commited patches from vitja.
Uploading via tcctool is ok (the original firmware I7_FW.BIN is loaded and ran). If I upload rockbox.bin, the backlight of the touch sensor goes on but the display keeps off.
Is there something specific for iAudio 7, unlike D2? (What should I set when running ../tools/configure?)
« Last Edit: September 07, 2008, 06:05:35 AM by moneytoo » Logged
vitja
Member
*
Offline Offline

Posts: 10


Re: iaudio7
« Reply #13 on: September 08, 2008, 01:34:32 AM »

This bug really exist: when bootloader loads firmware it can hang on startup, but not allways.
Using tcctool works ok. Try to boot it few times

or using tcc tool:
Code:
../tools/scramble -tcc=crc apps/rockbox.bin I7_FW.BIN
../utils/tcctool/tcctool -d iaudio7 I7_FW.BIN
Logged
vitja
Member
*
Offline Offline

Posts: 10


Re: iaudio7
« Reply #14 on: September 16, 2008, 04:04:37 AM »

Just for reference, tool I've used for analyzing large binary blobs:

Here is code:
ftp://stop.qc.to/vitja/ar...rm-disasm-ref-0.1.tar.bz2

And here is example output for rockbox binary
ftp://stop.qc.to/vitja/ar...m-ref/out/disasm0000.html

vitja.
Logged
Pages: [1] 2 Print 
« previous next »
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
Page created in 0.07 seconds with 23 queries.
Loading...