diff options
| author | Harald Welte <laforge@gnumonks.org> | 2011-07-30 19:04:55 +0200 | 
|---|---|---|
| committer | Harald Welte <laforge@gnumonks.org> | 2011-07-30 19:04:55 +0200 | 
| commit | a3de0a4ac29118c3ada946a0c8f7f602c9066ec1 (patch) | |
| tree | 8408d463a3ea6910d7336e24d60611da8a50b77d /firmware/include | |
| parent | dd88fde8d2b78243c01871cabca37c9e46ebd03d (diff) | |
| parent | ffbce3ea2cda51214be0bb7a107954f890f99b0d (diff) | |
Merge branch 'simtrace'
Diffstat (limited to 'firmware/include')
| -rw-r--r-- | firmware/include/AT91SAM7.h | 2 | ||||
| -rw-r--r-- | firmware/include/lib_AT91SAM7.h | 16 | ||||
| -rw-r--r-- | firmware/include/openpcd.h | 3 | ||||
| -rw-r--r-- | firmware/include/simtrace_usb.h | 24 | 
4 files changed, 44 insertions, 1 deletions
| diff --git a/firmware/include/AT91SAM7.h b/firmware/include/AT91SAM7.h index 53eb072..42743f6 100644 --- a/firmware/include/AT91SAM7.h +++ b/firmware/include/AT91SAM7.h @@ -1942,6 +1942,6 @@ typedef struct _AT91S_UDP {  #endif  #define AT91C_IFLASH_NB_OF_PAGES	 (AT91C_ISRAM_SIZE>>AT91C_IFLASH_PAGE_SHIFT) -#define AT91C_IFLASH_LOCK_REGION_SIZE	 (AT91C_ISRAM_SIZE/AT91C_IFLASH_NB_OF_LOCK_BITS) +#define AT91C_IFLASH_LOCK_REGION_SIZE	 (AT91C_IFLASH_SIZE/AT91C_IFLASH_NB_OF_LOCK_BITS)  #endif/*__AT91SAM7_H__*/ diff --git a/firmware/include/lib_AT91SAM7.h b/firmware/include/lib_AT91SAM7.h index f26ac54..2aa7df6 100644 --- a/firmware/include/lib_AT91SAM7.h +++ b/firmware/include/lib_AT91SAM7.h @@ -444,6 +444,22 @@ static inline void AT91F_PIO_CfgPullup(  	pPio->PIO_PPUER = pullupEnable;  } +static inline void AT91F_PIO_CfgPullupEn( +	AT91PS_PIO pPio,             // \arg pointer to a PIO controller +	unsigned int pullupEnable)   // \arg enable pullup on PIO +{ +		// Connect or not Pullup +	pPio->PIO_PPUER = pullupEnable; +} + +static inline void AT91F_PIO_CfgPullupDis( +	AT91PS_PIO pPio,             // \arg pointer to a PIO controller +	unsigned int pullupEnable)   // \arg enable pullup on PIO +{ +		// Connect or not Pullup +	pPio->PIO_PPUDR = pullupEnable; +} +  //*----------------------------------------------------------------------------  //* \fn    AT91F_PIO_CfgDirectDrive  //* \brief Enable direct drive on PIO diff --git a/firmware/include/openpcd.h b/firmware/include/openpcd.h index e5a0ac7..ea32764 100644 --- a/firmware/include/openpcd.h +++ b/firmware/include/openpcd.h @@ -34,6 +34,8 @@ enum openpcd_cmd_class {  	OPENPCD_CMD_CLS_ADC		= 0x5,  	OPENPCD_CMD_CLS_LIBRFID		= 0x6,          OPENPCD_CMD_CLS_PRESENCE        = 0x7, +	/* SIM SCAN */ +	OPENPCD_CMD_CLS_SIM		= 0x8,  	/* PICC (transponder) side */  	OPENPCD_CMD_CLS_PICC		= 0xe, @@ -102,6 +104,7 @@ enum openpcd_cmd_class {  #define OPENPCD_VENDOR_ID	0x16c0 +#define SIMTRACE_PRODUCT_ID	0x0762  #define OPENPCD_PRODUCT_ID	0x076b  #define OPENPICC_PRODUCT_ID	0x076c  #define OPENPCD_OUT_EP		0x01 diff --git a/firmware/include/simtrace_usb.h b/firmware/include/simtrace_usb.h new file mode 100644 index 0000000..c020093 --- /dev/null +++ b/firmware/include/simtrace_usb.h @@ -0,0 +1,24 @@ +#ifndef SIMTRACE_USB_H +#define SIMTRACE_USB_H + +//#include <stdint.h> + +/* this is kept compatible with OpenPCD protocol */ +struct simtrace_hdr { +	u_int8_t cmd; +	u_int8_t flags; +	u_int8_t res[2]; +	u_int8_t data[0]; +} __attribute__ ((packed)); + +enum simtrace_usb_msgt { +	SIMTRACE_MSGT_NULL, +	SIMTRACE_MSGT_DATA, +	SIMTRACE_MSGT_RESET,		/* reset was asserted, no more data */ +}; + +/* flags for MSGT_DATA */ +#define SIMTRACE_FLAG_ATR		0x01	/* ATR immediately after reset */ +#define SIMTRACE_FLAG_WTIME_EXP		0x04	/* work waiting time expired */ + +#endif /* SIMTRACE_USB_H */ | 
