The device does have SPISerialbus() in _CRS. Looks like this guy is having the same issue. https://www.mail-archive.com/linux-yocto@xxxxxxxxxxxxxxxx/msg04044.html "Slave devices were not enumerated by ACPI data because the ACPI handle for the spi-pxa2xx controller was NULL if it was itself enumerated by PCI. Upstream-status: Inappropriate, real fix forthcoming" I'm going to try out his patch and see what happens.. On Tue, Feb 23, 2016 at 8:38 AM, Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> wrote: > On Tue, Feb 23, 2016 at 02:54:45AM +0100, Leif Liddy wrote: >> I'm new to kernel development, and there's few fairly large gaps in my >> understanding about >> how drivers are meant to work, but hopefully you guys can point me in >> the right direction. >> >> The macbook8,1 (early 2015) has a keyboard/trackpad that is seen by >> ACPI as a single SPI slave device. >> It appears the only method to access the keyboard/trackpad is via >> the SPI bus --my goal is the get keyboard/trackpad working. >> >> I've recently submitted a kernel patch that binds the spi-pxa2xx-pci >> driver to the Wildcat Point-LP Serial IO GSPI Controller. With this >> patch, the SPI controller appears to be working... >> http://www.spinics.net/lists/linux-spi/msg06867.html >> >> ----------LSHW INFO------------ >> *-serial:1 >> description: Serial bus controller >> product: Wildcat Point-LP Serial IO GSPI Controller #1 >> vendor: Intel Corporation >> physical id: 15.4 >> bus info: pci@0000:00:15.4 >> version: 03 >> width: 32 bits >> clock: 33MHz >> capabilities: pm cap_list >> configuration: driver=pxa2xx_spi_pci latency=0 >> resources: irq:21 memory:c181a000-c181afff >> >> >> What I'm having trouble with is sorting out how to register the SPI >> slave device with the SPI controller. >> **no slave devices are found when I modprobe the driver. >> I'm not sure if this is something that should be done by the spi >> driver (by calling an acpi function), or whether I must manually do >> it. >> >> –------------UDEV INFO--------------- >> >> P: /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C1:00/APP000D:00 >> E: DEVPATH=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/INT33C1:00/APP000D:00 >> E: ID_VENDOR_FROM_DATABASE=Apple Computer Inc >> E: MODALIAS=acpi:APP000D:APPLE-SPI-TOPCASE: >> E: SUBSYSTEM=acpi >> E: USEC_INITIALIZED=13574842 >> >> **INT33C1 is the SPI master controller >> **APP000D is the slave device > > If the device has ACPI SpiSerialBus() resource in _CRS it should be > enumerated automatically by the Linux SPI core. See > Documentation/acpi/enumeration.txt. > > You should also see the device listed under /sys/bus/spi/devices. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html