[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [microblaze-uclinux] Uart lite hanging
On Wed, December 3, 2008 09:36, Giulio Mazzoleni wrote:
>
>> > * hanging when receiving more than we can consume still hangs the
>> > process:
>> > 30 bytes every 2ms at 115k2 on 50MHz -> eventually freezes the
>> > process. And INTR
>> > aborts it.
>>
>> And the solution was simplier than expected: change CONFIG_HZ to
>> something bigger than 100 Hz - why not 200 or even 300 Hz! As I
>> suspected this was related to a similar problem with Nios2 on a close
>> project: we couldn't have the data (@31250bps) available in time for
>> the application. The system was running at 100 Hz.
>
> Wonderful!
Even more wonderful is the fact that I was partly correct and partly wrong; it turns
out that the added ability the set different preemption behaviour was in fact that
made it all work and that the CONFIG_HZ=100 was hard coded in param.h. So my initial
thought and test was not good enough.
Last Friday I found this missing CONFIG_HZ when doing some timing tests and my
hardware colleague helped me with the oscilliscope and we found a non-changing 10ms
duty cycle from the Microblaze no matter what setting CONFIG_HZ got from menuconfig.
But modifying param.h solved this problem.
We are now performing tests with 460800 bps on the com links between the processor
nodes. Stay tuned... ;)
Regards,
Olof
--
Olof Backing
CAG Contactor AB Office: +46 (0)8 752 81 00
Finlandsgatan 14 Mobile: +46 (0)70 995 98 99
SE-164 74 KISTA Fax: +46 (0)8 752 05 30
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/