- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We connected an EEPROM to I2C Host Controller and we want to access to the ROM via I2C.
Our system is Windows 10 LTSC 2018 64-bit.
Processor: Intel(R) Core i5-8365U (WhiskeyLake)
Target device name: Intel(R) Serial IO I2C Host Contoroller - 9DE8
Hardware IDs:
PCI\VEN_8086&DEV_9DE8&SUBSYS_72708086&REV_30
PCI\VEN_8086&DEV_9DE8&SUBSYS_72708086
PCI\VEN_8086&DEV_9DE8&CC_0C8000
PCI\VEN_8086&DEV_9DE8&CC_0C80
Inf name: iaLPSS2i_I2C_CNL.inf
Installed driver: iaLPSS2i_I2C_CNL.sys
I know the way to access any device using Device Interface GUID and SetupDi fucntions for getting device path and CreateFile fucntion to open the device.
But I can't find Device Interface GUID for the controller.
Could you tell me the Device GUID for the controller?
Or How can I access to the controller without Device Interface GUID?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, @htaka30:
Thank you for contacting Intel Embedded Community.
Could you please let us know if the design related to this thread has been developed by you or it is a third-party device? In case that it is a third-party unit, please let us know the part number, model, name of the manufacturer, and where is stated the information related to it.
We are waiting for your reply.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, @htaka30:
Thanks for your answer.
Could you please let us know the sources that you have used to design the project related to this thread?
Could you please clarify it has been verified by Intel?
We are waiting for your clarification.
Best regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello @Mæcenas_INTEL,
The sources you mean is the driver?
I found the following information from property of iaLPSSi_i2C_CNL.sys.
File description: Intel(R) Serial IO I2C Driver v2
File version: 30.100.1816.3
Copyright @2015, Intel Corporation.
Data modified 9/15/2018
I heard that this driver come from Intel Early Access Program.
So, I'm not sure the vitrification completed.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, @htaka30:
Thanks for your reply.
Please let me paraphrase my first question of my previous communication, could you please let us know where are stated the guidelines to design the project related to this thread?
We are waiting for your reply.
Best regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Mæcenas_INTEL ,
I'm sorry, I'm no sure about the project and guidelines.
My mission is make an application to access EEPROM via Serial IO I2C Host Contoroller.
Could you give me a sample code for that?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, @htaka30:
Thanks for your update.
I²C and SPI drivers use the Microsoft* framework called simple peripheral bus (SpbCx) to use the I²C/SPI controller, there must be a sub-device mounted under the specific I²C/SPI controller. A user mode application can open this sub-device by using its symbolic name or GUID, and send IOCTLs or requests to it. Only then, this sub-device can open parent target (I²C/SPI controller) and forward IOCTLs or requests to SpbCx framework, thus to the I²C/SPI controller driver. Refer to the following for the Microsoft framework:
https://docs.microsoft.com/en-us/windows-hardware/drivers/spb/spb-framework-extension
Here is a sample pack from Microsoft, within it you may find the sample code on how to write the sub-device driver mounted under the I²C/SPI controller, to open its parent and forward requests:
https://code.msdn.microsoft.com/windowshardware/
The description of supported IOCTLs is here:
https://docs.microsoft.com/en-us/previous-versions//hh450915(v=vs.85)
Best regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Mæcenas_INTEL ,
Thank you for your replay and I'm sorry to late reply.
I can access to EEPROM by your mentioned way.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, @htaka30:
Thanks for tour feedback.
We are glad that your inconvenience has been solved.
Best regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hello @htaka30
I want to access to Serial IO I2C Host Controller on Apollo Lake
We connected an FRAM to I2C Host Controller and we want to access to the FRAM via I2C.
Our system is Windows 10 Enterprise LTSC 64-bit.
Processor: Intel(R) ATom(TM) Processor E3930
Target device name: Intel(R) Serial IO I2C Host Contoroller - 5AAC
Installed driver: iaLPSS2i_I2C.sys
My understanding of Windows is very little.
Could you give me a sample code for that?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, @Huuuyen:
Thank you for contacting Intel Embedded Community.
I²C and SPI drivers use the Microsoft* framework called simple peripheral bus (SpbCx) to use the I²C/SPI controller, there must be a sub-device mounted under the specific I²C/SPI controller. A user mode application can open this sub-device by using its symbolic name or GUID, and send IOCTLs or requests to it. Only then, this sub-device can open parent target (I²C/SPI controller) and forward IOCTLs or requests to SpbCx framework, thus to the I²C/SPI controller driver. Refer to the following for the Microsoft framework:
https://docs.microsoft.com/en-us/windows-hardware/drivers/spb/spb-framework-extension
Here is a sample pack from Microsoft, within it you may find the sample code on how to write the sub-device driver mounted under the I²C/SPI controller, to open its parent and forward requests:
https://code.msdn.microsoft.com/windowshardware/
The description of supported IOCTLs is here:
https://docs.microsoft.com/en-us/previous-versions//hh450915(v=vs.85)
Best regards,
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page