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]

MPC860: quicc_smc_serial driver *issue*


The driver is designed to operate in polling mode when buf_size is set to 0, however putc does not check for the outbound buffer length. 

Issue
-------
1. putc starts filling in the buffer (after the buffer is full, txbd->length is beyond smc_chan->txsize) and flush routine keeps getting called.
2. txbd->length gets reset only in the interrupt handler (*which was never set because outbound buffer length is 0*) and hence this never takes place.

I've made a change to putc to check and use 1 buffer for polling mode. 

Kindly please let me know how this patch can make it into the code so that I don't have to patch it the next time, I get the source out from cvs. All this is based on the assumption that the driver is intended to be used in polling mode by making bufsize=0. 

Please let me know if I am missing something.

Thanks
Nirmal





-- 
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]