On Wed, Oct 20, 2021 at 12:14 PM Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote: > > On Wed, Oct 20, 2021 at 11:44:50AM +1000, Alistair Francis wrote: > > On Wed, Oct 20, 2021 at 11:05 AM Dmitry Torokhov > > <dmitry.torokhov@xxxxxxxxx> wrote: > > > > > > On Wed, Oct 20, 2021 at 09:33:13AM +1000, Alistair Francis wrote: > > > > On Tue, Oct 19, 2021 at 11:51 AM Dmitry Torokhov > > > > <dmitry.torokhov@xxxxxxxxx> wrote: > > > > > > > > > > We already have touchscreen-inverted-x/y defined in > > > > > Documentation/devicetree/bindings/input/touchscreen/touchscreen.yaml, > > > > > why are they not sufficient? > > > > > > > > The touchscreen-* properties aren't applied to HID devices though, at > > > > least not that I can tell. > > > > > > No, they are not currently, but that does not mean we need to establish > > > a new set of properties (property names) for HID case. > > > > I can update the names to use the existing touchscreen ones. > > > > Do you have a hint of where this should be implemented though? > > > > Right now (without "HID: wacom: Add support for the AG14 Wacom > > device") the wacom touchscreen is just registered as a generic HID > > device. I don't see any good place in hid-core, hid-input or > > hid-generic to invert the input values for this. > > I think the transformation should happen in > hid-multitouch.c::mt_process_slot() using helpers from > include/linux/input/touchscreen.h Thanks for the help! I have managed to get the device to be a hid-multitouch (instead of hid-generic). I also think I have figured out a way to get the properties to hid-multitouch from the i2c-hid device. It requires a change to touchscreen.c, but it's not a big change. The main problem now is that hid-multitouch.c::mt_process_slot() isn't actually called. The code just calls input_sync() from hid-multitouch.c::mt_report(). It doesn't get to mt_process_slot() due to rdata->is_mt_collection not being true. Setting rdata->is_mt_collection to true causes userspace not to see the wacom input any more. Alistair > > I think the more challenging question is to how pass/attach struct > touchscreen_properties * to the hid device (i expect the properties will > be attached to i2c-hid device, but maybe we could create a sub-node of > it and attach properties there. > > Thanks. > > -- > Dmitry