From 5ace54dceb75cdda33f4573d12211c3ddf9b2fe2 Mon Sep 17 00:00:00 2001 From: Veera Vegivada Date: Thu, 27 Aug 2020 01:44:08 +0530 Subject: [PATCH] clk: qcom: sm6150: define vdd_levels enum and vdd_corner[] map Define a vdd_levels enum and vdd_corner[] mapping table which can be used by clock controller drivers to configure the vdd_class associated with their clocks. Change-Id: I7b1ad5f51c414694bc9d5101afc411b1d63bad42 Signed-off-by: Veera Vegivada --- drivers/clk/qcom/vdd-level-sm6150.h | 36 +++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 drivers/clk/qcom/vdd-level-sm6150.h diff --git a/drivers/clk/qcom/vdd-level-sm6150.h b/drivers/clk/qcom/vdd-level-sm6150.h new file mode 100644 index 000000000000..47dff37056a1 --- /dev/null +++ b/drivers/clk/qcom/vdd-level-sm6150.h @@ -0,0 +1,36 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* Copyright (c) 2021, The Linux Foundation. All rights reserved. */ + +#ifndef __DRIVERS_CLK_QCOM_VDD_LEVEL_SM6150_H +#define __DRIVERS_CLK_QCOM_VDD_LEVEL_SM6150_H + +#include +#include + +enum vdd_levels { + VDD_NONE, + VDD_MIN, /* MIN SVS */ + VDD_LOWER, /* SVS2 */ + VDD_LOW, /* SVS */ + VDD_LOW_L1, /* SVSL1 */ + VDD_NOMINAL, /* NOM */ + VDD_NOMINAL_L1, /* NOM1 */ + VDD_HIGH, /* TURBO */ + VDD_HIGH_L1, /* TURBO_L1 */ + VDD_NUM_SA6155 = VDD_HIGH_L1, + VDD_NUM, +}; + +static int vdd_corner[] = { + [VDD_NONE] = 0, + [VDD_MIN] = RPMH_REGULATOR_LEVEL_MIN_SVS, + [VDD_LOWER] = RPMH_REGULATOR_LEVEL_LOW_SVS, + [VDD_LOW] = RPMH_REGULATOR_LEVEL_SVS, + [VDD_LOW_L1] = RPMH_REGULATOR_LEVEL_SVS_L1, + [VDD_NOMINAL] = RPMH_REGULATOR_LEVEL_NOM, + [VDD_NOMINAL_L1] = RPMH_REGULATOR_LEVEL_NOM_L1, + [VDD_HIGH] = RPMH_REGULATOR_LEVEL_TURBO, + [VDD_HIGH_L1] = RPMH_REGULATOR_LEVEL_TURBO_L1, +}; + +#endif