diff options
author | Torne Wuff <torne@wolfpuppy.org.uk> | 2010-01-31 11:07:29 +0000 |
---|---|---|
committer | Torne Wuff <torne@wolfpuppy.org.uk> | 2010-01-31 11:07:29 +0000 |
commit | 533cf7737bae4363edefbfb202cb44e9eb30cd3f (patch) | |
tree | abfb69b76b46fc8d22c14023969ba3fcaad4809d /firmware/export/config | |
parent | c0e2d9fe1bb87730d9a8a7cac3cb8f6cd39ce630 (diff) | |
download | rockbox-533cf7737bae4363edefbfb202cb44e9eb30cd3f.tar.gz rockbox-533cf7737bae4363edefbfb202cb44e9eb30cd3f.zip |
Enable ATA DMA on pp5020 based players with ATA drives.
DMA is only used for reading because writing seems to be slower with DMA.
Only requests which are cacheline aligned (16 bytes) will use DMA, so many
requests will still use PIO at this point; a later change will align more
reads.
Part of FS#9708, original DMA code by Boris Gjenero (dreamlayers).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24405 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export/config')
-rw-r--r-- | firmware/export/config/gogearhdd1630.h | 5 | ||||
-rw-r--r-- | firmware/export/config/ipod4g.h | 5 | ||||
-rw-r--r-- | firmware/export/config/ipodcolor.h | 5 | ||||
-rw-r--r-- | firmware/export/config/ipodmini1g.h | 5 | ||||
-rw-r--r-- | firmware/export/config/ipodmini2g.h | 5 | ||||
-rw-r--r-- | firmware/export/config/ipodnano1g.h | 5 | ||||
-rw-r--r-- | firmware/export/config/ipodvideo.h | 4 | ||||
-rw-r--r-- | firmware/export/config/iriverh10.h | 5 | ||||
-rw-r--r-- | firmware/export/config/iriverh10_5gb.h | 5 | ||||
-rw-r--r-- | firmware/export/config/mrobe100.h | 5 | ||||
-rw-r--r-- | firmware/export/config/samsungyh820.h | 5 | ||||
-rw-r--r-- | firmware/export/config/samsungyh920.h | 5 | ||||
-rw-r--r-- | firmware/export/config/samsungyh925.h | 5 | ||||
-rw-r--r-- | firmware/export/config/tatungtpj1022.h | 5 |
14 files changed, 69 insertions, 0 deletions
diff --git a/firmware/export/config/gogearhdd1630.h b/firmware/export/config/gogearhdd1630.h index 912ba427c0..8bb14801b0 100644 --- a/firmware/export/config/gogearhdd1630.h +++ b/firmware/export/config/gogearhdd1630.h | |||
@@ -200,3 +200,8 @@ | |||
200 | 200 | ||
201 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 201 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
202 | 202 | ||
203 | |||
204 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
205 | * writes appear to be ~25% slower. | ||
206 | */ | ||
207 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/ipod4g.h b/firmware/export/config/ipod4g.h index e6bdc35bd8..cd71434c10 100644 --- a/firmware/export/config/ipod4g.h +++ b/firmware/export/config/ipod4g.h | |||
@@ -207,3 +207,8 @@ | |||
207 | 207 | ||
208 | #define IRAM_LCDFRAMEBUFFER IBSS_ATTR /* put the lcd frame buffer in IRAM */ | 208 | #define IRAM_LCDFRAMEBUFFER IBSS_ATTR /* put the lcd frame buffer in IRAM */ |
209 | 209 | ||
210 | |||
211 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
212 | * writes appear to be ~25% slower. | ||
213 | */ | ||
214 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/ipodcolor.h b/firmware/export/config/ipodcolor.h index 0f1de4fdba..c0168d9886 100644 --- a/firmware/export/config/ipodcolor.h +++ b/firmware/export/config/ipodcolor.h | |||
@@ -182,3 +182,8 @@ | |||
182 | #define IPOD_ACCESSORY_PROTOCOL | 182 | #define IPOD_ACCESSORY_PROTOCOL |
183 | #define HAVE_SERIAL | 183 | #define HAVE_SERIAL |
184 | 184 | ||
185 | |||
186 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
187 | * writes appear to be ~25% slower. | ||
188 | */ | ||
189 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/ipodmini1g.h b/firmware/export/config/ipodmini1g.h index 129829ffbb..3ab96e3a62 100644 --- a/firmware/export/config/ipodmini1g.h +++ b/firmware/export/config/ipodmini1g.h | |||
@@ -193,3 +193,8 @@ | |||
193 | 193 | ||
194 | #define IRAM_LCDFRAMEBUFFER IBSS_ATTR /* put the lcd frame buffer in IRAM */ | 194 | #define IRAM_LCDFRAMEBUFFER IBSS_ATTR /* put the lcd frame buffer in IRAM */ |
195 | 195 | ||
196 | |||
197 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
198 | * writes appear to be ~25% slower. | ||
199 | */ | ||
200 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/ipodmini2g.h b/firmware/export/config/ipodmini2g.h index 8087269485..72e04a30db 100644 --- a/firmware/export/config/ipodmini2g.h +++ b/firmware/export/config/ipodmini2g.h | |||
@@ -203,3 +203,8 @@ | |||
203 | 203 | ||
204 | #define IRAM_LCDFRAMEBUFFER IBSS_ATTR /* put the lcd frame buffer in IRAM */ | 204 | #define IRAM_LCDFRAMEBUFFER IBSS_ATTR /* put the lcd frame buffer in IRAM */ |
205 | 205 | ||
206 | |||
207 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
208 | * writes appear to be ~25% slower. | ||
209 | */ | ||
210 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/ipodnano1g.h b/firmware/export/config/ipodnano1g.h index 5f63c269ed..562c940df4 100644 --- a/firmware/export/config/ipodnano1g.h +++ b/firmware/export/config/ipodnano1g.h | |||
@@ -192,3 +192,8 @@ | |||
192 | #define IPOD_ACCESSORY_PROTOCOL | 192 | #define IPOD_ACCESSORY_PROTOCOL |
193 | #define HAVE_SERIAL | 193 | #define HAVE_SERIAL |
194 | 194 | ||
195 | |||
196 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
197 | * writes appear to be ~25% slower. | ||
198 | */ | ||
199 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/ipodvideo.h b/firmware/export/config/ipodvideo.h index 9aa1d49547..d188696e64 100644 --- a/firmware/export/config/ipodvideo.h +++ b/firmware/export/config/ipodvideo.h | |||
@@ -224,3 +224,7 @@ | |||
224 | #define IPOD_ACCESSORY_PROTOCOL | 224 | #define IPOD_ACCESSORY_PROTOCOL |
225 | #define HAVE_SERIAL | 225 | #define HAVE_SERIAL |
226 | 226 | ||
227 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
228 | * writes appear to be ~25% slower. | ||
229 | */ | ||
230 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/iriverh10.h b/firmware/export/config/iriverh10.h index cde1b6075e..5365c83239 100644 --- a/firmware/export/config/iriverh10.h +++ b/firmware/export/config/iriverh10.h | |||
@@ -186,3 +186,8 @@ | |||
186 | 186 | ||
187 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 187 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
188 | 188 | ||
189 | |||
190 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
191 | * writes appear to be ~25% slower. | ||
192 | */ | ||
193 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/iriverh10_5gb.h b/firmware/export/config/iriverh10_5gb.h index e69f6c2b20..bfc9b8ac2e 100644 --- a/firmware/export/config/iriverh10_5gb.h +++ b/firmware/export/config/iriverh10_5gb.h | |||
@@ -169,3 +169,8 @@ | |||
169 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 169 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
170 | 170 | ||
171 | #endif | 171 | #endif |
172 | |||
173 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
174 | * writes appear to be ~25% slower. | ||
175 | */ | ||
176 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/mrobe100.h b/firmware/export/config/mrobe100.h index 90419914b2..2bbb03919d 100644 --- a/firmware/export/config/mrobe100.h +++ b/firmware/export/config/mrobe100.h | |||
@@ -200,3 +200,8 @@ | |||
200 | 200 | ||
201 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 201 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
202 | 202 | ||
203 | |||
204 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
205 | * writes appear to be ~25% slower. | ||
206 | */ | ||
207 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/samsungyh820.h b/firmware/export/config/samsungyh820.h index 4968960803..0ca244ae39 100644 --- a/firmware/export/config/samsungyh820.h +++ b/firmware/export/config/samsungyh820.h | |||
@@ -181,3 +181,8 @@ | |||
181 | 181 | ||
182 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 182 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
183 | 183 | ||
184 | |||
185 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
186 | * writes appear to be ~25% slower. | ||
187 | */ | ||
188 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/samsungyh920.h b/firmware/export/config/samsungyh920.h index 310fa1374c..a6a57f7227 100644 --- a/firmware/export/config/samsungyh920.h +++ b/firmware/export/config/samsungyh920.h | |||
@@ -187,3 +187,8 @@ | |||
187 | 187 | ||
188 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 188 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
189 | 189 | ||
190 | |||
191 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
192 | * writes appear to be ~25% slower. | ||
193 | */ | ||
194 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/samsungyh925.h b/firmware/export/config/samsungyh925.h index 55d46ae1e1..c19901c019 100644 --- a/firmware/export/config/samsungyh925.h +++ b/firmware/export/config/samsungyh925.h | |||
@@ -185,3 +185,8 @@ | |||
185 | 185 | ||
186 | #define ICODE_ATTR_TREMOR_NOT_MDCT | 186 | #define ICODE_ATTR_TREMOR_NOT_MDCT |
187 | 187 | ||
188 | |||
189 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
190 | * writes appear to be ~25% slower. | ||
191 | */ | ||
192 | #define HAVE_ATA_DMA | ||
diff --git a/firmware/export/config/tatungtpj1022.h b/firmware/export/config/tatungtpj1022.h index 079be73c86..aca131df8b 100644 --- a/firmware/export/config/tatungtpj1022.h +++ b/firmware/export/config/tatungtpj1022.h | |||
@@ -137,3 +137,8 @@ | |||
137 | #define BOOTFILE "rockbox." BOOTFILE_EXT | 137 | #define BOOTFILE "rockbox." BOOTFILE_EXT |
138 | #define BOOTDIR "/.rockbox" | 138 | #define BOOTDIR "/.rockbox" |
139 | 139 | ||
140 | |||
141 | /* DMA is used only for reading on PP502x because although reads are ~8x faster | ||
142 | * writes appear to be ~25% slower. | ||
143 | */ | ||
144 | #define HAVE_ATA_DMA | ||