Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 79baf4a6 authored by Christian Krafft's avatar Christian Krafft Committed by Arnd Bergmann
Browse files

[POWERPC] add check for initialized driver data to pmi driver



This patch adds a check for the private driver data to be initialized.
The bug showed up, as the caller found a pmi device by it's type.
Whereas the pmi driver probes for the type and the name.
Since the name was not as the driver expected, it did not initialize.
A more relaxed probing will be supplied with an extra patch, too.

Signed-off-by: default avatarChristian Krafft <krafft@de.ibm.com>
Signed-off-by: default avatarArnd Bergmann <arnd.bergmann@de.ibm.com>
parent 5050063c
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -279,6 +279,9 @@ void pmi_register_handler(struct of_device *device,
	struct pmi_data *data;
	data = device->dev.driver_data;

	if (!data)
		return;

	spin_lock(&data->handler_spinlock);
	list_add_tail(&handler->node, &data->handler);
	spin_unlock(&data->handler_spinlock);
@@ -289,10 +292,12 @@ void pmi_unregister_handler(struct of_device *device,
			    struct pmi_handler *handler)
{
	struct pmi_data *data;
	data = device->dev.driver_data;

	pr_debug("pmi: unregistering handler %p\n", handler);
	if (!data)
		return;

	data = device->dev.driver_data;
	pr_debug("pmi: unregistering handler %p\n", handler);

	spin_lock(&data->handler_spinlock);
	list_del(&handler->node);