diff options
| author | Ralf Ertzinger <rockbox@camperquake.de> | 2013-06-22 10:08:23 +0100 |
|---|---|---|
| committer | Frank Gevaerts <frank@gevaerts.be> | 2013-11-10 18:41:24 +0100 |
| commit | b170c73f922e3457b923b4e7fcbec794a8885c77 (patch) | |
| tree | 89fbdbd8c25af5101a29a1ede3b896332a4e205c /firmware | |
| parent | 500b137308a6ee5c2aba873734a8956d70472f56 (diff) | |
| download | rockbox-b170c73f922e3457b923b4e7fcbec794a8885c77.zip rockbox-b170c73f922e3457b923b4e7fcbec794a8885c77.tar.gz rockbox-b170c73f922e3457b923b4e7fcbec794a8885c77.tar.bz2 rockbox-b170c73f922e3457b923b4e7fcbec794a8885c77.tar.xz | |
Updated IAP commands.
Originally written and uploaded by Lalufu (Ralf Ertzinger) in Feb 2012.
They have been condensed into a single patch and some further additions
by Andy Potter.
Currently includes Authentication V2 support from iPod to Accessory,
RF/BlueTooth transmitter support, selecting a playlist and selecting a
track from the current playlist. Does not support uploading Album Art
or podcasts. Has been tested on the following iPods,
4th Gen Grayscale, 4th Gen Color/Photo, Mini 2nd Gen, Nano 1st Gen and
Video 5.5Gen.
Change-Id: Ie8fc098361844132f0228ecbe3c48da948726f5e
Co-Authored by: Andy Potter <liveboxandy@gmail.com>
Reviewed-on: http://gerrit.rockbox.org/533
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
Diffstat (limited to 'firmware')
| -rw-r--r-- | firmware/export/iap.h | 4 | ||||
| -rw-r--r-- | firmware/export/kernel.h | 2 | ||||
| -rw-r--r-- | firmware/target/arm/pp/debug-pp.c | 9 |
3 files changed, 9 insertions, 6 deletions
diff --git a/firmware/export/iap.h b/firmware/export/iap.h index 8ee26cb..22f3608 100644 --- a/firmware/export/iap.h +++ b/firmware/export/iap.h @@ -22,7 +22,9 @@ #include <stdbool.h> -#define RX_BUFLEN 512 +/* This is just the payload size, without sync, length and checksum */ +#define RX_BUFLEN (64*1024) +/* This is the entire frame length, sync, length, payload and checksum */ #define TX_BUFLEN 128 extern bool iap_getc(unsigned char x); diff --git a/firmware/export/kernel.h b/firmware/export/kernel.h index 76ed96b..3cadefd 100644 --- a/firmware/export/kernel.h +++ b/firmware/export/kernel.h @@ -79,8 +79,6 @@ #define SYS_REMOTE_PLUGGED MAKE_SYS_EVENT(SYS_EVENT_CLS_PLUG, 4) #define SYS_REMOTE_UNPLUGGED MAKE_SYS_EVENT(SYS_EVENT_CLS_PLUG, 5) #define SYS_CAR_ADAPTER_RESUME MAKE_SYS_EVENT(SYS_EVENT_CLS_MISC, 0) -#define SYS_IAP_PERIODIC MAKE_SYS_EVENT(SYS_EVENT_CLS_MISC, 1) -#define SYS_IAP_HANDLEPKT MAKE_SYS_EVENT(SYS_EVENT_CLS_MISC, 2) #define SYS_CALL_INCOMING MAKE_SYS_EVENT(SYS_EVENT_CLS_MISC, 3) #define SYS_CALL_HUNG_UP MAKE_SYS_EVENT(SYS_EVENT_CLS_MISC, 4) #define SYS_VOLUME_CHANGED MAKE_SYS_EVENT(SYS_EVENT_CLS_MISC, 5) diff --git a/firmware/target/arm/pp/debug-pp.c b/firmware/target/arm/pp/debug-pp.c index f4ba61c..2f57e1e 100644 --- a/firmware/target/arm/pp/debug-pp.c +++ b/firmware/target/arm/pp/debug-pp.c @@ -155,9 +155,12 @@ bool dbg_ports(void) #if defined(IPOD_ACCESSORY_PROTOCOL) const unsigned char *serbuf = iap_get_serbuf(); - lcd_putsf(0, line++, "IAP: %02x %02x %02x %02x %02x %02x %02x %02x", - serbuf[0], serbuf[1], serbuf[2], serbuf[3], serbuf[4], serbuf[5], - serbuf[6], serbuf[7]); + if (serbuf) + { + lcd_putsf(0, line++, "IAP: %02x %02x %02x %02x %02x %02x %02x %02x", + serbuf[0], serbuf[1], serbuf[2], serbuf[3], serbuf[4], serbuf[5], + serbuf[6], serbuf[7]); + } #endif #if defined(IRIVER_H10) || defined(IRIVER_H10_5GB) |