1. 04 1月, 2018 2 次提交
  2. 01 1月, 2018 1 次提交
  3. 16 12月, 2017 1 次提交
  4. 14 12月, 2017 1 次提交
  5. 12 12月, 2017 1 次提交
  6. 07 12月, 2017 1 次提交
  7. 05 12月, 2017 2 次提交
  8. 03 12月, 2017 1 次提交
  9. 30 11月, 2017 1 次提交
  10. 29 11月, 2017 2 次提交
  11. 27 11月, 2017 1 次提交
  12. 21 11月, 2017 1 次提交
  13. 19 11月, 2017 3 次提交
  14. 17 11月, 2017 1 次提交
  15. 16 11月, 2017 1 次提交
  16. 14 11月, 2017 1 次提交
  17. 11 11月, 2017 1 次提交
  18. 10 11月, 2017 1 次提交
  19. 09 11月, 2017 1 次提交
  20. 08 11月, 2017 4 次提交
  21. 07 11月, 2017 2 次提交
  22. 06 11月, 2017 3 次提交
  23. 05 11月, 2017 3 次提交
  24. 04 11月, 2017 4 次提交
    • M
      tools/wmi: add a sample for dell smbios communication over WMI · 9d64fc08
      Mario Limonciello 提交于
      This application uses the character device /dev/wmi/dell-smbios
      to perform SMBIOS communications from userspace.
      
      It offers demonstrations of a few simple tasks:
       - Running a class/select command
       - Querying a token value
       - Activating a token
      Signed-off-by: NMario Limonciello <mario.limonciello@dell.com>
      Reviewed-by: NEdward O'Callaghan <quasisec@google.com>
      Signed-off-by: NDarren Hart (VMware) <dvhart@infradead.org>
      9d64fc08
    • M
      platform/x86: wmi: create userspace interface for drivers · 44b6b766
      Mario Limonciello 提交于
      For WMI operations that are only Set or Query readable and writable sysfs
      attributes created by WMI vendor drivers or the bus driver makes sense.
      
      For other WMI operations that are run on Method, there needs to be a
      way to guarantee to userspace that the results from the method call
      belong to the data request to the method call.  Sysfs attributes don't
      work well in this scenario because two userspace processes may be
      competing at reading/writing an attribute and step on each other's
      data.
      
      When a WMI vendor driver declares a callback method in the wmi_driver
      the WMI bus driver will create a character device that maps to that
      function.  This callback method will be responsible for filtering
      invalid requests and performing the actual call.
      
      That character device will correspond to this path:
      /dev/wmi/$driver
      
      Performing read() on this character device will provide the size
      of the buffer that the character device needs to perform calls.
      This buffer size can be set by vendor drivers through a new symbol
      or when MOF parsing is available by the MOF.
      
      Performing ioctl() on this character device will be interpretd
      by the WMI bus driver. It will perform sanity tests for size of
      data, test them for a valid instance, copy the data from userspace
      and pass iton to the vendor driver to further process and run.
      
      This creates an implicit policy that each driver will only be allowed
      a single character device.  If a module matches multiple GUID's,
      the wmi_devices will need to be all handled by the same wmi_driver.
      
      The WMI vendor drivers will be responsible for managing inappropriate
      access to this character device and proper locking on data used by
      it.
      
      When a WMI vendor driver is unloaded the WMI bus driver will clean
      up the character device and any memory allocated for the call.
      Signed-off-by: NMario Limonciello <mario.limonciello@dell.com>
      Reviewed-by: NEdward O'Callaghan <quasisec@google.com>
      Signed-off-by: NDarren Hart (VMware) <dvhart@infradead.org>
      44b6b766
    • M
      platform/x86: dell-smbios-wmi: Add new WMI dispatcher driver · 1a258e67
      Mario Limonciello 提交于
      The dell-smbios stack only currently uses an SMI interface which grants
      direct access to physical memory to the firmware SMM methods via a pointer.
      
      This dispatcher driver adds a WMI-ACPI interface that is detected by WMI
      probe and preferred over the SMI interface in dell-smbios.
      
      Changing this to operate over WMI-ACPI will use an ACPI OperationRegion
      for a buffer of data storage when SMM calls are performed.
      
      This is a safer approach to use in kernel drivers as the SMM will
      only have access to that OperationRegion.
      Signed-off-by: NMario Limonciello <mario.limonciello@dell.com>
      Reviewed-by: NEdward O'Callaghan <quasisec@google.com>
      Signed-off-by: NDarren Hart (VMware) <dvhart@infradead.org>
      1a258e67
    • M
      platform/x86: dell-smbios: Introduce dispatcher for SMM calls · 549b4930
      Mario Limonciello 提交于
      This splits up the dell-smbios driver into two drivers:
      * dell-smbios
      * dell-smbios-smm
      
      dell-smbios can operate with multiple different dispatcher drivers to
      perform SMBIOS operations.
      
      Also modify the interface that dell-laptop and dell-wmi use align to this
      model more closely.  Rather than a single global buffer being allocated
      for all drivers, each driver will allocate and be responsible for it's own
      buffer. The pointer will be passed to the calling function and each
      dispatcher driver will then internally copy it to the proper location to
      perform it's call.
      
      Add defines for calls used by these methods in the dell-smbios.h header
      for tracking purposes.
      Signed-off-by: NMario Limonciello <mario.limonciello@dell.com>
      Reviewed-by: NEdward O'Callaghan <quasisec@google.com>
      Signed-off-by: NDarren Hart (VMware) <dvhart@infradead.org>
      549b4930