Hi John,

Charlton, John wrote:
> To follow up on this, I configured the parallel port for standard mode and 
> the xeno_can_peak_dng driver works without error so the problem has to do 
> with the EPP/ECP mode.  I would like to use EPP or ECP for performance.  And 
> as indicated below, the xeno_can_peak_dng driver only recognizes the sja1000 
> when the bios is set to EPP mode.  Any ideas on how to get it to work in EPP 
> or ECP?

I'm not really familiar with EPP and ECP and the differences. I just
know that this devcie is not really good for production purposes,
especially at 1 MB/s. Also real-time suffers, because device access is
quite slow. The driver is derived from PEAK's PCAN driver. PEAK might be
able to tell you more about the limitations and EPP/ECP problems with
that device.

Wolfgang.

> --John
> 
> -----Original Message-----
> From: Charlton, John 
> Sent: Wednesday, August 05, 2009 10:12 AM
> To: xenomai-help@gna.org
> Subject: Peak parallel port dongle rtcan driver
> 
> I am having some problems with the xeno_can_peak_dng driver with the Peak 
> parallel port CAN dongle.  I am using linux-2.6.27.7 kernel and 
> xenomai-2.4.6.1 on an embedded PC (NANO-7240, ULV Celeron 400 MHz CPU).
> 
> I have done extensive testing using both RAW CAN and CanOpen using 
> CanFestival at 1Mbit baud with a TS-CAN1 PC-104 bus card with no errors.  
> When I use the Peak parallel port dongle at 1 Mbit or 125Kbit baud I loose 
> packets and get errors.  It is worse receiving packets with rtcanrecv than 
> transmitting with rtcansend.  I can transmit for longer intervals but 
> eventually it fails with an error.  The last error reported is:
> Assertion failed! <linux kernel 
> directory>/drivers/xenomai/can/rtcan_raw.c:rtcan_tx_push:171 dev->tx_socket 
> == 0 This error occurred after 484 successful transmissions with 100msec 
> delay at baudrate=1000000:
> rtcansend rtcan0 --verbose --identifier=0x123 0xde 0xad 3 4 5 6 7 8
> 
> After the transmission failed the I was unable to send any more packets until 
> I reloaded the driver.  The /proc/rtcan/rtcan0/info state goes to warning in 
> this case.
> Receiving using rtcanrecv rtcan0 --verbose --error=0xffff has more errors.  
> Receiving errors result in corrupt packets but don't cause the CAN bus to 
> quit working or the state to go to warning.  Right after a receive failure
> 
> Device     rtcan0
> Controller SJA1000
> Board      PEAK-Dongle
> Clock-Hz   8000000
> Baudrate   1000000
> Bit-time   brp=1 prop_seg=0 phase_seg1=5 phase_seg2=2 sjw=1 sam=0
> Ctrl-Mode  
> State      active
> TX-Counter 0
> RX-Counter 0
> Errors     0
> Refcount   0
> 
> SJA1000 registers
> 00: 80 00 0c 00 ff 00 00 14 1a 00 00 00 a2 60 00 00
> 10: 60 de ad 03 04 05 06 80 08 08 24 60 de 00 23 80
> 
> I currently have the Peak parallel dongle set to io=0x378 irq=7 type=epp.  I 
> set the parallel port bios to EPP mode and IRQ 7.  I tried ECP mode but the 
> xeno_can_peak_dng driver doesn't find the sja1000 unless the bios setting is 
> EPP.  This conflicts with the Peak documentation which states in the FAQ that 
> ECP is the correct setting even though the driver type is EPP.  It looks to 
> me like there may be a timing problem in the parallel port register read.
> 
> --John
> 
> John D. Charlton
>       Sr. Development Engineer
>       GATD Electrical Controls
>       Tyco Electronics Corporation 
>       Mail Stop: 161-39
>       (717) 810-2141 
>       (717) 810-2443 FAX
>       john.charl...@tycoelectronics.com
>  
> _______________________________________________
> Xenomai-help mailing list
> Xenomai-help@gna.org
> https://mail.gna.org/listinfo/xenomai-help
> 
> 


_______________________________________________
Xenomai-help mailing list
Xenomai-help@gna.org
https://mail.gna.org/listinfo/xenomai-help

Reply via email to