Re: [PATCH v2 28/36] mfd: intel_soc_pmic_mrfld: Convert to use new SCU IPC API

From: Andy Shevchenko
Date: Wed Jan 08 2020 - 12:35:51 EST


On Wed, Jan 08, 2020 at 02:41:53PM +0300, Mika Westerberg wrote:
> This converts the Intel Merrifield PMIC driver over the new SCU IPC API
> where the SCU IPC instance is passed to the functions.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

>
> Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
> ---
> drivers/mfd/intel_soc_pmic_mrfld.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mfd/intel_soc_pmic_mrfld.c b/drivers/mfd/intel_soc_pmic_mrfld.c
> index 26a1551c5faf..bd94c989d232 100644
> --- a/drivers/mfd/intel_soc_pmic_mrfld.c
> +++ b/drivers/mfd/intel_soc_pmic_mrfld.c
> @@ -74,10 +74,11 @@ static const struct mfd_cell bcove_dev[] = {
> static int bcove_ipc_byte_reg_read(void *context, unsigned int reg,
> unsigned int *val)
> {
> + struct intel_soc_pmic *pmic = context;
> u8 ipc_out;
> int ret;
>
> - ret = intel_scu_ipc_ioread8(reg, &ipc_out);
> + ret = intel_scu_ipc_dev_ioread8(pmic->scu, reg, &ipc_out);
> if (ret)
> return ret;
>
> @@ -88,10 +89,11 @@ static int bcove_ipc_byte_reg_read(void *context, unsigned int reg,
> static int bcove_ipc_byte_reg_write(void *context, unsigned int reg,
> unsigned int val)
> {
> + struct intel_soc_pmic *pmic = context;
> u8 ipc_in = val;
> int ret;
>
> - ret = intel_scu_ipc_iowrite8(reg, ipc_in);
> + ret = intel_scu_ipc_dev_iowrite8(pmic->scu, reg, ipc_in);
> if (ret)
> return ret;
>
> @@ -117,6 +119,10 @@ static int bcove_probe(struct platform_device *pdev)
> if (!pmic)
> return -ENOMEM;
>
> + pmic->scu = devm_intel_scu_ipc_dev_get(dev);
> + if (!pmic->scu)
> + return -ENOMEM;
> +
> platform_set_drvdata(pdev, pmic);
> pmic->dev = &pdev->dev;
>
> --
> 2.24.1
>

--
With Best Regards,
Andy Shevchenko