[prev in list] [next in list] [prev in thread] [next in thread] 

List:       netbsd-port-amd64
Subject:    PCI and ACPI
From:       Manuel Bouyer <bouyer () antioche ! eu ! org>
Date:       2017-11-17 16:24:01
Message-ID: 20171117162401.GA11593 () mail ! soc ! lip6 ! fr
[Download RAW message or body]

Hello,
I have a laptop with a i2c HID touchpad (this is the HID over I2C protocol).
I plan to port the ihid and associated drivers from OpenBSD for this, it
shouldn't be difficult.

The controller side is more difficult for me. If is integrated to the Gen 7
core I5 CPU. AFAIK OpenBSD nor FreeBSD have a driver for it, but they support
a previous version which should be close enough. OpenBSD has the dwiic.c
driver for this, which is an ACPI attachement.

In linux, for this device  this is intel-lpss.c, which can handle I2C, UART
or SPI functions. It can attach either as ACPI or PCI device, and in
my case it attaches as a pci device on vendor/device ID match
(there's no match on the APCI HID or CID).

Either the PCI or APCI front-end needs to parse the ACPI to get i2c-related
informations (the type of i2c device attached, its address and interrupt
line - this is not the same as the interrupt of the PCI function).
As I'm not familiar with ACPI I don't know how to find the device in the
ACPI table from a pci attachement, and from there extract the informations
I need about the i2c device.

Can anyone help me with this, or point me to information ?

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic