nvmem: mtk-efuse: Support postprocessing for GPU speed binning data
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tue, 4 Apr 2023 17:21:35 +0000 (18:21 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 5 Apr 2023 17:41:12 +0000 (19:41 +0200)
commitde6e05097f7db066afb0ad4c88b730949f7b7749
tree6f73b5d36b92c2df8dfbf44438360f1480f0be90
parenta4fb434ef96ace5af758ca2c52c3a3f8f3abc87c
nvmem: mtk-efuse: Support postprocessing for GPU speed binning data

On some MediaTek SoCs GPU speed binning data is available for read
in the SoC's eFuse array but it has a format that is incompatible
with what the OPP API expects, as we read a number from 0 to 7 but
opp-supported-hw is expecting a bitmask to enable an OPP entry:
being what we read limited to 0-7, it's straightforward to simply
convert the value to BIT(value) as a post-processing action.

So, introduce post-processing support and enable it by evaluating
the newly introduced platform data's `uses_post_processing` member,
currently enabled only for MT8186.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20230404172148.82422-28-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvmem/mtk-efuse.c