diff options
Diffstat (limited to 'arch/m68k/atari/config.c')
-rw-r--r-- | arch/m68k/atari/config.c | 37 |
1 files changed, 12 insertions, 25 deletions
diff --git a/arch/m68k/atari/config.c b/arch/m68k/atari/config.c index 5945e1505558..af031855f796 100644 --- a/arch/m68k/atari/config.c +++ b/arch/m68k/atari/config.c | |||
@@ -231,7 +231,7 @@ void __init config_atari(void) | |||
231 | */ | 231 | */ |
232 | 232 | ||
233 | printk("Atari hardware found: "); | 233 | printk("Atari hardware found: "); |
234 | if (MACH_IS_MEDUSA || MACH_IS_HADES) { | 234 | if (MACH_IS_MEDUSA) { |
235 | /* There's no Atari video hardware on the Medusa, but all the | 235 | /* There's no Atari video hardware on the Medusa, but all the |
236 | * addresses below generate a DTACK so no bus error occurs! */ | 236 | * addresses below generate a DTACK so no bus error occurs! */ |
237 | } else if (hwreg_present(f030_xreg)) { | 237 | } else if (hwreg_present(f030_xreg)) { |
@@ -269,10 +269,6 @@ void __init config_atari(void) | |||
269 | ATARIHW_SET(SCSI_DMA); | 269 | ATARIHW_SET(SCSI_DMA); |
270 | printk("TT_SCSI_DMA "); | 270 | printk("TT_SCSI_DMA "); |
271 | } | 271 | } |
272 | if (!MACH_IS_HADES && hwreg_present(&st_dma.dma_hi)) { | ||
273 | ATARIHW_SET(STND_DMA); | ||
274 | printk("STND_DMA "); | ||
275 | } | ||
276 | /* | 272 | /* |
277 | * The ST-DMA address registers aren't readable | 273 | * The ST-DMA address registers aren't readable |
278 | * on all Medusas, so the test below may fail | 274 | * on all Medusas, so the test below may fail |
@@ -294,12 +290,11 @@ void __init config_atari(void) | |||
294 | ATARIHW_SET(YM_2149); | 290 | ATARIHW_SET(YM_2149); |
295 | printk("YM2149 "); | 291 | printk("YM2149 "); |
296 | } | 292 | } |
297 | if (!MACH_IS_MEDUSA && !MACH_IS_HADES && | 293 | if (!MACH_IS_MEDUSA && hwreg_present(&tt_dmasnd.ctrl)) { |
298 | hwreg_present(&tt_dmasnd.ctrl)) { | ||
299 | ATARIHW_SET(PCM_8BIT); | 294 | ATARIHW_SET(PCM_8BIT); |
300 | printk("PCM "); | 295 | printk("PCM "); |
301 | } | 296 | } |
302 | if (!MACH_IS_HADES && hwreg_present(&falcon_codec.unused5)) { | 297 | if (hwreg_present(&falcon_codec.unused5)) { |
303 | ATARIHW_SET(CODEC); | 298 | ATARIHW_SET(CODEC); |
304 | printk("CODEC "); | 299 | printk("CODEC "); |
305 | } | 300 | } |
@@ -313,7 +308,7 @@ void __init config_atari(void) | |||
313 | (tt_scc_dma.dma_ctrl = 0x01, (tt_scc_dma.dma_ctrl & 1) == 1) && | 308 | (tt_scc_dma.dma_ctrl = 0x01, (tt_scc_dma.dma_ctrl & 1) == 1) && |
314 | (tt_scc_dma.dma_ctrl = 0x00, (tt_scc_dma.dma_ctrl & 1) == 0) | 309 | (tt_scc_dma.dma_ctrl = 0x00, (tt_scc_dma.dma_ctrl & 1) == 0) |
315 | #else | 310 | #else |
316 | !MACH_IS_MEDUSA && !MACH_IS_HADES | 311 | !MACH_IS_MEDUSA |
317 | #endif | 312 | #endif |
318 | ) { | 313 | ) { |
319 | ATARIHW_SET(SCC_DMA); | 314 | ATARIHW_SET(SCC_DMA); |
@@ -327,10 +322,7 @@ void __init config_atari(void) | |||
327 | ATARIHW_SET(ST_ESCC); | 322 | ATARIHW_SET(ST_ESCC); |
328 | printk("ST_ESCC "); | 323 | printk("ST_ESCC "); |
329 | } | 324 | } |
330 | if (MACH_IS_HADES) { | 325 | if (hwreg_present(&tt_scu.sys_mask)) { |
331 | ATARIHW_SET(VME); | ||
332 | printk("VME "); | ||
333 | } else if (hwreg_present(&tt_scu.sys_mask)) { | ||
334 | ATARIHW_SET(SCU); | 326 | ATARIHW_SET(SCU); |
335 | /* Assume a VME bus if there's a SCU */ | 327 | /* Assume a VME bus if there's a SCU */ |
336 | ATARIHW_SET(VME); | 328 | ATARIHW_SET(VME); |
@@ -340,7 +332,7 @@ void __init config_atari(void) | |||
340 | ATARIHW_SET(ANALOG_JOY); | 332 | ATARIHW_SET(ANALOG_JOY); |
341 | printk("ANALOG_JOY "); | 333 | printk("ANALOG_JOY "); |
342 | } | 334 | } |
343 | if (!MACH_IS_HADES && hwreg_present(blitter.halftone)) { | 335 | if (hwreg_present(blitter.halftone)) { |
344 | ATARIHW_SET(BLITTER); | 336 | ATARIHW_SET(BLITTER); |
345 | printk("BLITTER "); | 337 | printk("BLITTER "); |
346 | } | 338 | } |
@@ -349,8 +341,7 @@ void __init config_atari(void) | |||
349 | printk("IDE "); | 341 | printk("IDE "); |
350 | } | 342 | } |
351 | #if 1 /* This maybe wrong */ | 343 | #if 1 /* This maybe wrong */ |
352 | if (!MACH_IS_MEDUSA && !MACH_IS_HADES && | 344 | if (!MACH_IS_MEDUSA && hwreg_present(&tt_microwire.data) && |
353 | hwreg_present(&tt_microwire.data) && | ||
354 | hwreg_present(&tt_microwire.mask) && | 345 | hwreg_present(&tt_microwire.mask) && |
355 | (tt_microwire.mask = 0x7ff, | 346 | (tt_microwire.mask = 0x7ff, |
356 | udelay(1), | 347 | udelay(1), |
@@ -369,19 +360,18 @@ void __init config_atari(void) | |||
369 | mach_hwclk = atari_tt_hwclk; | 360 | mach_hwclk = atari_tt_hwclk; |
370 | mach_set_clock_mmss = atari_tt_set_clock_mmss; | 361 | mach_set_clock_mmss = atari_tt_set_clock_mmss; |
371 | } | 362 | } |
372 | if (!MACH_IS_HADES && hwreg_present(&mste_rtc.sec_ones)) { | 363 | if (hwreg_present(&mste_rtc.sec_ones)) { |
373 | ATARIHW_SET(MSTE_CLK); | 364 | ATARIHW_SET(MSTE_CLK); |
374 | printk("MSTE_CLK "); | 365 | printk("MSTE_CLK "); |
375 | mach_hwclk = atari_mste_hwclk; | 366 | mach_hwclk = atari_mste_hwclk; |
376 | mach_set_clock_mmss = atari_mste_set_clock_mmss; | 367 | mach_set_clock_mmss = atari_mste_set_clock_mmss; |
377 | } | 368 | } |
378 | if (!MACH_IS_MEDUSA && !MACH_IS_HADES && | 369 | if (!MACH_IS_MEDUSA && hwreg_present(&dma_wd.fdc_speed) && |
379 | hwreg_present(&dma_wd.fdc_speed) && | ||
380 | hwreg_write(&dma_wd.fdc_speed, 0)) { | 370 | hwreg_write(&dma_wd.fdc_speed, 0)) { |
381 | ATARIHW_SET(FDCSPEED); | 371 | ATARIHW_SET(FDCSPEED); |
382 | printk("FDC_SPEED "); | 372 | printk("FDC_SPEED "); |
383 | } | 373 | } |
384 | if (!MACH_IS_HADES && !ATARIHW_PRESENT(ST_SCSI)) { | 374 | if (!ATARIHW_PRESENT(ST_SCSI)) { |
385 | ATARIHW_SET(ACSI); | 375 | ATARIHW_SET(ACSI); |
386 | printk("ACSI "); | 376 | printk("ACSI "); |
387 | } | 377 | } |
@@ -449,7 +439,7 @@ void __init config_atari(void) | |||
449 | * 0xFFxxxxxx -> 0x00xxxxxx, so that the first 16MB is accessible | 439 | * 0xFFxxxxxx -> 0x00xxxxxx, so that the first 16MB is accessible |
450 | * in the last 16MB of the address space. | 440 | * in the last 16MB of the address space. |
451 | */ | 441 | */ |
452 | tos_version = (MACH_IS_MEDUSA || MACH_IS_HADES) ? | 442 | tos_version = (MACH_IS_MEDUSA) ? |
453 | 0xfff : *(unsigned short *)0xff000002; | 443 | 0xfff : *(unsigned short *)0xff000002; |
454 | atari_rtc_year_offset = (tos_version < 0x306) ? 70 : 68; | 444 | atari_rtc_year_offset = (tos_version < 0x306) ? 70 : 68; |
455 | } | 445 | } |
@@ -511,8 +501,7 @@ static void atari_reset(void) | |||
511 | * On the Medusa, phys. 0x4 may contain garbage because it's no | 501 | * On the Medusa, phys. 0x4 may contain garbage because it's no |
512 | * ROM. See above for explanation why we cannot use PTOV(4). | 502 | * ROM. See above for explanation why we cannot use PTOV(4). |
513 | */ | 503 | */ |
514 | reset_addr = MACH_IS_HADES ? 0x7fe00030 : | 504 | reset_addr = MACH_IS_MEDUSA || MACH_IS_AB40 ? 0xe00030 : |
515 | MACH_IS_MEDUSA || MACH_IS_AB40 ? 0xe00030 : | ||
516 | *(unsigned long *) 0xff000004; | 505 | *(unsigned long *) 0xff000004; |
517 | 506 | ||
518 | /* reset ACIA for switch off OverScan, if it's active */ | 507 | /* reset ACIA for switch off OverScan, if it's active */ |
@@ -606,8 +595,6 @@ static void atari_get_model(char *model) | |||
606 | if (MACH_IS_MEDUSA) | 595 | if (MACH_IS_MEDUSA) |
607 | /* Medusa has TT _MCH cookie */ | 596 | /* Medusa has TT _MCH cookie */ |
608 | strcat(model, "Medusa"); | 597 | strcat(model, "Medusa"); |
609 | else if (MACH_IS_HADES) | ||
610 | strcat(model, "Hades"); | ||
611 | else | 598 | else |
612 | strcat(model, "TT"); | 599 | strcat(model, "TT"); |
613 | break; | 600 | break; |