mbox series

[U-Boot,v3,00/18] misc: Add AVS class 0 support for AM6

Message ID 20191024093103.13220-1-j-keerthy@ti.com
Headers show
Series misc: Add AVS class 0 support for AM6 | expand

Message

Keerthy Oct. 24, 2019, 9:30 a.m. UTC
Adaptive Voltage Scaling is a technology used in TI SoCs to optimize
the operating voltage based on characterization data written to efuse
during production.

Add support for Adaptive Voltage scaling class 0 support
for AM6 family of devices. Adaptive voltage scaling class 0
implies that optimized voltage values for a particular OPP
of a particular voltage domain are read from Efuse and programmed
on the pmic/regulator.

Tested on AM654-EVM for MPU @800 MHz.
Tested on J721e-evm for MPU.

The series is based on top of the branch:

https://github.com/lokeshvutla/u-boot/tree/devel/j721e-full-boot

Changes in v3:

  * Extended the support for j721e-evm.
  * Moved vtm node under r5-board dts.

Changes in v2:

  * Avoided creation of new uclass. AVS driver is now under misc.

Keerthy (11):
  clk: clk-ti-sci: Notify AVS driver upon setting clock rate
  misc: k3_avs: Add j721e support
  power: pmic: tps65941: Add support for tps65941 family of PMICs
  power: regulator: tps65941: add regulator support
  arm: mach-k3: am6_init: Initialize AVS class 0
  arm: mach-k3: j721e_init: Initialize avs class 0
  arm: dts: k3-am654-r5-base-board: Add VTM node
  arm: dts: k3-j721e-r5-common-proc-board: Add VTM node
  arm: dts: k3-j721e-r5-common: Add tps65941 node and dependent
    wkup_i2c0 node
  arm: dts: k3-j721e-r5-common-proc-board: Hook buck12_reg to vtm supply
  configs: j721e_evm_r5_defconfig: Enable AVS Class 0 & dependent
    configs

Tero Kristo (7):
  misc: k3_avs: add driver for K3 Adaptive Voltage Scaling Class 0
  power: regulator: tps6236x: add support for tps6236x regulators
  arm: dts: k3-am654-r5-base-board: enable wkup_i2c0 driver for spl
  arm: dts: k3-am654-r5-base-board: add supply rail for MPU
  arm: dts: k3-am654-r5-base-board: enable wkup_vtm0 node and link in
    supplies
  configs: am65x_evm_r5_defconfig: Enable TPS62363 regulator support
  configs: am65x_evm_r5_defconfig: Enable AVS class 0 support

 arch/arm/dts/k3-am654-r5-base-board.dts       |  27 ++
 arch/arm/dts/k3-j721e-mcu-wakeup.dtsi         |  11 +
 .../arm/dts/k3-j721e-r5-common-proc-board.dts |  44 ++
 arch/arm/mach-k3/am6_init.c                   |   7 +
 arch/arm/mach-k3/j721e_init.c                 |   7 +
 configs/am65x_evm_r5_defconfig                |   2 +
 configs/j721e_evm_r5_defconfig                |   9 +
 drivers/clk/clk-ti-sci.c                      |   5 +
 drivers/misc/Kconfig                          |   9 +
 drivers/misc/Makefile                         |   1 +
 drivers/misc/k3_avs.c                         | 388 +++++++++++++++++
 drivers/power/pmic/Kconfig                    |   7 +
 drivers/power/pmic/Makefile                   |   1 +
 drivers/power/pmic/tps65941.c                 |  83 ++++
 drivers/power/regulator/Kconfig               |  20 +
 drivers/power/regulator/Makefile              |   2 +
 drivers/power/regulator/tps62360_regulator.c  | 123 ++++++
 drivers/power/regulator/tps65941_regulator.c  | 407 ++++++++++++++++++
 include/k3-avs.h                              |  30 ++
 include/power/tps65941.h                      |  26 ++
 20 files changed, 1209 insertions(+)
 create mode 100644 drivers/misc/k3_avs.c
 create mode 100644 drivers/power/pmic/tps65941.c
 create mode 100644 drivers/power/regulator/tps62360_regulator.c
 create mode 100644 drivers/power/regulator/tps65941_regulator.c
 create mode 100644 include/k3-avs.h
 create mode 100644 include/power/tps65941.h

Comments

Lokesh Vutla Oct. 24, 2019, 10:15 a.m. UTC | #1
On 24/10/19 3:00 PM, Keerthy wrote:
> Adaptive Voltage Scaling is a technology used in TI SoCs to optimize
> the operating voltage based on characterization data written to efuse
> during production.
> 
> Add support for Adaptive Voltage scaling class 0 support
> for AM6 family of devices. Adaptive voltage scaling class 0
> implies that optimized voltage values for a particular OPP
> of a particular voltage domain are read from Efuse and programmed
> on the pmic/regulator.
> 
> Tested on AM654-EVM for MPU @800 MHz.
> Tested on J721e-evm for MPU.

For the entire series:

Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>

Thanks and regards,
Lokesh

> 
> The series is based on top of the branch:
> 
> https://github.com/lokeshvutla/u-boot/tree/devel/j721e-full-boot
> 
> Changes in v3:
> 
>   * Extended the support for j721e-evm.
>   * Moved vtm node under r5-board dts.
> 
> Changes in v2:
> 
>   * Avoided creation of new uclass. AVS driver is now under misc.
> 
> Keerthy (11):
>   clk: clk-ti-sci: Notify AVS driver upon setting clock rate
>   misc: k3_avs: Add j721e support
>   power: pmic: tps65941: Add support for tps65941 family of PMICs
>   power: regulator: tps65941: add regulator support
>   arm: mach-k3: am6_init: Initialize AVS class 0
>   arm: mach-k3: j721e_init: Initialize avs class 0
>   arm: dts: k3-am654-r5-base-board: Add VTM node
>   arm: dts: k3-j721e-r5-common-proc-board: Add VTM node
>   arm: dts: k3-j721e-r5-common: Add tps65941 node and dependent
>     wkup_i2c0 node
>   arm: dts: k3-j721e-r5-common-proc-board: Hook buck12_reg to vtm supply
>   configs: j721e_evm_r5_defconfig: Enable AVS Class 0 & dependent
>     configs
> 
> Tero Kristo (7):
>   misc: k3_avs: add driver for K3 Adaptive Voltage Scaling Class 0
>   power: regulator: tps6236x: add support for tps6236x regulators
>   arm: dts: k3-am654-r5-base-board: enable wkup_i2c0 driver for spl
>   arm: dts: k3-am654-r5-base-board: add supply rail for MPU
>   arm: dts: k3-am654-r5-base-board: enable wkup_vtm0 node and link in
>     supplies
>   configs: am65x_evm_r5_defconfig: Enable TPS62363 regulator support
>   configs: am65x_evm_r5_defconfig: Enable AVS class 0 support
> 
>  arch/arm/dts/k3-am654-r5-base-board.dts       |  27 ++
>  arch/arm/dts/k3-j721e-mcu-wakeup.dtsi         |  11 +
>  .../arm/dts/k3-j721e-r5-common-proc-board.dts |  44 ++
>  arch/arm/mach-k3/am6_init.c                   |   7 +
>  arch/arm/mach-k3/j721e_init.c                 |   7 +
>  configs/am65x_evm_r5_defconfig                |   2 +
>  configs/j721e_evm_r5_defconfig                |   9 +
>  drivers/clk/clk-ti-sci.c                      |   5 +
>  drivers/misc/Kconfig                          |   9 +
>  drivers/misc/Makefile                         |   1 +
>  drivers/misc/k3_avs.c                         | 388 +++++++++++++++++
>  drivers/power/pmic/Kconfig                    |   7 +
>  drivers/power/pmic/Makefile                   |   1 +
>  drivers/power/pmic/tps65941.c                 |  83 ++++
>  drivers/power/regulator/Kconfig               |  20 +
>  drivers/power/regulator/Makefile              |   2 +
>  drivers/power/regulator/tps62360_regulator.c  | 123 ++++++
>  drivers/power/regulator/tps65941_regulator.c  | 407 ++++++++++++++++++
>  include/k3-avs.h                              |  30 ++
>  include/power/tps65941.h                      |  26 ++
>  20 files changed, 1209 insertions(+)
>  create mode 100644 drivers/misc/k3_avs.c
>  create mode 100644 drivers/power/pmic/tps65941.c
>  create mode 100644 drivers/power/regulator/tps62360_regulator.c
>  create mode 100644 drivers/power/regulator/tps65941_regulator.c
>  create mode 100644 include/k3-avs.h
>  create mode 100644 include/power/tps65941.h
>
Keerthy Nov. 5, 2019, 5:33 a.m. UTC | #2
On 24/10/19 3:45 PM, Lokesh Vutla wrote:
> 
> 
> On 24/10/19 3:00 PM, Keerthy wrote:
>> Adaptive Voltage Scaling is a technology used in TI SoCs to optimize
>> the operating voltage based on characterization data written to efuse
>> during production.
>>
>> Add support for Adaptive Voltage scaling class 0 support
>> for AM6 family of devices. Adaptive voltage scaling class 0
>> implies that optimized voltage values for a particular OPP
>> of a particular voltage domain are read from Efuse and programmed
>> on the pmic/regulator.
>>
>> Tested on AM654-EVM for MPU @800 MHz.
>> Tested on J721e-evm for MPU.
> 
> For the entire series:
> 
> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
> 
> Thanks and regards,
> Lokesh

Tom,

If no further comments can this series be pulled in?

- Keerthy

> 
>>
>> The series is based on top of the branch:
>>
>> https://github.com/lokeshvutla/u-boot/tree/devel/j721e-full-boot
>>
>> Changes in v3:
>>
>>    * Extended the support for j721e-evm.
>>    * Moved vtm node under r5-board dts.
>>
>> Changes in v2:
>>
>>    * Avoided creation of new uclass. AVS driver is now under misc.
>>
>> Keerthy (11):
>>    clk: clk-ti-sci: Notify AVS driver upon setting clock rate
>>    misc: k3_avs: Add j721e support
>>    power: pmic: tps65941: Add support for tps65941 family of PMICs
>>    power: regulator: tps65941: add regulator support
>>    arm: mach-k3: am6_init: Initialize AVS class 0
>>    arm: mach-k3: j721e_init: Initialize avs class 0
>>    arm: dts: k3-am654-r5-base-board: Add VTM node
>>    arm: dts: k3-j721e-r5-common-proc-board: Add VTM node
>>    arm: dts: k3-j721e-r5-common: Add tps65941 node and dependent
>>      wkup_i2c0 node
>>    arm: dts: k3-j721e-r5-common-proc-board: Hook buck12_reg to vtm supply
>>    configs: j721e_evm_r5_defconfig: Enable AVS Class 0 & dependent
>>      configs
>>
>> Tero Kristo (7):
>>    misc: k3_avs: add driver for K3 Adaptive Voltage Scaling Class 0
>>    power: regulator: tps6236x: add support for tps6236x regulators
>>    arm: dts: k3-am654-r5-base-board: enable wkup_i2c0 driver for spl
>>    arm: dts: k3-am654-r5-base-board: add supply rail for MPU
>>    arm: dts: k3-am654-r5-base-board: enable wkup_vtm0 node and link in
>>      supplies
>>    configs: am65x_evm_r5_defconfig: Enable TPS62363 regulator support
>>    configs: am65x_evm_r5_defconfig: Enable AVS class 0 support
>>
>>   arch/arm/dts/k3-am654-r5-base-board.dts       |  27 ++
>>   arch/arm/dts/k3-j721e-mcu-wakeup.dtsi         |  11 +
>>   .../arm/dts/k3-j721e-r5-common-proc-board.dts |  44 ++
>>   arch/arm/mach-k3/am6_init.c                   |   7 +
>>   arch/arm/mach-k3/j721e_init.c                 |   7 +
>>   configs/am65x_evm_r5_defconfig                |   2 +
>>   configs/j721e_evm_r5_defconfig                |   9 +
>>   drivers/clk/clk-ti-sci.c                      |   5 +
>>   drivers/misc/Kconfig                          |   9 +
>>   drivers/misc/Makefile                         |   1 +
>>   drivers/misc/k3_avs.c                         | 388 +++++++++++++++++
>>   drivers/power/pmic/Kconfig                    |   7 +
>>   drivers/power/pmic/Makefile                   |   1 +
>>   drivers/power/pmic/tps65941.c                 |  83 ++++
>>   drivers/power/regulator/Kconfig               |  20 +
>>   drivers/power/regulator/Makefile              |   2 +
>>   drivers/power/regulator/tps62360_regulator.c  | 123 ++++++
>>   drivers/power/regulator/tps65941_regulator.c  | 407 ++++++++++++++++++
>>   include/k3-avs.h                              |  30 ++
>>   include/power/tps65941.h                      |  26 ++
>>   20 files changed, 1209 insertions(+)
>>   create mode 100644 drivers/misc/k3_avs.c
>>   create mode 100644 drivers/power/pmic/tps65941.c
>>   create mode 100644 drivers/power/regulator/tps62360_regulator.c
>>   create mode 100644 drivers/power/regulator/tps65941_regulator.c
>>   create mode 100644 include/k3-avs.h
>>   create mode 100644 include/power/tps65941.h
>>