[<prev] [next>] [day] [month] [year] [list]
Message-ID: <1525319630.14792.91.camel@mtkswgap22>
Date: Thu, 3 May 2018 11:53:50 +0800
From: Sean Wang <sean.wang@...iatek.com>
To: <argus.lin@...iatek.com>
CC: Rob Herring <robh+dt@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Matthias Brugger <matthias.bgg@...il.com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will.deacon@....com>,
Chenglin Xu <chenglin.xu@...iatek.com>,
<wsd_upstream@...iatek.com>, <henryc.chen@...iatek.com>,
<flora.fu@...iatek.com>, Chen Zhong <chen.zhong@...iatek.com>,
Christophe Jaillet <christophe.jaillet@...adoo.fr>,
"shailendra . v" <shailendra.v@...sung.com>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-mediatek@...ts.infradead.org>
Subject: Re: [PATCH V4 7/8] soc: mediatek: pwrap: add mt6351 for mt6797 SoCs
Hi, Argus
On Wed, 2018-05-02 at 17:21 +0800, argus.lin@...iatek.com wrote:
> From: Argus Lin <argus.lin@...iatek.com>
>
> mt6351 is a new power management IC and it is
> used for mt6797 SoCs. We need to add mt6351_regs for
> pmic register mapping and pmic_mt6351 for
> register accessing by regmap.
>
suggest line wrapping closely at 75 columns
> Signed-off-by: Argus Lin <argus.lin@...iatek.com>
> ---
> drivers/soc/mediatek/mtk-pmic-wrap.c | 29 +++++++++++++++++++++++++++++
> 1 file changed, 29 insertions(+)
>
> diff --git a/drivers/soc/mediatek/mtk-pmic-wrap.c b/drivers/soc/mediatek/mtk-pmic-wrap.c
> index 285bfa76249f..26076900eee0 100644
> --- a/drivers/soc/mediatek/mtk-pmic-wrap.c
> +++ b/drivers/soc/mediatek/mtk-pmic-wrap.c
> @@ -152,6 +152,21 @@ static const u32 mt6397_regs[] = {
> [PWRAP_DEW_CIPHER_SWRST] = 0xbc24,
> };
>
> +static const u32 mt6351_regs[] = {
> + [PWRAP_DEW_DIO_EN] = 0x02F2,
> + [PWRAP_DEW_READ_TEST] = 0x02F4,
> + [PWRAP_DEW_WRITE_TEST] = 0x02F6,
> + [PWRAP_DEW_CRC_EN] = 0x02FA,
> + [PWRAP_DEW_CRC_VAL] = 0x02FC,
> + [PWRAP_DEW_CIPHER_KEY_SEL] = 0x0300,
> + [PWRAP_DEW_CIPHER_IV_SEL] = 0x0302,
> + [PWRAP_DEW_CIPHER_EN] = 0x0304,
> + [PWRAP_DEW_CIPHER_RDY] = 0x0306,
> + [PWRAP_DEW_CIPHER_MODE] = 0x0308,
> + [PWRAP_DEW_CIPHER_SWRST] = 0x030A,
> + [PWRAP_DEW_RDDMY_NO] = 0x030C,
> +};
> +
trim the unused registers if any
> enum pwrap_regs {
> PWRAP_MUX_SEL,
> PWRAP_WRAP_EN,
> @@ -684,6 +699,7 @@ static int mt8135_regs[] = {
>
> enum pmic_type {
> PMIC_MT6323,
> + PMIC_MT6351,
> PMIC_MT6380,
> PMIC_MT6397,
> };
> @@ -1150,6 +1166,7 @@ static int pwrap_init_cipher(struct pmic_wrapper *wrp)
> 0x1);
> break;
> case PMIC_MT6323:
> + case PMIC_MT6351:
> pwrap_write(wrp, wrp->slave->dew_regs[PWRAP_DEW_CIPHER_EN],
> 0x1);
> break;
> @@ -1435,6 +1452,15 @@ static const struct pwrap_slv_type pmic_mt6397 = {
> .pwrap_write = pwrap_write16,
> };
>
> +static const struct pwrap_slv_type pmic_mt6351 = {
> + .dew_regs = mt6351_regs,
> + .type = PMIC_MT6351,
> + .regmap = &pwrap_regmap_config16,
> + .caps = 0,
the caps should be
PWRAP_SLV_CAP_SPI | PWRAP_SLV_CAP_DUALIO |
PWRAP_SLV_CAP_SECURITY,
otherwise, the registers you defined here cannot be accessed by its
function.
> + .pwrap_read = pwrap_read16,
> + .pwrap_write = pwrap_write16,
> +};
> +
> static const struct of_device_id of_slave_match_tbl[] = {
> {
> .compatible = "mediatek,mt6323",
> @@ -1449,6 +1475,9 @@ static const struct of_device_id of_slave_match_tbl[] = {
> .compatible = "mediatek,mt6397",
> .data = &pmic_mt6397,
> }, {
> + .compatible = "mediatek,mt6351",
> + .data = &pmic_mt6351,
> + }, {
need to be sorted din alphabetical order
> /* sentinel */
> }
> };
Powered by blists - more mailing lists