linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V9 0/9] vfio, platform: add ACPI support
@ 2016-07-14  2:06 Sinan Kaya
  2016-07-14  2:06 ` [PATCH V9 1/9] vfio: platform: rename reset function Sinan Kaya
                   ` (8 more replies)
  0 siblings, 9 replies; 18+ messages in thread
From: Sinan Kaya @ 2016-07-14  2:06 UTC (permalink / raw)
  To: linux-arm-kernel

The current code only supports the device tree based platforms.
The code checks for the presence of a reset driver and calls the reset
function pointer by looking up the reset driver as a module.

ACPI defines _RST method to perform device level reset. After the _RST
method is executed, the OS can resume using the device.

The patchset is moving the device tree specific pieces out of the code
to common functions so that ACPI support is added without impacting the
rest
of the code.

During probe, the ACPI HID of the object will be saved and will be used to
determine if this is an ACPI capable platform or not. If acpihid is NULL
then, device tree functions are called.

In addition to plumbing ACPI support, reset functionality is now a
requirement by default.

The code was allowing platform devices to be used without a supporting
VFIO reset driver. The hardware can be left in some inconsistent state
after a guest machine abort.

The reset driver will put the hardware back to safe state and disable
interrupts before returning the control back to the host machine.

Adding a new reset_required kernel module option to platform
VFIO drivers with a default value of true.

New requirements are:
1. A reset function needs to be implemented by the corresponding driver
via DT/ACPI.
2. The reset function needs to be discovered via DT/ACPI.

The probe of the driver will fail if any of the above conditions are
not satisfied.

Changes from V8:
1. Return different error codes for the ACPI probe failures.
2. Document the CONFIG_ACPI and when/why error messages are printed along
with assumptions.
3. Reorder the reset call in vfio_platform_call_reset for consistency.
4. Introduce VFIO_PLATFORM_IS_ACPI to make the code more readable
5. Get rid of the ACPI stub functions and inline the CONFIG_ACPI for code
sharing.
6. Remove the reset_required kernel option from AMBA.
7. Change the permission to 444 for the reset_required kernel command line
parameter.

Sinan Kaya (9):
  vfio: platform: rename reset function
  vfio: platform: move reset call to a common function
  vfio: platform: determine reset capability
  vfio: platform: add support for ACPI probe
  vfio: platform: add extra debug info argument to call reset
  vfio: platform: call _RST method when using ACPI
  vfio, platform: make reset driver a requirement by default
  vfio: platform: check reset call return code during open
  vfio: platform: check reset call return code during release

 drivers/vfio/platform/vfio_amba.c             |   1 +
 drivers/vfio/platform/vfio_platform.c         |   5 +
 drivers/vfio/platform/vfio_platform_common.c  | 200 ++++++++++++++++++++++----
 drivers/vfio/platform/vfio_platform_private.h |   8 +-
 4 files changed, 180 insertions(+), 34 deletions(-)

-- 
1.8.2.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2016-07-18 21:23 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-14  2:06 [PATCH V9 0/9] vfio, platform: add ACPI support Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 1/9] vfio: platform: rename reset function Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 2/9] vfio: platform: move reset call to a common function Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 3/9] vfio: platform: determine reset capability Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 4/9] vfio: platform: add support for ACPI probe Sinan Kaya
2016-07-14 21:41   ` Alex Williamson
2016-07-16  1:27     ` Sinan Kaya
2016-07-18 17:32       ` Alex Williamson
2016-07-18 21:23         ` Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 5/9] vfio: platform: add extra debug info argument to call reset Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 6/9] vfio: platform: call _RST method when using ACPI Sinan Kaya
2016-07-14 22:04   ` Alex Williamson
2016-07-16  1:09     ` Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 7/9] vfio, platform: make reset driver a requirement by default Sinan Kaya
2016-07-14 22:24   ` Alex Williamson
2016-07-16  1:07     ` Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 8/9] vfio: platform: check reset call return code during open Sinan Kaya
2016-07-14  2:06 ` [PATCH V9 9/9] vfio: platform: check reset call return code during release Sinan Kaya

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).