Port-amiga archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Problems with IOblix serial ports



Hello,

It happened probably during a level 6 interrupt, caused by your IOblix card.
Those a standard ns8250/16550-compatible com(4) ports, which means that
comintr() from dev/ic/com.c would be called immediately, which certainly
doesn't have a major problem.

Now for strangeness... I added a simple printf in the beginning of the comintr routine in com.c, as you suggested, and it doesn't panic now. I removed it, made a new kernel, got a panic... Strange...

The built-in serial port works fine, as that's what I'm using for the console right now. Also, this card is replacing a Multiface card, so I know the mfc ports work fine. I just wanted more ports.

Some more testing shows that a really short printf around line 1864 (after (if (COM_ISALIVE(sc) == 0)) doesn't affect anything (it still panics on the first character), but a longer printf allows the use of the port for a little while. I'm just pressing on the keyboard, so I'd guess it's just changing the timing a little, and I'd guess that any sort of full-speed serial usage would be much faster than my keyboard repeat rate.

Does anyone have any clue why a printf in that area changes things? A delay() doesn't...

John


Home | Main Index | Thread Index | Old Index