>-----Original Message-----
>From: Kai-Heng Feng <[email protected]>
>Sent: 30 March 2026 10:42
>To: [email protected]
>Cc: Jonathan Cameron <[email protected]>;
>[email protected]; Guohanjun (Hanjun Guo) <[email protected]>;
>[email protected]; [email protected]; linux-
>[email protected]; [email protected]; linux-
>[email protected]; Kai-Heng Feng <[email protected]>; Shiju Jose
><[email protected]>; Lorenzo Pieralisi <[email protected]>; Krzysztof
>WilczyƄski <[email protected]>; Manivannan Sadhasivam
><[email protected]>; Rob Herring <[email protected]>; Bjorn Helgaas
><[email protected]>
>Subject: [PATCH v3 2/3] PCI: hisi: Use
>devm_ghes_register_vendor_record_notifier()
>
>Switch to the device-managed variant so the notifier is automatically
>unregistered on device removal, allowing the open-coded remove callback to
>be dropped entirely.
>
>Cc: Shiju Jose <[email protected]>
>Cc: Jonathan Cameron <[email protected]>
>Signed-off-by: Kai-Heng Feng <[email protected]>

Reviewed-by: Shiju Jose <[email protected]>
>---
>v3:
> - No change.
>v2:
> - New patch.
>
> drivers/pci/controller/pcie-hisi-error.c | 12 +-----------
> 1 file changed, 1 insertion(+), 11 deletions(-)
>
>diff --git a/drivers/pci/controller/pcie-hisi-error.c 
>b/drivers/pci/controller/pcie-
>hisi-error.c
>index aaf1ed2b6e59..36be86d827a8 100644
>--- a/drivers/pci/controller/pcie-hisi-error.c
>+++ b/drivers/pci/controller/pcie-hisi-error.c
>@@ -287,25 +287,16 @@ static int hisi_pcie_error_handler_probe(struct
>platform_device *pdev)
>
>       priv->nb.notifier_call = hisi_pcie_notify_error;
>       priv->dev = &pdev->dev;
>-      ret = ghes_register_vendor_record_notifier(&priv->nb);
>+      ret = devm_ghes_register_vendor_record_notifier(&pdev->dev,
>+&priv->nb);
>       if (ret) {
>               dev_err(&pdev->dev,
>                       "Failed to register hisi pcie controller error handler
>with apei\n");
>               return ret;
>       }
>
>-      platform_set_drvdata(pdev, priv);
>-
>       return 0;
> }
>
>-static void hisi_pcie_error_handler_remove(struct platform_device *pdev) -{
>-      struct hisi_pcie_error_private *priv = platform_get_drvdata(pdev);
>-
>-      ghes_unregister_vendor_record_notifier(&priv->nb);
>-}
>-
> static const struct acpi_device_id hisi_pcie_acpi_match[] = {
>       { "HISI0361", 0 },
>       { }
>@@ -317,7 +308,6 @@ static struct platform_driver
>hisi_pcie_error_handler_driver = {
>               .acpi_match_table = hisi_pcie_acpi_match,
>       },
>       .probe          = hisi_pcie_error_handler_probe,
>-      .remove         = hisi_pcie_error_handler_remove,
> };
> module_platform_driver(hisi_pcie_error_handler_driver);
>
>--
>2.50.1 (Apple Git-155)
>


Reply via email to