board: ti: am335x: Fix scale_vcore for beaglebones
commit0650798824
("board: am335x: Introduce scale_vcores") updated voltages of each board based on efuse. It updated beagle bone specific voltages under the condition board_is_bone(). But this is true only for BeagleBoneWhite. Due to which voltages are not configured for BBB, BBW as wrong device is being probed. So create a common function board_is_beaglebonex() which includes am335x based beagle family. Use this for updating voltages. Also remove extra if condition for selecting voltages which is done later using a switch case and match usb current limit as before the commit0650798824
. Fixes:0650798824
("board: am335x: Introduce scale_vcores") Reported-by: Emmanuel Vadot <manu@bidouilliste.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
This commit is contained in:
@@ -344,14 +344,6 @@ static void scale_vcores_bone(int freq)
|
|||||||
if (board_is_bone_lt())
|
if (board_is_bone_lt())
|
||||||
freq = MPUPLL_M_1000;
|
freq = MPUPLL_M_1000;
|
||||||
|
|
||||||
if (freq == MPUPLL_M_1000) {
|
|
||||||
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1800MA;
|
|
||||||
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1325MV;
|
|
||||||
} else {
|
|
||||||
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1300MA;
|
|
||||||
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1275MV;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (freq) {
|
switch (freq) {
|
||||||
case MPUPLL_M_1000:
|
case MPUPLL_M_1000:
|
||||||
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1325MV;
|
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1325MV;
|
||||||
@@ -359,15 +351,16 @@ static void scale_vcores_bone(int freq)
|
|||||||
break;
|
break;
|
||||||
case MPUPLL_M_800:
|
case MPUPLL_M_800:
|
||||||
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1275MV;
|
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1275MV;
|
||||||
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1800MA;
|
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1300MA;
|
||||||
break;
|
break;
|
||||||
case MPUPLL_M_720:
|
case MPUPLL_M_720:
|
||||||
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1200MV;
|
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1200MV;
|
||||||
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1800MA;
|
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1300MA;
|
||||||
break;
|
break;
|
||||||
case MPUPLL_M_600:
|
case MPUPLL_M_600:
|
||||||
case MPUPLL_M_500:
|
case MPUPLL_M_500:
|
||||||
case MPUPLL_M_300:
|
case MPUPLL_M_300:
|
||||||
|
default:
|
||||||
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1100MV;
|
mpu_vdd = TPS65217_DCDC_VOLT_SEL_1100MV;
|
||||||
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1300MA;
|
usb_cur_lim = TPS65217_USB_INPUT_CUR_LIMIT_1300MA;
|
||||||
break;
|
break;
|
||||||
@@ -470,7 +463,7 @@ void scale_vcores(void)
|
|||||||
gpi2c_init();
|
gpi2c_init();
|
||||||
freq = am335x_get_efuse_mpu_max_freq(cdev);
|
freq = am335x_get_efuse_mpu_max_freq(cdev);
|
||||||
|
|
||||||
if (board_is_bone())
|
if (board_is_beaglebonex())
|
||||||
scale_vcores_bone(freq);
|
scale_vcores_bone(freq);
|
||||||
else
|
else
|
||||||
scale_vcores_generic(freq);
|
scale_vcores_generic(freq);
|
||||||
|
@@ -39,6 +39,11 @@ static inline int board_is_bbg1(void)
|
|||||||
return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
|
return board_is_bone_lt() && !strncmp(board_ti_get_rev(), "BBG1", 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline int board_is_beaglebonex(void)
|
||||||
|
{
|
||||||
|
return board_is_bone() || board_is_bone_lt() || board_is_bbg1();
|
||||||
|
}
|
||||||
|
|
||||||
static inline int board_is_evm_sk(void)
|
static inline int board_is_evm_sk(void)
|
||||||
{
|
{
|
||||||
return board_ti_is("A335X_SK");
|
return board_ti_is("A335X_SK");
|
||||||
|
Reference in New Issue
Block a user