dev = ksz_switch_alloc(&i2c->dev, i2c); if (!dev) return -ENOMEM;
chip = device_get_match_data(ddev); if (!chip) return -EINVAL;
/* Save chip id to do special initialization when probing. */
dev->chip_id = chip->chip_id; for (i = 0; i < __KSZ_NUM_REGMAPS; i++) {
rc = ksz9477_regmap_config[i];
rc.lock_arg = &dev->regmap_mutex;
dev->regmap[i] = devm_regmap_init_i2c(i2c, &rc); if (IS_ERR(dev->regmap[i])) { return dev_err_probe(&i2c->dev, PTR_ERR(dev->regmap[i]), "Failed to initialize regmap%i\n",
ksz9477_regmap_config[i].val_bits);
}
}
if (i2c->dev.platform_data)
dev->pdata = i2c->dev.platform_data;
dev->irq = i2c->irq;
ret = ksz_switch_register(dev);
/* Main DSA driver may not be started yet. */ if (ret) return ret;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.