Message ID | 20210210134945.2699170-1-mperttunen@nvidia.com |
---|---|
State | Rejected |
Headers | show |
Series | mailbox: tegra-hsp: Set lockdep class dynamically | expand |
On Wed, Feb 10, 2021 at 03:49:45PM +0200, Mikko Perttunen wrote: > On Tegra194, due to both BPMP and TCU using mailboxes, we get a > lockdep spew at boot. Both are using different instances of HSP, > so this is harmless. As such give each HSP instance a different > lockdep class. > > Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> > --- > drivers/mailbox/tegra-hsp.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) Acked-by: Thierry Reding <treding@nvidia.com>
diff --git a/drivers/mailbox/tegra-hsp.c b/drivers/mailbox/tegra-hsp.c index e07091d71986..acd0675da681 100644 --- a/drivers/mailbox/tegra-hsp.c +++ b/drivers/mailbox/tegra-hsp.c @@ -98,7 +98,9 @@ struct tegra_hsp { unsigned int num_ss; unsigned int num_db; unsigned int num_si; + spinlock_t lock; + struct lock_class_key lock_key; struct list_head doorbells; struct tegra_hsp_mailbox *mailboxes; @@ -775,6 +777,18 @@ static int tegra_hsp_probe(struct platform_device *pdev) return err; } + lockdep_register_key(&hsp->lock_key); + lockdep_set_class(&hsp->lock, &hsp->lock_key); + + return 0; +} + +static int tegra_hsp_remove(struct platform_device *pdev) +{ + struct tegra_hsp *hsp = platform_get_drvdata(pdev); + + lockdep_unregister_key(&hsp->lock_key); + return 0; } @@ -834,6 +848,7 @@ static struct platform_driver tegra_hsp_driver = { .pm = &tegra_hsp_pm_ops, }, .probe = tegra_hsp_probe, + .remove = tegra_hsp_remove, }; static int __init tegra_hsp_init(void)
On Tegra194, due to both BPMP and TCU using mailboxes, we get a lockdep spew at boot. Both are using different instances of HSP, so this is harmless. As such give each HSP instance a different lockdep class. Signed-off-by: Mikko Perttunen <mperttunen@nvidia.com> --- drivers/mailbox/tegra-hsp.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)