Message ID | 1490881246-11036-1-git-send-email-paul.durrant@citrix.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Mar 30, 2017 at 02:40:45PM +0100, Paul Durrant wrote: > Commit 4c8153d9 "add ACPI device for Windows laptop/slate mode switch" > added code to provide an 'laptop/slate mode' ACPI device to guests. > > When present this device is used by Microsoft Windows to bind a HID > driver which controls whether the Windows desktop appearance is optimized > for laptop/desktop or slate/tablet PCs. The mechanism for switching > between modes is to open a handle to this driver and write a byte of > arbitrary data. > > This patch documents xenstore keys such that a PV agent running in a > Windows guest can advertise the capability to, and receive instruction > from, a toolstack to cause such a mode switch. > > Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Acked-by: Wei Liu <wei.liu2@citrix.com>
On Thu, 30 Mar 2017, Paul Durrant wrote: > Commit 4c8153d9 "add ACPI device for Windows laptop/slate mode switch" > added code to provide an 'laptop/slate mode' ACPI device to guests. > > When present this device is used by Microsoft Windows to bind a HID > driver which controls whether the Windows desktop appearance is optimized > for laptop/desktop or slate/tablet PCs. The mechanism for switching > between modes is to open a handle to this driver and write a byte of > arbitrary data. > > This patch documents xenstore keys such that a PV agent running in a > Windows guest can advertise the capability to, and receive instruction > from, a toolstack to cause such a mode switch. > > Signed-off-by: Paul Durrant <paul.durrant@citrix.com> > --- > Cc: Andrew Cooper <andrew.cooper3@citrix.com> > Cc: George Dunlap <George.Dunlap@eu.citrix.com> > Cc: Ian Jackson <ian.jackson@eu.citrix.com> > Cc: Jan Beulich <jbeulich@suse.com> > Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> > Cc: Stefano Stabellini <sstabellini@kernel.org> > Cc: Tim Deegan <tim@xen.org> > Cc: Wei Liu <wei.liu2@citrix.com> > --- > docs/misc/xenstore-paths.markdown | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/docs/misc/xenstore-paths.markdown b/docs/misc/xenstore-paths.markdown > index 5d89ed8..6c80a9e 100644 > --- a/docs/misc/xenstore-paths.markdown > +++ b/docs/misc/xenstore-paths.markdown > @@ -435,6 +435,21 @@ XS_RESET_WATCHES xenstore message. See > [xen/include/public/io/xs\_wire.h][XSWIRE] for the XenStore wire > protocol definition. > > +#### ~/control/laptop-slate-mode = (""|"laptop"|"slate") [w] > + > +This is the PV laptop/slate mode control node. If the toolstack has > +provisioned a guest with the ACPI laptop/slate mode device then it > +can write the desired mode here to cause the guest to switch modes if > +necessary. The guest acknowledges a request by writing the empty > +string back to the control node. > + > +#### ~/control/feature-laptop-slate-mode = (""|"0"|"1") [w] > + > +This may be initialized to "" by the toolstack and may then be set > +to 0 or 1 by a guest to indicate whether it is capable or incapable, > +respectively, of responding to a mode value written to > +~/control/laptop-slate-mode. Usually, this is done by having the guest drivers write something like: feature-laptop-slate-mode to xenstore. The lack of the feature-* means no support is available. In fact, how is this supposed to work with old guest PV drivers that don't know about ~/control/feature-laptop-slate-mode? There won't be anybody to write "0" there, right? > ### Domain Controlled Paths > > #### ~/data/* [w] > -- > 2.1.4 >
diff --git a/docs/misc/xenstore-paths.markdown b/docs/misc/xenstore-paths.markdown index 5d89ed8..6c80a9e 100644 --- a/docs/misc/xenstore-paths.markdown +++ b/docs/misc/xenstore-paths.markdown @@ -435,6 +435,21 @@ XS_RESET_WATCHES xenstore message. See [xen/include/public/io/xs\_wire.h][XSWIRE] for the XenStore wire protocol definition. +#### ~/control/laptop-slate-mode = (""|"laptop"|"slate") [w] + +This is the PV laptop/slate mode control node. If the toolstack has +provisioned a guest with the ACPI laptop/slate mode device then it +can write the desired mode here to cause the guest to switch modes if +necessary. The guest acknowledges a request by writing the empty +string back to the control node. + +#### ~/control/feature-laptop-slate-mode = (""|"0"|"1") [w] + +This may be initialized to "" by the toolstack and may then be set +to 0 or 1 by a guest to indicate whether it is capable or incapable, +respectively, of responding to a mode value written to +~/control/laptop-slate-mode. + ### Domain Controlled Paths #### ~/data/* [w]
Commit 4c8153d9 "add ACPI device for Windows laptop/slate mode switch" added code to provide an 'laptop/slate mode' ACPI device to guests. When present this device is used by Microsoft Windows to bind a HID driver which controls whether the Windows desktop appearance is optimized for laptop/desktop or slate/tablet PCs. The mechanism for switching between modes is to open a handle to this driver and write a byte of arbitrary data. This patch documents xenstore keys such that a PV agent running in a Windows guest can advertise the capability to, and receive instruction from, a toolstack to cause such a mode switch. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> --- Cc: Andrew Cooper <andrew.cooper3@citrix.com> Cc: George Dunlap <George.Dunlap@eu.citrix.com> Cc: Ian Jackson <ian.jackson@eu.citrix.com> Cc: Jan Beulich <jbeulich@suse.com> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Stefano Stabellini <sstabellini@kernel.org> Cc: Tim Deegan <tim@xen.org> Cc: Wei Liu <wei.liu2@citrix.com> --- docs/misc/xenstore-paths.markdown | 15 +++++++++++++++ 1 file changed, 15 insertions(+)