power: pmic: axp: Provide a variant ID in the driver data

Subordinate regulator drivers can use this enumerated ID instead of
matching the compatible string again.

Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
This commit is contained in:
Samuel Holland 2023-01-21 17:13:04 -06:00 committed by Andre Przywara
parent 382b837134
commit dc1b1d1458
2 changed files with 21 additions and 9 deletions

View file

@ -64,15 +64,15 @@ static int axp_pmic_bind(struct udevice *dev)
} }
static const struct udevice_id axp_pmic_ids[] = { static const struct udevice_id axp_pmic_ids[] = {
{ .compatible = "x-powers,axp152" }, { .compatible = "x-powers,axp152", .data = AXP152_ID },
{ .compatible = "x-powers,axp202" }, { .compatible = "x-powers,axp202", .data = AXP202_ID },
{ .compatible = "x-powers,axp209" }, { .compatible = "x-powers,axp209", .data = AXP209_ID },
{ .compatible = "x-powers,axp221" }, { .compatible = "x-powers,axp221", .data = AXP221_ID },
{ .compatible = "x-powers,axp223" }, { .compatible = "x-powers,axp223", .data = AXP223_ID },
{ .compatible = "x-powers,axp803" }, { .compatible = "x-powers,axp803", .data = AXP803_ID },
{ .compatible = "x-powers,axp806" }, { .compatible = "x-powers,axp806", .data = AXP806_ID },
{ .compatible = "x-powers,axp809" }, { .compatible = "x-powers,axp809", .data = AXP809_ID },
{ .compatible = "x-powers,axp813" }, { .compatible = "x-powers,axp813", .data = AXP813_ID },
{ } { }
}; };

View file

@ -26,6 +26,18 @@
#define AXP_PMIC_SEC_DEVICE_ADDR 0x745 #define AXP_PMIC_SEC_DEVICE_ADDR 0x745
#define AXP_PMIC_SEC_RUNTIME_ADDR 0x3a #define AXP_PMIC_SEC_RUNTIME_ADDR 0x3a
enum {
AXP152_ID,
AXP202_ID,
AXP209_ID,
AXP221_ID,
AXP223_ID,
AXP803_ID,
AXP806_ID,
AXP809_ID,
AXP813_ID,
};
int axp_set_dcdc1(unsigned int mvolt); int axp_set_dcdc1(unsigned int mvolt);
int axp_set_dcdc2(unsigned int mvolt); int axp_set_dcdc2(unsigned int mvolt);
int axp_set_dcdc3(unsigned int mvolt); int axp_set_dcdc3(unsigned int mvolt);