This is the mail archive of the
mailing list for the eCos project.
Re: MPC8xx Quicc SMC Driver Lockup
On Mon, 6 Dec 2010, Retallack, Mark wrote:
> I have found an issue with the SMC (and SCC) quicc serial driver where
> if the CPM is under heavy load, the serial driver will stop
> transmitting any data which can lead to the serial driver locking up
> (if using buffered serial driver and blocking writes). This issue
> shows up when the Serial driver is re-configured.
> This is caused by the CPM CP access code within the SMC/SCC serial
> driver not checking for the Busy flag (FLG) to be clear before
> continuing. This means that if the SMC is re-configured it may not be
> restarted. The attached patch performs a wait while the busy flag is
> I have also changed the sequence of the SMC UART set-up so the STOP
> TRANSMIT command is executed before the SMCMR[TEN] bit is cleared.
> Reading the MPC850 user manual suggests that this is the "more
> correct" way of performing a re-configuration of the SMC, it would be
> useful to get other peoples feedback on this change, I am not sure it
> will make a difference.
I looked on the patch and tested build process. The patch looks fine
*for me*, but, as I have not the same targets, I cannot test run-time
stuff. Could someone from maintainers, please, put his hands on this?
Or what could be your verdict?
> Thanks in advance
> Mark Retallack