GPIO Driver for Skylake-Y PCH

Bjørn Mork bjorn at
Sat Jun 15 04:53:31 EDT 2019

"Alexander Ivanov" <amivanov at> writes:

>  Device is indeed there:
>> lspci -vvvnns 1f.1
>> 00:1f.1 Memory controller [0580]: Intel Corporation Device [8086:9d20] (rev 21)
>>  Subsystem: Gigabyte Technology Co., Ltd Device [1458:1000]
>>  Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
>>  Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
>>  Latency: 0
>>  Region 0: Memory at 7d000000 (64-bit, non-prefetchable) [size=16M]
>> ps. I misstyped device address in my original post, it is supposed to be function 1 not 2: d31:f1.
> gpio-pch depends on X86_32 || MIPS || COMPILE_TEST
> config GPIO_PCH
>  tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7223/ML7831) GPIO"
>  depends on X86_32 || MIPS || COMPILE_TEST
> the platform at hand, is not X86_32 nor MIPS. It means gpi-pch requires CONFIG_COMPILE_TEST (to compile drivers which wont load....). Sure enough, even when driver enumerates, it fails to map BAR:
> [ 105.965846] pci 0000:00:1f.1: [8086:9d20] type 00 class 0x058000
> [ 105.965928] pci 0000:00:1f.1: reg 0x10: [mem 0xfd000000-0xfdffffff 64bit]
> [ 105.967084] pci 0000:00:1f.1: BAR 0: assigned [mem 0x7d000000-0x7dffffff 64bit]
> [ 105.978037] pch_gpio 0000:00:1f.1: pch_gpio_probe : pci_iomap FAILED
> [ 105.978194] pch_gpio 0000:00:1f.1: pch_gpio_probe Failed returns -12
> [ 105.978317] pch_gpio: probe of 0000:00:1f.1 failed with error -12

This seems to be from an older kernel, but anyway:  pch_gpio_probe()
attempts to map BAR 1. Your device does not have any such resource.  So
it fails.

> Any suggestions on what driver (if any available) should be used instead?

I wouldn't know.  But I believe your device looks too different to be
compatible with whatever devices this driver was made for.


More information about the Kernelnewbies mailing list