Actually, the ABAR in its PCI Config Space contains the address where the
Hba memory registers are mapped. If you know how to get this information
from the Controller driver, please share. But AFAIK, the miniport driver
also gets this information from tue storage class driver which in turn
retrives his information using the same technique that i’m trying to use.
Also, I already have a filter driver throuh which i’m able to get he ABAR
of that controller and then map it to the kernel space and read it. Problem
is i have to restart the system to install this driver which i cannot
afford.
On Aug 8, 2012 12:18 PM, “Doron Holan” wrote:
> Which are controlled by the ahci driver. Why are you poking around in
> registers another driver owns?
>
> d
>
> debt from my phone
> ------------------------------
> From: Anirudha Kumar
> Sent: 8/7/2012 11:16 PM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] Installing PCI filter driver without reboot.
>
> These registers hold properties of the Controller like SATA mode
> supported, capabilities, etc.
>
> On Wed, Aug 8, 2012 at 11:40 AM, Doron Holan wrote:
>
>> Doesn?t work that way. What problem are you solving by reading the hba
>> memory registers?
>>
>>
>>
>> From: xxxxx@lists.osr.com [mailto:
>> xxxxx@lists.osr.com] *On Behalf Of *Anirudha Kumar
>> Sent: Tuesday, August 07, 2012 11:04 PM
>>
>> To: Windows System Software Devs Interest List
>> Subject: Re: [ntdev] Installing PCI filter driver without reboot.
>>
>>
>>
>> The problem is as I have mentioned in my message - Reading HBA Memory
>> Registers of any AHCI controller connected to PCI Bus in the system.
>>
>>
>>
>> I’m not writing the filter to have exclusive access to IO Ports. The idea
>> is that the filter driver can query for bus interface of the PCI bus driver
>> and directly call ReadConfig to get the config space of any PCI device.
>>
>>
>>
>> On Wed, Aug 8, 2012 at 11:15 AM, Doron Holan
>> wrote:
>>
>> A filter doesn’t solve the exclusive access to the io ports problem
>> either. What bigger problem are you trying to solve?
>>
>>
>> -----Original Message-----
>> From: xxxxx@lists.osr.com [mailto:
>> xxxxx@lists.osr.com] On Behalf Of xxxxx@gmail.com
>> Sent: Tuesday, August 07, 2012 10:26 PM
>> To: Windows System Software Devs Interest List
>> Subject: [ntdev] Installing PCI filter driver without reboot.
>>
>> Hi all,
>>
>> I’m new to windows driver development. I’m trying to install a PCI upper
>> filter driver to communicate with the PCI Bus driver from my Application.
>> Is it possible to achieve this without rebooting the system? I want to
>> load, get the required information, and unload the driver from my
>> application.
>>
>> Requirement:
>> The original requirement is to read the ABAR of the AHCI controller in
>> the system sitting on the PCI bus for which i need to read the config space
>> of the controller. There are follwing ways that I have found for doing so:
>>
>> 1) Read/Write using PCI IO Ports (0xcf8 and 0xcfc). Ideally, except for
>> the device driver, nobody should do this as amny people in many forums have
>> pointed out that this could lead to disaster in worst case.
>>
>> 2) Getting PCI driver object using ObReferenceObjectByName which is no
>> longer supported by the DDK.
>>
>> 3) Using HalGetBusData() which is again not supported by the DDK.
>>
>> 4) Put a filter driver above the PCI bus driver and create a symbolic
>> link for that. Then, directly open a handle to it and communicate with it
>> to get the information. This, as most people suggest, is the ideal
>> approach. But AFAIK, putting a upper filter driver on PCI devnode requires
>> a reboot. Can this be avoided by any means?
>>
>> Thanks in advance for any help!!!
>>
>> —
>> NTDEV is sponsored by OSR
>>
>> For our schedule of WDF, WDM, debugging and other seminars visit:
>> http://www.osr.com/seminars
>>
>> To unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>>
>>
>>
>> —
>> NTDEV is sponsored by OSR
>>
>> For our schedule of WDF, WDM, debugging and other seminars visit:
>> http://www.osr.com/seminars
>>
>> To unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>>
>>
>> — NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and
>> other seminars visit: http://www.osr.com/seminars To unsubscribe, visit
>> the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>>
>> —
>> NTDEV is sponsored by OSR
>>
>> For our schedule of WDF, WDM, debugging and other seminars visit:
>> http://www.osr.com/seminars
>>
>> To unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>>
>
> — NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and
> other seminars visit: http://www.osr.com/seminars To unsubscribe, visit
> the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>