diff options
author | Tobias Diedrich <ranma+coreboot@tdiedrich.de> | 2010-03-23 11:13:17 +0000 |
---|---|---|
committer | Tobias Diedrich <ranma+coreboot@tdiedrich.de> | 2010-03-23 11:13:17 +0000 |
commit | c4e4ffb5418afce2602a2310747676647ee04ddf (patch) | |
tree | 3e26d05e501bdf1c6d4ea5ed6f7013968226fd59 /firmware/target/arm/as3525/usb-as3525.c | |
parent | f5988d4fbd7150e59f0ea9e4f3f0bd61bbcb0bf9 (diff) | |
download | rockbox-c4e4ffb5418afce2602a2310747676647ee04ddf.tar.gz rockbox-c4e4ffb5418afce2602a2310747676647ee04ddf.zip |
Limit AUDIO_IRQ handling to AS3525, since it doesn't work on the newer SoC in SANSA_CLIPPLUS yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25305 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/as3525/usb-as3525.c')
-rw-r--r-- | firmware/target/arm/as3525/usb-as3525.c | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/firmware/target/arm/as3525/usb-as3525.c b/firmware/target/arm/as3525/usb-as3525.c index 65edb598a3..4eb533e13c 100644 --- a/firmware/target/arm/as3525/usb-as3525.c +++ b/firmware/target/arm/as3525/usb-as3525.c | |||
@@ -29,7 +29,13 @@ | |||
29 | #include "power.h" | 29 | #include "power.h" |
30 | #include "as3525.h" | 30 | #include "as3525.h" |
31 | 31 | ||
32 | #if defined(SANSA_CLIPV2) || defined(SANSA_CLIPPLUS) || defined(SANSA_FUZEV2) | ||
33 | #warning USB_DETECT_PIN not defined for your target | ||
34 | #endif | ||
35 | |||
36 | #if CONFIG_CPU == AS3525 | ||
32 | static int usb_status = USB_EXTRACTED; | 37 | static int usb_status = USB_EXTRACTED; |
38 | #endif | ||
33 | 39 | ||
34 | void usb_enable(bool on) | 40 | void usb_enable(bool on) |
35 | { | 41 | { |
@@ -43,6 +49,14 @@ void usb_enable(bool on) | |||
43 | #endif | 49 | #endif |
44 | } | 50 | } |
45 | 51 | ||
52 | void usb_init_device(void) | ||
53 | { | ||
54 | #ifdef USB_DETECT_PIN | ||
55 | GPIOA_DIR &= ~(1 << USB_DETECT_PIN); /* set as input */ | ||
56 | #endif | ||
57 | } | ||
58 | |||
59 | #if CONFIG_CPU == AS3525 | ||
46 | void usb_insert_int(void) | 60 | void usb_insert_int(void) |
47 | { | 61 | { |
48 | usb_status = USB_INSERTED; | 62 | usb_status = USB_INSERTED; |
@@ -53,11 +67,18 @@ void usb_remove_int(void) | |||
53 | usb_status = USB_EXTRACTED; | 67 | usb_status = USB_EXTRACTED; |
54 | } | 68 | } |
55 | 69 | ||
56 | void usb_init_device(void) | 70 | int usb_detect(void) |
57 | { | 71 | { |
72 | return usb_status; | ||
58 | } | 73 | } |
59 | 74 | #else | |
60 | int usb_detect(void) | 75 | int usb_detect(void) |
61 | { | 76 | { |
62 | return usb_status; | 77 | #ifdef USB_DETECT_PIN |
78 | if (GPIOA_PIN( USB_DETECT_PIN )) | ||
79 | return USB_INSERTED; | ||
80 | else | ||
81 | #endif | ||
82 | return USB_EXTRACTED; | ||
63 | } | 83 | } |
84 | #endif | ||