Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'regulator-fix-v6.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator

Pull regulator fixes from Mark Brown:
"A couple of additional changes, one ensuring we give AXP717 enough
time to stabilise after changing voltages which fixes serious
stability issues on some platforms and another documenting the DT
support required for the Qualcomm WCN6750"

* tag 'regulator-fix-v6.13-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
regulator: axp20x: AXP717: set ramp_delay
regulator: dt-bindings: qcom,qca6390-pmu: document wcn6750-pmu

+51 -12
+27
Documentation/devicetree/bindings/regulator/qcom,qca6390-pmu.yaml
··· 18 18 compatible: 19 19 enum: 20 20 - qcom,qca6390-pmu 21 + - qcom,wcn6750-pmu 21 22 - qcom,wcn6855-pmu 22 23 - qcom,wcn7850-pmu 23 24 ··· 27 26 28 27 vddaon-supply: 29 28 description: VDD_AON supply regulator handle 29 + 30 + vddasd-supply: 31 + description: VDD_ASD supply regulator handle 30 32 31 33 vdddig-supply: 32 34 description: VDD_DIG supply regulator handle ··· 46 42 vddio1p2-supply: 47 43 description: VDD_IO_1P2 supply regulator handle 48 44 45 + vddrfa0p8-supply: 46 + description: VDD_RFA_0P8 supply regulator handle 47 + 49 48 vddrfa0p95-supply: 50 49 description: VDD_RFA_0P95 supply regulator handle 51 50 ··· 58 51 vddrfa1p3-supply: 59 52 description: VDD_RFA_1P3 supply regulator handle 60 53 54 + vddrfa1p7-supply: 55 + description: VDD_RFA_1P7 supply regulator handle 56 + 61 57 vddrfa1p8-supply: 62 58 description: VDD_RFA_1P8 supply regulator handle 63 59 64 60 vddrfa1p9-supply: 65 61 description: VDD_RFA_1P9 supply regulator handle 62 + 63 + vddrfa2p2-supply: 64 + description: VDD_RFA_2P2 supply regulator handle 66 65 67 66 vddpcie1p3-supply: 68 67 description: VDD_PCIE_1P3 supply regulator handle ··· 132 119 - vddpcie1p3-supply 133 120 - vddpcie1p9-supply 134 121 - vddio-supply 122 + - if: 123 + properties: 124 + compatible: 125 + contains: 126 + const: qcom,wcn6750-pmu 127 + then: 128 + required: 129 + - vddaon-supply 130 + - vddasd-supply 131 + - vddpmu-supply 132 + - vddrfa0p8-supply 133 + - vddrfa1p2-supply 134 + - vddrfa1p7-supply 135 + - vddrfa2p2-supply 135 136 - if: 136 137 properties: 137 138 compatible:
+24 -12
drivers/regulator/axp20x-regulator.c
··· 371 371 .ops = &axp20x_ops, \ 372 372 } 373 373 374 - #define AXP_DESC(_family, _id, _match, _supply, _min, _max, _step, _vreg, \ 375 - _vmask, _ereg, _emask) \ 374 + #define AXP_DESC_DELAY(_family, _id, _match, _supply, _min, _max, _step, _vreg, \ 375 + _vmask, _ereg, _emask, _ramp_delay) \ 376 376 [_family##_##_id] = { \ 377 377 .name = (_match), \ 378 378 .supply_name = (_supply), \ ··· 388 388 .vsel_mask = (_vmask), \ 389 389 .enable_reg = (_ereg), \ 390 390 .enable_mask = (_emask), \ 391 + .ramp_delay = (_ramp_delay), \ 391 392 .ops = &axp20x_ops, \ 392 393 } 394 + 395 + #define AXP_DESC(_family, _id, _match, _supply, _min, _max, _step, _vreg, \ 396 + _vmask, _ereg, _emask) \ 397 + AXP_DESC_DELAY(_family, _id, _match, _supply, _min, _max, _step, _vreg, \ 398 + _vmask, _ereg, _emask, 0) 393 399 394 400 #define AXP_DESC_SW(_family, _id, _match, _supply, _ereg, _emask) \ 395 401 [_family##_##_id] = { \ ··· 425 419 .ops = &axp20x_ops_fixed \ 426 420 } 427 421 428 - #define AXP_DESC_RANGES(_family, _id, _match, _supply, _ranges, _n_voltages, \ 429 - _vreg, _vmask, _ereg, _emask) \ 422 + #define AXP_DESC_RANGES_DELAY(_family, _id, _match, _supply, _ranges, _n_voltages, \ 423 + _vreg, _vmask, _ereg, _emask, _ramp_delay) \ 430 424 [_family##_##_id] = { \ 431 425 .name = (_match), \ 432 426 .supply_name = (_supply), \ ··· 442 436 .enable_mask = (_emask), \ 443 437 .linear_ranges = (_ranges), \ 444 438 .n_linear_ranges = ARRAY_SIZE(_ranges), \ 439 + .ramp_delay = (_ramp_delay), \ 445 440 .ops = &axp20x_ops_range, \ 446 441 } 442 + 443 + #define AXP_DESC_RANGES(_family, _id, _match, _supply, _ranges, _n_voltages, \ 444 + _vreg, _vmask, _ereg, _emask) \ 445 + AXP_DESC_RANGES_DELAY(_family, _id, _match, _supply, _ranges, \ 446 + _n_voltages, _vreg, _vmask, _ereg, _emask, 0) 447 447 448 448 static const int axp209_dcdc2_ldo3_slew_rates[] = { 449 449 1600, ··· 793 781 }; 794 782 795 783 static const struct regulator_desc axp717_regulators[] = { 796 - AXP_DESC_RANGES(AXP717, DCDC1, "dcdc1", "vin1", 784 + AXP_DESC_RANGES_DELAY(AXP717, DCDC1, "dcdc1", "vin1", 797 785 axp717_dcdc1_ranges, AXP717_DCDC1_NUM_VOLTAGES, 798 786 AXP717_DCDC1_CONTROL, AXP717_DCDC_V_OUT_MASK, 799 - AXP717_DCDC_OUTPUT_CONTROL, BIT(0)), 800 - AXP_DESC_RANGES(AXP717, DCDC2, "dcdc2", "vin2", 787 + AXP717_DCDC_OUTPUT_CONTROL, BIT(0), 640), 788 + AXP_DESC_RANGES_DELAY(AXP717, DCDC2, "dcdc2", "vin2", 801 789 axp717_dcdc2_ranges, AXP717_DCDC2_NUM_VOLTAGES, 802 790 AXP717_DCDC2_CONTROL, AXP717_DCDC_V_OUT_MASK, 803 - AXP717_DCDC_OUTPUT_CONTROL, BIT(1)), 804 - AXP_DESC_RANGES(AXP717, DCDC3, "dcdc3", "vin3", 791 + AXP717_DCDC_OUTPUT_CONTROL, BIT(1), 640), 792 + AXP_DESC_RANGES_DELAY(AXP717, DCDC3, "dcdc3", "vin3", 805 793 axp717_dcdc3_ranges, AXP717_DCDC3_NUM_VOLTAGES, 806 794 AXP717_DCDC3_CONTROL, AXP717_DCDC_V_OUT_MASK, 807 - AXP717_DCDC_OUTPUT_CONTROL, BIT(2)), 808 - AXP_DESC(AXP717, DCDC4, "dcdc4", "vin4", 1000, 3700, 100, 795 + AXP717_DCDC_OUTPUT_CONTROL, BIT(2), 640), 796 + AXP_DESC_DELAY(AXP717, DCDC4, "dcdc4", "vin4", 1000, 3700, 100, 809 797 AXP717_DCDC4_CONTROL, AXP717_DCDC_V_OUT_MASK, 810 - AXP717_DCDC_OUTPUT_CONTROL, BIT(3)), 798 + AXP717_DCDC_OUTPUT_CONTROL, BIT(3), 6400), 811 799 AXP_DESC(AXP717, ALDO1, "aldo1", "aldoin", 500, 3500, 100, 812 800 AXP717_ALDO1_CONTROL, AXP717_LDO_V_OUT_MASK, 813 801 AXP717_LDO0_OUTPUT_CONTROL, BIT(0)),