
On Thursday 08 June 2017 12:20 AM, Emmanuel Vadot wrote:
On Fri, 12 May 2017 13:20:50 -0400 Tom Rini trini@konsulko.com wrote:
On Fri, May 05, 2017 at 12:59:10PM +0530, Lokesh Vutla wrote:
am335x supports various sysclk frequencies which can be determined using sysboot pins. PLLs should be configures based on this sysclk frequency. Add PLL configurations for all supported frequencies.
Signed-off-by: Lokesh Vutla lokeshvutla@ti.com Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/master, thanks!
-- Tom
Hello,
This appears to break beaglebone black support, reverting this commit make u-boot works again.
hmm..I see the problem. Here we are hard coding MPU freq to 1GHz even efuse say it is not supported(I am not sure why this is being done, may be Tom can give more details). Even in kernel I see that cpufreq is reading efuse to determine mpu frequency. Now that we have jitter optimized pll configurations, looks like unsupported freq is causing an issue. Can you see if the below patch helps?
------------8<------------------8<--------------------------
From 519035c54cef3f9156303b70322c02f10ec69e00 Mon Sep 17 00:00:00 2001
From: Lokesh Vutla lokeshvutla@ti.com Date: Thu, 8 Jun 2017 09:34:52 +0530 Subject: [PATCH] board: am335x: Do not harcode mpu freq for beagleboneblack
For all am335x boards the mpu frequency is determined by readin efuse. But for beagleboneblack it is hard coded to 1GHz irrespective of efuse settings. Due to which some boards fails to boot with not recommended frequency. Fix it to use efuse to determine mpu frequency.
Signed-off-by: Lokesh Vutla lokeshvutla@ti.com --- board/ti/am335x/board.c | 10 ---------- 1 file changed, 10 deletions(-)
diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c index 517965c0f0..4cf6617efb 100644 --- a/board/ti/am335x/board.c +++ b/board/ti/am335x/board.c @@ -294,9 +294,6 @@ const struct dpll_params *get_dpll_mpu_params(void) if (bone_not_connected_to_ac_power()) freq = MPUPLL_M_600;
- if (board_is_bone_lt()) - freq = MPUPLL_M_1000; - switch (freq) { case MPUPLL_M_1000: return &dpll_mpu_opp[ind][5]; @@ -336,13 +333,6 @@ static void scale_vcores_bone(int freq) if (bone_not_connected_to_ac_power()) freq = MPUPLL_M_600;
- /* - * Override what we have detected since we know if we have - * a Beaglebone Black it supports 1GHz. - */ - if (board_is_bone_lt()) - 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;