Commit 1316e0af authored by Vadim Pasternak's avatar Vadim Pasternak Committed by Hans de Goede
Browse files

platform: mellanox: mlx-platform: Introduce ACPI init flow



Introduce support for ACPI initialization flow - add ACPI match hook.

Signed-off-by: default avatarVadim Pasternak <vadimp@nvidia.com>
Reviewed-by: default avatarMichael Shych <michaelsh@nvidia.com>
Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Reviewed-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://lore.kernel.org/r/20230822113451.13785-12-vadimp@nvidia.com


Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
parent 22295449
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -965,6 +965,7 @@ config SERIAL_MULTI_INSTANTIATE

config MLX_PLATFORM
	tristate "Mellanox Technologies platform support"
	depends on ACPI
	depends on I2C
	select REGMAP
	help
+12 −0
Original line number Diff line number Diff line
@@ -6396,9 +6396,14 @@ static int mlxplat_probe(struct platform_device *pdev)
{
	unsigned int hotplug_resources_size = 0;
	struct resource *hotplug_resources = NULL;
	struct acpi_device *acpi_dev;
	struct mlxplat_priv *priv;
	int i, err;

	acpi_dev = ACPI_COMPANION(&pdev->dev);
	if (acpi_dev)
		mlxplat_dev = pdev;

	err = mlxplat_pre_init(&hotplug_resources, &hotplug_resources_size);
	if (err)
		return err;
@@ -6476,9 +6481,16 @@ static int mlxplat_remove(struct platform_device *pdev)
	return 0;
}

static const struct acpi_device_id mlxplat_acpi_table[] = {
	{ "MLNXBF49", 0 },
	{}
};
MODULE_DEVICE_TABLE(acpi, mlxplat_acpi_table);

static struct platform_driver mlxplat_driver = {
	.driver		= {
		.name	= "mlxplat",
		.acpi_match_table = mlxplat_acpi_table,
		.probe_type = PROBE_FORCE_SYNCHRONOUS,
	},
	.probe		= mlxplat_probe,