diff mbox series

[U-Boot,v3,5/6] board/BuR: provide real clock-frequency instead a divider

Message ID 1515520896-18833-6-git-send-email-oe5hpm@oevsv.at
State Accepted
Delegated to: Anatolij Gustschin
Headers show
Series am335x-fb: support display PLL for lcd-clock / pixel-clock | expand

Commit Message

Hannes Schmelzer Jan. 9, 2018, 6:01 p.m. UTC
Actual am335x-fb implementation takes now a real clock frequency instead
a divider. So this component doesn't need to know anymore some base
frequency of the LCDC, we simply provide the pixel-clock frequency.

Signed-off-by: Hannes Schmelzer <oe5hpm@oevsv.at>

---

Changes in v3: None
Changes in v2:
- board/BuR/common: fix the !CONFIG_USE_FDT case

 board/BuR/common/common.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

Comments

Anatolij Gustschin Jan. 10, 2018, 1:08 p.m. UTC | #1
On Tue,  9 Jan 2018 19:01:35 +0100
Hannes Schmelzer oe5hpm@oevsv.at wrote:

> Actual am335x-fb implementation takes now a real clock frequency instead
> a divider. So this component doesn't need to know anymore some base
> frequency of the LCDC, we simply provide the pixel-clock frequency.
> 
> Signed-off-by: Hannes Schmelzer <oe5hpm@oevsv.at>

Reviewed-by: Anatolij Gustschin <agust@denx.de>
diff mbox series

Patch

diff --git a/board/BuR/common/common.c b/board/BuR/common/common.c
index 7e49cdf..f2d8a65 100644
--- a/board/BuR/common/common.c
+++ b/board/BuR/common/common.c
@@ -146,13 +146,7 @@  int load_lcdtiming(struct am335x_lcdpanel *panel)
 	pnltmp.vsw = FDTPROP(PATHTIM, "vsync-len");
 	pnltmp.pup_delay = FDTPROP(PATHTIM, "pupdelay");
 	pnltmp.pon_delay = FDTPROP(PATHTIM, "pondelay");
-
-	/* calc. proper clk-divisor */
-	dtbprop = FDTPROP(PATHTIM, "clock-frequency");
-	if (dtbprop != ~0UL)
-		pnltmp.pxl_clk_div = 192000000 / dtbprop;
-	else
-		pnltmp.pxl_clk_div = ~0UL;
+	pnltmp.pxl_clk = FDTPROP(PATHTIM, "clock-frequency");
 
 	/* check polarity of control-signals */
 	dtbprop = FDTPROP(PATHTIM, "hsync-active");
@@ -202,7 +196,7 @@  int load_lcdtiming(struct am335x_lcdpanel *panel)
 	pnltmp.vfp = env_get_ulong("ds1_vfp", 10, ~0UL);
 	pnltmp.vbp = env_get_ulong("ds1_vbp", 10, ~0UL);
 	pnltmp.vsw = env_get_ulong("ds1_vsw", 10, ~0UL);
-	pnltmp.pxl_clk_div = env_get_ulong("ds1_pxlclkdiv", 10, ~0UL);
+	pnltmp.pxl_clk = env_get_ulong("ds1_pxlclk", 10, ~0UL);
 	pnltmp.pol = env_get_ulong("ds1_pol", 16, ~0UL);
 	pnltmp.pup_delay = env_get_ulong("ds1_pupdelay", 10, ~0UL);
 	pnltmp.pon_delay = env_get_ulong("ds1_tondelay", 10, ~0UL);
@@ -218,7 +212,7 @@  int load_lcdtiming(struct am335x_lcdpanel *panel)
 	   ~0UL == (pnltmp.vfp) ||
 	   ~0UL == (pnltmp.vbp) ||
 	   ~0UL == (pnltmp.vsw) ||
-	   ~0UL == (pnltmp.pxl_clk_div) ||
+	   ~0UL == (pnltmp.pxl_clk) ||
 	   ~0UL == (pnltmp.pol) ||
 	   ~0UL == (pnltmp.pup_delay) ||
 	   ~0UL == (pnltmp.pon_delay)
@@ -241,7 +235,7 @@  int load_lcdtiming(struct am335x_lcdpanel *panel)
 			pnltmp.hactive, pnltmp.vactive, pnltmp.bpp,
 			pnltmp.hfp, pnltmp.hbp, pnltmp.hsw,
 			pnltmp.vfp, pnltmp.vbp, pnltmp.vsw,
-			pnltmp.pxl_clk_div, pnltmp.pol, pnltmp.pon_delay);
+			pnltmp.pxl_clk, pnltmp.pol, pnltmp.pon_delay);
 
 		return -1;
 	}