Lederhilger Martin
b8e7d5c455
I had the problem that the transmit FIFO size (= actual elements in FIFO) was slowly increasing over time, and was full after a few hours.
...
The reason was that the code hit the line "canerr("ERROR: No available mailbox\n");" in stm32_cansend, so can_xmit thinks it has sent the packet to the hardware, but actually has not. Therefore the transmit interrupt never happens which would call can_txdone, and so the size of the FIFO size does not decrease.
The reason why the code actually hit the mentioned line above, is because stm32can_txready uses a different (incomplete) condition than stm32can_send to determine if the mailbox can be used for sending, and thus can_xmit forwards the packet to stm32can_send. stm32can_txready considered mailboxes OK for sending if the mailbox was empty, but did not consider that mailboxes may not yet be used if the request completed bit is set - stm32can_txinterrupt has to process these mailboxes first.
Note that I have also modified stm32can_txinterrupt - I removed the if condition, because the CAN controller retries to send the packet until it succeeds. Also if the condition would not evaluate to true, can_txdone would not be called and the FIFO size would not decrease also.
2017-05-16 07:47:18 -06:00
Alan Carvalho de Assis
853d332b6c
Move CAN subsystem to its own directory and put device drivers there
...
Signed-off-by: Alan Carvalho de Assis <acassis@gmail.com>
2017-05-12 11:48:47 -03:00
Gregory Nutt
dc93340a01
Convert more drivers to use new interrupt argument structure.
2017-02-28 09:29:09 -06:00
Mark Schulte
b3222bbc8a
irq_dispatch: Add argument pointer to irq_dispatch
...
Provide a user defined callback context for irq's, such that when
registering a callback users can provide a pointer that will get
passed back when the isr is called.
2017-02-27 06:27:56 -06:00
Gregory Nutt
ddcaa3d425
can.h moved from include/nuttx/ to include/nuttx/drivers.
2016-07-20 13:38:36 -06:00
Paul A. Patience
52a4a20efb
STM32L4 CAN: Port support for both RX FIFOs from STM32 CAN
2016-06-29 13:59:29 -04:00
Gregory Nutt
a43da4d107
STM32 CAN: Clone missing stm32_enterinitmode() and _exitinitmode() from STM32L4. Don't know if this is write but is needed to compile.
2016-06-28 14:35:49 -06:00
Gregory Nutt
8e26d4c8e0
STM32 CAN: More fixes for compilation errors due to blind leverage of STM32L4 CAN filter IOCTLs to STM32
2016-06-27 15:16:13 -06:00
Gregory Nutt
1b5bef5325
STM32 CAN: Fix an error when filter methods were ported from STM32L4
2016-06-27 11:15:37 -06:00
Gregory Nutt
ea8760eb19
Cosmetic changes from review of last PR
2016-06-24 07:20:04 -06:00
Sebastien Lorquet
d3441668ee
Port STM32L4 CAN IOCTLs to STM32
2016-06-24 11:53:17 +02:00
Sebastien Lorquet
6de8dba383
Preliminary rename of stm32 can driver functions
2016-06-24 11:29:31 +02:00
Gregory Nutt
43eb04bb8f
Without lowsyslog() *llinfo() is not useful. Eliminate and replace with *info().
2016-06-20 11:59:15 -06:00
Gregory Nutt
63b1eb09e6
Centralize definitions associated with CONFIG_DEBUG_CAN
2016-06-15 15:45:27 -06:00
Gregory Nutt
a1469a3e95
Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err()
2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2
Rename *lldbg to *llerr
2016-06-11 14:55:27 -06:00
Gregory Nutt
1cdc746726
Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES
2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe
Replace all occurrences of vdbg with vinfo
2016-06-11 11:59:51 -06:00
Paul A. Patience
d31aefe4ef
STM32 CAN: Add support for both RX FIFOs
2016-05-25 16:11:18 -04:00
Gregory Nutt
70e502adb0
Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section()
2016-02-13 19:11:09 -06:00
Frank Benkert
dd13fcde44
CAN: Add more extensive error reporting information
2016-01-18 12:21:20 -06:00
Gregory Nutt
d90f597a05
More spacing/alignment issues
2015-10-08 19:31:58 -06:00
Gregory Nutt
53f6fd6e66
STM32: Correct some spacing issues
2015-10-07 13:45:15 -06:00
Gregory Nutt
6fc6d17760
Fix some spacing problems
2015-10-04 14:59:08 -06:00
Gregory Nutt
b7d6720a23
All CAN drivers: Set the new error indication to zero in the CAN message report
2015-08-18 07:24:12 -06:00
Gregory Nutt
1f5e16dc95
Fix some warnings/errors detected by nuttx/tools/testbuilds.sh
2015-07-10 18:41:26 -06:00
Gregory Nutt
2cdc5f99b9
STM32 CAN: More places where FR instead FIR used
2015-04-09 19:30:19 -06:00
Gregory Nutt
7e9c8b5926
STM32 CAN correction suggested by Max Holtzberg
2014-09-24 08:23:05 -06:00
Gregory Nutt
52a1f19023
Fixes to avoid some hang conditions using STM32 CAN
2014-09-17 08:35:03 -06:00
Gregory Nutt
6455f60c60
Remove os_internal.h it has been replace by several new header files under sched/. There have been some sneak inclusion paths via os_internal.h, so expect a few compilation errors for some architectures
2014-08-08 18:39:28 -06:00
Gregory Nutt
eee82879cb
Make sure that there is one space between if and condition
2014-04-12 12:53:19 -06:00
Gregory Nutt
1b17b8fbea
Make filter register accessible for CAN1 and CAN2. Provided by Lorenz Meier
2013-09-13 11:20:10 -06:00
Gregory Nutt
56f9092a87
Fix all occurrences of "the the" in documentation and comments
2013-08-27 09:40:19 -06:00
Gregory Nutt
3aa94411be
Remove up_assert_code
2013-04-25 15:19:59 -06:00
patacongo
896e32f73d
Removed stm32_internal.h; Changes for clean compile of STM32F3Discovery configuration with SPI and USB
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5630 42af7a65-404d-4744-a932-0658087f49c3
2013-02-09 15:03:49 +00:00
patacongo
2440416bdc
More updates for the STM32F3Discovery
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5617 42af7a65-404d-4744-a932-0658087f49c3
2013-02-06 23:09:09 +00:00
patacongo
3c92ffa2f9
Add missing file needed for stm32f100xx port
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4957 42af7a65-404d-4744-a932-0658087f49c3
2012-07-20 01:42:40 +00:00
patacongo
7d4f4de7bc
STM32: Add logic to attach the RTC alarm EXTI interrupt
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4947 42af7a65-404d-4744-a932-0658087f49c3
2012-07-17 00:22:48 +00:00
patacongo
22ffe347bc
CAN ISO-11783 support contributed by Gary Teravskis
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4400 42af7a65-404d-4744-a932-0658087f49c3
2012-02-18 14:02:34 +00:00
patacongo
400935a2af
Add support for extended (29-bit) CAN IDs
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4319 42af7a65-404d-4744-a932-0658087f49c3
2012-01-20 21:52:35 +00:00
patacongo
a6d160ea4b
Leverage some bit timing logic from LPC17xx to the STM32 CAN driver
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4317 42af7a65-404d-4744-a932-0658087f49c3
2012-01-20 03:37:29 +00:00
patacongo
707ce459b5
Fix bug in STM32 CAN: It must be interrupt driven
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4295 42af7a65-404d-4744-a932-0658087f49c3
2012-01-11 14:56:56 +00:00
patacongo
25f46d94e2
CAN request order priority
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4292 42af7a65-404d-4744-a932-0658087f49c3
2012-01-11 01:01:44 +00:00
patacongo
a82b55b37f
Implement the new CAN txready method for STM32
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4291 42af7a65-404d-4744-a932-0658087f49c3
2012-01-11 00:13:45 +00:00
patacongo
e28c348db0
LPC17xx CAN driver now supports all 3 transmit buffers and loopback mode; LCP1766-STK NSH configuration will support the CAN loopback test
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4253 42af7a65-404d-4744-a932-0658087f49c3
2012-01-03 01:03:56 +00:00
patacongo
9e608fb472
The STM32 F4 CAN driver has been verified in loopback mode
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4251 42af7a65-404d-4744-a932-0658087f49c3
2012-01-02 16:33:05 +00:00
patacongo
fcf22d5db5
Update to the STM32 ADC and CAN drivers
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4215 42af7a65-404d-4744-a932-0658087f49c3
2011-12-22 21:55:54 +00:00
patacongo
e14a62c463
STM32 CAN debug fixes
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4214 42af7a65-404d-4744-a932-0658087f49c3
2011-12-22 18:28:13 +00:00
patacongo
07a2d59fbc
Add loopback support to STM32 CAN driver; Add apps/examples/can loopback test
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4213 42af7a65-404d-4744-a932-0658087f49c3
2011-12-22 15:59:50 +00:00
patacongo
4613a3b7b0
STM32 ADC driver update
...
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4211 42af7a65-404d-4744-a932-0658087f49c3
2011-12-22 00:31:47 +00:00