All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] save/restore PCI configuration space in pciback.
@ 2009-04-22  2:11 Yuji Shimada
  2009-04-22  2:18 ` [PATCH 1/3] " Yuji Shimada
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Yuji Shimada @ 2009-04-22  2:11 UTC (permalink / raw)
  To: Keir Fraser, Ian Jackson, Kouya Shimura, xen-devel

This series of patches enables saving/restoring PCI configuration
space in pciback.

Xend saves/restores PCI configuration space on current Xen. But it's
not better place to save/restore. Because devices should be configured
by device driver.
And Shimura-san's D-state problem will be resolved with this patch.
Because I modify the timing of saving/restoring configuration space
like below.

  When pciback is bound to devices.
   - Pciback saves configuration space.

  When pciback is unbound to devices.
   - Pciback restores configuration space.

  When guest OS boots or a device is hotadded.
   - Pciback restores configuration space.
   - Pciback changes state of backend device to Initialised/Reconfigured.
   - Xend waits for the transition to Initialised/Reconfigured.

  When guest OS shutdowns or a device is hotremoved.
   - Pciback restores configuration space.
   - Xend resets devices.
     * If D-state of the device is not D0, the state is changed to D0
       before resetting the device.
   - Xend deassigns devices.

  * Essentially, devices should be reset before configuration space is
    restored. But it needs big modifications. Applying these patches,
    configuration space is restored when guest OS boots, a device is
    hotadded or pciback is unbound. So it has no matter.

The following registers are saved/restored by pciback.

  Configuration Space
   - Base Address Register set
   - Cache-line size Register
   - Latency timer Register
   - Enable SERR Bit / Enable PERR Bit in Control Register
   - Device Control Register (PCI Express Capability)
   - Link Control Register (PCI Express Capability)
   - Device Control 2 Register (PCI Express Capability)
   - Link Control 2 Register (PCI Express Capability)

  AER
   - Uncorrectable Error Mask Register
   - Uncorrectable Error Severity Register
   - Correctable Error Mask Register
   - Advanced Error Capabilities and Control Register

Thanks,
--
Yuji Shimada

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

end of thread, other threads:[~2009-04-28  6:02 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-22  2:11 [PATCH 0/3] save/restore PCI configuration space in pciback Yuji Shimada
2009-04-22  2:18 ` [PATCH 1/3] " Yuji Shimada
2009-04-22  2:20 ` [PATCH 2/3] remove saving/restoring method in Xend Yuji Shimada
2009-04-22  2:50   ` Masaki Kanno
2009-04-22  8:18     ` [PATCH 2/3 v2] " Yuji Shimada
2009-04-22 10:38   ` [PATCH 2/3] " Ian Pratt
2009-04-23  2:57     ` Yuji Shimada
2009-04-23  7:22       ` Keir Fraser
2009-04-23  8:27         ` Yuji Shimada
2009-04-23  9:01           ` Keir Fraser
2009-04-24  8:38             ` Yuji Shimada
2009-04-24  8:40             ` [PATCH 0/2] modify the order of resetting/deassigning device Yuji Shimada
2009-04-24  8:43               ` [PATCH 1/2] " Yuji Shimada
2009-04-24  8:43               ` [PATCH 2/2] ioemu: don't call xc_deassign_device() Yuji Shimada
2009-04-28  6:02                 ` Yuji Shimada
2009-04-22  2:20 ` [PATCH 3/3] ioemu: remove power state transition and xc_deassign_device() Yuji Shimada

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.