Peter Stuge wrote: > On Wed, Aug 15, 2007 at 03:37:28PM +0700, Darmawan Salihun wrote: >>> What is required to get into the southbridge driver stack? >> I'm not too sure. I think a "PCI bus filter driver", but that >> would be an overkill at the moment. > > Why? First off, I need to make at least a "safe" working code this weekend, for GSoC compliance ;-). I have a "working" code at the moment with direct I/O but without much of a "protection mechanism" in the kernel. It's an obvious danger, so I would like to add the DPC mechanism for the time being. Of course, venturing through the bus filter driver has been planned for sometime now. So, don't worry ;-).
> >> The other problem is it's not well documented (maybe not documented >> at all :-/). I hardly found information about such a thing. Even, >> experts in Windows driver development says so. > > I found some: > > MSDN > Win32 and COM Development > Windows Driver Kit > Kernel-Mode > Driver Architecture > Design Guide (check out Reference too) > http://msdn2.microsoft.com/en-us/library/ms796245.aspx OK. I'll read that. I might have come across that ;-). > >>> really not feasible? It would definately be the cleanest way. >> Yes, this is the cleanest way. However, we have to "attach" our >> driver entry point functions, including "AddDevice" function upon >> the first time the southbridge driver is installed. > > Well we don't have to be the _only_ driver. I don't expect that to > work well. > > >> More like we make a driver for Intel, NVidia, AMD or Via chipset >> driver. > > I think separate drivers is OK but only one is of course ideal. > > >> The PnP manager will try to find the driver for the corresponding >> device the first time it's found after Windows installation and it >> seems once it has the driver we wouldn't be able to add our own >> "hook" into the driver stack. Unless we make the thing called "PCI >> bus filter driver" or other "Bus filter driver" as needed. > > Right, this is what I thought seemed right. > > >> But, the problem goes back to the beginning, it's not even >> documented. > > There is talk about it. Google has a few bits of info too, as usual. > > One link is Doron Holan's blog: (Technical lead for WDF) > http://blogs.msdn.com/doronh/archive/2006/09/18/761325.aspx > (here talk about class filter drivers) OK. This one is on the list. I've been talking with Doron for a while in the OSR's mailing list for a while ;-). > > And there is an example, look for "toaster", in the WDK/DDK. > > It was introduced in this old newsletter it seems: > http://www.microsoft.com/whdc/resources/news/newsletters/MHN_090803.htm > > > The WDK doesn't seem to be readily available without registration and > possibly payment but there is a DDK for 2k<=SP4 XP<=SP1 and 2003<=SP1 > immediately downloadable from: > > http://www.microsoft.com/whdc/DevTools/ddk/default.mspx > > ..which probably works just fine also for later versions. Have tested it for about a month now and seems to be just fine building Win XP device driver ;-). > > There's documentation to go with the DDK too: > > http://www.microsoft.com/whdc/DevTools/WDK/WDKdocs.mspx Have got it too. > > There are also some interesting docs on the toaster: > > http://www.microsoft.com/whdc/driver/foundation/toastersamp.mspx > > http://download.microsoft.com/download/3/5/a/35a609bf-872a-4eb8-a0d6-a3e026f8485a/ToasterSamp.doc > Google HTML: > http://209.85.135.104/search?q=cache:wRLrFGamtKYJ:download.microsoft.com/download/3/5/a/35a609bf-872a-4eb8-a0d6-a3e026f8485a/ToasterSamp.doc+msdn+filter+driver+sample&hl=en&ct=clnk&cd=13 > > http://download.microsoft.com/download/1/8/f/18f8cee2-0b64-41f2-893d-a6f2295b40c8/DW04006_WINHEC2004.ppt > Google HTML: > http://209.85.135.104/search?q=cache:H-hy11oPjsIJ:download.microsoft.com/download/1/8/f/18f8cee2-0b64-41f2-893d-a6f2295b40c8/DW04006_WINHEC2004.ppt+msdn+filter+driver+sample&hl=en&ct=clnk&cd=14 > > The latter one is slides about driver distribution and installation. > They have tools for that too: > > http://www.microsoft.com/whdc/driver/install/difxtools.mspx > http://www.microsoft.com/whdc/driver/install/DIFxtls.mspx > http://search.microsoft.com/results.aspx?mkt=en-US&setlang=en-US&q=difxtools Thx for the links. > > Another good resource is: > > http://www.codeproject.com/system/driverdev4asp.asp > > here part 4 in a driver writing tutorial series that goes into > healthy depth about technicalities, and provides code. > > Have a look. Yeah, of course. Thanks for that. I've got two books in Windows driver development as well (Walter Oney's book and the other one about Win2K WDM driver development) Regards, --Darmawan -- linuxbios mailing list linuxbios@linuxbios.org http://www.linuxbios.org/mailman/listinfo/linuxbios