dect
/
linux-2.6
Archived
13
0
Fork 0

m68k: atari - Rename "mfp" to "st_mfp"

http://kisskb.ellerman.id.au/kisskb/buildresult/72115/:
| net/mac80211/ieee80211_i.h:327: error: syntax error before 'volatile'
| net/mac80211/ieee80211_i.h:350: error: syntax error before '}' token
| net/mac80211/ieee80211_i.h:455: error: field 'sta' has incomplete type
| distcc[19430] ERROR: compile net/mac80211/main.c on sprygo/32 failed

This is caused by

| # define mfp ((*(volatile struct MFP*)MFP_BAS))

in arch/m68k/include/asm/atarihw.h, which conflicts with the new "mfp" enum in
net/mac80211/ieee80211_i.h.

Rename "mfp" to "st_mfp", as it's a way too generic name for a global #define.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Geert Uytterhoeven 2009-02-22 09:38:47 +01:00 committed by Linus Torvalds
parent adfafefd10
commit 3d92e8f3ae
12 changed files with 56 additions and 56 deletions

View File

@ -187,8 +187,8 @@ __asm__ (__ALIGN_STR "\n" \
" jbra ret_from_interrupt\n" \ " jbra ret_from_interrupt\n" \
: : "i" (&kstat_cpu(0).irqs[n+8]), "i" (&irq_handler[n+8]), \ : : "i" (&kstat_cpu(0).irqs[n+8]), "i" (&irq_handler[n+8]), \
"n" (PT_OFF_SR), "n" (n), \ "n" (PT_OFF_SR), "n" (n), \
"i" (n & 8 ? (n & 16 ? &tt_mfp.int_mk_a : &mfp.int_mk_a) \ "i" (n & 8 ? (n & 16 ? &tt_mfp.int_mk_a : &st_mfp.int_mk_a) \
: (n & 16 ? &tt_mfp.int_mk_b : &mfp.int_mk_b)), \ : (n & 16 ? &tt_mfp.int_mk_b : &st_mfp.int_mk_b)), \
"m" (preempt_count()), "di" (HARDIRQ_OFFSET) \ "m" (preempt_count()), "di" (HARDIRQ_OFFSET) \
); \ ); \
for (;;); /* fake noreturn */ \ for (;;); /* fake noreturn */ \
@ -366,14 +366,14 @@ void __init atari_init_IRQ(void)
/* Initialize the MFP(s) */ /* Initialize the MFP(s) */
#ifdef ATARI_USE_SOFTWARE_EOI #ifdef ATARI_USE_SOFTWARE_EOI
mfp.vec_adr = 0x48; /* Software EOI-Mode */ st_mfp.vec_adr = 0x48; /* Software EOI-Mode */
#else #else
mfp.vec_adr = 0x40; /* Automatic EOI-Mode */ st_mfp.vec_adr = 0x40; /* Automatic EOI-Mode */
#endif #endif
mfp.int_en_a = 0x00; /* turn off MFP-Ints */ st_mfp.int_en_a = 0x00; /* turn off MFP-Ints */
mfp.int_en_b = 0x00; st_mfp.int_en_b = 0x00;
mfp.int_mk_a = 0xff; /* no Masking */ st_mfp.int_mk_a = 0xff; /* no Masking */
mfp.int_mk_b = 0xff; st_mfp.int_mk_b = 0xff;
if (ATARIHW_PRESENT(TT_MFP)) { if (ATARIHW_PRESENT(TT_MFP)) {
#ifdef ATARI_USE_SOFTWARE_EOI #ifdef ATARI_USE_SOFTWARE_EOI

View File

@ -609,10 +609,10 @@ int atari_keyb_init(void)
ACIA_RHTID : 0); ACIA_RHTID : 0);
/* make sure the interrupt line is up */ /* make sure the interrupt line is up */
} while ((mfp.par_dt_reg & 0x10) == 0); } while ((st_mfp.par_dt_reg & 0x10) == 0);
/* enable ACIA Interrupts */ /* enable ACIA Interrupts */
mfp.active_edge &= ~0x10; st_mfp.active_edge &= ~0x10;
atari_turnon_irq(IRQ_MFP_ACIA); atari_turnon_irq(IRQ_MFP_ACIA);
ikbd_self_test = 1; ikbd_self_test = 1;

View File

@ -258,7 +258,7 @@ void __init config_atari(void)
printk("STND_SHIFTER "); printk("STND_SHIFTER ");
} }
} }
if (hwreg_present(&mfp.par_dt_reg)) { if (hwreg_present(&st_mfp.par_dt_reg)) {
ATARIHW_SET(ST_MFP); ATARIHW_SET(ST_MFP);
printk("ST_MFP "); printk("ST_MFP ");
} }

View File

@ -34,9 +34,9 @@ static struct console atari_console_driver = {
static inline void ata_mfp_out(char c) static inline void ata_mfp_out(char c)
{ {
while (!(mfp.trn_stat & 0x80)) /* wait for tx buf empty */ while (!(st_mfp.trn_stat & 0x80)) /* wait for tx buf empty */
barrier(); barrier();
mfp.usart_dta = c; st_mfp.usart_dta = c;
} }
static void atari_mfp_console_write(struct console *co, const char *str, static void atari_mfp_console_write(struct console *co, const char *str,
@ -91,7 +91,7 @@ static int ata_par_out(char c)
/* This a some-seconds timeout in case no printer is connected */ /* This a some-seconds timeout in case no printer is connected */
unsigned long i = loops_per_jiffy > 1 ? loops_per_jiffy : 10000000/HZ; unsigned long i = loops_per_jiffy > 1 ? loops_per_jiffy : 10000000/HZ;
while ((mfp.par_dt_reg & 1) && --i) /* wait for BUSY == L */ while ((st_mfp.par_dt_reg & 1) && --i) /* wait for BUSY == L */
; ;
if (!i) if (!i)
return 0; return 0;
@ -131,9 +131,9 @@ static void atari_par_console_write(struct console *co, const char *str,
#if 0 #if 0
int atari_mfp_console_wait_key(struct console *co) int atari_mfp_console_wait_key(struct console *co)
{ {
while (!(mfp.rcv_stat & 0x80)) /* wait for rx buf filled */ while (!(st_mfp.rcv_stat & 0x80)) /* wait for rx buf filled */
barrier(); barrier();
return mfp.usart_dta; return st_mfp.usart_dta;
} }
int atari_scc_console_wait_key(struct console *co) int atari_scc_console_wait_key(struct console *co)
@ -175,12 +175,12 @@ static void __init atari_init_mfp_port(int cflag)
baud = B9600; /* use default 9600bps for non-implemented rates */ baud = B9600; /* use default 9600bps for non-implemented rates */
baud -= B1200; /* baud_table[] starts at 1200bps */ baud -= B1200; /* baud_table[] starts at 1200bps */
mfp.trn_stat &= ~0x01; /* disable TX */ st_mfp.trn_stat &= ~0x01; /* disable TX */
mfp.usart_ctr = parity | csize | 0x88; /* 1:16 clk mode, 1 stop bit */ st_mfp.usart_ctr = parity | csize | 0x88; /* 1:16 clk mode, 1 stop bit */
mfp.tim_ct_cd &= 0x70; /* stop timer D */ st_mfp.tim_ct_cd &= 0x70; /* stop timer D */
mfp.tim_dt_d = baud_table[baud]; st_mfp.tim_dt_d = baud_table[baud];
mfp.tim_ct_cd |= 0x01; /* start timer D, 1:4 */ st_mfp.tim_ct_cd |= 0x01; /* start timer D, 1:4 */
mfp.trn_stat |= 0x01; /* enable TX */ st_mfp.trn_stat |= 0x01; /* enable TX */
} }
#define SCC_WRITE(reg, val) \ #define SCC_WRITE(reg, val) \

View File

@ -27,9 +27,9 @@ void __init
atari_sched_init(irq_handler_t timer_routine) atari_sched_init(irq_handler_t timer_routine)
{ {
/* set Timer C data Register */ /* set Timer C data Register */
mfp.tim_dt_c = INT_TICKS; st_mfp.tim_dt_c = INT_TICKS;
/* start timer C, div = 1:100 */ /* start timer C, div = 1:100 */
mfp.tim_ct_cd = (mfp.tim_ct_cd & 15) | 0x60; st_mfp.tim_ct_cd = (st_mfp.tim_ct_cd & 15) | 0x60;
/* install interrupt service routine for MFP Timer C */ /* install interrupt service routine for MFP Timer C */
if (request_irq(IRQ_MFP_TIMC, timer_routine, IRQ_TYPE_SLOW, if (request_irq(IRQ_MFP_TIMC, timer_routine, IRQ_TYPE_SLOW,
"timer", timer_routine)) "timer", timer_routine))
@ -46,11 +46,11 @@ unsigned long atari_gettimeoffset (void)
unsigned long ticks, offset = 0; unsigned long ticks, offset = 0;
/* read MFP timer C current value */ /* read MFP timer C current value */
ticks = mfp.tim_dt_c; ticks = st_mfp.tim_dt_c;
/* The probability of underflow is less than 2% */ /* The probability of underflow is less than 2% */
if (ticks > INT_TICKS - INT_TICKS / 50) if (ticks > INT_TICKS - INT_TICKS / 50)
/* Check for pending timer interrupt */ /* Check for pending timer interrupt */
if (mfp.int_pn_b & (1 << 5)) if (st_mfp.int_pn_b & (1 << 5))
offset = TICK_SIZE; offset = TICK_SIZE;
ticks = INT_TICKS - ticks; ticks = INT_TICKS - ticks;

View File

@ -113,7 +113,7 @@ extern struct atari_hw_present atari_hw_present;
* of nops on various machines. Somebody claimed that the tstb takes 600 ns. * of nops on various machines. Somebody claimed that the tstb takes 600 ns.
*/ */
#define MFPDELAY() \ #define MFPDELAY() \
__asm__ __volatile__ ( "tstb %0" : : "m" (mfp.par_dt_reg) : "cc" ); __asm__ __volatile__ ( "tstb %0" : : "m" (st_mfp.par_dt_reg) : "cc" );
/* Do cache push/invalidate for DMA read/write. This function obeys the /* Do cache push/invalidate for DMA read/write. This function obeys the
* snooping on some machines (Medusa) and processors: The Medusa itself can * snooping on some machines (Medusa) and processors: The Medusa itself can
@ -565,7 +565,7 @@ struct MFP
u_char char_dummy23; u_char char_dummy23;
u_char usart_dta; u_char usart_dta;
}; };
# define mfp ((*(volatile struct MFP*)MFP_BAS)) # define st_mfp ((*(volatile struct MFP*)MFP_BAS))
/* TT's second MFP */ /* TT's second MFP */

View File

@ -113,7 +113,7 @@ static inline int get_mfp_bit( unsigned irq, int type )
{ unsigned char mask, *reg; { unsigned char mask, *reg;
mask = 1 << (irq & 7); mask = 1 << (irq & 7);
reg = (unsigned char *)&mfp.int_en_a + type*4 + reg = (unsigned char *)&st_mfp.int_en_a + type*4 +
((irq & 8) >> 2) + (((irq-8) & 16) << 3); ((irq & 8) >> 2) + (((irq-8) & 16) << 3);
return( *reg & mask ); return( *reg & mask );
} }
@ -123,7 +123,7 @@ static inline void set_mfp_bit( unsigned irq, int type )
{ unsigned char mask, *reg; { unsigned char mask, *reg;
mask = 1 << (irq & 7); mask = 1 << (irq & 7);
reg = (unsigned char *)&mfp.int_en_a + type*4 + reg = (unsigned char *)&st_mfp.int_en_a + type*4 +
((irq & 8) >> 2) + (((irq-8) & 16) << 3); ((irq & 8) >> 2) + (((irq-8) & 16) << 3);
__asm__ __volatile__ ( "orb %0,%1" __asm__ __volatile__ ( "orb %0,%1"
: : "di" (mask), "m" (*reg) : "memory" ); : : "di" (mask), "m" (*reg) : "memory" );
@ -134,7 +134,7 @@ static inline void clear_mfp_bit( unsigned irq, int type )
{ unsigned char mask, *reg; { unsigned char mask, *reg;
mask = ~(1 << (irq & 7)); mask = ~(1 << (irq & 7));
reg = (unsigned char *)&mfp.int_en_a + type*4 + reg = (unsigned char *)&st_mfp.int_en_a + type*4 +
((irq & 8) >> 2) + (((irq-8) & 16) << 3); ((irq & 8) >> 2) + (((irq-8) & 16) << 3);
if (type == MFP_PENDING || type == MFP_SERVICE) if (type == MFP_PENDING || type == MFP_SERVICE)
__asm__ __volatile__ ( "moveb %0,%1" __asm__ __volatile__ ( "moveb %0,%1"

View File

@ -1730,7 +1730,7 @@ static int __init fd_test_drive_present( int drive )
timeout = jiffies + 2*HZ+HZ/2; timeout = jiffies + 2*HZ+HZ/2;
while (time_before(jiffies, timeout)) while (time_before(jiffies, timeout))
if (!(mfp.par_dt_reg & 0x20)) if (!(st_mfp.par_dt_reg & 0x20))
break; break;
status = FDC_READ( FDCREG_STATUS ); status = FDC_READ( FDCREG_STATUS );
@ -1747,7 +1747,7 @@ static int __init fd_test_drive_present( int drive )
/* dummy seek command to make WP bit accessible */ /* dummy seek command to make WP bit accessible */
FDC_WRITE( FDCREG_DATA, 0 ); FDC_WRITE( FDCREG_DATA, 0 );
FDC_WRITE( FDCREG_CMD, FDCCMD_SEEK ); FDC_WRITE( FDCREG_CMD, FDCCMD_SEEK );
while( mfp.par_dt_reg & 0x20 ) while( st_mfp.par_dt_reg & 0x20 )
; ;
status = FDC_READ( FDCREG_STATUS ); status = FDC_READ( FDCREG_STATUS );
} }

View File

@ -387,7 +387,7 @@ struct scc_port {
/* The SCC needs 3.5 PCLK cycles recovery time between to register /* The SCC needs 3.5 PCLK cycles recovery time between to register
* accesses. PCLK runs with 8 MHz on an Atari, so this delay is 3.5 * * accesses. PCLK runs with 8 MHz on an Atari, so this delay is 3.5 *
* 125 ns = 437.5 ns. This is too short for udelay(). * 125 ns = 437.5 ns. This is too short for udelay().
* 10/16/95: A tstb mfp.par_dt_reg takes 600ns (sure?) and thus should be * 10/16/95: A tstb st_mfp.par_dt_reg takes 600ns (sure?) and thus should be
* quite right * quite right
*/ */

View File

@ -84,7 +84,7 @@ parport_atari_frob_control(struct parport *p, unsigned char mask,
static unsigned char static unsigned char
parport_atari_read_status(struct parport *p) parport_atari_read_status(struct parport *p)
{ {
return ((mfp.par_dt_reg & 1 ? 0 : PARPORT_STATUS_BUSY) | return ((st_mfp.par_dt_reg & 1 ? 0 : PARPORT_STATUS_BUSY) |
PARPORT_STATUS_SELECT | PARPORT_STATUS_ERROR); PARPORT_STATUS_SELECT | PARPORT_STATUS_ERROR);
} }
@ -193,9 +193,9 @@ static int __init parport_atari_init(void)
sound_ym.wd_data = sound_ym.rd_data_reg_sel | (1 << 5); sound_ym.wd_data = sound_ym.rd_data_reg_sel | (1 << 5);
local_irq_restore(flags); local_irq_restore(flags);
/* MFP port I0 as input. */ /* MFP port I0 as input. */
mfp.data_dir &= ~1; st_mfp.data_dir &= ~1;
/* MFP port I0 interrupt on high->low edge. */ /* MFP port I0 interrupt on high->low edge. */
mfp.active_edge &= ~1; st_mfp.active_edge &= ~1;
p = parport_register_port((unsigned long)&sound_ym.wd_data, p = parport_register_port((unsigned long)&sound_ym.wd_data,
IRQ_MFP_BUSY, PARPORT_DMA_NONE, IRQ_MFP_BUSY, PARPORT_DMA_NONE,
&parport_atari_ops); &parport_atari_ops);

View File

@ -841,7 +841,7 @@ static int tt_detect(void)
tt_dmasnd.ctrl = DMASND_CTRL_OFF; tt_dmasnd.ctrl = DMASND_CTRL_OFF;
udelay(20); /* wait a while for things to settle down */ udelay(20); /* wait a while for things to settle down */
} }
mono_moni = (mfp.par_dt_reg & 0x80) == 0; mono_moni = (st_mfp.par_dt_reg & 0x80) == 0;
tt_get_par(&par); tt_get_par(&par);
tt_encode_var(&atafb_predefined[0], &par); tt_encode_var(&atafb_predefined[0], &par);
@ -2035,7 +2035,7 @@ static int stste_detect(void)
tt_dmasnd.ctrl = DMASND_CTRL_OFF; tt_dmasnd.ctrl = DMASND_CTRL_OFF;
udelay(20); /* wait a while for things to settle down */ udelay(20); /* wait a while for things to settle down */
} }
mono_moni = (mfp.par_dt_reg & 0x80) == 0; mono_moni = (st_mfp.par_dt_reg & 0x80) == 0;
stste_get_par(&par); stste_get_par(&par);
stste_encode_var(&atafb_predefined[0], &par); stste_encode_var(&atafb_predefined[0], &par);
@ -2086,20 +2086,20 @@ static void st_ovsc_switch(void)
return; return;
local_irq_save(flags); local_irq_save(flags);
mfp.tim_ct_b = 0x10; st_mfp.tim_ct_b = 0x10;
mfp.active_edge |= 8; st_mfp.active_edge |= 8;
mfp.tim_ct_b = 0; st_mfp.tim_ct_b = 0;
mfp.tim_dt_b = 0xf0; st_mfp.tim_dt_b = 0xf0;
mfp.tim_ct_b = 8; st_mfp.tim_ct_b = 8;
while (mfp.tim_dt_b > 1) /* TOS does it this way, don't ask why */ while (st_mfp.tim_dt_b > 1) /* TOS does it this way, don't ask why */
; ;
new = mfp.tim_dt_b; new = st_mfp.tim_dt_b;
do { do {
udelay(LINE_DELAY); udelay(LINE_DELAY);
old = new; old = new;
new = mfp.tim_dt_b; new = st_mfp.tim_dt_b;
} while (old != new); } while (old != new);
mfp.tim_ct_b = 0x10; st_mfp.tim_ct_b = 0x10;
udelay(SYNC_DELAY); udelay(SYNC_DELAY);
if (atari_switches & ATARI_SWITCH_OVSC_IKBD) if (atari_switches & ATARI_SWITCH_OVSC_IKBD)

View File

@ -847,23 +847,23 @@ static int __init AtaIrqInit(void)
of events. So all we need to keep the music playing is of events. So all we need to keep the music playing is
to provide the sound hardware with new data upon to provide the sound hardware with new data upon
an interrupt from timer A. */ an interrupt from timer A. */
mfp.tim_ct_a = 0; /* ++roman: Stop timer before programming! */ st_mfp.tim_ct_a = 0; /* ++roman: Stop timer before programming! */
mfp.tim_dt_a = 1; /* Cause interrupt after first event. */ st_mfp.tim_dt_a = 1; /* Cause interrupt after first event. */
mfp.tim_ct_a = 8; /* Turn on event counting. */ st_mfp.tim_ct_a = 8; /* Turn on event counting. */
/* Register interrupt handler. */ /* Register interrupt handler. */
if (request_irq(IRQ_MFP_TIMA, AtaInterrupt, IRQ_TYPE_SLOW, "DMA sound", if (request_irq(IRQ_MFP_TIMA, AtaInterrupt, IRQ_TYPE_SLOW, "DMA sound",
AtaInterrupt)) AtaInterrupt))
return 0; return 0;
mfp.int_en_a |= 0x20; /* Turn interrupt on. */ st_mfp.int_en_a |= 0x20; /* Turn interrupt on. */
mfp.int_mk_a |= 0x20; st_mfp.int_mk_a |= 0x20;
return 1; return 1;
} }
#ifdef MODULE #ifdef MODULE
static void AtaIrqCleanUp(void) static void AtaIrqCleanUp(void)
{ {
mfp.tim_ct_a = 0; /* stop timer */ st_mfp.tim_ct_a = 0; /* stop timer */
mfp.int_en_a &= ~0x20; /* turn interrupt off */ st_mfp.int_en_a &= ~0x20; /* turn interrupt off */
free_irq(IRQ_MFP_TIMA, AtaInterrupt); free_irq(IRQ_MFP_TIMA, AtaInterrupt);
} }
#endif /* MODULE */ #endif /* MODULE */
@ -1599,7 +1599,7 @@ static int __init dmasound_atari_init(void)
is_falcon = 0; is_falcon = 0;
} else } else
return -ENODEV; return -ENODEV;
if ((mfp.int_en_a & mfp.int_mk_a & 0x20) == 0) if ((st_mfp.int_en_a & st_mfp.int_mk_a & 0x20) == 0)
return dmasound_init(); return dmasound_init();
else { else {
printk("DMA sound driver: Timer A interrupt already in use\n"); printk("DMA sound driver: Timer A interrupt already in use\n");