GPIO Driver for Skylake-Y PCH

Andy Shevchenko andriy.shevchenko at linux.intel.com
Fri Jun 21 06:12:06 EDT 2019


On Thu, Jun 20, 2019 at 02:02:11PM -0700, Alexander Ivanov wrote:
> On Tue, 18 Jun 2019 01:41 -07:00, Andy Shevchenko <andriy.shevchenko at linux.intel.com> wrote:
> > > Obviously, I am wrong here. However, the question stands, is there linux kernel support for Intel PCH GPIO?
> > 
> > Yes. Most of the SoCs from Intel use GPIO IP based on Chassis specification,
> > the drivers for which are available under drivers/pinctrl/intel. What you are
> > looking for is located under PINCTRL_SUNRISEPOINT configuration option.

> My box is updated with current Fedora distro and now running 5.0.9-301.fc30.x86_64. It's also said that the box has Sunrisepoint chipset. For this chipset, 5.0.9 kernel support following devices:
> 
> static const struct acpi_device_id spt_pinctrl_acpi_match[] = {
> 	{ "INT344B", (kernel_ulong_t)&sptlp_soc_data },
> 	{ "INT345D", (kernel_ulong_t)&spth_soc_data },
> 	{ }
> };
> 
> [ https://elixir.bootlin.com/linux/v5.0.9/source/drivers/pinctrl/intel/pinctrl-sunrisepoint.c#L587 ]
> 
> I believe the box has INT344B device attached to acpi bus proper:
> 
> $ sudo ls -la /sys/bus/acpi/devices/INT344*
> ...
> lrwxrwxrwx. 1 root root 0 Jun 20 11:47 /sys/bus/acpi/devices/INT344B:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT344B:00

Usually to check this is better to run
	grep -H 15 /sys/bus/acpi/devices/*/status
which return you the list of *present and available* ACPI devices.

> Drivers seem loaded:
> 
> $ lsmod | grep pin
> pinctrl_sunrisepoint    28672  0
> pinctrl_intel          28672  1 pinctrl_sunrisepoint
> 
> However, I don't see any gpio devices.
> 
> $ ls /dev/gpio*
> ls: cannot access '/dev/gpio*': No such file or directory
> $ ls /sys/bus/gpio/devices/
> $
> 
> What am I still missing?

Two items:
- CONFIG_GPIO_SYSFS (deprecated!)
- that this is an old way to access to GPIO chips, the correct one is
  to use character device; libgpiod tools will help you with that

-- 
With Best Regards,
Andy Shevchenko





More information about the Kernelnewbies mailing list