pci/shpc: refactor shpc_device_plug_common()
Rename it to shpc_device_get_slot(), to mention what it does rather than how it is used. It also helps to reuse it in further commit. Also, add a return value and get rid of local_err. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> Reviewed-by: Anton Kuchin <antonkuchin@yandex-team.ru> Message-Id: <20230216180356.156832-7-vsementsov@yandex-team.ru> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
0adc05f480
commit
05d8a107db
@ -496,8 +496,9 @@ static const MemoryRegionOps shpc_mmio_ops = {
|
|||||||
.max_access_size = 4,
|
.max_access_size = 4,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
static void shpc_device_plug_common(PCIDevice *affected_dev, int *slot,
|
|
||||||
SHPCDevice *shpc, Error **errp)
|
static bool shpc_device_get_slot(PCIDevice *affected_dev, int *slot,
|
||||||
|
SHPCDevice *shpc, Error **errp)
|
||||||
{
|
{
|
||||||
int pci_slot = PCI_SLOT(affected_dev->devfn);
|
int pci_slot = PCI_SLOT(affected_dev->devfn);
|
||||||
*slot = SHPC_PCI_TO_IDX(pci_slot);
|
*slot = SHPC_PCI_TO_IDX(pci_slot);
|
||||||
@ -507,21 +508,20 @@ static void shpc_device_plug_common(PCIDevice *affected_dev, int *slot,
|
|||||||
"controller. Valid slots are between %d and %d.",
|
"controller. Valid slots are between %d and %d.",
|
||||||
pci_slot, SHPC_IDX_TO_PCI(0),
|
pci_slot, SHPC_IDX_TO_PCI(0),
|
||||||
SHPC_IDX_TO_PCI(shpc->nslots) - 1);
|
SHPC_IDX_TO_PCI(shpc->nslots) - 1);
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void shpc_device_plug_cb(HotplugHandler *hotplug_dev, DeviceState *dev,
|
void shpc_device_plug_cb(HotplugHandler *hotplug_dev, DeviceState *dev,
|
||||||
Error **errp)
|
Error **errp)
|
||||||
{
|
{
|
||||||
Error *local_err = NULL;
|
|
||||||
PCIDevice *pci_hotplug_dev = PCI_DEVICE(hotplug_dev);
|
PCIDevice *pci_hotplug_dev = PCI_DEVICE(hotplug_dev);
|
||||||
SHPCDevice *shpc = pci_hotplug_dev->shpc;
|
SHPCDevice *shpc = pci_hotplug_dev->shpc;
|
||||||
int slot;
|
int slot;
|
||||||
|
|
||||||
shpc_device_plug_common(PCI_DEVICE(dev), &slot, shpc, &local_err);
|
if (!shpc_device_get_slot(PCI_DEVICE(dev), &slot, shpc, errp)) {
|
||||||
if (local_err) {
|
|
||||||
error_propagate(errp, local_err);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -563,16 +563,13 @@ void shpc_device_unplug_cb(HotplugHandler *hotplug_dev, DeviceState *dev,
|
|||||||
void shpc_device_unplug_request_cb(HotplugHandler *hotplug_dev,
|
void shpc_device_unplug_request_cb(HotplugHandler *hotplug_dev,
|
||||||
DeviceState *dev, Error **errp)
|
DeviceState *dev, Error **errp)
|
||||||
{
|
{
|
||||||
Error *local_err = NULL;
|
|
||||||
PCIDevice *pci_hotplug_dev = PCI_DEVICE(hotplug_dev);
|
PCIDevice *pci_hotplug_dev = PCI_DEVICE(hotplug_dev);
|
||||||
SHPCDevice *shpc = pci_hotplug_dev->shpc;
|
SHPCDevice *shpc = pci_hotplug_dev->shpc;
|
||||||
uint8_t state;
|
uint8_t state;
|
||||||
uint8_t led;
|
uint8_t led;
|
||||||
int slot;
|
int slot;
|
||||||
|
|
||||||
shpc_device_plug_common(PCI_DEVICE(dev), &slot, shpc, &local_err);
|
if (!shpc_device_get_slot(PCI_DEVICE(dev), &slot, shpc, errp)) {
|
||||||
if (local_err) {
|
|
||||||
error_propagate(errp, local_err);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user