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

Commit bf8cbae4 authored by Linas Vepstas's avatar Linas Vepstas Committed by Greg Kroah-Hartman
Browse files

PCI: rpaphp: Cleanup flow of control for rpaphp_add_slot



Cleanup the flow of control for rpaphp_add_slot(), so as to
make it easier to read. The ext patch will fix a bug in this 
same code. 

Signed-off-by: default avatarLinas Vepstas <linas@austin.ibm.com>
Cc: John Rose <johnrose@austin.ibm.com>
Signed-off-by: default avatarKristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent f14e3136
Loading
Loading
Loading
Loading
+20 −20
Original line number Diff line number Diff line
@@ -299,32 +299,32 @@ int rpaphp_add_slot(struct device_node *dn)
	const int *indexes, *names, *types, *power_domains;
	char *name, *type;

	dbg("Entry %s: dn->full_name=%s\n", __FUNCTION__, dn->full_name);
	if (!dn->name || strcmp(dn->name, "pci"))
		return 0;

	/* register PCI devices */
	if (dn->name != 0 && strcmp(dn->name, "pci") == 0) {
	if (!is_php_dn(dn, &indexes, &names, &types, &power_domains))
			goto exit;
		return 0;

	dbg("Entry %s: dn->full_name=%s\n", __FUNCTION__, dn->full_name);

	/* register PCI devices */
	name = (char *) &names[1];
	type = (char *) &types[1];
		for (i = 0; i < indexes[0]; i++,
	     		name += (strlen(name) + 1), type += (strlen(type) + 1)) 		{
	for (i = 0; i < indexes[0]; i++) {

		slot = alloc_slot_struct(dn, indexes[i + 1], name, power_domains[i + 1]);
		if (!slot)
			return -ENOMEM;

			if (!(slot = alloc_slot_struct(dn, indexes[i + 1], name,
				       power_domains[i + 1]))) {
				retval = -ENOMEM;
				goto exit;
			}
		slot->type = simple_strtoul(type, NULL, 10);
				
		dbg("Found drc-index:0x%x drc-name:%s drc-type:%s\n",
				indexes[i + 1], name, type);

		retval = rpaphp_register_pci_slot(slot);
		name += strlen(name) + 1;
		type += strlen(type) + 1;
	}
	}
exit:
	dbg("%s - Exit: num_slots=%d rc[%d]\n",
	    __FUNCTION__, num_slots, retval);
	return retval;