[PATCH v2 1/2] regulator: mt6366: Add support for MT6366 regulator

Mark Brown broonie at kernel.org
Fri Mar 18 13:06:49 PDT 2022


On Thu, Mar 17, 2022 at 11:04:01AM +0800, Johnson Wang wrote:
> The MT6366 is a regulator found on boards based on MediaTek MT8186 and
> probably other SoCs. It is a so called pmic and connects as a slave to
> SoC using SPI, wrapped inside the pmic-wrapper.

This doesn't build, please resend once the dependencies have been merged:

/mnt/kernel/drivers/regulator/mt6358-regulator.c:51:15: error: 'MT6358_BUCK_VCORE_SSHUB_ELR0' undeclared here (not in a function); did you mean 'MT6358_BUCK_VCORE_ELR0'?
   51 |   .vsel_reg = MT6358_BUCK_##vreg##_ELR0, \
      |               ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:508:2: note: in expansion of macro 'MT6358_BUCK'
  508 |  MT6358_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:53:17: error: 'MT6358_BUCK_VCORE_SSHUB_CON0' undeclared here (not in a function); did you mean 'MT6358_BUCK_VCORE_CON0'?
   53 |   .enable_reg = MT6358_BUCK_##vreg##_CON0, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:508:2: note: in expansion of macro 'MT6358_BUCK'
  508 |  MT6358_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:57:16: error: 'MT6358_BUCK_VCORE_SSHUB_DBG1' undeclared here (not in a function); did you mean 'MT6358_BUCK_VCORE_DBG1'?
   57 |  .status_reg = MT6358_BUCK_##vreg##_DBG1, \
      |                ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:508:2: note: in expansion of macro 'MT6358_BUCK'
  508 |  MT6358_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:593:7: error: 'MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1' undeclared here (not in a function); did you mean 'MT6358_ID_VSRAM_OTHERS_SSHUB'?
  593 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f),
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:103:15: note: in definition of macro 'MT6358_LDO1'
  103 |   .vsel_reg = vosel, \
      |               ^~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:105:17: error: 'MT6358_LDO_VSRAM_OTHERS_SSHUB_CON0' undeclared here (not in a function); did you mean 'MT6358_LDO_VSRAM_OTHERS_CON0'?
  105 |   .enable_reg = MT6358_LDO_##vreg##_CON0, \
      |                 ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:590:2: note: in expansion of macro 'MT6358_LDO1'
  590 |  MT6358_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:110:16: error: 'MT6358_LDO_VSRAM_OTHERS_SSHUB_DBG1' undeclared here (not in a function); did you mean 'MT6358_LDO_VSRAM_OTHERS_DBG1'?
  110 |  .status_reg = MT6358_LDO_##vreg##_DBG1, \
      |                ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:590:2: note: in expansion of macro 'MT6358_LDO1'
  590 |  MT6358_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:147:15: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  147 |   .vsel_reg = MT6358_BUCK_##vreg##_ELR0, \
      |               ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:147:15: note: (near initialization for 'mt6366_regulators[36].desc.vsel_reg')
  147 |   .vsel_reg = MT6358_BUCK_##vreg##_ELR0, \
      |               ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:147:15: error: initializer element is not constant
  147 |   .vsel_reg = MT6358_BUCK_##vreg##_ELR0, \
      |               ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:147:15: note: (near initialization for 'mt6366_regulators[36].desc.vsel_reg')
  147 |   .vsel_reg = MT6358_BUCK_##vreg##_ELR0, \
      |               ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:149:17: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  149 |   .enable_reg = MT6358_BUCK_##vreg##_CON0, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:149:17: note: (near initialization for 'mt6366_regulators[36].desc.enable_reg')
  149 |   .enable_reg = MT6358_BUCK_##vreg##_CON0, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:149:17: error: initializer element is not constant
  149 |   .enable_reg = MT6358_BUCK_##vreg##_CON0, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:149:17: note: (near initialization for 'mt6366_regulators[36].desc.enable_reg')
  149 |   .enable_reg = MT6358_BUCK_##vreg##_CON0, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:153:16: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  153 |  .status_reg = MT6358_BUCK_##vreg##_DBG1, \
      |                ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:153:16: note: (near initialization for 'mt6366_regulators[36].status_reg')
  153 |  .status_reg = MT6358_BUCK_##vreg##_DBG1, \
      |                ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:153:16: error: initializer element is not constant
  153 |  .status_reg = MT6358_BUCK_##vreg##_DBG1, \
      |                ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:153:16: note: (near initialization for 'mt6366_regulators[36].status_reg')
  153 |  .status_reg = MT6358_BUCK_##vreg##_DBG1, \
      |                ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:610:2: note: in expansion of macro 'MT6366_BUCK'
  610 |  MT6366_BUCK("buck_vcore_sshub", VCORE_SSHUB, 500000, 1293750, 6250,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:611:31: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  611 |       buck_volt_range1, 0x7f, MT6358_BUCK_VCORE_SSHUB_ELR0, 0x7f,
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:155:17: note: in definition of macro 'MT6366_BUCK'
  155 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:611:31: note: (near initialization for 'mt6366_regulators[36].da_vsel_reg')
  611 |       buck_volt_range1, 0x7f, MT6358_BUCK_VCORE_SSHUB_ELR0, 0x7f,
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:155:17: note: in definition of macro 'MT6366_BUCK'
  155 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:611:31: error: initializer element is not constant
  611 |       buck_volt_range1, 0x7f, MT6358_BUCK_VCORE_SSHUB_ELR0, 0x7f,
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:155:17: note: in definition of macro 'MT6366_BUCK'
  155 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:611:31: note: (near initialization for 'mt6366_regulators[36].da_vsel_reg')
  611 |       buck_volt_range1, 0x7f, MT6358_BUCK_VCORE_SSHUB_ELR0, 0x7f,
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:155:17: note: in definition of macro 'MT6366_BUCK'
  155 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:684:7: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  684 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f),
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:199:15: note: in definition of macro 'MT6366_LDO1'
  199 |   .vsel_reg = vosel, \
      |               ^~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:684:7: note: (near initialization for 'mt6366_regulators[37].desc.vsel_reg')
  684 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f),
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:199:15: note: in definition of macro 'MT6366_LDO1'
  199 |   .vsel_reg = vosel, \
      |               ^~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:684:7: error: initializer element is not constant
  684 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f),
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:199:15: note: in definition of macro 'MT6366_LDO1'
  199 |   .vsel_reg = vosel, \
      |               ^~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:684:7: note: (near initialization for 'mt6366_regulators[37].desc.vsel_reg')
  684 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f),
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:199:15: note: in definition of macro 'MT6366_LDO1'
  199 |   .vsel_reg = vosel, \
      |               ^~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:201:17: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  201 |   .enable_reg = MT6358_LDO_##vreg##_CON0, \
      |                 ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:201:17: note: (near initialization for 'mt6366_regulators[37].desc.enable_reg')
  201 |   .enable_reg = MT6358_LDO_##vreg##_CON0, \
      |                 ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:201:17: error: initializer element is not constant
  201 |   .enable_reg = MT6358_LDO_##vreg##_CON0, \
      |                 ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:201:17: note: (near initialization for 'mt6366_regulators[37].desc.enable_reg')
  201 |   .enable_reg = MT6358_LDO_##vreg##_CON0, \
      |                 ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:683:7: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  683 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f,
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:204:17: note: in definition of macro 'MT6366_LDO1'
  204 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:683:7: note: (near initialization for 'mt6366_regulators[37].da_vsel_reg')
  683 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f,
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:204:17: note: in definition of macro 'MT6366_LDO1'
  204 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:683:7: error: initializer element is not constant
  683 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f,
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:204:17: note: in definition of macro 'MT6366_LDO1'
  204 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:683:7: note: (near initialization for 'mt6366_regulators[37].da_vsel_reg')
  683 |       MT6358_LDO_VSRAM_OTHERS_SSHUB_CON1, 0x7f,
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:204:17: note: in definition of macro 'MT6366_LDO1'
  204 |  .da_vsel_reg = _da_vsel_reg, \
      |                 ^~~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:206:16: warning: initialization of 'unsigned int' from 'struct mt6358_regulator_info *' makes integer from pointer without a cast [-Wint-conversion]
  206 |  .status_reg = MT6358_LDO_##vreg##_DBG1, \
      |                ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:206:16: note: (near initialization for 'mt6366_regulators[37].status_reg')
  206 |  .status_reg = MT6358_LDO_##vreg##_DBG1, \
      |                ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:206:16: error: initializer element is not constant
  206 |  .status_reg = MT6358_LDO_##vreg##_DBG1, \
      |                ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:206:16: note: (near initialization for 'mt6366_regulators[37].status_reg')
  206 |  .status_reg = MT6358_LDO_##vreg##_DBG1, \
      |                ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c:681:2: note: in expansion of macro 'MT6366_LDO1'
  681 |  MT6366_LDO1("ldo_vsram_others_sshub", VSRAM_OTHERS_SSHUB, 500000,
      |  ^~~~~~~~~~~
/mnt/kernel/drivers/regulator/mt6358-regulator.c: In function 'mt6358_regulator_probe':
/mnt/kernel/drivers/regulator/mt6358-regulator.c:701:25: error: 'MT6366_CHIP_ID' undeclared (first use in this function); did you mean 'MT6397_CHIP_ID'?
  701 |  if (mt6397->chip_id == MT6366_CHIP_ID) {
      |                         ^~~~~~~~~~~~~~
      |                         MT6397_CHIP_ID
/mnt/kernel/drivers/regulator/mt6358-regulator.c:701:25: note: each undeclared identifier is reported only once for each function it appears in
/mnt/kernel/drivers/regulator/mt6358-regulator.c:701:22: warning: comparison between pointer and integer
  701 |  if (mt6397->chip_id == MT6366_CHIP_ID) {
      |                      ^~

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-mediatek/attachments/20220318/62df304d/attachment.sig>


More information about the Linux-mediatek mailing list