pnp_add_device() may fail so we need to handle errors and avoid leaking
memory.
Also, when pnp_alloc_dev fails, return -ENOMEM rather than -1.
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>