|
@@ -157,18 +157,19 @@ static int i2sbus_add_dev(struct macio_dev *macio,
|
|
|
struct device_node *child = NULL, *sound = NULL;
|
|
|
struct resource *r;
|
|
|
int i, layout = 0, rlen, ok = force;
|
|
|
- static const char *rnames[] = { "i2sbus: %s (control)",
|
|
|
- "i2sbus: %s (tx)",
|
|
|
- "i2sbus: %s (rx)" };
|
|
|
+ char node_name[6];
|
|
|
+ static const char *rnames[] = { "i2sbus: %pOFn (control)",
|
|
|
+ "i2sbus: %pOFn (tx)",
|
|
|
+ "i2sbus: %pOFn (rx)" };
|
|
|
static irq_handler_t ints[] = {
|
|
|
i2sbus_bus_intr,
|
|
|
i2sbus_tx_intr,
|
|
|
i2sbus_rx_intr
|
|
|
};
|
|
|
|
|
|
- if (strlen(np->name) != 5)
|
|
|
+ if (snprintf(node_name, sizeof(node_name), "%pOFn", np) != 5)
|
|
|
return 0;
|
|
|
- if (strncmp(np->name, "i2s-", 4))
|
|
|
+ if (strncmp(node_name, "i2s-", 4))
|
|
|
return 0;
|
|
|
|
|
|
dev = kzalloc(sizeof(struct i2sbus_dev), GFP_KERNEL);
|
|
@@ -228,13 +229,13 @@ static int i2sbus_add_dev(struct macio_dev *macio,
|
|
|
dev->sound.pcmid = -1;
|
|
|
dev->macio = macio;
|
|
|
dev->control = control;
|
|
|
- dev->bus_number = np->name[4] - 'a';
|
|
|
+ dev->bus_number = node_name[4] - 'a';
|
|
|
INIT_LIST_HEAD(&dev->sound.codec_list);
|
|
|
|
|
|
for (i = aoa_resource_i2smmio; i <= aoa_resource_rxdbdma; i++) {
|
|
|
dev->interrupts[i] = -1;
|
|
|
snprintf(dev->rnames[i], sizeof(dev->rnames[i]),
|
|
|
- rnames[i], np->name);
|
|
|
+ rnames[i], np);
|
|
|
}
|
|
|
for (i = aoa_resource_i2smmio; i <= aoa_resource_rxdbdma; i++) {
|
|
|
int irq = irq_of_parse_and_map(np, i);
|