Skip to content
This repository has been archived by the owner on Jul 16, 2024. It is now read-only.

Commit

Permalink
BACKPORT: perf: arm_spe: Enable ACPI/Platform automatic module loading
Browse files Browse the repository at this point in the history
Lets add the MODULE_TABLE and platform id_table entries so that
the SPE driver can attach to the ACPI platform device created by
the core pmu code.

This patch is part of the eMAG2 ARM SPE PMU patch set.
This patch is backported from:
https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/commit/?h=for-next/perf&id=d482e575fbf0f7ec9319bded951f21bbc84312bf

Tested-by: Hanjun Guo <[email protected]>
Reviewed-by: Sudeep Holla <[email protected]>
Signed-off-by: Jeremy Linton <[email protected]>
Signed-off-by: Will Deacon <[email protected]>
Signed-off-by: Khuong Dinh <[email protected]>
  • Loading branch information
jlintonarm authored and tphan-ampere committed Apr 21, 2020
1 parent fb577aa commit 068ff4a
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions drivers/perf/arm_spe_pmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
#include <linux/of_address.h>
#include <linux/of_device.h>
#include <linux/perf_event.h>
#include <linux/perf/arm_pmu.h>
#include <linux/platform_device.h>
#include <linux/printk.h>
#include <linux/slab.h>
Expand Down Expand Up @@ -1170,7 +1171,13 @@ static const struct of_device_id arm_spe_pmu_of_match[] = {
{ /* Sentinel */ },
};

static int arm_spe_pmu_device_dt_probe(struct platform_device *pdev)
static const struct platform_device_id arm_spe_match[] = {
{ ARMV8_SPE_PDEV_NAME, 0},
{ }
};
MODULE_DEVICE_TABLE(platform, arm_spe_match);

static int arm_spe_pmu_device_probe(struct platform_device *pdev)
{
int ret;
struct arm_spe_pmu *spe_pmu;
Expand Down Expand Up @@ -1230,11 +1237,12 @@ static int arm_spe_pmu_device_remove(struct platform_device *pdev)
}

static struct platform_driver arm_spe_pmu_driver = {
.id_table = arm_spe_match,
.driver = {
.name = DRVNAME,
.of_match_table = of_match_ptr(arm_spe_pmu_of_match),
},
.probe = arm_spe_pmu_device_dt_probe,
.probe = arm_spe_pmu_device_probe,
.remove = arm_spe_pmu_device_remove,
};

Expand Down

0 comments on commit 068ff4a

Please sign in to comment.