Re: [PATCH v3 2/3] PCI: hisi: Use devm_ghes_register_vendor_record_notifier()
From: Manivannan Sadhasivam
Date: Tue Mar 31 2026 - 01:38:10 EST
On Mon, Mar 30, 2026 at 05:41:56PM +0800, Kai-Heng Feng wrote:
> 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 <shiju.jose@xxxxxxxxxx>
> Cc: Jonathan Cameron <jonathan.cameron@xxxxxxxxxx>
> Signed-off-by: Kai-Heng Feng <kaihengf@xxxxxxxxxx>
Acked-by: Manivannan Sadhasivam <mani@xxxxxxxxxx>
Since there is an API dependency, feel free to take it through ACPI tree.
- Mani
> ---
> 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)
>
--
மணிவண்ணன் சதாசிவம்