From: Patrick on 19 Jan 2010 18:03 Hi all, I've a system which containing several PLX bridges. I need access to a particular GPIO register which exists in the extended PCI Config Space. Previously we were using HalGetBusData/SetBusData to toggle the GPIO, but these calls are now invalid in Vista. The driver for the PLX bridges are the default pci.sys (from Microsoft). Is there a method to do this ? Some of the newer calls requires the PDO or DO, and these calls only allow me to read/write the PCI Config space of my own device. What I need is the ability to read/write the PCI Config Space of another device. For Vista, how can a driver do (1) scan all devices in the pci bridge (2) select a device, and go modify the PCI Config Space ? At this point, all I can get is the bus/device/function id of the PLX bridge that I need to modify the GPIO, but I am not really sure how I can get access to that device's config space to make the change. Any advice will be much appreciated.
From: RossettoeCioccolato on 19 Jan 2010 18:53 Patrick, Have you looked at BUS_INTERFACE_STANDARD::SetBusData? The documentation is a little thin, but I believe that it will work at elevated IRQL. The better design would be to schedule a DPC in the ISR (if you can tolerate the latency). Regards, Rossetoecioccolato. "Patrick" <Patrick(a)discussions.microsoft.com> wrote in message news:164AA05C-D997-4245-8BE4-E4B9DEF8090B(a)microsoft.com... > Hi all, > > I've a system which containing several PLX bridges. I need access to a > particular GPIO register which exists in the extended PCI Config Space. > Previously we were using HalGetBusData/SetBusData to toggle the GPIO, but > these calls are now invalid in Vista. > > The driver for the PLX bridges are the default pci.sys (from > Microsoft). > > Is there a method to do this ? Some of the newer calls requires the > PDO or DO, and these calls only allow me to read/write the PCI Config > space > of my own device. What I need is the ability to read/write the PCI Config > Space of another device. For Vista, how can a driver do (1) scan all > devices in the pci bridge (2) select a device, and go modify the PCI > Config > Space ? > > At this point, all I can get is the bus/device/function id of the PLX > bridge that I need to modify the GPIO, but I am not really sure how I can > get > access to that device's config space to make the change. Any advice will > be > much appreciated. > >
From: alberto on 20 Jan 2010 13:34 Have you tried to use CF8/CFC ? I know this is a big no-no in Windowsland, but sometimes there isn't any better alternative. Alberto. On Jan 19, 6:03 pm, Patrick <Patr...(a)discussions.microsoft.com> wrote: > Hi all, > > I've a system which containing several PLX bridges. I need access to a > particular GPIO register which exists in the extended PCI Config Space. > Previously we were using HalGetBusData/SetBusData to toggle the GPIO, but > these calls are now invalid in Vista. > > The driver for the PLX bridges are the default pci.sys (from > Microsoft). > > Is there a method to do this ? Some of the newer calls requires the > PDO or DO, and these calls only allow me to read/write the PCI Config space > of my own device. What I need is the ability to read/write the PCI Config > Space of another device. For Vista, how can a driver do (1) scan all > devices in the pci bridge (2) select a device, and go modify the PCI Config > Space ? > > At this point, all I can get is the bus/device/function id of the PLX > bridge that I need to modify the GPIO, but I am not really sure how I can get > access to that device's config space to make the change. Any advice will be > much appreciated.
From: Don Burn on 20 Jan 2010 13:45 It is a wonderful way to crash a system, this is one of the worst suggestions that could be made. -- Don Burn (MVP, Windows DKD) Windows Filesystem and Driver Consulting Website: http://www.windrvr.com Blog: http://msmvps.com/blogs/WinDrvr Remove StopSpam to reply "alberto" <amoreira(a)ieee.org> wrote in message news:a03b6446-0abd-4dad-a9b8-ac18effa20ae(a)p8g2000yqb.googlegroups.com... Have you tried to use CF8/CFC ? I know this is a big no-no in Windowsland, but sometimes there isn't any better alternative. Alberto. On Jan 19, 6:03 pm, Patrick <Patr...(a)discussions.microsoft.com> wrote: > Hi all, > > I've a system which containing several PLX bridges. I need access to a > particular GPIO register which exists in the extended PCI Config Space. > Previously we were using HalGetBusData/SetBusData to toggle the GPIO, but > these calls are now invalid in Vista. > > The driver for the PLX bridges are the default pci.sys (from > Microsoft). > > Is there a method to do this ? Some of the newer calls requires the > PDO or DO, and these calls only allow me to read/write the PCI Config > space > of my own device. What I need is the ability to read/write the PCI Config > Space of another device. For Vista, how can a driver do (1) scan all > devices in the pci bridge (2) select a device, and go modify the PCI > Config > Space ? > > At this point, all I can get is the bus/device/function id of the PLX > bridge that I need to modify the GPIO, but I am not really sure how I can > get > access to that device's config space to make the change. Any advice will > be > much appreciated. __________ Information from ESET NOD32 Antivirus, version of virus signature database 4791 (20100120) __________ The message was checked by ESET NOD32 Antivirus. http://www.eset.com __________ Information from ESET NOD32 Antivirus, version of virus signature database 4791 (20100120) __________ The message was checked by ESET NOD32 Antivirus. http://www.eset.com
From: Patrick on 20 Jan 2010 22:04 I only briefly looked at that. I was under the impression that that call only works for the device (that the device driver controls). I am not sure whether I can use that call to peek at another device's config space (in my case the PLX bridge). Can someone confirm this ? - Patrick "RossettoeCioccolato" wrote: > Patrick, > > Have you looked at BUS_INTERFACE_STANDARD::SetBusData? The documentation is > a little thin, but I believe that it will work at elevated IRQL. The better > design would be to schedule a DPC in the ISR (if you can tolerate the > latency). > > Regards, > > Rossetoecioccolato. > > "Patrick" <Patrick(a)discussions.microsoft.com> wrote in message > news:164AA05C-D997-4245-8BE4-E4B9DEF8090B(a)microsoft.com... > > Hi all, > > > > I've a system which containing several PLX bridges. I need access to a > > particular GPIO register which exists in the extended PCI Config Space. > > Previously we were using HalGetBusData/SetBusData to toggle the GPIO, but > > these calls are now invalid in Vista. > > > > The driver for the PLX bridges are the default pci.sys (from > > Microsoft). > > > > Is there a method to do this ? Some of the newer calls requires the > > PDO or DO, and these calls only allow me to read/write the PCI Config > > space > > of my own device. What I need is the ability to read/write the PCI Config > > Space of another device. For Vista, how can a driver do (1) scan all > > devices in the pci bridge (2) select a device, and go modify the PCI > > Config > > Space ? > > > > At this point, all I can get is the bus/device/function id of the PLX > > bridge that I need to modify the GPIO, but I am not really sure how I can > > get > > access to that device's config space to make the change. Any advice will > > be > > much appreciated. > > > > > > > . >
|
Next
|
Last
Pages: 1 2 3 4 Prev: Display Blanking in Windows 7 Next: Replacing signed drivers during development |