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

[bsd-nomads:15509] Re: PALDIO 611S




>>>>> "Warner" == Warner Losh <imp@harmony.village.org> writes:
shigeru> レジスタの値を見て、フラグが0になるまでループ: している場合、0xFFが
shigeru> 返ってきてしまうと無限ループになる可能性があります。
...
Warner> /* chg == 0xff ですか? */ ...

No.
Please look at siointr1()@src/sys/isa/sio.c.

        line_status = inb(com->line_status_port);

        /* input event? (check first to help avoid overruns) */
        while (line_status & LSR_RCV_MASK) {
            /* break/unnattached error bits or real input? */
           ....
            line_status = inb(com->line_status_port) & 0x7F;
        }

When a PC Card is removed, line_status is allways 0xFF.
#...maybe...
----
山本 茂	<shigeru@iij.ad.jp>				I hate UNICODE :-)