[Tinyos-beta-commits] CVS: tinyos-1.x/beta/platform/pxa27x
pxa27x_registers.h, 1.2, 1.3
Philip Buonadonna
philipb at users.sourceforge.net
Wed Mar 9 14:54:16 PST 2005
Update of /cvsroot/tinyos/tinyos-1.x/beta/platform/pxa27x
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5580
Modified Files:
pxa27x_registers.h
Log Message:
- Added routine _pxa27x_clzsi() to take advantage of xscale instruction for bit vector scans
Index: pxa27x_registers.h
===================================================================
RCS file: /cvsroot/tinyos/tinyos-1.x/beta/platform/pxa27x/pxa27x_registers.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** pxa27x_registers.h 19 Jan 2005 02:06:14 -0000 1.2
--- pxa27x_registers.h 9 Mar 2005 22:54:13 -0000 1.3
***************
*** 439,444 ****
// DMA Register shortcuts
#define DCSR(_ch) _PXAREG_OFFSET(&DCSR0,((_ch) << 2))
! #define DRCMR(_dev) (((_dev) < 63) ? (_PXAREG_OFFSET(&DRCMR0, (((_dev) & 0x3f) << 2))) \
! : (_PXAREG_OFFSET(&DRCMR64,(((_dev) & 0x3f) << 2))))
#define DDADR(_ch) _PXAREG_OFFSET(&DDADR0,((_ch) << 4))
#define DSADR(_ch) _PXAREG_OFFSET(&DSADR0,((_ch) << 4))
--- 439,445 ----
// DMA Register shortcuts
#define DCSR(_ch) _PXAREG_OFFSET(&DCSR0,((_ch) << 2))
! #define DRQSR(_line) _PXAREG_OFFSET(&DRQSR0,((_line) << 2))
! #define DRCMR(_dev) *(((_dev) < 63) ? (&_PXAREG_OFFSET(&DRCMR0, (((_dev) & 0x3f) << 2))) \
! : (&_PXAREG_OFFSET(&DRCMR64,(((_dev) & 0x3f) << 2))))
#define DDADR(_ch) _PXAREG_OFFSET(&DDADR0,((_ch) << 4))
#define DSADR(_ch) _PXAREG_OFFSET(&DSADR0,((_ch) << 4))
***************
*** 446,452 ****
--- 447,457 ----
#define DCMD(_ch) _PXAREG_OFFSET(&DCMD0,((_ch) << 4))
+
#define DDADR_DESCADDR 0xfffffff0 /* Address of next descriptor (mask) */
#define DDADR_STOP (1 << 0) /* Stop (read / write) */
+ #define DRCMR_MAPVLD (1 << 7) /* Map Valid Channel */
+ #define DRCMR_CHLNUM(_ch) ((_ch) & 0x1f)
+
#define DCSR_RUN (1 << 31) /* Run Bit (read / write) */
#define DCSR_NODESCFETCH (1 << 30) /* No-Descriptor Fetch (read / write) */
***************
*** 460,464 ****
#define DCSR_MASKRUN (1 << 22) /* Mask Run */
#define DCSR_CMPST (1 << 10) /* Descriptor Compare Status */
! #define DCSR_EORINT (1 << 9) /* End of Recieve */
#define DCSR_REQPEND (1 << 8) /* Request Pending (read-only) */
#define DCSR_RASINTR (1 << 4) /* Request After Channel Stopped */
--- 465,469 ----
#define DCSR_MASKRUN (1 << 22) /* Mask Run */
#define DCSR_CMPST (1 << 10) /* Descriptor Compare Status */
! #define DCSR_EORINTR (1 << 9) /* End of Recieve */
#define DCSR_REQPEND (1 << 8) /* Request Pending (read-only) */
#define DCSR_RASINTR (1 << 4) /* Request After Channel Stopped */
***************
*** 468,471 ****
--- 473,478 ----
#define DCSR_BUSERRINTR (1 << 0) /* Bus Error Interrupt (read / write) */
+ #define DRQSR_CLR (1 << 8) /* Clear Pending Requests */
+
#define DCMD_INCSRCADDR (1 << 31) /* Source Address Increment Setting. */
#define DCMD_INCTRGADDR (1 << 30) /* Target Address Increment Setting. */
***************
*** 807,811 ****
#define OSCR9 _PXAREG(0x40A00054)
#define OSCR10 _PXAREG(0x40A00058)
! #define OSCR11r _PXAREG(0x40A0005C)
#define OSMR4 _PXAREG(0x40A00080) /* OS Timer Match 4-11 registers 22-15 */
--- 814,818 ----
#define OSCR9 _PXAREG(0x40A00054)
#define OSCR10 _PXAREG(0x40A00058)
! #define OSCR11 _PXAREG(0x40A0005C)
#define OSMR4 _PXAREG(0x40A00080) /* OS Timer Match 4-11 registers 22-15 */
***************
*** 903,911 ****
// Argument _id is a peripheral ID number
#define _PPID_Bit(_id) (1 << ((_id) & 0x1f))
! #define _ICIP(_id) (((_id) & 0x20) ? (ICIP2) : (ICIP))
! #define _ICMR(_id) (((_id) & 0x20) ? (ICMR2) : (ICMR))
! #define _ICLR(_id) (((_id) & 0x20) ? (ICLR2) : (ICLR))
! #define _ICFP(_id) (((_id) & 0x20) ? (ICFP2) : (ICFP))
! #define _ICPR(_id) (((_id) & 0x20) ? (ICPR2) : (ICPR))
// Peripheral IDs
--- 910,918 ----
// Argument _id is a peripheral ID number
#define _PPID_Bit(_id) (1 << ((_id) & 0x1f))
! #define _ICIP(_id) *(((_id) & 0x20) ? (&ICIP2) : (&ICIP))
! #define _ICMR(_id) *(((_id) & 0x20) ? (&ICMR2) : (&ICMR))
! #define _ICLR(_id) *(((_id) & 0x20) ? (&ICLR2) : (&ICLR))
! #define _ICFP(_id) *(((_id) & 0x20) ? (&ICFP2) : (&ICFP))
! #define _ICPR(_id) *(((_id) & 0x20) ? (&ICPR2) : (&ICPR))
// Peripheral IDs
***************
*** 987,997 ****
// GPIO Shortcuts
! #define _GPLR(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GPLR0, ((_gpio) & 0x60) >> 3)) : (GPLR3))
! #define _GPDR(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GPDR0, ((_gpio) & 0x60) >> 3)) : (GPDR3))
! #define _GPSR(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GPSR0, ((_gpio) & 0x60) >> 3)) : (GPSR3))
! #define _GPCR(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GPCR0, ((_gpio) & 0x60) >> 3)) : (GPCR3))
! #define _GRER(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GRER0, ((_gpio) & 0x60) >> 3)) : (GRER3))
! #define _GFER(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GFER0, ((_gpio) & 0x60) >> 3)) : (GFER3))
! #define _GEDR(_gpio) (((_gpio) < 96) ? (_PXAREG_OFFSET(&GEDR0, ((_gpio) & 0x60) >> 3)) : (GEDR3))
#define _GAFR(_gpio) (_PXAREG_OFFSET(0x40E00054, ((_gpio) & 0x70) >> 2))
--- 994,1004 ----
// GPIO Shortcuts
! #define _GPLR(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GPLR0, ((_gpio) & 0x60) >> 3)) : (&GPLR3))
! #define _GPDR(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GPDR0, ((_gpio) & 0x60) >> 3)) : (&GPDR3))
! #define _GPSR(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GPSR0, ((_gpio) & 0x60) >> 3)) : (&GPSR3))
! #define _GPCR(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GPCR0, ((_gpio) & 0x60) >> 3)) : (&GPCR3))
! #define _GRER(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GRER0, ((_gpio) & 0x60) >> 3)) : (&GRER3))
! #define _GFER(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GFER0, ((_gpio) & 0x60) >> 3)) : (&GFER3))
! #define _GEDR(_gpio) *(((_gpio) < 96) ? (&_PXAREG_OFFSET(&GEDR0, ((_gpio) & 0x60) >> 3)) : (&GEDR3))
#define _GAFR(_gpio) (_PXAREG_OFFSET(0x40E00054, ((_gpio) & 0x70) >> 2))
More information about the Tinyos-beta-commits
mailing list