[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/8] pl011: Move registers' definition in a separate file
Should we prefix them with PL011 or something? On Thu, 2013-07-25 at 17:59 +0100, Julien Grall wrote: > --- > xen/drivers/char/pl011.c | 48 +---------------------- > xen/include/asm-arm/pl011-uart.h | 80 > ++++++++++++++++++++++++++++++++++++++ > 2 files changed, 81 insertions(+), 47 deletions(-) > create mode 100644 xen/include/asm-arm/pl011-uart.h > > diff --git a/xen/drivers/char/pl011.c b/xen/drivers/char/pl011.c > index 9456f20..fd87e68 100644 > --- a/xen/drivers/char/pl011.c > +++ b/xen/drivers/char/pl011.c > @@ -28,6 +28,7 @@ > #include <asm/device.h> > #include <xen/mm.h> > #include <xen/vmap.h> > +#include <asm/pl011-uart.h> > > static struct pl011 { > unsigned int baud, clock_hz, data_bits, parity, stop_bits; > @@ -41,53 +42,6 @@ static struct pl011 { > /* bool_t probing, intr_works; */ > } pl011_com = {0}; > > -/* PL011 register addresses */ > -#define DR (0x00) > -#define RSR (0x04) > -#define FR (0x18) > -#define ILPR (0x20) > -#define IBRD (0x24) > -#define FBRD (0x28) > -#define LCR_H (0x2c) > -#define CR (0x30) > -#define IFLS (0x34) > -#define IMSC (0x38) > -#define RIS (0x3c) > -#define MIS (0x40) > -#define ICR (0x44) > -#define DMACR (0x48) > - > -/* CR bits */ > -#define RXE (1<<9) /* Receive enable */ > -#define TXE (1<<8) /* Transmit enable */ > -#define UARTEN (1<<0) /* UART enable */ > - > -/* FR bits */ > -#define TXFE (1<<7) /* TX FIFO empty */ > -#define RXFE (1<<4) /* RX FIFO empty */ > - > -/* LCR_H bits */ > -#define SPS (1<<7) /* Stick parity select */ > -#define FEN (1<<4) /* FIFO enable */ > -#define STP2 (1<<3) /* Two stop bits select */ > -#define EPS (1<<2) /* Even parity select */ > -#define PEN (1<<1) /* Parity enable */ > -#define BRK (1<<0) /* Send break */ > - > -/* Interrupt bits (IMSC, MIS, ICR) */ > -#define OEI (1<<10) /* Overrun Error interrupt mask */ > -#define BEI (1<<9) /* Break Error interrupt mask */ > -#define PEI (1<<8) /* Parity Error interrupt mask */ > -#define FEI (1<<7) /* Framing Error interrupt mask */ > -#define RTI (1<<6) /* Receive Timeout interrupt mask */ > -#define TXI (1<<5) /* Transmit interrupt mask */ > -#define RXI (1<<4) /* Receive interrupt mask */ > -#define DSRMI (1<<3) /* nUARTDSR Modem interrupt mask */ > -#define DCDMI (1<<2) /* nUARTDCD Modem interrupt mask */ > -#define CTSMI (1<<1) /* nUARTCTS Modem interrupt mask */ > -#define RIMI (1<<0) /* nUARTRI Modem interrupt mask */ > -#define ALLI OEI|BEI|PEI|FEI|RTI|TXI|RXI|DSRMI|DCDMI|CTSMI|RIMI > - > /* These parity settings can be ORed directly into the LCR. */ > #define PARITY_NONE (0) > #define PARITY_ODD (PEN) > diff --git a/xen/include/asm-arm/pl011-uart.h > b/xen/include/asm-arm/pl011-uart.h > new file mode 100644 > index 0000000..8c4edd4 > --- /dev/null > +++ b/xen/include/asm-arm/pl011-uart.h > @@ -0,0 +1,80 @@ > +/* > + * xen/include/asm-arm/pl011-uart.h > + * > + * Common constant definition between early printk and the UART driver > + * for the pl011 UART > + * > + * Tim Deegan <tim@xxxxxxx> > + * Copyright (c) 2011 Citrix Systems. > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + */ > + > +#ifndef __ASM_ARM_PL011_H > +#define __ASM_ARM_PL011_H > + > +/* PL011 register addresses */ > +#define DR (0x00) > +#define RSR (0x04) > +#define FR (0x18) > +#define ILPR (0x20) > +#define IBRD (0x24) > +#define FBRD (0x28) > +#define LCR_H (0x2c) > +#define CR (0x30) > +#define IFLS (0x34) > +#define IMSC (0x38) > +#define RIS (0x3c) > +#define MIS (0x40) > +#define ICR (0x44) > +#define DMACR (0x48) > + > +/* CR bits */ > +#define RXE (1<<9) /* Receive enable */ > +#define TXE (1<<8) /* Transmit enable */ > +#define UARTEN (1<<0) /* UART enable */ > + > +/* FR bits */ > +#define TXFE (1<<7) /* TX FIFO empty */ > +#define RXFE (1<<4) /* RX FIFO empty */ > + > +/* LCR_H bits */ > +#define SPS (1<<7) /* Stick parity select */ > +#define FEN (1<<4) /* FIFO enable */ > +#define STP2 (1<<3) /* Two stop bits select */ > +#define EPS (1<<2) /* Even parity select */ > +#define PEN (1<<1) /* Parity enable */ > +#define BRK (1<<0) /* Send break */ > + > +/* Interrupt bits (IMSC, MIS, ICR) */ > +#define OEI (1<<10) /* Overrun Error interrupt mask */ > +#define BEI (1<<9) /* Break Error interrupt mask */ > +#define PEI (1<<8) /* Parity Error interrupt mask */ > +#define FEI (1<<7) /* Framing Error interrupt mask */ > +#define RTI (1<<6) /* Receive Timeout interrupt mask */ > +#define TXI (1<<5) /* Transmit interrupt mask */ > +#define RXI (1<<4) /* Receive interrupt mask */ > +#define DSRMI (1<<3) /* nUARTDSR Modem interrupt mask */ > +#define DCDMI (1<<2) /* nUARTDCD Modem interrupt mask */ > +#define CTSMI (1<<1) /* nUARTCTS Modem interrupt mask */ > +#define RIMI (1<<0) /* nUARTRI Modem interrupt mask */ > +#define ALLI OEI|BEI|PEI|FEI|RTI|TXI|RXI|DSRMI|DCDMI|CTSMI|RIMI > + > +#endif /* __ASM_ARM_PL011_H */ > + > +/* > + * Local variables: > + * mode: C > + * c-file-style: "BSD" > + * c-basic-offset: 4 > + * indent-tabs-mode: nil > + * End: > + */ _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |