max14577           71 drivers/extcon/extcon-max14577.c 	struct max14577 *max14577;
max14577          167 drivers/extcon/extcon-max14577.c 		ret = max14577_update_reg(info->max14577->regmap,
max14577          201 drivers/extcon/extcon-max14577.c 	ret = max14577_update_reg(info->max14577->regmap,
max14577          214 drivers/extcon/extcon-max14577.c 	ret = max14577_update_reg(info->max14577->regmap,
max14577          227 drivers/extcon/extcon-max14577.c 	ret = max14577_update_reg(info->max14577->regmap,
max14577          491 drivers/extcon/extcon-max14577.c 	ret = max14577_bulk_read(info->max14577->regmap,
max14577          582 drivers/extcon/extcon-max14577.c 	switch (info->max14577->dev_type) {
max14577          612 drivers/extcon/extcon-max14577.c 	ret = max14577_bulk_read(info->max14577->regmap,
max14577          657 drivers/extcon/extcon-max14577.c 	struct max14577 *max14577 = dev_get_drvdata(pdev->dev.parent);
max14577          671 drivers/extcon/extcon-max14577.c 	info->max14577 = max14577;
max14577          678 drivers/extcon/extcon-max14577.c 	switch (max14577->dev_type) {
max14577          694 drivers/extcon/extcon-max14577.c 		virq = regmap_irq_get_virq(max14577->irq_data, muic_irq->irq);
max14577          731 drivers/extcon/extcon-max14577.c 	ret = max14577_bulk_read(info->max14577->regmap,
max14577          743 drivers/extcon/extcon-max14577.c 	ret = max14577_read_reg(info->max14577->regmap,
max14577          264 drivers/mfd/max14577.c static void max14577_print_dev_type(struct max14577 *max14577)
max14577          269 drivers/mfd/max14577.c 	ret = max14577_read_reg(max14577->regmap, MAX14577_REG_DEVICEID,
max14577          272 drivers/mfd/max14577.c 		dev_err(max14577->dev,
max14577          282 drivers/mfd/max14577.c 	dev_info(max14577->dev, "Device type: %u (ID: 0x%x, vendor: 0x%x)\n",
max14577          283 drivers/mfd/max14577.c 			max14577->dev_type, device_id, vendor_id);
max14577          295 drivers/mfd/max14577.c static int max77836_init(struct max14577 *max14577)
max14577          300 drivers/mfd/max14577.c 	max14577->i2c_pmic = i2c_new_dummy_device(max14577->i2c->adapter,
max14577          302 drivers/mfd/max14577.c 	if (IS_ERR(max14577->i2c_pmic)) {
max14577          303 drivers/mfd/max14577.c 		dev_err(max14577->dev, "Failed to register PMIC I2C device\n");
max14577          304 drivers/mfd/max14577.c 		return PTR_ERR(max14577->i2c_pmic);
max14577          306 drivers/mfd/max14577.c 	i2c_set_clientdata(max14577->i2c_pmic, max14577);
max14577          308 drivers/mfd/max14577.c 	max14577->regmap_pmic = devm_regmap_init_i2c(max14577->i2c_pmic,
max14577          310 drivers/mfd/max14577.c 	if (IS_ERR(max14577->regmap_pmic)) {
max14577          311 drivers/mfd/max14577.c 		ret = PTR_ERR(max14577->regmap_pmic);
max14577          312 drivers/mfd/max14577.c 		dev_err(max14577->dev, "Failed to allocate PMIC register map: %d\n",
max14577          318 drivers/mfd/max14577.c 	ret = max14577_read_reg(max14577->regmap_pmic,
max14577          321 drivers/mfd/max14577.c 		dev_err(max14577->dev, "Failed to read PMIC register\n");
max14577          327 drivers/mfd/max14577.c 	ret = max14577_write_reg(max14577->regmap_pmic,
max14577          330 drivers/mfd/max14577.c 		dev_err(max14577->dev, "Failed to write PMIC register\n");
max14577          334 drivers/mfd/max14577.c 	ret = regmap_add_irq_chip(max14577->regmap_pmic, max14577->irq,
max14577          337 drivers/mfd/max14577.c 			&max14577->irq_data_pmic);
max14577          339 drivers/mfd/max14577.c 		dev_err(max14577->dev, "Failed to request PMIC IRQ %d: %d\n",
max14577          340 drivers/mfd/max14577.c 				max14577->irq, ret);
max14577          347 drivers/mfd/max14577.c 	i2c_unregister_device(max14577->i2c_pmic);
max14577          355 drivers/mfd/max14577.c static void max77836_remove(struct max14577 *max14577)
max14577          357 drivers/mfd/max14577.c 	regmap_del_irq_chip(max14577->irq, max14577->irq_data_pmic);
max14577          358 drivers/mfd/max14577.c 	i2c_unregister_device(max14577->i2c_pmic);
max14577          364 drivers/mfd/max14577.c 	struct max14577 *max14577;
max14577          385 drivers/mfd/max14577.c 	max14577 = devm_kzalloc(&i2c->dev, sizeof(*max14577), GFP_KERNEL);
max14577          386 drivers/mfd/max14577.c 	if (!max14577)
max14577          389 drivers/mfd/max14577.c 	i2c_set_clientdata(i2c, max14577);
max14577          390 drivers/mfd/max14577.c 	max14577->dev = &i2c->dev;
max14577          391 drivers/mfd/max14577.c 	max14577->i2c = i2c;
max14577          392 drivers/mfd/max14577.c 	max14577->irq = i2c->irq;
max14577          394 drivers/mfd/max14577.c 	max14577->regmap = devm_regmap_init_i2c(i2c,
max14577          396 drivers/mfd/max14577.c 	if (IS_ERR(max14577->regmap)) {
max14577          397 drivers/mfd/max14577.c 		ret = PTR_ERR(max14577->regmap);
max14577          398 drivers/mfd/max14577.c 		dev_err(max14577->dev, "Failed to allocate register map: %d\n",
max14577          408 drivers/mfd/max14577.c 			max14577->dev_type =
max14577          411 drivers/mfd/max14577.c 		max14577->dev_type = id->driver_data;
max14577          414 drivers/mfd/max14577.c 	max14577_print_dev_type(max14577);
max14577          416 drivers/mfd/max14577.c 	switch (max14577->dev_type) {
max14577          432 drivers/mfd/max14577.c 	ret = regmap_add_irq_chip(max14577->regmap, max14577->irq,
max14577          434 drivers/mfd/max14577.c 				  &max14577->irq_data);
max14577          437 drivers/mfd/max14577.c 				max14577->irq, ret);
max14577          442 drivers/mfd/max14577.c 	if (max14577->dev_type == MAXIM_DEVICE_TYPE_MAX77836) {
max14577          443 drivers/mfd/max14577.c 		ret = max77836_init(max14577);
max14577          448 drivers/mfd/max14577.c 	ret = mfd_add_devices(max14577->dev, -1, mfd_devs,
max14577          453 drivers/mfd/max14577.c 	device_init_wakeup(max14577->dev, 1);
max14577          458 drivers/mfd/max14577.c 	if (max14577->dev_type == MAXIM_DEVICE_TYPE_MAX77836)
max14577          459 drivers/mfd/max14577.c 		max77836_remove(max14577);
max14577          461 drivers/mfd/max14577.c 	regmap_del_irq_chip(max14577->irq, max14577->irq_data);
max14577          468 drivers/mfd/max14577.c 	struct max14577 *max14577 = i2c_get_clientdata(i2c);
max14577          470 drivers/mfd/max14577.c 	mfd_remove_devices(max14577->dev);
max14577          471 drivers/mfd/max14577.c 	regmap_del_irq_chip(max14577->irq, max14577->irq_data);
max14577          472 drivers/mfd/max14577.c 	if (max14577->dev_type == MAXIM_DEVICE_TYPE_MAX77836)
max14577          473 drivers/mfd/max14577.c 		max77836_remove(max14577);
max14577          489 drivers/mfd/max14577.c 	struct max14577 *max14577 = i2c_get_clientdata(i2c);
max14577          492 drivers/mfd/max14577.c 		enable_irq_wake(max14577->irq);
max14577          502 drivers/mfd/max14577.c 	disable_irq(max14577->irq);
max14577          510 drivers/mfd/max14577.c 	struct max14577 *max14577 = i2c_get_clientdata(i2c);
max14577          513 drivers/mfd/max14577.c 		disable_irq_wake(max14577->irq);
max14577          514 drivers/mfd/max14577.c 	enable_irq(max14577->irq);
max14577           16 drivers/power/supply/max14577_charger.c 	struct max14577		*max14577;
max14577           49 drivers/power/supply/max14577_charger.c 	struct regmap *rmap = chg->max14577->regmap;
max14577          123 drivers/power/supply/max14577_charger.c 	struct regmap *rmap = chg->max14577->regmap;
max14577          133 drivers/power/supply/max14577_charger.c 	chg_type = maxim_get_charger_type(chg->max14577->dev_type, reg_data);
max14577          162 drivers/power/supply/max14577_charger.c 	struct regmap *rmap = chg->max14577->regmap;
max14577          172 drivers/power/supply/max14577_charger.c 	chg_type = maxim_get_charger_type(chg->max14577->dev_type, reg_data);
max14577          226 drivers/power/supply/max14577_charger.c 	return max14577_update_reg(chg->max14577->regmap,
max14577          257 drivers/power/supply/max14577_charger.c 	return max14577_write_reg(chg->max14577->regmap,
max14577          267 drivers/power/supply/max14577_charger.c 	switch (chg->max14577->dev_type) {
max14577          296 drivers/power/supply/max14577_charger.c 	return max14577_update_reg(chg->max14577->regmap,
max14577          307 drivers/power/supply/max14577_charger.c 		&maxim_charger_currents[chg->max14577->dev_type];
max14577          315 drivers/power/supply/max14577_charger.c 	return max14577_update_reg(chg->max14577->regmap,
max14577          328 drivers/power/supply/max14577_charger.c 	struct regmap *rmap = chg->max14577->regmap;
max14577          435 drivers/power/supply/max14577_charger.c 		val->strval = model_names[chg->max14577->dev_type];
max14577          516 drivers/power/supply/max14577_charger.c 	ret = max14577_read_reg(chg->max14577->regmap, MAX14577_REG_CHGCTRL1,
max14577          563 drivers/power/supply/max14577_charger.c 	struct max14577 *max14577 = dev_get_drvdata(pdev->dev.parent);
max14577          572 drivers/power/supply/max14577_charger.c 	chg->max14577 = max14577;
max14577           40 drivers/regulator/max14577-regulator.c 	struct max14577 *max14577 = rdev_get_drvdata(rdev);
max14577           42 drivers/regulator/max14577-regulator.c 		&maxim_charger_currents[max14577->dev_type];
max14577           62 drivers/regulator/max14577-regulator.c 	struct max14577 *max14577 = rdev_get_drvdata(rdev);
max14577           64 drivers/regulator/max14577-regulator.c 		&maxim_charger_currents[max14577->dev_type];
max14577          164 drivers/regulator/max14577-regulator.c static struct regmap *max14577_get_regmap(struct max14577 *max14577,
max14577          167 drivers/regulator/max14577-regulator.c 	switch (max14577->dev_type) {
max14577          171 drivers/regulator/max14577-regulator.c 			return max14577->regmap;
max14577          174 drivers/regulator/max14577-regulator.c 			return max14577->regmap_pmic;
max14577          179 drivers/regulator/max14577-regulator.c 		return max14577->regmap;
max14577          185 drivers/regulator/max14577-regulator.c 	struct max14577 *max14577 = dev_get_drvdata(pdev->dev.parent);
max14577          186 drivers/regulator/max14577-regulator.c 	struct max14577_platform_data *pdata = dev_get_platdata(max14577->dev);
max14577          191 drivers/regulator/max14577-regulator.c 	enum maxim_device_type dev_type = max14577->dev_type;
max14577          204 drivers/regulator/max14577-regulator.c 	config.dev = max14577->dev;
max14577          205 drivers/regulator/max14577-regulator.c 	config.driver_data = max14577;
max14577          217 drivers/regulator/max14577-regulator.c 		config.regmap = max14577_get_regmap(max14577,