Rockbox.org home
Downloads
Release release
Dev builds dev builds
Extras extras
themes themes
Documentation
Manual manual
Wiki wiki
Device Status device status
Support
Forums forums
Mailing lists mailing lists
IRC IRC
Development
Bugs bugs
Patches patches
Dev Guide dev guide
translations translations
Search



Donate

Rockbox Technical Forums


Login with username, password and session length
Home Help Search Staff List Login Register
News:

Thank You for your continued support and contributions!

+  Rockbox Technical Forums
|-+  Rockbox Development
| |-+  New Ports
| | |-+  iaudio7
« previous next »
  • Print
Pages: [1] 2

Author Topic: iaudio7  (Read 43535 times)

Offline shivramk

  • Member
  • *
  • 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

Offline linuxstb

  • Developer
  • Member
  • *
  • Posts: 1163
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

Offline shivramk

  • Member
  • *
  • 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

Offline linuxstb

  • Developer
  • Member
  • *
  • Posts: 1163
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/index.php?topic=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

Offline vitja

  • Member
  • *
  • Posts: 10
iaudio 7
« Reply #4 on: July 30, 2008, 01: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/index.php?topic=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

Offline vitja

  • Member
  • *
  • Posts: 10
Re: iaudio7
« Reply #5 on: July 30, 2008, 04: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, 02:29:53 PM by linuxstb »
Logged

Offline saratoga

  • Developer
  • Member
  • *
  • Posts: 9373
Re: iaudio7
« Reply #6 on: July 30, 2008, 04:41:56 PM »
Quote from: vitja on July 30, 2008, 04: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, 02:29:33 PM by linuxstb »
Logged

Offline linuxstb

  • Developer
  • Member
  • *
  • Posts: 1163
Re: iaudio7
« Reply #7 on: July 30, 2008, 09:12:35 PM »
vitja,

Regarding the LCD:

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

Offline vitja

  • Member
  • *
  • Posts: 10
Re: iaudio7
« Reply #8 on: July 31, 2008, 05: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

Offline linuxstb

  • Developer
  • Member
  • *
  • Posts: 1163
Re: iaudio7
« Reply #9 on: July 31, 2008, 09: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

Offline vitja

  • Member
  • *
  • Posts: 10
First success
« Reply #10 on: August 01, 2008, 02: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 6949 times.)
« Last Edit: August 03, 2008, 12:32:25 AM by vitja »
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: iaudio7
« Reply #11 on: August 11, 2008, 05:49:28 AM »
Just as a reference:

a Flyspray patch is available here.
Logged

Offline moneytoo

  • Member
  • *
  • Posts: 1
Re: iaudio7
« Reply #12 on: September 07, 2008, 06: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, 07:05:35 AM by moneytoo »
Logged

Offline vitja

  • Member
  • *
  • Posts: 10
Re: iaudio7
« Reply #13 on: September 08, 2008, 02: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: [Select]
../tools/scramble -tcc=crc apps/rockbox.bin I7_FW.BIN
../utils/tcctool/tcctool -d iaudio7 I7_FW.BIN
Logged

Offline vitja

  • Member
  • *
  • Posts: 10
Re: iaudio7
« Reply #14 on: September 16, 2008, 05:04:37 AM »
Just for reference, tool I've used for analyzing large binary blobs:

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

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

vitja.
Logged

  • Print
Pages: [1] 2
« previous next »
+  Rockbox Technical Forums
|-+  Rockbox Development
| |-+  New Ports
| | |-+  iaudio7
 

  • SMF 2.0.19 | SMF © 2021, Simple Machines
  • Rockbox Privacy Policy
  • XHTML
  • RSS
  • WAP2

Page created in 0.155 seconds with 21 queries.