Changes to AT91SAM3U4.h file

Discussion around product based on ARM Cortex M3 core.

Moderators: nferre, ncollot

davev
Posts: 18
Joined: Fri Oct 22, 2010 4:12 pm

Changes to AT91SAM3U4.h file

Fri Oct 22, 2010 5:39 pm

I had previously been using CoIDE (CooCox) and have switched to Atollic TrueStudio 1.4.0. The version of the AT91SAM3U4.h file that was used with CoIDE was 1.36 (see line 32 of the file) and was generated on 5/27/10. The version used with TrueStudio is 1.37 and was generated on 6.4.10.

In the 1.37 version of the file, the definition of the DMA registers for SPI have been removed. Does anyone know if there is some reason why they wouldn't support SPI DMA any more? Do you think this is just an oversight or something they missed?

Just to show what I'm talking about, here are the definitions in question:
v 1.36 lines 4514-4541:

Code: Select all

typedef struct _AT91S_SPI {
	AT91_REG	 SPI_CR; 	// Control Register
	AT91_REG	 SPI_MR; 	// Mode Register
	AT91_REG	 SPI_RDR; 	// Receive Data Register
	AT91_REG	 SPI_TDR; 	// Transmit Data Register
	AT91_REG	 SPI_SR; 	// Status Register
	AT91_REG	 SPI_IER; 	// Interrupt Enable Register
	AT91_REG	 SPI_IDR; 	// Interrupt Disable Register
	AT91_REG	 SPI_IMR; 	// Interrupt Mask Register
	AT91_REG	 Reserved0[4]; 	// 
	AT91_REG	 SPI_CSR[4]; 	// Chip Select Register
	AT91_REG	 Reserved1[43]; 	// 
	AT91_REG	 SPI_ADDRSIZE; 	// SPI ADDRSIZE REGISTER 
	AT91_REG	 SPI_IPNAME1; 	// SPI IPNAME1 REGISTER 
	AT91_REG	 SPI_IPNAME2; 	// SPI IPNAME2 REGISTER 
	AT91_REG	 SPI_FEATURES; 	// SPI FEATURES REGISTER 
	AT91_REG	 SPI_VER; 	// Version Register
	AT91_REG	 SPI_RPR; 	// Receive Pointer Register
	AT91_REG	 SPI_RCR; 	// Receive Counter Register
	AT91_REG	 SPI_TPR; 	// Transmit Pointer Register
	AT91_REG	 SPI_TCR; 	// Transmit Counter Register
	AT91_REG	 SPI_RNPR; 	// Receive Next Pointer Register
	AT91_REG	 SPI_RNCR; 	// Receive Next Counter Register
	AT91_REG	 SPI_TNPR; 	// Transmit Next Pointer Register
	AT91_REG	 SPI_TNCR; 	// Transmit Next Counter Register
	AT91_REG	 SPI_PTCR; 	// PDC Transfer Control Register
	AT91_REG	 SPI_PTSR; 	// PDC Transfer Status Register
} AT91S_SPI, *AT91PS_SPI;
v1.37 lines 4497-4514:

Code: Select all

typedef struct _AT91S_SPI {
	AT91_REG	 SPI_CR; 	// Control Register
	AT91_REG	 SPI_MR; 	// Mode Register
	AT91_REG	 SPI_RDR; 	// Receive Data Register
	AT91_REG	 SPI_TDR; 	// Transmit Data Register
	AT91_REG	 SPI_SR; 	// Status Register
	AT91_REG	 SPI_IER; 	// Interrupt Enable Register
	AT91_REG	 SPI_IDR; 	// Interrupt Disable Register
	AT91_REG	 SPI_IMR; 	// Interrupt Mask Register
	AT91_REG	 Reserved0[4]; 	// 
	AT91_REG	 SPI_CSR[4]; 	// Chip Select Register
	AT91_REG	 Reserved1[43]; 	// 
	AT91_REG	 SPI_ADDRSIZE; 	// SPI ADDRSIZE REGISTER 
	AT91_REG	 SPI_IPNAME1; 	// SPI IPNAME1 REGISTER 
	AT91_REG	 SPI_IPNAME2; 	// SPI IPNAME2 REGISTER 
	AT91_REG	 SPI_FEATURES; 	// SPI FEATURES REGISTER 
	AT91_REG	 SPI_VER; 	// Version Register
} AT91S_SPI, *AT91PS_SPI;
aethaniel
Posts: 20
Joined: Tue Feb 05, 2008 11:46 am

Re: Changes to AT91SAM3U4.h file

Mon Oct 25, 2010 2:27 pm

Hi,

i'm using sam3u too. if you check the datasheet you will see they isn't any PDC on SPI for SAM3U, only full DMA.

I guess there was a little bug in the header release at the time CooCox obtained it.
davev
Posts: 18
Joined: Fri Oct 22, 2010 4:12 pm

Re: Changes to AT91SAM3U4.h file

Thu Nov 04, 2010 1:22 am

There was a problem as you suggested. The Atmel support team sent me v1.38 of the file which contains a few changes from v1.37. Overall, the changes aren't significant for what I am doing.

Return to “SAM3 Cortex-M3 MCU”

Who is online

Users browsing this forum: Google [Bot] and 1 guest