forked from luck/tmp_suning_uos_patched
[PATCH] m68k: namespace pollution fix (custom->amiga_custom)
in amigahw.h custom renamed to amiga_custom, in drivers with few instances the same replacement, in the rest - #define custom amiga_custom in driver itself Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Cc: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
198a410119
commit
b4290a23cf
|
@ -126,9 +126,9 @@ void __init amiga_init_IRQ(void)
|
|||
gayle.inten = GAYLE_IRQ_IDE;
|
||||
|
||||
/* turn off all interrupts and enable the master interrupt bit */
|
||||
custom.intena = 0x7fff;
|
||||
custom.intreq = 0x7fff;
|
||||
custom.intena = IF_SETCLR | IF_INTEN;
|
||||
amiga_custom.intena = 0x7fff;
|
||||
amiga_custom.intreq = 0x7fff;
|
||||
amiga_custom.intena = IF_SETCLR | IF_INTEN;
|
||||
|
||||
cia_init_IRQ(&ciaa_base);
|
||||
cia_init_IRQ(&ciab_base);
|
||||
|
@ -245,7 +245,7 @@ int amiga_request_irq(unsigned int irq,
|
|||
|
||||
/* enable the interrupt */
|
||||
if (irq < IRQ_AMIGA_PORTS && !ami_ablecount[irq])
|
||||
custom.intena = IF_SETCLR | amiga_intena_vals[irq];
|
||||
amiga_custom.intena = IF_SETCLR | amiga_intena_vals[irq];
|
||||
|
||||
return error;
|
||||
}
|
||||
|
@ -274,7 +274,7 @@ void amiga_free_irq(unsigned int irq, void *dev_id)
|
|||
amiga_delete_irq(&ami_irq_list[irq], dev_id);
|
||||
/* if server list empty, disable the interrupt */
|
||||
if (!ami_irq_list[irq] && irq < IRQ_AMIGA_PORTS)
|
||||
custom.intena = amiga_intena_vals[irq];
|
||||
amiga_custom.intena = amiga_intena_vals[irq];
|
||||
} else {
|
||||
if (ami_irq_list[irq]->dev_id != dev_id)
|
||||
printk("%s: removing probably wrong IRQ %d from %s\n",
|
||||
|
@ -283,7 +283,7 @@ void amiga_free_irq(unsigned int irq, void *dev_id)
|
|||
ami_irq_list[irq]->flags = 0;
|
||||
ami_irq_list[irq]->dev_id = NULL;
|
||||
ami_irq_list[irq]->devname = NULL;
|
||||
custom.intena = amiga_intena_vals[irq];
|
||||
amiga_custom.intena = amiga_intena_vals[irq];
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -327,7 +327,7 @@ void amiga_enable_irq(unsigned int irq)
|
|||
}
|
||||
|
||||
/* enable the interrupt */
|
||||
custom.intena = IF_SETCLR | amiga_intena_vals[irq];
|
||||
amiga_custom.intena = IF_SETCLR | amiga_intena_vals[irq];
|
||||
}
|
||||
|
||||
void amiga_disable_irq(unsigned int irq)
|
||||
|
@ -358,7 +358,7 @@ void amiga_disable_irq(unsigned int irq)
|
|||
}
|
||||
|
||||
/* disable the interrupt */
|
||||
custom.intena = amiga_intena_vals[irq];
|
||||
amiga_custom.intena = amiga_intena_vals[irq];
|
||||
}
|
||||
|
||||
inline void amiga_do_irq(int irq, struct pt_regs *fp)
|
||||
|
@ -373,7 +373,7 @@ void amiga_do_irq_list(int irq, struct pt_regs *fp)
|
|||
|
||||
kstat_cpu(0).irqs[SYS_IRQS + irq]++;
|
||||
|
||||
custom.intreq = amiga_intena_vals[irq];
|
||||
amiga_custom.intreq = amiga_intena_vals[irq];
|
||||
|
||||
for (node = ami_irq_list[irq]; node; node = node->next)
|
||||
node->handler(irq, node->dev_id, fp);
|
||||
|
@ -385,23 +385,23 @@ void amiga_do_irq_list(int irq, struct pt_regs *fp)
|
|||
|
||||
static irqreturn_t ami_int1(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if serial transmit buffer empty, interrupt */
|
||||
if (ints & IF_TBE) {
|
||||
custom.intreq = IF_TBE;
|
||||
amiga_custom.intreq = IF_TBE;
|
||||
amiga_do_irq(IRQ_AMIGA_TBE, fp);
|
||||
}
|
||||
|
||||
/* if floppy disk transfer complete, interrupt */
|
||||
if (ints & IF_DSKBLK) {
|
||||
custom.intreq = IF_DSKBLK;
|
||||
amiga_custom.intreq = IF_DSKBLK;
|
||||
amiga_do_irq(IRQ_AMIGA_DSKBLK, fp);
|
||||
}
|
||||
|
||||
/* if software interrupt set, interrupt */
|
||||
if (ints & IF_SOFT) {
|
||||
custom.intreq = IF_SOFT;
|
||||
amiga_custom.intreq = IF_SOFT;
|
||||
amiga_do_irq(IRQ_AMIGA_SOFT, fp);
|
||||
}
|
||||
return IRQ_HANDLED;
|
||||
|
@ -409,17 +409,17 @@ static irqreturn_t ami_int1(int irq, void *dev_id, struct pt_regs *fp)
|
|||
|
||||
static irqreturn_t ami_int3(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if a blitter interrupt */
|
||||
if (ints & IF_BLIT) {
|
||||
custom.intreq = IF_BLIT;
|
||||
amiga_custom.intreq = IF_BLIT;
|
||||
amiga_do_irq(IRQ_AMIGA_BLIT, fp);
|
||||
}
|
||||
|
||||
/* if a copper interrupt */
|
||||
if (ints & IF_COPER) {
|
||||
custom.intreq = IF_COPER;
|
||||
amiga_custom.intreq = IF_COPER;
|
||||
amiga_do_irq(IRQ_AMIGA_COPPER, fp);
|
||||
}
|
||||
|
||||
|
@ -431,29 +431,29 @@ static irqreturn_t ami_int3(int irq, void *dev_id, struct pt_regs *fp)
|
|||
|
||||
static irqreturn_t ami_int4(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if audio 0 interrupt */
|
||||
if (ints & IF_AUD0) {
|
||||
custom.intreq = IF_AUD0;
|
||||
amiga_custom.intreq = IF_AUD0;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD0, fp);
|
||||
}
|
||||
|
||||
/* if audio 1 interrupt */
|
||||
if (ints & IF_AUD1) {
|
||||
custom.intreq = IF_AUD1;
|
||||
amiga_custom.intreq = IF_AUD1;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD1, fp);
|
||||
}
|
||||
|
||||
/* if audio 2 interrupt */
|
||||
if (ints & IF_AUD2) {
|
||||
custom.intreq = IF_AUD2;
|
||||
amiga_custom.intreq = IF_AUD2;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD2, fp);
|
||||
}
|
||||
|
||||
/* if audio 3 interrupt */
|
||||
if (ints & IF_AUD3) {
|
||||
custom.intreq = IF_AUD3;
|
||||
amiga_custom.intreq = IF_AUD3;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD3, fp);
|
||||
}
|
||||
return IRQ_HANDLED;
|
||||
|
@ -461,7 +461,7 @@ static irqreturn_t ami_int4(int irq, void *dev_id, struct pt_regs *fp)
|
|||
|
||||
static irqreturn_t ami_int5(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if serial receive buffer full interrupt */
|
||||
if (ints & IF_RBF) {
|
||||
|
@ -471,7 +471,7 @@ static irqreturn_t ami_int5(int irq, void *dev_id, struct pt_regs *fp)
|
|||
|
||||
/* if a disk sync interrupt */
|
||||
if (ints & IF_DSKSYN) {
|
||||
custom.intreq = IF_DSKSYN;
|
||||
amiga_custom.intreq = IF_DSKSYN;
|
||||
amiga_do_irq(IRQ_AMIGA_DSKSYN, fp);
|
||||
}
|
||||
return IRQ_HANDLED;
|
||||
|
|
|
@ -24,6 +24,8 @@ static const signed char sine_data[] = {
|
|||
};
|
||||
#define DATA_SIZE (sizeof(sine_data)/sizeof(sine_data[0]))
|
||||
|
||||
#define custom amiga_custom
|
||||
|
||||
/*
|
||||
* The minimum period for audio may be modified by the frame buffer
|
||||
* device since it depends on htotal (for OCS/ECS/AGA)
|
||||
|
|
|
@ -60,7 +60,7 @@ unsigned char cia_set_irq(struct ciabase *base, unsigned char mask)
|
|||
else
|
||||
base->icr_data &= ~mask;
|
||||
if (base->icr_data & base->icr_mask)
|
||||
custom.intreq = IF_SETCLR | base->int_mask;
|
||||
amiga_custom.intreq = IF_SETCLR | base->int_mask;
|
||||
return old & base->icr_mask;
|
||||
}
|
||||
|
||||
|
@ -89,7 +89,7 @@ unsigned char cia_able_irq(struct ciabase *base, unsigned char mask)
|
|||
}
|
||||
}
|
||||
if (base->icr_data & base->icr_mask)
|
||||
custom.intreq = IF_SETCLR | base->int_mask;
|
||||
amiga_custom.intreq = IF_SETCLR | base->int_mask;
|
||||
return old;
|
||||
}
|
||||
|
||||
|
@ -133,7 +133,7 @@ static irqreturn_t cia_handler(int irq, void *dev_id, struct pt_regs *fp)
|
|||
mach_irq = base->cia_irq;
|
||||
irq = SYS_IRQS + mach_irq;
|
||||
ints = cia_set_irq(base, CIA_ICR_ALL);
|
||||
custom.intreq = base->int_mask;
|
||||
amiga_custom.intreq = base->int_mask;
|
||||
for (i = 0; i < CIA_IRQS; i++, irq++, mach_irq++) {
|
||||
if (ints & 1) {
|
||||
kstat_cpu(0).irqs[irq]++;
|
||||
|
@ -162,7 +162,7 @@ void __init cia_init_IRQ(struct ciabase *base)
|
|||
/* install CIA handler */
|
||||
request_irq(base->handler_irq, cia_handler, 0, base->name, base);
|
||||
|
||||
custom.intena = IF_SETCLR | base->int_mask;
|
||||
amiga_custom.intena = IF_SETCLR | base->int_mask;
|
||||
}
|
||||
|
||||
int cia_get_irq_list(struct ciabase *base, struct seq_file *p)
|
||||
|
|
|
@ -290,7 +290,7 @@ static void __init amiga_identify(void)
|
|||
case CS_OCS:
|
||||
case CS_ECS:
|
||||
case CS_AGA:
|
||||
switch (custom.deniseid & 0xf) {
|
||||
switch (amiga_custom.deniseid & 0xf) {
|
||||
case 0x0c:
|
||||
AMIGAHW_SET(DENISE_HR);
|
||||
break;
|
||||
|
@ -303,7 +303,7 @@ static void __init amiga_identify(void)
|
|||
AMIGAHW_SET(DENISE);
|
||||
break;
|
||||
}
|
||||
switch ((custom.vposr>>8) & 0x7f) {
|
||||
switch ((amiga_custom.vposr>>8) & 0x7f) {
|
||||
case 0x00:
|
||||
AMIGAHW_SET(AGNUS_PAL);
|
||||
break;
|
||||
|
@ -447,9 +447,9 @@ void __init config_amiga(void)
|
|||
amiga_colorclock = 5*amiga_eclock; /* 3.5 MHz */
|
||||
|
||||
/* clear all DMA bits */
|
||||
custom.dmacon = DMAF_ALL;
|
||||
amiga_custom.dmacon = DMAF_ALL;
|
||||
/* ensure that the DMA master bit is set */
|
||||
custom.dmacon = DMAF_SETCLR | DMAF_MASTER;
|
||||
amiga_custom.dmacon = DMAF_SETCLR | DMAF_MASTER;
|
||||
|
||||
/* don't use Z2 RAM as system memory on Z3 capable machines */
|
||||
if (AMIGAHW_PRESENT(ZORRO3)) {
|
||||
|
@ -830,8 +830,8 @@ static void amiga_savekmsg_init(void)
|
|||
|
||||
static void amiga_serial_putc(char c)
|
||||
{
|
||||
custom.serdat = (unsigned char)c | 0x100;
|
||||
while (!(custom.serdatr & 0x2000))
|
||||
amiga_custom.serdat = (unsigned char)c | 0x100;
|
||||
while (!(amiga_custom.serdatr & 0x2000))
|
||||
;
|
||||
}
|
||||
|
||||
|
@ -855,11 +855,11 @@ int amiga_serial_console_wait_key(struct console *co)
|
|||
{
|
||||
int ch;
|
||||
|
||||
while (!(custom.intreqr & IF_RBF))
|
||||
while (!(amiga_custom.intreqr & IF_RBF))
|
||||
barrier();
|
||||
ch = custom.serdatr & 0xff;
|
||||
ch = amiga_custom.serdatr & 0xff;
|
||||
/* clear the interrupt, so that another character can be read */
|
||||
custom.intreq = IF_RBF;
|
||||
amiga_custom.intreq = IF_RBF;
|
||||
return ch;
|
||||
}
|
||||
|
||||
|
|
|
@ -92,7 +92,7 @@ int main(void)
|
|||
DEFINE(TRAP_TRACE, TRAP_TRACE);
|
||||
|
||||
/* offsets into the custom struct */
|
||||
DEFINE(CUSTOMBASE, &custom);
|
||||
DEFINE(CUSTOMBASE, &amiga_custom);
|
||||
DEFINE(C_INTENAR, offsetof(struct CUSTOM, intenar));
|
||||
DEFINE(C_INTREQR, offsetof(struct CUSTOM, intreqr));
|
||||
DEFINE(C_INTENA, offsetof(struct CUSTOM, intena));
|
||||
|
|
|
@ -96,8 +96,8 @@ void amiga_init_IRQ(void)
|
|||
gayle.inten = GAYLE_IRQ_IDE;
|
||||
|
||||
/* turn off all interrupts... */
|
||||
custom.intena = 0x7fff;
|
||||
custom.intreq = 0x7fff;
|
||||
amiga_custom.intena = 0x7fff;
|
||||
amiga_custom.intreq = 0x7fff;
|
||||
|
||||
#ifdef CONFIG_APUS
|
||||
/* Clear any inter-CPU interrupt requests. Circumvents bug in
|
||||
|
@ -110,7 +110,7 @@ void amiga_init_IRQ(void)
|
|||
APUS_WRITE(APUS_IPL_EMU, IPLEMU_SETRESET | IPLEMU_IPLMASK);
|
||||
#endif
|
||||
/* ... and enable the master interrupt bit */
|
||||
custom.intena = IF_SETCLR | IF_INTEN;
|
||||
amiga_custom.intena = IF_SETCLR | IF_INTEN;
|
||||
|
||||
cia_init_IRQ(&ciaa_base);
|
||||
cia_init_IRQ(&ciab_base);
|
||||
|
@ -151,7 +151,7 @@ void amiga_enable_irq(unsigned int irq)
|
|||
}
|
||||
|
||||
/* enable the interrupt */
|
||||
custom.intena = IF_SETCLR | ami_intena_vals[irq];
|
||||
amiga_custom.intena = IF_SETCLR | ami_intena_vals[irq];
|
||||
}
|
||||
|
||||
void amiga_disable_irq(unsigned int irq)
|
||||
|
@ -177,7 +177,7 @@ void amiga_disable_irq(unsigned int irq)
|
|||
}
|
||||
|
||||
/* disable the interrupt */
|
||||
custom.intena = ami_intena_vals[irq];
|
||||
amiga_custom.intena = ami_intena_vals[irq];
|
||||
}
|
||||
|
||||
inline void amiga_do_irq(int irq, struct pt_regs *fp)
|
||||
|
@ -196,7 +196,7 @@ void amiga_do_irq_list(int irq, struct pt_regs *fp)
|
|||
|
||||
kstat_cpu(0).irqs[irq]++;
|
||||
|
||||
custom.intreq = ami_intena_vals[irq];
|
||||
amiga_custom.intreq = ami_intena_vals[irq];
|
||||
|
||||
for (action = desc->action; action; action = action->next)
|
||||
action->handler(irq, action->dev_id, fp);
|
||||
|
@ -208,40 +208,40 @@ void amiga_do_irq_list(int irq, struct pt_regs *fp)
|
|||
|
||||
static void ami_int1(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if serial transmit buffer empty, interrupt */
|
||||
if (ints & IF_TBE) {
|
||||
custom.intreq = IF_TBE;
|
||||
amiga_custom.intreq = IF_TBE;
|
||||
amiga_do_irq(IRQ_AMIGA_TBE, fp);
|
||||
}
|
||||
|
||||
/* if floppy disk transfer complete, interrupt */
|
||||
if (ints & IF_DSKBLK) {
|
||||
custom.intreq = IF_DSKBLK;
|
||||
amiga_custom.intreq = IF_DSKBLK;
|
||||
amiga_do_irq(IRQ_AMIGA_DSKBLK, fp);
|
||||
}
|
||||
|
||||
/* if software interrupt set, interrupt */
|
||||
if (ints & IF_SOFT) {
|
||||
custom.intreq = IF_SOFT;
|
||||
amiga_custom.intreq = IF_SOFT;
|
||||
amiga_do_irq(IRQ_AMIGA_SOFT, fp);
|
||||
}
|
||||
}
|
||||
|
||||
static void ami_int3(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if a blitter interrupt */
|
||||
if (ints & IF_BLIT) {
|
||||
custom.intreq = IF_BLIT;
|
||||
amiga_custom.intreq = IF_BLIT;
|
||||
amiga_do_irq(IRQ_AMIGA_BLIT, fp);
|
||||
}
|
||||
|
||||
/* if a copper interrupt */
|
||||
if (ints & IF_COPER) {
|
||||
custom.intreq = IF_COPER;
|
||||
amiga_custom.intreq = IF_COPER;
|
||||
amiga_do_irq(IRQ_AMIGA_COPPER, fp);
|
||||
}
|
||||
|
||||
|
@ -252,36 +252,36 @@ static void ami_int3(int irq, void *dev_id, struct pt_regs *fp)
|
|||
|
||||
static void ami_int4(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if audio 0 interrupt */
|
||||
if (ints & IF_AUD0) {
|
||||
custom.intreq = IF_AUD0;
|
||||
amiga_custom.intreq = IF_AUD0;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD0, fp);
|
||||
}
|
||||
|
||||
/* if audio 1 interrupt */
|
||||
if (ints & IF_AUD1) {
|
||||
custom.intreq = IF_AUD1;
|
||||
amiga_custom.intreq = IF_AUD1;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD1, fp);
|
||||
}
|
||||
|
||||
/* if audio 2 interrupt */
|
||||
if (ints & IF_AUD2) {
|
||||
custom.intreq = IF_AUD2;
|
||||
amiga_custom.intreq = IF_AUD2;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD2, fp);
|
||||
}
|
||||
|
||||
/* if audio 3 interrupt */
|
||||
if (ints & IF_AUD3) {
|
||||
custom.intreq = IF_AUD3;
|
||||
amiga_custom.intreq = IF_AUD3;
|
||||
amiga_do_irq(IRQ_AMIGA_AUD3, fp);
|
||||
}
|
||||
}
|
||||
|
||||
static void ami_int5(int irq, void *dev_id, struct pt_regs *fp)
|
||||
{
|
||||
unsigned short ints = custom.intreqr & custom.intenar;
|
||||
unsigned short ints = amiga_custom.intreqr & amiga_custom.intenar;
|
||||
|
||||
/* if serial receive buffer full interrupt */
|
||||
if (ints & IF_RBF) {
|
||||
|
@ -291,7 +291,7 @@ static void ami_int5(int irq, void *dev_id, struct pt_regs *fp)
|
|||
|
||||
/* if a disk sync interrupt */
|
||||
if (ints & IF_DSKSYN) {
|
||||
custom.intreq = IF_DSKSYN;
|
||||
amiga_custom.intreq = IF_DSKSYN;
|
||||
amiga_do_irq(IRQ_AMIGA_DSKSYN, fp);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -66,7 +66,7 @@ static unsigned char cia_set_irq_private(struct ciabase *base,
|
|||
else
|
||||
base->icr_data &= ~mask;
|
||||
if (base->icr_data & base->icr_mask)
|
||||
custom.intreq = IF_SETCLR | base->int_mask;
|
||||
amiga_custom.intreq = IF_SETCLR | base->int_mask;
|
||||
return old & base->icr_mask;
|
||||
}
|
||||
|
||||
|
@ -114,7 +114,7 @@ static unsigned char cia_able_irq_private(struct ciabase *base,
|
|||
base->icr_mask &= CIA_ICR_ALL;
|
||||
|
||||
if (base->icr_data & base->icr_mask)
|
||||
custom.intreq = IF_SETCLR | base->int_mask;
|
||||
amiga_custom.intreq = IF_SETCLR | base->int_mask;
|
||||
return old;
|
||||
}
|
||||
|
||||
|
@ -145,7 +145,7 @@ static void cia_handler(int irq, void *dev_id, struct pt_regs *fp)
|
|||
irq = base->cia_irq;
|
||||
desc = irq_desc + irq;
|
||||
ints = cia_set_irq_private(base, CIA_ICR_ALL);
|
||||
custom.intreq = base->int_mask;
|
||||
amiga_custom.intreq = base->int_mask;
|
||||
for (i = 0; i < CIA_IRQS; i++, irq++) {
|
||||
if (ints & 1) {
|
||||
kstat_cpu(0).irqs[irq]++;
|
||||
|
@ -174,5 +174,5 @@ void __init cia_init_IRQ(struct ciabase *base)
|
|||
action->name = base->name;
|
||||
setup_irq(base->handler_irq, &amiga_sys_irqaction[base->handler_irq-IRQ_AMIGA_AUTO]);
|
||||
|
||||
custom.intena = IF_SETCLR | base->int_mask;
|
||||
amiga_custom.intena = IF_SETCLR | base->int_mask;
|
||||
}
|
||||
|
|
|
@ -281,7 +281,7 @@ static void __init amiga_identify(void)
|
|||
case CS_OCS:
|
||||
case CS_ECS:
|
||||
case CS_AGA:
|
||||
switch (custom.deniseid & 0xf) {
|
||||
switch (amiga_custom.deniseid & 0xf) {
|
||||
case 0x0c:
|
||||
AMIGAHW_SET(DENISE_HR);
|
||||
break;
|
||||
|
@ -294,7 +294,7 @@ static void __init amiga_identify(void)
|
|||
AMIGAHW_SET(DENISE);
|
||||
break;
|
||||
}
|
||||
switch ((custom.vposr>>8) & 0x7f) {
|
||||
switch ((amiga_custom.vposr>>8) & 0x7f) {
|
||||
case 0x00:
|
||||
AMIGAHW_SET(AGNUS_PAL);
|
||||
break;
|
||||
|
@ -432,9 +432,9 @@ void __init config_amiga(void)
|
|||
amiga_colorclock = 5*amiga_eclock; /* 3.5 MHz */
|
||||
|
||||
/* clear all DMA bits */
|
||||
custom.dmacon = DMAF_ALL;
|
||||
amiga_custom.dmacon = DMAF_ALL;
|
||||
/* ensure that the DMA master bit is set */
|
||||
custom.dmacon = DMAF_SETCLR | DMAF_MASTER;
|
||||
amiga_custom.dmacon = DMAF_SETCLR | DMAF_MASTER;
|
||||
|
||||
/* request all RAM */
|
||||
for (i = 0; i < m68k_num_memory; i++) {
|
||||
|
@ -753,9 +753,9 @@ static void amiga_savekmsg_init(void)
|
|||
|
||||
static void amiga_serial_putc(char c)
|
||||
{
|
||||
custom.serdat = (unsigned char)c | 0x100;
|
||||
amiga_custom.serdat = (unsigned char)c | 0x100;
|
||||
mb();
|
||||
while (!(custom.serdatr & 0x2000))
|
||||
while (!(amiga_custom.serdatr & 0x2000))
|
||||
;
|
||||
}
|
||||
|
||||
|
@ -785,11 +785,11 @@ int amiga_serial_console_wait_key(struct console *co)
|
|||
{
|
||||
int ch;
|
||||
|
||||
while (!(custom.intreqr & IF_RBF))
|
||||
while (!(amiga_custom.intreqr & IF_RBF))
|
||||
barrier();
|
||||
ch = custom.serdatr & 0xff;
|
||||
ch = amiga_custom.serdatr & 0xff;
|
||||
/* clear the interrupt, so that another character can be read */
|
||||
custom.intreq = IF_RBF;
|
||||
amiga_custom.intreq = IF_RBF;
|
||||
return ch;
|
||||
}
|
||||
|
||||
|
|
|
@ -574,9 +574,9 @@ static __inline__ void ser_RTSon(void)
|
|||
|
||||
int __debug_ser_out( unsigned char c )
|
||||
{
|
||||
custom.serdat = c | 0x100;
|
||||
amiga_custom.serdat = c | 0x100;
|
||||
mb();
|
||||
while (!(custom.serdatr & 0x2000))
|
||||
while (!(amiga_custom.serdatr & 0x2000))
|
||||
barrier();
|
||||
return 1;
|
||||
}
|
||||
|
@ -586,11 +586,11 @@ unsigned char __debug_ser_in( void )
|
|||
unsigned char c;
|
||||
|
||||
/* XXX: is that ok?? derived from amiga_ser.c... */
|
||||
while( !(custom.intreqr & IF_RBF) )
|
||||
while( !(amiga_custom.intreqr & IF_RBF) )
|
||||
barrier();
|
||||
c = custom.serdatr;
|
||||
c = amiga_custom.serdatr;
|
||||
/* clear the interrupt, so that another character can be read */
|
||||
custom.intreq = IF_RBF;
|
||||
amiga_custom.intreq = IF_RBF;
|
||||
return c;
|
||||
}
|
||||
|
||||
|
@ -601,10 +601,10 @@ int __debug_serinit( void )
|
|||
local_irq_save(flags);
|
||||
|
||||
/* turn off Rx and Tx interrupts */
|
||||
custom.intena = IF_RBF | IF_TBE;
|
||||
amiga_custom.intena = IF_RBF | IF_TBE;
|
||||
|
||||
/* clear any pending interrupt */
|
||||
custom.intreq = IF_RBF | IF_TBE;
|
||||
amiga_custom.intreq = IF_RBF | IF_TBE;
|
||||
|
||||
local_irq_restore(flags);
|
||||
|
||||
|
@ -617,7 +617,7 @@ int __debug_serinit( void )
|
|||
|
||||
#ifdef CONFIG_KGDB
|
||||
/* turn Rx interrupts on for GDB */
|
||||
custom.intena = IF_SETCLR | IF_RBF;
|
||||
amiga_custom.intena = IF_SETCLR | IF_RBF;
|
||||
ser_RTSon();
|
||||
#endif
|
||||
|
||||
|
|
|
@ -194,6 +194,8 @@ static DECLARE_WAIT_QUEUE_HEAD(ms_wait);
|
|||
*/
|
||||
#define MAX_ERRORS 12
|
||||
|
||||
#define custom amiga_custom
|
||||
|
||||
/* Prevent "aliased" accesses. */
|
||||
static int fd_ref[4] = { 0,0,0,0 };
|
||||
static int fd_device[4] = { 0, 0, 0, 0 };
|
||||
|
|
|
@ -99,6 +99,7 @@ static char *serial_version = "4.30";
|
|||
#define _INLINE_ inline
|
||||
#endif
|
||||
|
||||
#define custom amiga_custom
|
||||
static char *serial_name = "Amiga-builtin serial driver";
|
||||
|
||||
static struct tty_driver *serial_driver;
|
||||
|
|
|
@ -64,8 +64,8 @@ static irqreturn_t amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp)
|
|||
if (amijoy[i]) {
|
||||
|
||||
switch (i) {
|
||||
case 0: data = ~custom.joy0dat; button = (~ciaa.pra >> 6) & 1; break;
|
||||
case 1: data = ~custom.joy1dat; button = (~ciaa.pra >> 7) & 1; break;
|
||||
case 0: data = ~amiga_custom.joy0dat; button = (~ciaa.pra >> 6) & 1; break;
|
||||
case 1: data = ~amiga_custom.joy1dat; button = (~ciaa.pra >> 7) & 1; break;
|
||||
}
|
||||
|
||||
input_regs(amijoy_dev[i], fp);
|
||||
|
|
|
@ -41,7 +41,7 @@ static irqreturn_t amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp)
|
|||
unsigned short joy0dat, potgor;
|
||||
int nx, ny, dx, dy;
|
||||
|
||||
joy0dat = custom.joy0dat;
|
||||
joy0dat = amiga_custom.joy0dat;
|
||||
|
||||
nx = joy0dat & 0xff;
|
||||
ny = joy0dat >> 8;
|
||||
|
@ -57,7 +57,7 @@ static irqreturn_t amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp)
|
|||
amimouse_lastx = nx;
|
||||
amimouse_lasty = ny;
|
||||
|
||||
potgor = custom.potgor;
|
||||
potgor = amiga_custom.potgor;
|
||||
|
||||
input_regs(amimouse_dev, fp);
|
||||
|
||||
|
@ -77,7 +77,7 @@ static int amimouse_open(struct input_dev *dev)
|
|||
{
|
||||
unsigned short joy0dat;
|
||||
|
||||
joy0dat = custom.joy0dat;
|
||||
joy0dat = amiga_custom.joy0dat;
|
||||
|
||||
amimouse_lastx = joy0dat & 0xff;
|
||||
amimouse_lasty = joy0dat >> 8;
|
||||
|
|
|
@ -224,7 +224,7 @@ static int dma_can_transfer(struct NCR_ESP *esp, Scsi_Cmnd *sp)
|
|||
static void dma_dump_state(struct NCR_ESP *esp)
|
||||
{
|
||||
ESPLOG(("intreq:<%04x>, intena:<%04x>\n",
|
||||
custom.intreqr, custom.intenar));
|
||||
amiga_custom.intreqr, amiga_custom.intenar));
|
||||
}
|
||||
|
||||
void dma_init_read(struct NCR_ESP *esp, __u32 addr, int length)
|
||||
|
@ -298,7 +298,7 @@ static int dma_irq_p(struct NCR_ESP *esp)
|
|||
|
||||
static int dma_ports_p(struct NCR_ESP *esp)
|
||||
{
|
||||
return ((custom.intenar) & IF_PORTS);
|
||||
return ((amiga_custom.intenar) & IF_PORTS);
|
||||
}
|
||||
|
||||
static void dma_setup(struct NCR_ESP *esp, __u32 addr, int count, int write)
|
||||
|
|
|
@ -190,7 +190,7 @@ static int dma_can_transfer(struct NCR_ESP *esp, Scsi_Cmnd *sp)
|
|||
static void dma_dump_state(struct NCR_ESP *esp)
|
||||
{
|
||||
ESPLOG(("intreq:<%04x>, intena:<%04x>\n",
|
||||
custom.intreqr, custom.intenar));
|
||||
amiga_custom.intreqr, amiga_custom.intenar));
|
||||
}
|
||||
|
||||
static void dma_init_read(struct NCR_ESP *esp, __u32 addr, int length)
|
||||
|
@ -251,7 +251,7 @@ static void dma_led_on(struct NCR_ESP *esp)
|
|||
|
||||
static int dma_ports_p(struct NCR_ESP *esp)
|
||||
{
|
||||
return ((custom.intenar) & IF_PORTS);
|
||||
return ((amiga_custom.intenar) & IF_PORTS);
|
||||
}
|
||||
|
||||
static void dma_setup(struct NCR_ESP *esp, __u32 addr, int count, int write)
|
||||
|
|
|
@ -223,7 +223,7 @@ static void dma_dump_state(struct NCR_ESP *esp)
|
|||
esp->esp_id, ((struct cyber_dma_registers *)
|
||||
(esp->dregs))->cond_reg));
|
||||
ESPLOG(("intreq:<%04x>, intena:<%04x>\n",
|
||||
custom.intreqr, custom.intenar));
|
||||
amiga_custom.intreqr, amiga_custom.intenar));
|
||||
}
|
||||
|
||||
static void dma_init_read(struct NCR_ESP *esp, __u32 addr, int length)
|
||||
|
@ -322,7 +322,7 @@ static void dma_led_on(struct NCR_ESP *esp)
|
|||
|
||||
static int dma_ports_p(struct NCR_ESP *esp)
|
||||
{
|
||||
return ((custom.intenar) & IF_PORTS);
|
||||
return ((amiga_custom.intenar) & IF_PORTS);
|
||||
}
|
||||
|
||||
static void dma_setup(struct NCR_ESP *esp, __u32 addr, int count, int write)
|
||||
|
|
|
@ -200,7 +200,7 @@ static void dma_dump_state(struct NCR_ESP *esp)
|
|||
esp->esp_id, ((struct cyberII_dma_registers *)
|
||||
(esp->dregs))->cond_reg));
|
||||
ESPLOG(("intreq:<%04x>, intena:<%04x>\n",
|
||||
custom.intreqr, custom.intenar));
|
||||
amiga_custom.intreqr, amiga_custom.intenar));
|
||||
}
|
||||
|
||||
static void dma_init_read(struct NCR_ESP *esp, __u32 addr, int length)
|
||||
|
@ -259,7 +259,7 @@ static void dma_led_on(struct NCR_ESP *esp)
|
|||
|
||||
static int dma_ports_p(struct NCR_ESP *esp)
|
||||
{
|
||||
return ((custom.intenar) & IF_PORTS);
|
||||
return ((amiga_custom.intenar) & IF_PORTS);
|
||||
}
|
||||
|
||||
static void dma_setup(struct NCR_ESP *esp, __u32 addr, int count, int write)
|
||||
|
|
|
@ -268,7 +268,7 @@ static void dma_dump_state(struct NCR_ESP *esp)
|
|||
esp->esp_id, ((struct fastlane_dma_registers *)
|
||||
(esp->dregs))->cond_reg));
|
||||
ESPLOG(("intreq:<%04x>, intena:<%04x>\n",
|
||||
custom.intreqr, custom.intenar));
|
||||
amiga_custom.intreqr, amiga_custom.intenar));
|
||||
}
|
||||
|
||||
static void dma_init_read(struct NCR_ESP *esp, __u32 addr, int length)
|
||||
|
@ -368,7 +368,7 @@ static void dma_led_on(struct NCR_ESP *esp)
|
|||
|
||||
static int dma_ports_p(struct NCR_ESP *esp)
|
||||
{
|
||||
return ((custom.intenar) & IF_PORTS);
|
||||
return ((amiga_custom.intenar) & IF_PORTS);
|
||||
}
|
||||
|
||||
static void dma_setup(struct NCR_ESP *esp, __u32 addr, int count, int write)
|
||||
|
|
|
@ -490,7 +490,7 @@ static void dma_led_on(struct NCR_ESP *esp)
|
|||
|
||||
static int dma_ports_p(struct NCR_ESP *esp)
|
||||
{
|
||||
return ((custom.intenar) & IF_PORTS);
|
||||
return ((amiga_custom.intenar) & IF_PORTS);
|
||||
}
|
||||
|
||||
static void dma_setup(struct NCR_ESP *esp, __u32 addr, int count, int write)
|
||||
|
|
|
@ -590,6 +590,8 @@ static u_short maxfmode, chipset;
|
|||
#define highw(x) ((u_long)(x)>>16 & 0xffff)
|
||||
#define loww(x) ((u_long)(x) & 0xffff)
|
||||
|
||||
#define custom amiga_custom
|
||||
|
||||
#define VBlankOn() custom.intena = IF_SETCLR|IF_COPER
|
||||
#define VBlankOff() custom.intena = IF_COPER
|
||||
|
||||
|
|
|
@ -274,7 +274,7 @@ struct CIA {
|
|||
#define ZTWO_VADDR(x) (((unsigned long)(x))+zTwoBase)
|
||||
|
||||
#define CUSTOM_PHYSADDR (0xdff000)
|
||||
#define custom ((*(volatile struct CUSTOM *)(zTwoBase+CUSTOM_PHYSADDR)))
|
||||
#define amiga_custom ((*(volatile struct CUSTOM *)(zTwoBase+CUSTOM_PHYSADDR)))
|
||||
|
||||
#define CIAA_PHYSADDR (0xbfe001)
|
||||
#define CIAB_PHYSADDR (0xbfd000)
|
||||
|
@ -294,12 +294,12 @@ static inline void amifb_video_off(void)
|
|||
{
|
||||
if (amiga_chipset == CS_ECS || amiga_chipset == CS_AGA) {
|
||||
/* program Denise/Lisa for a higher maximum play rate */
|
||||
custom.htotal = 113; /* 31 kHz */
|
||||
custom.vtotal = 223; /* 70 Hz */
|
||||
custom.beamcon0 = 0x4390; /* HARDDIS, VAR{BEAM,VSY,HSY,CSY}EN */
|
||||
amiga_custom.htotal = 113; /* 31 kHz */
|
||||
amiga_custom.vtotal = 223; /* 70 Hz */
|
||||
amiga_custom.beamcon0 = 0x4390; /* HARDDIS, VAR{BEAM,VSY,HSY,CSY}EN */
|
||||
/* suspend the monitor */
|
||||
custom.hsstrt = custom.hsstop = 116;
|
||||
custom.vsstrt = custom.vsstop = 226;
|
||||
amiga_custom.hsstrt = amiga_custom.hsstop = 116;
|
||||
amiga_custom.vsstrt = amiga_custom.vsstop = 226;
|
||||
amiga_audio_min_period = 57;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#define DMASOUND_PAULA_REVISION 0
|
||||
#define DMASOUND_PAULA_EDITION 4
|
||||
|
||||
#define custom amiga_custom
|
||||
/*
|
||||
* The minimum period for audio depends on htotal (for OCS/ECS/AGA)
|
||||
* (Imported from arch/m68k/amiga/amisound.c)
|
||||
|
|
Loading…
Reference in New Issue
Block a user