How to access BIOS from a NDIS or WDI driver

Hi,

I need to access some information or settings in BIOS from my NDIS and WDI driver (i guess the access method should be same for both).
please help to provide what are the standard method available and how to go about it

Thanks
Joyjit

It would help if you were more specific about what information you think you need from BIOS.

And if you told us which BIOS you were referring to. That might help. There are at least three different things that I can think of that people call by the name “BIOS”…

Peter

requirement is that the driver needs to read during its init phase the required device transmit power values stored in the bios flash memory, what i am really looking for is what will be the interface to fetch this information.

On Feb 21, 2019, at 10:37 PM, joyjit_mullick wrote:
>
> requirement is that the driver needs to read during its init phase the required device transmit power values stored in the bios flash memory, what i am really looking for is what will be the interface to fetch this information.

The right way to do this, I believe, is to embed the information in the DSDT table, in the entry for your device. There is a well-defined interface to fetch information from your DSDT entry.

Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

Hi Tim,

will it be possible to access the DSDT table from a kernel mode driver could you provide some information on this, i could find in msdn some API but they are from user space.

the next question is which interface protocol is used to fetch the data from DSDT and is there any MAX size limitation for vendors for storing configurations in DSDT table.

Thanks
Joyjit

Assuming it is in fact the ACPI BIOS that you’re talking about, creating a device specific method _DSM that returns the value would be the right way to do this. This of course assume should have control of the ACPI BIOS…

ETA: Read here about a evaluating ACPI methods.

Peter

joyjit_mullick wrote:

will it be possible to access the DSDT table from a kernel mode driver could you provide some information on this, i could find in msdn some API but they are from user space.

You can use the IOCTL_ACPI_EVAL_METHOD ioctl to call a _DSM method in
the DSDT, which can return you information.

the next question is which interface protocol is used to fetch the data from DSDT and is there any MAX size limitation for vendors for storing configurations in DSDT table.

The limit is pretty large, but the DSDT is not very convenient. I don’t
think you’ll want to store a whole bunch of configuration info in there.