SAMV7 MCAN: Add logic to send messages usign the TX FIFOQ

This commit is contained in:
Gregory Nutt 2015-08-04 11:41:38 -06:00
parent 4e2a95c71e
commit 62a9aed53a
3 changed files with 416 additions and 156 deletions

View File

@ -1554,11 +1554,14 @@ endchoice # MCAN0 RX buffer element size
config SAMV7_MCAN0_DEDICATED_RXBUFFER_SIZE
int "MCAN0 dedicated RX buffer size"
default 16
default 0
range 0 64
depends on EXPERIMENTAL
---help---
Number of dedicated RX buffer elements for MCAN0.
NOTE: Dedicated RX buffers are not used in the current MCAN design.
choice
prompt "MCAN0 TX buffer element size"
default SAMV7_MCAN0_TXBUFFER_32BYTES
@ -1598,11 +1601,14 @@ config SAMV7_MCAN0_TXEVENTFIFO_SIZE
config SAMV7_MCAN0_DEDICATED_TXBUFFER_SIZE
int "MCAN0 dedicated TX buffer size"
default 4
default 0
range 0 32
depends on EXPERIMENTAL
---help---
Number of dedicated TX buffer elements for MCAN0.
NOTE: Dedicated TX buffers are not used in the current MCAN design.
config SAMV7_MCAN0_TXFIFOQ_SIZE
int "MCAN0 dedicated TX FIFO queue"
default 4
@ -1832,11 +1838,14 @@ endchoice # MCAN1 RX buffer element size
config SAMV7_MCAN1_DEDICATED_RXBUFFER_SIZE
int "MCAN1 dedicated RX buffer size"
default 16
default 0
range 0 64
depends on EXPERIMENTAL
---help---
Number of dedicated RX buffer elements for MCAN1.
NOTE: Dedicated RX buffers are not used in the current MCAN design.
choice
prompt "MCAN1 TX buffer element size"
default SAMV7_MCAN1_TXBUFFER_32BYTES
@ -1876,11 +1885,14 @@ config SAMV7_MCAN1_TXEVENTFIFO_SIZE
config SAMV7_MCAN1_DEDICATED_TXBUFFER_SIZE
int "MCAN1 dedicated TX buffer size"
default 4
default 0
range 0 32
depends on EXPERIMENTAL
---help---
Number of dedicated TX buffer elements for MCAN1.
NOTE: Dedicated TX buffers are not used in the current MCAN design.
config SAMV7_MCAN1_TXFIFOQ_SIZE
int "MCAN1 dedicated TX FIFO queue"
default 4

View File

@ -687,7 +687,7 @@
# define BUFFER_R0_EXTID(n) ((uint32_t)(n) << BUFFER_R0_EXTID_SHIFT)
#define BUFFER_R0_STDID_SHIFT (18) /* Bits 18-28: Standard idendifier */
#define BUFFER_R0_STDID_MASK (0x1ffc << BUFFER_R0_STDID_SHIFT)
# define BUFFER_R0_STDID_(n) ((uint32_t)(n) << BUFFER_R0_STDID_SHIFT)
# define BUFFER_R0_STDID(n) ((uint32_t)(n) << BUFFER_R0_STDID_SHIFT)
#define BUFFER_R0_RTR (1 << 29) /* Bit 29: Remote Transmission Request */
#define BUFFER_R0_XTD (1 << 30) /* Bit 30: Extended Identifier */
#define BUFFER_R0_ESI (1 << 31) /* Bit 31: Error State Indicator */

File diff suppressed because it is too large Load Diff