• Home
  • Raw
  • Download

Lines Matching full:pmic

2  * MFD core driver for Intel Broxton Whiskey Cove PMIC
27 /* PMIC device registers */
65 /* Whiskey Cove PMIC share same ACPI ID between different platforms */
284 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_read() local
286 if (!pmic) in regmap_ipc_byte_reg_read()
302 dev_err(pmic->dev, "Failed to read from PMIC\n"); in regmap_ipc_byte_reg_read()
316 struct intel_soc_pmic *pmic = context; in regmap_ipc_byte_reg_write() local
318 if (!pmic) in regmap_ipc_byte_reg_write()
335 dev_err(pmic->dev, "Failed to write to PMIC\n"); in regmap_ipc_byte_reg_write()
342 /* sysfs interfaces to r/w PMIC registers, required by initial script */
365 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in bxtwc_val_show() local
367 ret = regmap_read(pmic->regmap, bxtwc_reg_addr, &val); in bxtwc_val_show()
381 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in bxtwc_val_store() local
387 ret = regmap_write(pmic->regmap, bxtwc_reg_addr, val); in bxtwc_val_store()
415 static int bxtwc_add_chained_irq_chip(struct intel_soc_pmic *pmic, in bxtwc_add_chained_irq_chip() argument
425 dev_err(pmic->dev, in bxtwc_add_chained_irq_chip()
431 return devm_regmap_add_irq_chip(pmic->dev, pmic->regmap, irq, irq_flags, in bxtwc_add_chained_irq_chip()
441 struct intel_soc_pmic *pmic; in bxtwc_probe() local
446 dev_err(&pdev->dev, "Failed to get PMIC hardware revision\n"); in bxtwc_probe()
450 dev_err(&pdev->dev, "Invalid PMIC hardware revision: %llu\n", in bxtwc_probe()
455 pmic = devm_kzalloc(&pdev->dev, sizeof(*pmic), GFP_KERNEL); in bxtwc_probe()
456 if (!pmic) in bxtwc_probe()
464 pmic->irq = ret; in bxtwc_probe()
466 dev_set_drvdata(&pdev->dev, pmic); in bxtwc_probe()
467 pmic->dev = &pdev->dev; in bxtwc_probe()
469 pmic->regmap = devm_regmap_init(&pdev->dev, NULL, pmic, in bxtwc_probe()
471 if (IS_ERR(pmic->regmap)) { in bxtwc_probe()
472 ret = PTR_ERR(pmic->regmap); in bxtwc_probe()
477 ret = devm_regmap_add_irq_chip(&pdev->dev, pmic->regmap, pmic->irq, in bxtwc_probe()
480 &pmic->irq_chip_data); in bxtwc_probe()
486 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
490 &pmic->irq_chip_data_pwrbtn); in bxtwc_probe()
496 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
500 &pmic->irq_chip_data_tmu); in bxtwc_probe()
507 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
511 &pmic->irq_chip_data_bcu); in bxtwc_probe()
520 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
524 &pmic->irq_chip_data_adc); in bxtwc_probe()
533 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
537 &pmic->irq_chip_data_chgr); in bxtwc_probe()
546 ret = bxtwc_add_chained_irq_chip(pmic, pmic->irq_chip_data, in bxtwc_probe()
550 &pmic->irq_chip_data_crit); in bxtwc_probe()
578 regmap_update_bits(pmic->regmap, BXTWC_MIRQLVL1, in bxtwc_probe()
593 struct intel_soc_pmic *pmic = dev_get_drvdata(&pdev->dev); in bxtwc_shutdown() local
595 disable_irq(pmic->irq); in bxtwc_shutdown()
601 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in bxtwc_suspend() local
603 disable_irq(pmic->irq); in bxtwc_suspend()
610 struct intel_soc_pmic *pmic = dev_get_drvdata(dev); in bxtwc_resume() local
612 enable_irq(pmic->irq); in bxtwc_resume()
629 .name = "BXTWC PMIC",