Lines Matching refs:pmic

281 	struct intel_soc_pmic *pmic = context;  in regmap_ipc_byte_reg_read()  local
283 if (!pmic) in regmap_ipc_byte_reg_read()
295 ret = intel_scu_ipc_dev_command(pmic->scu, PMC_PMIC_ACCESS, in regmap_ipc_byte_reg_read()
311 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_write() local
313 if (!pmic) in regmap_ipc_byte_reg_write()
326 return intel_scu_ipc_dev_command(pmic->scu, PMC_PMIC_ACCESS, in regmap_ipc_byte_reg_write()
356 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in val_show() local
358 ret = regmap_read(pmic->regmap, bxtwc_reg_addr, &val); in val_show()
372 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in val_store() local
378 ret = regmap_write(pmic->regmap, bxtwc_reg_addr, val); in val_store()
411 static int bxtwc_add_chained_irq_chip(struct intel_soc_pmic *pmic, in bxtwc_add_chained_irq_chip() argument
421 return dev_err_probe(pmic->dev, irq, "Failed to get parent vIRQ(%d) for chip %s\n", in bxtwc_add_chained_irq_chip()
424 return devm_regmap_add_irq_chip(pmic->dev, pmic->regmap, irq, irq_flags, in bxtwc_add_chained_irq_chip()
434 struct intel_soc_pmic *pmic; in bxtwc_probe() local
442 pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL); in bxtwc_probe()
443 if (!pmic) in bxtwc_probe()
449 pmic->irq = ret; in bxtwc_probe()
451 platform_set_drvdata(pdev, pmic); in bxtwc_probe()
452 pmic->dev = dev; in bxtwc_probe()
454 pmic->scu = devm_intel_scu_ipc_dev_get(dev); in bxtwc_probe()
455 if (!pmic->scu) in bxtwc_probe()
458 pmic->regmap = devm_regmap_init(dev, NULL, pmic, &bxtwc_regmap_config); in bxtwc_probe()
459 if (IS_ERR(pmic->regmap)) in bxtwc_probe()
460 return dev_err_probe(dev, PTR_ERR(pmic->regmap), "Failed to initialise regmap\n"); in bxtwc_probe()
462 ret = devm_regmap_add_irq_chip(dev, pmic->regmap, pmic->irq, in bxtwc_probe()
465 &pmic->irq_chip_data); in bxtwc_probe()
469 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
473 &pmic->irq_chip_data_pwrbtn); in bxtwc_probe()
477 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
481 &pmic->irq_chip_data_tmu); in bxtwc_probe()
486 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
490 &pmic->irq_chip_data_bcu); in bxtwc_probe()
495 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
499 &pmic->irq_chip_data_adc); in bxtwc_probe()
504 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
508 &pmic->irq_chip_data_chgr); in bxtwc_probe()
513 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
517 &pmic->irq_chip_data_crit); in bxtwc_probe()
533 regmap_update_bits(pmic->regmap, BXTWC_MIRQLVL1, BXTWC_MIRQLVL1_MCHGR, 0); in bxtwc_probe()
540 struct intel_soc_pmic *pmic = platform_get_drvdata(pdev); in bxtwc_shutdown() local
542 disable_irq(pmic->irq); in bxtwc_shutdown()
547 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in bxtwc_suspend() local
549 disable_irq(pmic->irq); in bxtwc_suspend()
556 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in bxtwc_resume() local
558 enable_irq(pmic->irq); in bxtwc_resume()