The aim of our project is to access Processor GPIO pins and read/write its high/low. Our OS is Windows10 IoT, and Processor is Intel Atom.
We only have some experience with filter driver and filesystem driver, but no experience with hareware driver development.
Since I am a beginner of hardware driver, I thought the effective way is learning from Microsoft's ducuoment and sample codes.
I have gone through the following and related links,
Then I know a GPIO controller drivers and a peripheral device driver are requied to be done.
I built the GPIO sample drivers provided by Microsoft: https://github.com/Microsoft/Windows-driver-samples/tree/master/gpio/samples
And I installed the sample GPIO controller driver "simgpio" by "devcon install simgpio.inf ACPI\TEST0001".
However, the driver wasn't loaded successfully. In the callback function SimGpioEvtDeviceAdd, GPIO_CLX_ProcessAddDevicePreDeviceCreate returned the error code STATUS_INVALID_DEVICE_REQUEST.
After that, I found a GPIO controller driver from Intel(iagpio.sys) was already in Windows. Then I tried to start it manually by command line "sc start iagpio".
It failed, and an error message was found in windows system event log: "The Intel Serial IO GPIO Controller Driver service depends on the following service: GPIOClx. This service might not be installed."
So I listed dirvers already loaded by WinObj, msgpioclx.sys wasn't there. I thought the GpioClx(msgpioclx.sys) would be pre-loaded, but not really.
We are totally blocked. We had originally planned to begin learning with sample. But the only sample for GPIO didn't work, it is really despairing for a beginner.
I think we lack of basic knowledge of hardware dirver:
How can OS load a proper driver for an hardware?
When the GpioClx would be loaded?
Is there any essential steps we should do on hardware before install the dirver?
Could any one give me some beginner's guide for GPIO driver? Any suggestion would be appreciated.
It looks like you're new here. If you want to get involved, click one of these buttons!
|Upcoming OSR Seminars|
|Developing Minifilters||29 July 2019||OSR Seminar Space|
|Writing WDF Drivers||23 Sept 2019||OSR Seminar Space|
|Kernel Debugging||21 Oct 2019||OSR Seminar Space|
|Internals & Software Drivers||18 Nov 2019||Dulles, VA|