Hi list,
I have an issue with a PCI express device : it does not wakeup the
system although
it send correctly PM_PME messages in the bus (I checked with a
protocol analyser).
Thus, I try to know if the system recieve this message. Fortunatly a
register
located in the Root port's config space (my device's parent) allow me
to know that.
SO I gogglelized and I discovered that HalGetBusData(), or
HalGetBusDataByOffset(),
are my friends.
OK, I know that thoses two functions are obsoletes etc.... But :
1) they are still active in WInCE, AGP drivers. So they don't seem
completlty
obsolete.
2) The IRP_MN_QUERY_INTERFACE and IRP_MN_READ_CONFIG need a PDO. I
don't know
how to get parent's device PDO [any volunteer for help ?

)]
3) I need to read parent's device config space only_for_debug_purpose,
so not
following this rule is not that annoying.
Then, in my driver, I added :
- HalGetBusDataByOffset() prototype,
- some structure declaration,
- hal.lib, in the depencies libraies list
Compilation goe well....
But driver crash at calls to HalGetBusDataByOffset, (winXP-SP2),
Bug Check 0x7E: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED,
reason : STATUS_ACCESS_VIOLATION, on .
Huh, obsisously, I missed something... Does anyone have a idea, or a
clue ?
If some can stand seeing HalGetBusDataByOffset(), waht are other mean
to read
PCI parent's device config space ?
Regards
--
Bennedict