#include #include #include #include #include #include int xen_event_channel_op_compat(int cmd, void *arg) { struct evtchn_op op; int rc; op.cmd = cmd; memcpy(&op.u, arg, sizeof(op.u)); rc = _hypercall1(int, event_channel_op_compat, &op); switch (cmd) { case EVTCHNOP_close: case EVTCHNOP_send: case EVTCHNOP_bind_vcpu: case EVTCHNOP_unmask: /* no output */ break; #define COPY_BACK(eop) \ case EVTCHNOP_##eop: \ memcpy(arg, &op.u.eop, sizeof(op.u.eop)); \ break COPY_BACK(bind_interdomain); COPY_BACK(bind_virq); COPY_BACK(bind_pirq); COPY_BACK(status); COPY_BACK(alloc_unbound); COPY_BACK(bind_ipi); #undef COPY_BACK default: WARN_ON(rc != -ENOSYS); break; } return rc; } EXPORT_SYMBOL_GPL(xen_event_channel_op_compat); int xen_physdev_op_compat(int cmd, void *arg) { struct physdev_op op; int rc; op.cmd = cmd; memcpy(&op.u, arg, sizeof(op.u)); rc = _hypercall1(int, physdev_op_compat, &op); switch (cmd) { case PHYSDEVOP_IRQ_UNMASK_NOTIFY: case PHYSDEVOP_set_iopl: case PHYSDEVOP_set_iobitmap: case PHYSDEVOP_apic_write: /* no output */ break; #define COPY_BACK(pop, fld) \ case PHYSDEVOP_##pop: \ memcpy(arg, &op.u.fld, sizeof(op.u.fld)); \ break COPY_BACK(irq_status_query, irq_status_query); COPY_BACK(apic_read, apic_op); COPY_BACK(ASSIGN_VECTOR, irq_op); #undef COPY_BACK default: WARN_ON(rc != -ENOSYS); break; } return rc; } EXPORT_SYMBOL_GPL(xen_physdev_op_compat); ass='tabs'> summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZach Ploskey <zach@ploskey.com>2017-01-22 00:47:19 -0800
committerAndy Shevchenko <andriy.shevchenko@linux.intel.com>2017-01-22 12:47:06 +0200
commitcfee5d63767b2e7997c1f36420d008abbe61565c (patch)
treec66a512525d224f9675c33a8d156e0f058db1de6 /include/trace/events/context_tracking.h
parent5a00b6c2438460b870a451f14593fc40d3c7edf6 (diff)
platform/x86: ideapad-laptop: handle ACPI event 1
On Ideapad laptops, ACPI event 1 is currently not handled. Many models log "ideapad_laptop: Unknown event: 1" every 20 seconds or so while running on battery power. Some convertible laptops receive this event when switching in and out of tablet mode. This adds and additional case for event 1 in ideapad_acpi_notify to call ideapad_input_report(priv, vpc_bit), so that the event is reported to userspace and we avoid unnecessary logging. Fixes bug #107481 (https://bugzilla.kernel.org/show_bug.cgi?id=107481) Fixes bug #65751 (https://bugzilla.kernel.org/show_bug.cgi?id=65751) Signed-off-by: Zach Ploskey <zach@ploskey.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Diffstat (limited to 'include/trace/events/context_tracking.h')