summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-07-27 18:15:03 +0000
committerJens Arnold <amiconn@rockbox.org>2007-07-27 18:15:03 +0000
commit018d55599571d118ef682f81c3fc7ab2f4534b40 (patch)
treec94ce2f655b8e82adac7ef7548006e0ff77321d0
parent6f13f4cd8ffda4c77b5a42d88f7a8ed4ee86c991 (diff)
downloadrockbox-018d55599571d118ef682f81c3fc7ab2f4534b40.tar.gz
rockbox-018d55599571d118ef682f81c3fc7ab2f4534b40.zip
Sound working on iPod 2nd gen, but very unstable (applies also to 3rd gen). Freezes most of the time. Reverting the >66MHz unlock makes it a bit better, but also not stable. Using the C FIQ has the same effect.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14029 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/arm/wmcodec-pp.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/firmware/target/arm/wmcodec-pp.c b/firmware/target/arm/wmcodec-pp.c
index 7d00369bf0..455e3e1087 100644
--- a/firmware/target/arm/wmcodec-pp.c
+++ b/firmware/target/arm/wmcodec-pp.c
@@ -74,6 +74,11 @@ int audiohw_init(void) {
74 /* GPIO D06 enable for output */ 74 /* GPIO D06 enable for output */
75 outl(inl(0xcf00000c) | 0x40, 0xcf00000c); 75 outl(inl(0xcf00000c) | 0x40, 0xcf00000c);
76 outl(inl(0xcf00001c) & ~0x40, 0xcf00001c); 76 outl(inl(0xcf00001c) & ~0x40, 0xcf00001c);
77#ifdef IPOD_1G2G
78 /* bits 11,10 == 10 */
79 outl(inl(0xcf004040) & ~0x400, 0xcf004040);
80 outl(inl(0xcf004040) | 0x800, 0xcf004040);
81#else /* IPOD_3G */
77 /* bits 11,10 == 01 */ 82 /* bits 11,10 == 01 */
78 outl(inl(0xcf004040) | 0x400, 0xcf004040); 83 outl(inl(0xcf004040) | 0x400, 0xcf004040);
79 outl(inl(0xcf004040) & ~0x800, 0xcf004040); 84 outl(inl(0xcf004040) & ~0x800, 0xcf004040);
@@ -87,6 +92,7 @@ int audiohw_init(void) {
87 outl(inl(0xcf000008) | 0x8, 0xcf000008); 92 outl(inl(0xcf000008) | 0x8, 0xcf000008);
88 outl(inl(0xcf000018) | 0x8, 0xcf000018); 93 outl(inl(0xcf000018) | 0x8, 0xcf000018);
89 outl(inl(0xcf000028) & ~0x8, 0xcf000028); 94 outl(inl(0xcf000028) & ~0x8, 0xcf000028);
95#endif /* IPOD_1G2G/3G */
90#endif 96#endif
91 97
92 return 0; 98 return 0;