X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-arm%2Farch-sa1100%2Fide.h;h=2153538069c7999332e3ffa1279d2dc22cf28e47;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=bc4429642befd0a7bb5cec199517b426e76371aa;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/include/asm-arm/arch-sa1100/ide.h b/include/asm-arm/arch-sa1100/ide.h index bc4429642..215353806 100644 --- a/include/asm-arm/arch-sa1100/ide.h +++ b/include/asm-arm/arch-sa1100/ide.h @@ -14,6 +14,8 @@ #include #include +#error "This code is broken and needs update to match with current ide support" + /* * Set up a hw structure for a specified data port, control port and IRQ. @@ -47,10 +49,6 @@ static inline void ide_init_hwif_ports(hw_regs_t *hw, unsigned long data_port, *irq = 0; } -#ifdef CONFIG_SA1100_TRIZEPS -#include -#endif - /* * This registers the standard ports for this architecture with the IDE * driver. @@ -58,55 +56,7 @@ static inline void ide_init_hwif_ports(hw_regs_t *hw, unsigned long data_port, static __inline__ void ide_init_default_hwifs(void) { - if( machine_is_empeg() ){ -#ifdef CONFIG_SA1100_EMPEG - hw_regs_t hw; - - /* First, do the SA1100 setup */ - - /* PCMCIA IO space */ - MECR=0x21062106; - - /* Issue 3 is much neater than issue 2 */ - GPDR&=~(EMPEG_IDE1IRQ|EMPEG_IDE2IRQ); - - /* Interrupts on rising edge: lines are inverted before they get to - the SA */ - set_GPIO_IRQ_edge( (EMPEG_IDE1IRQ|EMPEG_IDE2IRQ), GPIO_FALLING_EDGE ); - - /* Take hard drives out of reset */ - GPSR=(EMPEG_IDERESET); - - /* Sonja and her successors have two IDE ports. */ - /* MAC 23/4/1999, swap these round so that the left hand - hard disk is hda when viewed from the front. This - doesn't match the silkscreen however. */ - ide_init_hwif_ports(&hw, PCMCIA_IO_0_BASE + 0x40, PCMCIA_IO_0_BASE + 0x78, NULL); - hw.irq = EMPEG_IRQ_IDE2; - ide_register_hw(&hw); - ide_init_hwif_ports(&hw, PCMCIA_IO_0_BASE + 0x00, PCMCIA_IO_0_BASE + 0x38, NULL); - hw.irq = ,EMPEG_IRQ_IDE1; - ide_register_hw(&hw); -#endif - } - - else if( machine_is_victor() ){ -#ifdef CONFIG_SA1100_VICTOR - hw_regs_t hw; - - /* Enable appropriate GPIOs as interrupt lines */ - GPDR &= ~GPIO_GPIO7; - set_GPIO_IRQ_edge( GPIO_GPIO7, GPIO_RISING_EDGE ); - - /* set the pcmcia interface timing */ - MECR = 0x00060006; - - ide_init_hwif_ports(&hw, PCMCIA_IO_0_BASE + 0x1f0, PCMCIA_IO_0_BASE + 0x3f6, NULL); - hw.irq = IRQ_GPIO7; - ide_register_hw(&hw); -#endif - } - else if (machine_is_lart()) { + if (machine_is_lart()) { #ifdef CONFIG_SA1100_LART hw_regs_t hw; @@ -121,25 +71,6 @@ ide_init_default_hwifs(void) ide_init_hwif_ports(&hw, PCMCIA_IO_0_BASE + 0x0000, PCMCIA_IO_0_BASE + 0x1000, NULL); hw.irq = LART_IRQ_IDE; ide_register_hw(&hw); -#endif - } - else if( machine_is_trizeps() ){ -#ifdef CONFIG_SA1100_TRIZEPS - hw_regs_t hw; - - /* Enable appropriate GPIOs as interrupt lines */ - GPDR &= ~GPIO_GPIO(TRIZEPS_IRQ_IDE); - set_irq_type( TRIZEPS_IRQ_IDE, IRQT_RISING ); - - /* set the pcmcia interface timing */ - //MECR = 0x00060006; // Done on trizeps init - - /* Take hard drives out of reset */ - GPSR = GPIO_GPIO(TRIZEPS_IRQ_IDE); - - ide_init_hwif_ports(&hw, TRIZEPS_IDE_CS0 + 0, TRIZEPS_IDE_CS1 + 6, NULL); - hw.irq = TRIZEPS_IRQ_IDE; - ide_register_hw(&hw, NULL); #endif } }