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

PC INT13 and the BAR

Hello everyone,

Thank you for the responses to my previous mails. The reason I
mentioned about the gap between BAR registers is that I want to
have flexibility for the BAR to be either 32 bits or 64 bits.  If the type
bits are set to 32- bit address under 1M by the hardware; the high
address of 64 bits BAR has to be forced  to un-used (all zero's).
The system BIOS should be able to scan all the BAR and skip
the un-used gap BAR registers.

If someone can answer my following questions, I do not have to
implement as the above.

(1) Architecture: Intel PC and PCI boot device.
(2) O.S:  Window NT, Window95 or SCO UNIX (no DOS).
(3) BAR:  The memory map address only (No I/O mapped because
ISA Alisaing limitation).

The system BIOS allocated the memory resources to the BAR close to
4 Gagbytes. PC INT13 Expansion ROM BIOS is used to boot the O.S.
Before O.S. switches to proctected mode in the boot , I have to switch
to Protected mode from the Real mode INT13 in order to access PCI
Base Address Registers above 1M space.  After finishing the access,
I switched back to the Real mode from the Proctected mode.

The questions are:
(1) Can I implement INT13 in the Proctected mode as mentioned above?
(2) If O.S. is already in the proctected mode,  can I access the BAR
above 1M without switching to Proctected mode.
(3) Does anyone implement as above before.
(4) How else can it be implemented?

Thank you,