Commit 2a5a191c authored by Daniel Scally's avatar Daniel Scally Committed by Rafael J. Wysocki
Browse files

platform/x86: int3472: Add board data for Surface Go2 IR camera



Add the board data describing the regulators for the Microsoft
Surface Go line's IR camera.

Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarDaniel Scally <djrscally@gmail.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 06a659d1
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -30,6 +30,15 @@ static struct regulator_consumer_supply int347a_vcm_consumer_supplies[] = {
static struct regulator_consumer_supply int347a_vsio_consumer_supplies[] = {
	REGULATOR_SUPPLY("dovdd", "i2c-INT347A:00"),
	REGULATOR_SUPPLY("vsio", "i2c-INT347A:00-VCM"),
	REGULATOR_SUPPLY("vddd", "i2c-INT347E:00"),
};

static struct regulator_consumer_supply int347a_aux1_consumer_supplies[] = {
	REGULATOR_SUPPLY("vdda", "i2c-INT347E:00"),
};

static struct regulator_consumer_supply int347a_aux2_consumer_supplies[] = {
	REGULATOR_SUPPLY("vdddo", "i2c-INT347E:00"),
};

static const struct regulator_init_data surface_go_tps68470_core_reg_init_data = {
@@ -86,6 +95,28 @@ static const struct regulator_init_data surface_go_tps68470_vsio_reg_init_data =
	.consumer_supplies = int347a_vsio_consumer_supplies,
};

static const struct regulator_init_data surface_go_tps68470_aux1_reg_init_data = {
	.constraints = {
		.min_uV = 2815200,
		.max_uV = 2815200,
		.apply_uV = 1,
		.valid_ops_mask = REGULATOR_CHANGE_STATUS,
	},
	.num_consumer_supplies = ARRAY_SIZE(int347a_aux1_consumer_supplies),
	.consumer_supplies = int347a_aux1_consumer_supplies,
};

static const struct regulator_init_data surface_go_tps68470_aux2_reg_init_data = {
	.constraints = {
		.min_uV = 1800600,
		.max_uV = 1800600,
		.apply_uV = 1,
		.valid_ops_mask = REGULATOR_CHANGE_STATUS,
	},
	.num_consumer_supplies = ARRAY_SIZE(int347a_aux2_consumer_supplies),
	.consumer_supplies = int347a_aux2_consumer_supplies,
};

static const struct tps68470_regulator_platform_data surface_go_tps68470_pdata = {
	.reg_init_data = {
		[TPS68470_CORE] = &surface_go_tps68470_core_reg_init_data,
@@ -93,6 +124,8 @@ static const struct tps68470_regulator_platform_data surface_go_tps68470_pdata =
		[TPS68470_VCM]  = &surface_go_tps68470_vcm_reg_init_data,
		[TPS68470_VIO] = &surface_go_tps68470_vio_reg_init_data,
		[TPS68470_VSIO] = &surface_go_tps68470_vsio_reg_init_data,
		[TPS68470_AUX1] = &surface_go_tps68470_aux1_reg_init_data,
		[TPS68470_AUX2] = &surface_go_tps68470_aux2_reg_init_data,
	},
};