This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

at91 serial driver bug?


I think there is a small but serious bug in the function at91_serial_DSR
(ecos  file  packages/devs/serial/arm/at91/current/src/at91_serial.c)

The status of the serial device should be read from the Channel Status
Register (US_CSR) register.
The current implementation reads the Interrupt Mask Register (US_IMR) in the
beginning of the function.

HAL_READ_UINT32(base+AT91_US_IMR,stat);

should be

HAL_READ_UINT32(base+AT91_US_CSR,stat);

I have not tested this since we don't use this code any more but I believe
this bug affects the performance of the driver.

Per Hedblom
Mindcore Software AB
Sweden


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]