|
@@ -223,16 +223,16 @@ int rpaphp_get_drc_props(struct device_node *dn, int *drc_index,
|
|
type_tmp = (char *) &types[1];
|
|
type_tmp = (char *) &types[1];
|
|
|
|
|
|
/* Iterate through parent properties, looking for my-drc-index */
|
|
/* Iterate through parent properties, looking for my-drc-index */
|
|
- for (i = 0; i < indexes[0]; i++) {
|
|
|
|
|
|
+ for (i = 0; i < be32_to_cpu(indexes[0]); i++) {
|
|
if ((unsigned int) indexes[i + 1] == *my_index) {
|
|
if ((unsigned int) indexes[i + 1] == *my_index) {
|
|
if (drc_name)
|
|
if (drc_name)
|
|
*drc_name = name_tmp;
|
|
*drc_name = name_tmp;
|
|
if (drc_type)
|
|
if (drc_type)
|
|
*drc_type = type_tmp;
|
|
*drc_type = type_tmp;
|
|
if (drc_index)
|
|
if (drc_index)
|
|
- *drc_index = *my_index;
|
|
|
|
|
|
+ *drc_index = be32_to_cpu(*my_index);
|
|
if (drc_power_domain)
|
|
if (drc_power_domain)
|
|
- *drc_power_domain = domains[i+1];
|
|
|
|
|
|
+ *drc_power_domain = be32_to_cpu(domains[i+1]);
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
name_tmp += (strlen(name_tmp) + 1);
|
|
name_tmp += (strlen(name_tmp) + 1);
|
|
@@ -321,16 +321,19 @@ int rpaphp_add_slot(struct device_node *dn)
|
|
/* register PCI devices */
|
|
/* register PCI devices */
|
|
name = (char *) &names[1];
|
|
name = (char *) &names[1];
|
|
type = (char *) &types[1];
|
|
type = (char *) &types[1];
|
|
- for (i = 0; i < indexes[0]; i++) {
|
|
|
|
|
|
+ for (i = 0; i < be32_to_cpu(indexes[0]); i++) {
|
|
|
|
+ int index;
|
|
|
|
|
|
- slot = alloc_slot_struct(dn, indexes[i + 1], name, power_domains[i + 1]);
|
|
|
|
|
|
+ index = be32_to_cpu(indexes[i + 1]);
|
|
|
|
+ slot = alloc_slot_struct(dn, index, name,
|
|
|
|
+ be32_to_cpu(power_domains[i + 1]));
|
|
if (!slot)
|
|
if (!slot)
|
|
return -ENOMEM;
|
|
return -ENOMEM;
|
|
|
|
|
|
slot->type = simple_strtoul(type, NULL, 10);
|
|
slot->type = simple_strtoul(type, NULL, 10);
|
|
|
|
|
|
dbg("Found drc-index:0x%x drc-name:%s drc-type:%s\n",
|
|
dbg("Found drc-index:0x%x drc-name:%s drc-type:%s\n",
|
|
- indexes[i + 1], name, type);
|
|
|
|
|
|
+ index, name, type);
|
|
|
|
|
|
retval = rpaphp_enable_slot(slot);
|
|
retval = rpaphp_enable_slot(slot);
|
|
if (!retval)
|
|
if (!retval)
|