Embedded Intel® Core™ Processors
Communicate Intel® Core™ Hardware, Software, Firmware, Graphics Concerns
Announcements
For support on Altera products please visit the Altera Community Forums.
1381 Discussions

No pinctrl driver for Intel Ice Lake-D platform in Linux kernel?

WGQ
Beginner
1,656 Views
Hi all, I am working on a project based on the Intel Ice Lake-D platform (e.g., Xeon D-1700/2700 series), and I need to access and control GPIOs under Linux. However, I noticed that the mainline Linux kernel (even in recent versions) only provides a pinctrl-icelake.c driver, which seems to be designed for the original Ice Lake (client/mobile/server) platforms. When I compare the pin definitions in pinctrl-icelake.c with the actual pinout and documentation for Ice Lake-D, they do not match. It appears that Ice Lake-D has a different pin configuration and may require a dedicated pinctrl driver. I have checked the drivers/pinctrl/intel/ directory in the latest kernel source, but I could not find any driver specifically for Ice Lake-D (such as pinctrl-icelaked.c or similar). I also searched the kernel mailing list and Intel documentation, but did not find any relevant information. My questions: Is there an official or in-development pinctrl/gpio driver for the Intel Ice Lake-D platform? If not, is there any recommended approach to enable GPIO support for Ice Lake-D under Linux? Are there any plans to upstream such a driver, or is there any reference code available from Intel? Any information, suggestions, or pointers to documentation would be greatly appreciated! Thank you!
0 Kudos
2 Replies
WGQ
Beginner
1,595 Views

Thank you all for your attention and suggestions. I would like to update this thread with the solution I found. After further investigation, I realized that Ice Lake-D (ICX-D) is the CPU architecture, but the GPIO controller is actually located on the PCH (Platform Controller Hub) of the platform, which is codenamed “Cedar Fork.” Therefore, the correct pinctrl driver for GPIO support on Ice Lake-D platforms is pinctrl-cedarfork, not pinctrl-icelake. Sorry for any confusion caused by my previous question, and thank you again for your help!

0 Kudos
Diego_INTEL
Moderator
1,558 Views

Hello @WGQ,

 

Thank you for contacting Intel Embedded Community.

 

Don't worry, I'm glad that you could find the solution, thank you very much for sharing your findings. I would like to add the following:

The specific driver for Icelake-D is pinctrl-cedarfork and you may enable all drivers in the drivers/pinctrl/intel/

 

Best regards,

 

@Diego_INTEL 

0 Kudos
Reply