From ba35af46c672b322e631e1486c1feb279052f0bf Mon Sep 17 00:00:00 2001 From: Russell King Date: Fri, 24 Jun 2005 19:48:22 +0100 Subject: [PATCH] --- yaml --- r: 3181 b: refs/heads/master c: 0a8b80c52f44a6e84206618a8a450ba13a5809dc h: refs/heads/master i: 3179: 94057a6600b123278a399d64f569c40048da6670 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-ixp2000/core.c | 85 ++++--------------- trunk/arch/arm/mach-ixp4xx/common.c | 8 -- trunk/arch/arm/mm/proc-v6.S | 6 +- trunk/drivers/i2c/busses/i2c-ixp2000.c | 3 +- trunk/drivers/serial/8250.c | 10 +-- trunk/drivers/serial/au1x00_uart.c | 10 +-- trunk/drivers/serial/m32r_sio.c | 10 +-- trunk/drivers/serial/pxa.c | 10 +-- trunk/fs/qnx4/dir.c | 2 +- trunk/fs/qnx4/inode.c | 4 +- trunk/include/asm-arm/arch-ixp2000/gpio.h | 31 ++++--- trunk/include/asm-arm/arch-ixp2000/io.h | 76 +---------------- trunk/include/asm-arm/arch-ixp2000/platform.h | 22 ++++- .../include/asm-arm/arch-ixp4xx/debug-macro.S | 1 - .../include/asm-arm/arch-ixp4xx/ixp4xx-regs.h | 10 --- trunk/include/asm-arm/io.h | 2 - trunk/include/asm-i386/string.h | 32 +++---- trunk/include/linux/qnx4_fs.h | 18 ++-- trunk/include/linux/qnxtypes.h | 16 ++-- 20 files changed, 115 insertions(+), 243 deletions(-) diff --git a/[refs] b/[refs] index bca0ffaea35f..78aeac039fb5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f647a27417d2adc43d8c96d3d6f837422fbc076e +refs/heads/master: 0a8b80c52f44a6e84206618a8a450ba13a5809dc diff --git a/trunk/arch/arm/mach-ixp2000/core.c b/trunk/arch/arm/mach-ixp2000/core.c index 0ee34acb8d7b..fc0555596d6d 100644 --- a/trunk/arch/arm/mach-ixp2000/core.c +++ b/trunk/arch/arm/mach-ixp2000/core.c @@ -40,8 +40,6 @@ #include #include -#include - static DEFINE_SPINLOCK(ixp2000_slowport_lock); static unsigned long ixp2000_slowport_irq_flags; @@ -181,7 +179,7 @@ static int ixp2000_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) /* clear timer 1 */ ixp2000_reg_write(IXP2000_T1_CLR, 1); - + while ((next_jiffy_time - *missing_jiffy_timer_csr) > ticks_per_jiffy) { timer_tick(regs); next_jiffy_time -= ticks_per_jiffy; @@ -240,40 +238,35 @@ void __init ixp2000_init_time(unsigned long tick_rate) /************************************************************************* * GPIO helpers *************************************************************************/ -static unsigned long GPIO_IRQ_falling_edge; static unsigned long GPIO_IRQ_rising_edge; +static unsigned long GPIO_IRQ_falling_edge; static unsigned long GPIO_IRQ_level_low; static unsigned long GPIO_IRQ_level_high; -static void update_gpio_int_csrs(void) -{ - ixp2000_reg_write(IXP2000_GPIO_FEDR, GPIO_IRQ_falling_edge); - ixp2000_reg_write(IXP2000_GPIO_REDR, GPIO_IRQ_rising_edge); - ixp2000_reg_write(IXP2000_GPIO_LSLR, GPIO_IRQ_level_low); - ixp2000_reg_write(IXP2000_GPIO_LSHR, GPIO_IRQ_level_high); -} - -void gpio_line_config(int line, int direction) +void gpio_line_config(int line, int style) { unsigned long flags; local_irq_save(flags); - if (direction == GPIO_OUT) { - irq_desc[line + IRQ_IXP2000_GPIO0].valid = 0; + if(style == GPIO_OUT) { /* if it's an output, it ain't an interrupt anymore */ + ixp2000_reg_write(IXP2000_GPIO_PDSR, (1 << line)); GPIO_IRQ_falling_edge &= ~(1 << line); GPIO_IRQ_rising_edge &= ~(1 << line); GPIO_IRQ_level_low &= ~(1 << line); GPIO_IRQ_level_high &= ~(1 << line); - update_gpio_int_csrs(); - - ixp2000_reg_write(IXP2000_GPIO_PDSR, 1 << line); - } else if (direction == GPIO_IN) { - ixp2000_reg_write(IXP2000_GPIO_PDCR, 1 << line); + ixp2000_reg_write(IXP2000_GPIO_FEDR, GPIO_IRQ_falling_edge); + ixp2000_reg_write(IXP2000_GPIO_REDR, GPIO_IRQ_rising_edge); + ixp2000_reg_write(IXP2000_GPIO_LSHR, GPIO_IRQ_level_high); + ixp2000_reg_write(IXP2000_GPIO_LSLR, GPIO_IRQ_level_low); + irq_desc[line+IRQ_IXP2000_GPIO0].valid = 0; + } else if(style == GPIO_IN) { + ixp2000_reg_write(IXP2000_GPIO_PDCR, (1 << line)); } + local_irq_restore(flags); -} +} /************************************************************************* @@ -292,50 +285,9 @@ static void ixp2000_GPIO_irq_handler(unsigned int irq, struct irqdesc *desc, str } } -static int ixp2000_GPIO_irq_type(unsigned int irq, unsigned int type) -{ - int line = irq - IRQ_IXP2000_GPIO0; - - /* - * First, configure this GPIO line as an input. - */ - ixp2000_reg_write(IXP2000_GPIO_PDCR, 1 << line); - - /* - * Then, set the proper trigger type. - */ - if (type & IRQT_FALLING) - GPIO_IRQ_falling_edge |= 1 << line; - else - GPIO_IRQ_falling_edge &= ~(1 << line); - if (type & IRQT_RISING) - GPIO_IRQ_rising_edge |= 1 << line; - else - GPIO_IRQ_rising_edge &= ~(1 << line); - if (type & IRQT_LOW) - GPIO_IRQ_level_low |= 1 << line; - else - GPIO_IRQ_level_low &= ~(1 << line); - if (type & IRQT_HIGH) - GPIO_IRQ_level_high |= 1 << line; - else - GPIO_IRQ_level_high &= ~(1 << line); - update_gpio_int_csrs(); - - /* - * Finally, mark the corresponding IRQ as valid. - */ - irq_desc[irq].valid = 1; - - return 0; -} - static void ixp2000_GPIO_irq_mask_ack(unsigned int irq) { ixp2000_reg_write(IXP2000_GPIO_INCR, (1 << (irq - IRQ_IXP2000_GPIO0))); - - ixp2000_reg_write(IXP2000_GPIO_EDSR, (1 << (irq - IRQ_IXP2000_GPIO0))); - ixp2000_reg_write(IXP2000_GPIO_LDSR, (1 << (irq - IRQ_IXP2000_GPIO0))); ixp2000_reg_write(IXP2000_GPIO_INST, (1 << (irq - IRQ_IXP2000_GPIO0))); } @@ -350,7 +302,6 @@ static void ixp2000_GPIO_irq_unmask(unsigned int irq) } static struct irqchip ixp2000_GPIO_irq_chip = { - .type = ixp2000_GPIO_irq_type, .ack = ixp2000_GPIO_irq_mask_ack, .mask = ixp2000_GPIO_irq_mask, .unmask = ixp2000_GPIO_irq_unmask @@ -387,7 +338,7 @@ static void ixp2000_irq_mask(unsigned int irq) static void ixp2000_irq_unmask(unsigned int irq) { - ixp2000_reg_write(IXP2000_IRQ_ENABLE_SET, (1 << irq)); + ixp2000_reg_write(IXP2000_IRQ_ENABLE_SET, (1 << irq)); } static struct irqchip ixp2000_irq_chip = { @@ -424,16 +375,16 @@ void __init ixp2000_init_irq(void) * our mask/unmask code much simpler. */ for (irq = IRQ_IXP2000_SOFT_INT; irq <= IRQ_IXP2000_THDB3; irq++) { - if ((1 << irq) & IXP2000_VALID_IRQ_MASK) { + if((1 << irq) & IXP2000_VALID_IRQ_MASK) { set_irq_chip(irq, &ixp2000_irq_chip); set_irq_handler(irq, do_level_IRQ); set_irq_flags(irq, IRQF_VALID); } else set_irq_flags(irq, 0); } - + /* * GPIO IRQs are invalid until someone sets the interrupt mode - * by calling set_irq_type(). + * by calling gpio_line_set(); */ for (irq = IRQ_IXP2000_GPIO0; irq <= IRQ_IXP2000_GPIO7; irq++) { set_irq_chip(irq, &ixp2000_GPIO_irq_chip); diff --git a/trunk/arch/arm/mach-ixp4xx/common.c b/trunk/arch/arm/mach-ixp4xx/common.c index f39e8408488f..267ba02d77dc 100644 --- a/trunk/arch/arm/mach-ixp4xx/common.c +++ b/trunk/arch/arm/mach-ixp4xx/common.c @@ -141,15 +141,7 @@ static struct map_desc ixp4xx_io_desc[] __initdata = { .physical = IXP4XX_PCI_CFG_BASE_PHYS, .length = IXP4XX_PCI_CFG_REGION_SIZE, .type = MT_DEVICE - }, -#ifdef CONFIG_DEBUG_LL - { /* Debug UART mapping */ - .virtual = IXP4XX_DEBUG_UART_BASE_VIRT, - .physical = IXP4XX_DEBUG_UART_BASE_PHYS, - .length = IXP4XX_DEBUG_UART_REGION_SIZE, - .type = MT_DEVICE } -#endif }; void __init ixp4xx_map_io(void) diff --git a/trunk/arch/arm/mm/proc-v6.S b/trunk/arch/arm/mm/proc-v6.S index e3d8510f4340..0aa73d414783 100644 --- a/trunk/arch/arm/mm/proc-v6.S +++ b/trunk/arch/arm/mm/proc-v6.S @@ -132,8 +132,8 @@ ENTRY(cpu_v6_switch_mm) * 100x 1 0 1 r/o no acc * 10x0 1 0 1 r/o no acc * 1011 0 0 1 r/w no acc - * 110x 0 1 0 r/w r/o - * 11x0 0 1 0 r/w r/o + * 110x 1 1 0 r/o r/o + * 11x0 1 1 0 r/o r/o * 1111 0 1 1 r/w r/w */ ENTRY(cpu_v6_set_pte) @@ -150,7 +150,7 @@ ENTRY(cpu_v6_set_pte) tst r1, #L_PTE_USER orrne r2, r2, #AP1 | nG tstne r2, #APX - bicne r2, r2, #APX | AP0 + eorne r2, r2, #AP0 tst r1, #L_PTE_YOUNG biceq r2, r2, #APX | AP1 | AP0 diff --git a/trunk/drivers/i2c/busses/i2c-ixp2000.c b/trunk/drivers/i2c/busses/i2c-ixp2000.c index 1956af382cd8..ec943cad2314 100644 --- a/trunk/drivers/i2c/busses/i2c-ixp2000.c +++ b/trunk/drivers/i2c/busses/i2c-ixp2000.c @@ -33,8 +33,7 @@ #include #include -#include /* Pick up IXP2000-specific bits */ -#include +#include /* Pick up IXP42000-specific bits */ static inline int ixp2000_scl_pin(void *data) { diff --git a/trunk/drivers/serial/8250.c b/trunk/drivers/serial/8250.c index 79f67fd863ec..d8b9d2b8c200 100644 --- a/trunk/drivers/serial/8250.c +++ b/trunk/drivers/serial/8250.c @@ -1682,22 +1682,22 @@ serial8250_set_termios(struct uart_port *port, struct termios *termios, switch (termios->c_cflag & CSIZE) { case CS5: - cval = 0x00; + cval = UART_LCR_WLEN5; break; case CS6: - cval = 0x01; + cval = UART_LCR_WLEN6; break; case CS7: - cval = 0x02; + cval = UART_LCR_WLEN7; break; default: case CS8: - cval = 0x03; + cval = UART_LCR_WLEN8; break; } if (termios->c_cflag & CSTOPB) - cval |= 0x04; + cval |= UART_LCR_STOP; if (termios->c_cflag & PARENB) cval |= UART_LCR_PARITY; if (!(termios->c_cflag & PARODD)) diff --git a/trunk/drivers/serial/au1x00_uart.c b/trunk/drivers/serial/au1x00_uart.c index b6d3d5034940..5400dc2c087e 100644 --- a/trunk/drivers/serial/au1x00_uart.c +++ b/trunk/drivers/serial/au1x00_uart.c @@ -773,22 +773,22 @@ serial8250_set_termios(struct uart_port *port, struct termios *termios, switch (termios->c_cflag & CSIZE) { case CS5: - cval = 0x00; + cval = UART_LCR_WLEN5; break; case CS6: - cval = 0x01; + cval = UART_LCR_WLEN6; break; case CS7: - cval = 0x02; + cval = UART_LCR_WLEN7; break; default: case CS8: - cval = 0x03; + cval = UART_LCR_WLEN8; break; } if (termios->c_cflag & CSTOPB) - cval |= 0x04; + cval |= UART_LCR_STOP; if (termios->c_cflag & PARENB) cval |= UART_LCR_PARITY; if (!(termios->c_cflag & PARODD)) diff --git a/trunk/drivers/serial/m32r_sio.c b/trunk/drivers/serial/m32r_sio.c index 08d61f13edc6..0301feacbde4 100644 --- a/trunk/drivers/serial/m32r_sio.c +++ b/trunk/drivers/serial/m32r_sio.c @@ -724,22 +724,22 @@ static void m32r_sio_set_termios(struct uart_port *port, switch (termios->c_cflag & CSIZE) { case CS5: - cval = 0x00; + cval = UART_LCR_WLEN5; break; case CS6: - cval = 0x01; + cval = UART_LCR_WLEN6; break; case CS7: - cval = 0x02; + cval = UART_LCR_WLEN7; break; default: case CS8: - cval = 0x03; + cval = UART_LCR_WLEN8; break; } if (termios->c_cflag & CSTOPB) - cval |= 0x04; + cval |= UART_LCR_STOP; if (termios->c_cflag & PARENB) cval |= UART_LCR_PARITY; if (!(termios->c_cflag & PARODD)) diff --git a/trunk/drivers/serial/pxa.c b/trunk/drivers/serial/pxa.c index 9dc151d8fa61..08b08d6ae904 100644 --- a/trunk/drivers/serial/pxa.c +++ b/trunk/drivers/serial/pxa.c @@ -455,22 +455,22 @@ serial_pxa_set_termios(struct uart_port *port, struct termios *termios, switch (termios->c_cflag & CSIZE) { case CS5: - cval = 0x00; + cval = UART_LCR_WLEN5; break; case CS6: - cval = 0x01; + cval = UART_LCR_WLEN6; break; case CS7: - cval = 0x02; + cval = UART_LCR_WLEN7; break; default: case CS8: - cval = 0x03; + cval = UART_LCR_WLEN8; break; } if (termios->c_cflag & CSTOPB) - cval |= 0x04; + cval |= UART_LCR_STOP; if (termios->c_cflag & PARENB) cval |= UART_LCR_PARITY; if (!(termios->c_cflag & PARODD)) diff --git a/trunk/fs/qnx4/dir.c b/trunk/fs/qnx4/dir.c index 7a8f5595c26f..cd66147cca04 100644 --- a/trunk/fs/qnx4/dir.c +++ b/trunk/fs/qnx4/dir.c @@ -61,7 +61,7 @@ static int qnx4_readdir(struct file *filp, void *dirent, filldir_t filldir) ino = blknum * QNX4_INODES_PER_BLOCK + ix - 1; else { le = (struct qnx4_link_info*)de; - ino = ( le32_to_cpu(le->dl_inode_blk) - 1 ) * + ino = ( le->dl_inode_blk - 1 ) * QNX4_INODES_PER_BLOCK + le->dl_inode_ndx; } diff --git a/trunk/fs/qnx4/inode.c b/trunk/fs/qnx4/inode.c index b79162a35478..aa92d6b76a9a 100644 --- a/trunk/fs/qnx4/inode.c +++ b/trunk/fs/qnx4/inode.c @@ -236,7 +236,7 @@ unsigned long qnx4_block_map( struct inode *inode, long iblock ) struct buffer_head *bh = NULL; struct qnx4_xblk *xblk = NULL; struct qnx4_inode_entry *qnx4_inode = qnx4_raw_inode(inode); - u16 nxtnt = le16_to_cpu(qnx4_inode->di_num_xtnts); + qnx4_nxtnt_t nxtnt = le16_to_cpu(qnx4_inode->di_num_xtnts); if ( iblock < le32_to_cpu(qnx4_inode->di_first_xtnt.xtnt_size) ) { // iblock is in the first extent. This is easy. @@ -372,7 +372,7 @@ static int qnx4_fill_super(struct super_block *s, void *data, int silent) printk("qnx4: unable to read the superblock\n"); goto outnobh; } - if ( le32_to_cpup((__le32*) bh->b_data) != QNX4_SUPER_MAGIC ) { + if ( le32_to_cpu( *(__u32*)bh->b_data ) != QNX4_SUPER_MAGIC ) { if (!silent) printk("qnx4: wrong fsid in superblock.\n"); goto out; diff --git a/trunk/include/asm-arm/arch-ixp2000/gpio.h b/trunk/include/asm-arm/arch-ixp2000/gpio.h index 03cbbe1fd9d8..84634af5cc64 100644 --- a/trunk/include/asm-arm/arch-ixp2000/gpio.h +++ b/trunk/include/asm-arm/arch-ixp2000/gpio.h @@ -1,5 +1,5 @@ /* - * include/asm-arm/arch-ixp2000/gpio.h + * include/asm-arm/arch-ixp2000/ixp2000-gpio.h * * Copyright (C) 2002 Intel Corporation. * @@ -16,18 +16,26 @@ * Use this instead of directly setting the GPIO registers. * GPIOs may also be used as GPIOs (e.g. for emulating i2c/smb) */ -#ifndef __ASM_ARCH_GPIO_H -#define __ASM_ARCH_GPIO_H +#ifndef _ASM_ARCH_IXP2000_GPIO_H_ +#define _ASM_ARCH_IXP2000_GPIO_H_ #ifndef __ASSEMBLY__ - -#define GPIO_IN 0 -#define GPIO_OUT 1 +#define GPIO_OUT 0x0 +#define GPIO_IN 0x80 #define IXP2000_GPIO_LOW 0 #define IXP2000_GPIO_HIGH 1 -extern void gpio_line_config(int line, int direction); +#define GPIO_NO_EDGES 0 +#define GPIO_FALLING_EDGE 1 +#define GPIO_RISING_EDGE 2 +#define GPIO_BOTH_EDGES 3 +#define GPIO_LEVEL_LOW 4 +#define GPIO_LEVEL_HIGH 8 + +extern void set_GPIO_IRQ_edge(int gpio_nr, int edge); +extern void set_GPIO_IRQ_level(int gpio_nr, int level); +extern void gpio_line_config(int line, int style); static inline int gpio_line_get(int line) { @@ -37,12 +45,11 @@ static inline int gpio_line_get(int line) static inline void gpio_line_set(int line, int value) { if (value == IXP2000_GPIO_HIGH) { - ixp2000_reg_write(IXP2000_GPIO_POSR, 1 << line); - } else if (value == IXP2000_GPIO_LOW) { - ixp2000_reg_write(IXP2000_GPIO_POCR, 1 << line); - } + ixp_reg_write(IXP2000_GPIO_POSR, BIT(line)); + } else if (value == IXP2000_GPIO_LOW) + ixp_reg_write(IXP2000_GPIO_POCR, BIT(line)); } #endif /* !__ASSEMBLY__ */ - #endif /* ASM_ARCH_IXP2000_GPIO_H_ */ + diff --git a/trunk/include/asm-arm/arch-ixp2000/io.h b/trunk/include/asm-arm/arch-ixp2000/io.h index 5e56b47446e0..083462668e18 100644 --- a/trunk/include/asm-arm/arch-ixp2000/io.h +++ b/trunk/include/asm-arm/arch-ixp2000/io.h @@ -27,8 +27,8 @@ * since that isn't available on the A? revisions we just keep doing * things manually. */ -#define alignb(addr) (void __iomem *)((unsigned long)(addr) ^ 3) -#define alignw(addr) (void __iomem *)((unsigned long)(addr) ^ 2) +#define alignb(addr) (void __iomem *)((unsigned long)addr ^ 3) +#define alignw(addr) (void __iomem *)((unsigned long)addr ^ 2) #define outb(v,p) __raw_writeb((v),alignb(___io(p))) #define outw(v,p) __raw_writew((v),alignw(___io(p))) @@ -48,78 +48,6 @@ #define insw(p,d,l) __raw_readsw(alignw(___io(p)),d,l) #define insl(p,d,l) __raw_readsl(___io(p),d,l) -#define __is_io_address(p) ((((unsigned long)(p)) & ~(IXP2000_PCI_IO_SIZE - 1)) == IXP2000_PCI_IO_VIRT_BASE) - -#define ioread8(p) \ - ({ \ - unsigned int __v; \ - \ - if (__is_io_address(p)) { \ - __v = __raw_readb(alignb(p)); \ - } else { \ - __v = __raw_readb(p); \ - } \ - \ - __v; \ - }) \ - -#define ioread16(p) \ - ({ \ - unsigned int __v; \ - \ - if (__is_io_address(p)) { \ - __v = __raw_readw(alignw(p)); \ - } else { \ - __v = le16_to_cpu(__raw_readw(p)); \ - } \ - \ - __v; \ - }) - -#define ioread32(p) \ - ({ \ - unsigned int __v; \ - \ - if (__is_io_address(p)) { \ - __v = __raw_readl(p); \ - } else { \ - __v = le32_to_cpu(__raw_readl(p)); \ - } \ - \ - __v; \ - }) - -#define iowrite8(v,p) \ - ({ \ - if (__is_io_address(p)) { \ - __raw_writeb((v), alignb(p)); \ - } else { \ - __raw_writeb((v), p); \ - } \ - }) - -#define iowrite16(v,p) \ - ({ \ - if (__is_io_address(p)) { \ - __raw_writew((v), alignw(p)); \ - } else { \ - __raw_writew(cpu_to_le16(v), p); \ - } \ - }) - -#define iowrite32(v,p) \ - ({ \ - if (__is_io_address(p)) { \ - __raw_writel((v), p); \ - } else { \ - __raw_writel(cpu_to_le32(v), p); \ - } \ - }) - -#define ioport_map(port, nr) ___io(port) - -#define ioport_unmap(addr) - #ifdef CONFIG_ARCH_IXDP2X01 /* diff --git a/trunk/include/asm-arm/arch-ixp2000/platform.h b/trunk/include/asm-arm/arch-ixp2000/platform.h index 52ded516ea5c..901bba6d02b4 100644 --- a/trunk/include/asm-arm/arch-ixp2000/platform.h +++ b/trunk/include/asm-arm/arch-ixp2000/platform.h @@ -138,10 +138,30 @@ struct ixp2000_flash_data { unsigned long (*bank_setup)(unsigned long); }; +/* + * GPIO helper functions + */ +#define GPIO_IN 0 +#define GPIO_OUT 1 + +extern void gpio_line_config(int line, int style); + +static inline int gpio_line_get(int line) +{ + return (((*IXP2000_GPIO_PLR) >> line) & 1); +} + +static inline void gpio_line_set(int line, int value) +{ + if (value) + ixp2000_reg_write(IXP2000_GPIO_POSR, (1 << line)); + else + ixp2000_reg_write(IXP2000_GPIO_POCR, (1 << line)); +} + struct ixp2000_i2c_pins { unsigned long sda_pin; unsigned long scl_pin; }; - #endif /* !__ASSEMBLY__ */ diff --git a/trunk/include/asm-arm/arch-ixp4xx/debug-macro.S b/trunk/include/asm-arm/arch-ixp4xx/debug-macro.S index 45a6c6cc29d5..4499ae8e4b44 100644 --- a/trunk/include/asm-arm/arch-ixp4xx/debug-macro.S +++ b/trunk/include/asm-arm/arch-ixp4xx/debug-macro.S @@ -14,7 +14,6 @@ mrc p15, 0, \rx, c1, c0 tst \rx, #1 @ MMU enabled? moveq \rx, #0xc8000000 - orrne \rx, \rx, #0x00b00000 movne \rx, #0xff000000 add \rx,\rx,#3 @ Uart regs are at off set of 3 if @ byte writes used - Big Endian. diff --git a/trunk/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h b/trunk/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h index 004696a95bdb..8eeb1db6309d 100644 --- a/trunk/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h +++ b/trunk/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h @@ -69,16 +69,6 @@ #define IXP4XX_PERIPHERAL_BASE_VIRT (0xFFBF2000) #define IXP4XX_PERIPHERAL_REGION_SIZE (0x0000C000) -/* - * Debug UART - * - * This is basically a remap of UART1 into a region that is section - * aligned so that it * can be used with the low-level debug code. - */ -#define IXP4XX_DEBUG_UART_BASE_PHYS (0xC8000000) -#define IXP4XX_DEBUG_UART_BASE_VIRT (0xffb00000) -#define IXP4XX_DEBUG_UART_REGION_SIZE (0x00001000) - #define IXP4XX_EXP_CS0_OFFSET 0x00 #define IXP4XX_EXP_CS1_OFFSET 0x04 #define IXP4XX_EXP_CS2_OFFSET 0x08 diff --git a/trunk/include/asm-arm/io.h b/trunk/include/asm-arm/io.h index cc4b5f5dbfcf..08a46302d265 100644 --- a/trunk/include/asm-arm/io.h +++ b/trunk/include/asm-arm/io.h @@ -275,7 +275,6 @@ extern void __iounmap(void __iomem *addr); /* * io{read,write}{8,16,32} macros */ -#ifndef ioread8 #define ioread8(p) ({ unsigned int __v = __raw_readb(p); __v; }) #define ioread16(p) ({ unsigned int __v = le16_to_cpu(__raw_readw(p)); __v; }) #define ioread32(p) ({ unsigned int __v = le32_to_cpu(__raw_readl(p)); __v; }) @@ -294,7 +293,6 @@ extern void __iounmap(void __iomem *addr); extern void __iomem *ioport_map(unsigned long port, unsigned int nr); extern void ioport_unmap(void __iomem *addr); -#endif struct pci_dev; diff --git a/trunk/include/asm-i386/string.h b/trunk/include/asm-i386/string.h index 02c8f5d22065..6a78ac58c194 100644 --- a/trunk/include/asm-i386/string.h +++ b/trunk/include/asm-i386/string.h @@ -116,8 +116,7 @@ __asm__ __volatile__( "orb $1,%%al\n" "3:" :"=a" (__res), "=&S" (d0), "=&D" (d1) - :"1" (cs),"2" (ct) - :"memory"); + :"1" (cs),"2" (ct)); return __res; } @@ -139,9 +138,8 @@ __asm__ __volatile__( "3:\tsbbl %%eax,%%eax\n\t" "orb $1,%%al\n" "4:" - :"=a" (__res), "=&S" (d0), "=&D" (d1), "=&c" (d2) - :"1" (cs),"2" (ct),"3" (count) - :"memory"); + :"=a" (__res), "=&S" (d0), "=&D" (d1), "=&c" (d2) + :"1" (cs),"2" (ct),"3" (count)); return __res; } @@ -160,9 +158,7 @@ __asm__ __volatile__( "movl $1,%1\n" "2:\tmovl %1,%0\n\t" "decl %0" - :"=a" (__res), "=&S" (d0) - :"1" (s),"0" (c) - :"memory"); + :"=a" (__res), "=&S" (d0) : "1" (s),"0" (c)); return __res; } @@ -179,9 +175,7 @@ __asm__ __volatile__( "leal -1(%%esi),%0\n" "2:\ttestb %%al,%%al\n\t" "jne 1b" - :"=g" (__res), "=&S" (d0), "=&a" (d1) - :"0" (0),"1" (s),"2" (c) - :"memory"); + :"=g" (__res), "=&S" (d0), "=&a" (d1) :"0" (0),"1" (s),"2" (c)); return __res; } @@ -195,9 +189,7 @@ __asm__ __volatile__( "scasb\n\t" "notl %0\n\t" "decl %0" - :"=c" (__res), "=&D" (d0) - :"1" (s),"a" (0), "0" (0xffffffffu) - :"memory"); + :"=c" (__res), "=&D" (d0) :"1" (s),"a" (0), "0" (0xffffffffu)); return __res; } @@ -341,9 +333,7 @@ __asm__ __volatile__( "je 1f\n\t" "movl $1,%0\n" "1:\tdecl %0" - :"=D" (__res), "=&c" (d0) - :"a" (c),"0" (cs),"1" (count) - :"memory"); + :"=D" (__res), "=&c" (d0) : "a" (c),"0" (cs),"1" (count)); return __res; } @@ -379,7 +369,7 @@ __asm__ __volatile__( "je 2f\n\t" "stosb\n" "2:" - :"=&c" (d0), "=&D" (d1) + : "=&c" (d0), "=&D" (d1) :"a" (c), "q" (count), "0" (count/4), "1" ((long) s) :"memory"); return (s); @@ -402,8 +392,7 @@ __asm__ __volatile__( "jne 1b\n" "3:\tsubl %2,%0" :"=a" (__res), "=&d" (d0) - :"c" (s),"1" (count) - :"memory"); + :"c" (s),"1" (count)); return __res; } /* end of additional stuff */ @@ -484,8 +473,7 @@ static inline void * memscan(void * addr, int c, size_t size) "dec %%edi\n" "1:" : "=D" (addr), "=c" (size) - : "0" (addr), "1" (size), "a" (c) - : "memory"); + : "0" (addr), "1" (size), "a" (c)); return addr; } diff --git a/trunk/include/linux/qnx4_fs.h b/trunk/include/linux/qnx4_fs.h index fc610bb0f733..22ba580b0ae8 100644 --- a/trunk/include/linux/qnx4_fs.h +++ b/trunk/include/linux/qnx4_fs.h @@ -46,11 +46,11 @@ struct qnx4_inode_entry { char di_fname[QNX4_SHORT_NAME_MAX]; qnx4_off_t di_size; qnx4_xtnt_t di_first_xtnt; - __le32 di_xblk; - __le32 di_ftime; - __le32 di_mtime; - __le32 di_atime; - __le32 di_ctime; + __u32 di_xblk; + __s32 di_ftime; + __s32 di_mtime; + __s32 di_atime; + __s32 di_ctime; qnx4_nxtnt_t di_num_xtnts; qnx4_mode_t di_mode; qnx4_muid_t di_uid; @@ -63,18 +63,18 @@ struct qnx4_inode_entry { struct qnx4_link_info { char dl_fname[QNX4_NAME_MAX]; - __le32 dl_inode_blk; + __u32 dl_inode_blk; __u8 dl_inode_ndx; __u8 dl_spare[10]; __u8 dl_status; }; struct qnx4_xblk { - __le32 xblk_next_xblk; - __le32 xblk_prev_xblk; + __u32 xblk_next_xblk; + __u32 xblk_prev_xblk; __u8 xblk_num_xtnts; __u8 xblk_spare[3]; - __le32 xblk_num_blocks; + __s32 xblk_num_blocks; qnx4_xtnt_t xblk_xtnts[QNX4_MAX_XTNTS_PER_XBLK]; char xblk_signature[8]; qnx4_xtnt_t xblk_first_xtnt; diff --git a/trunk/include/linux/qnxtypes.h b/trunk/include/linux/qnxtypes.h index a3eb1137857b..fb518e318c7c 100644 --- a/trunk/include/linux/qnxtypes.h +++ b/trunk/include/linux/qnxtypes.h @@ -12,18 +12,18 @@ #ifndef _QNX4TYPES_H #define _QNX4TYPES_H -typedef __le16 qnx4_nxtnt_t; +typedef __u16 qnx4_nxtnt_t; typedef __u8 qnx4_ftype_t; typedef struct { - __le32 xtnt_blk; - __le32 xtnt_size; + __u32 xtnt_blk; + __u32 xtnt_size; } qnx4_xtnt_t; -typedef __le16 qnx4_mode_t; -typedef __le16 qnx4_muid_t; -typedef __le16 qnx4_mgid_t; -typedef __le32 qnx4_off_t; -typedef __le16 qnx4_nlink_t; +typedef __u16 qnx4_mode_t; +typedef __u16 qnx4_muid_t; +typedef __u16 qnx4_mgid_t; +typedef __u32 qnx4_off_t; +typedef __u16 qnx4_nlink_t; #endif