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

Commit b269b170 authored by Russell King's avatar Russell King
Browse files

ARM: cleanup: soc_device_register() error checking



soc_device_register() never returns NULL, it only ever returns an
error pointer or a valid pointer.  Use the right function (IS_ERR())
to check this.

soc_device_to_device() only ever returns &soc_dev->dev, and so can
never return an error or NULL if the pointer passed into it was
valid, so there's no point checking its return.

Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent f6604efe
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -540,15 +540,13 @@ static void __init ap_init_of(void)
					   'A' + (ap_sc_id & 0x0f));

	soc_dev = soc_device_register(soc_dev_attr);
	if (IS_ERR_OR_NULL(soc_dev)) {
	if (IS_ERR(soc_dev)) {
		kfree(soc_dev_attr->revision);
		kfree(soc_dev_attr);
		return;
	}

	parent = soc_device_to_device(soc_dev);

	if (!IS_ERR_OR_NULL(parent))
	integrator_init_sysfs(parent, ap_sc_id);

	of_platform_populate(root, of_default_bus_match_table,
+2 −5
Original line number Diff line number Diff line
@@ -364,17 +364,14 @@ static void __init intcp_init_of(void)
					   'A' + (intcp_sc_id & 0x0f));

	soc_dev = soc_device_register(soc_dev_attr);
	if (IS_ERR_OR_NULL(soc_dev)) {
	if (IS_ERR(soc_dev)) {
		kfree(soc_dev_attr->revision);
		kfree(soc_dev_attr);
		return;
	}

	parent = soc_device_to_device(soc_dev);

	if (!IS_ERR_OR_NULL(parent))
	integrator_init_sysfs(parent, intcp_sc_id);

	of_platform_populate(root, of_default_bus_match_table,
			intcp_auxdata_lookup, parent);
}
+2 −3
Original line number Diff line number Diff line
@@ -145,13 +145,12 @@ struct device * __init ux500_soc_device_init(const char *soc_id)
	soc_info_populate(soc_dev_attr, soc_id);

	soc_dev = soc_device_register(soc_dev_attr);
	if (IS_ERR_OR_NULL(soc_dev)) {
	if (IS_ERR(soc_dev)) {
	        kfree(soc_dev_attr);
		return NULL;
	}

	parent = soc_device_to_device(soc_dev);
	if (!IS_ERR_OR_NULL(parent))
	device_create_file(parent, &ux500_soc_attr);

	return parent;