# cyapa(4) not working on Acer c720



## Mia_ (Sep 15, 2022)

If I'm not wrong the Acer c720 (Peppy) chromebook needs to use cyapa(4) & ig4(4) for touchpad support, optionally with chromebook_platform(4) for auto configuration.

However if the manpage is followed for cyapa(4) either for manual configuration or with chromebook_platform(4) the mentioned /dev/cyapa0 device file is not created. 

Does anyone know about how to propely configure cyapa(4), or is this a bug I should submit on the bugzilla?
There doesn't appear to be any debug info or logging to `dmesg` or anywhere else.

I've also tried to manually configure it in /boot/device.hints by looking at the iicbus data from `dmesg` but with no luck.


----------



## 3301 (Sep 15, 2022)

Which FreeBSD version are you using? Which commands you've issued to make it work? Have you loaded all necessary modules? Any errors in Xorg.log file? Are you sure it's a problem with a module and not X server?


----------



## Mia_ (Sep 15, 2022)

I have 

```
ig4_load="YES"
cyapa_load="YES"
chromebook_platform_load="YES"
```
in my /boot/loader.conf as the man page describes, and I know its not Xorg because moused(8) can't find /dev/cyapa0 and the manpage says it has moused(8) support.

But heres a Xorg log none the less.


----------



## Phishfry (Sep 15, 2022)

Most all touchpad devices go through xinput and libinput.
Explore what is showing:
`libinput list-devices`


----------



## Mia_ (Sep 16, 2022)

There is a system mouse loaded although it doesn't work and I have tried enabling synaptics & elantech support but neither had any effect.


----------



## 3301 (Sep 16, 2022)

One thing that comes to my mind is order of loading modules. I would remove loading these modules via /boot/loader.conf and try loading one of them by hand, using kldload (as root), maybe there is some dependency and chromebook_platform || cyapa should be loaded after some other module(s). Second thing is order for loading chromebook_platform vs cyapa, I would load chromebook first and then cyapa, not sure how order looks when set in loader.conf


----------



## Mia_ (Sep 17, 2022)

After trying to manually load the modules in looks like theres something wrong with ig4(4)

looking around it started happening after an update for it was pushed in 2019






						221777 – merge the latest changes to the ig4 module from DragonFly BSD and add Kaby Lake / Intel 100 series platform support
					






					bugs.freebsd.org
				




I'll read thru that and see if I can find something.


----------



## Mia_ (Sep 17, 2022)

Hmm looks the the bug report was closed because something else changed while the broadwell bug remained...

I'll see if I can do anything on my own.


----------



## Mia_ (Sep 17, 2022)

Looks like UEFI firmware causes the devices to be controlled by ACPI instead of PCI and ig4 fails to setup the devices over ACPI

DragonflyBSD doesn't even boot on Acer c720 UEFI so its unlikely theres a fix that can just be ported

best bet is to try to reset my firmware to stock I believe


----------



## Mia_ (Sep 17, 2022)

Yes that was the issue, UEFI boot doesn't work with ig4 unless you can manually configure it to use PCI instead of ACPI.

For future note:

The ig4(4) module fails to load on UEFI on some devices due to ACPI handling issues, this breaks cyapa(4) as the device js never actually made available for cyapa to attach to. 

Acer c720 needs to be using the legacy firmware with the original 2017 build of SeaBIOS for the touchpad to work. Adding to that the latest 2018 build of SeaBIO from mrchromebox won't boot FreeBSD at all.


----------

