[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