All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing
@ 2020-02-19  1:45 Kever Yang
  2020-02-19  1:45 ` [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT Kever Yang
  2020-02-20  3:04 ` [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing Simon Glass
  0 siblings, 2 replies; 5+ messages in thread
From: Kever Yang @ 2020-02-19  1:45 UTC (permalink / raw)
  To: u-boot

Use ofnode_decode_display_timing() instead of
fdtdec_decode_display_timing() to parse display timing, so that we can
support live DT.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
---

 drivers/video/rockchip/rk_lvds.c | 3 +--
 drivers/video/rockchip/rk_mipi.c | 3 +--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/video/rockchip/rk_lvds.c b/drivers/video/rockchip/rk_lvds.c
index cf5c0439b1..cae8bada32 100644
--- a/drivers/video/rockchip/rk_lvds.c
+++ b/drivers/video/rockchip/rk_lvds.c
@@ -160,8 +160,7 @@ int rk_lvds_enable(struct udevice *dev, int panel_bpp,
 
 int rk_lvds_read_timing(struct udevice *dev, struct display_timing *timing)
 {
-	if (fdtdec_decode_display_timing
-	    (gd->fdt_blob, dev_of_offset(dev), 0, timing)) {
+	if (ofnode_decode_display_timing(dev_ofnode(dev), 0, timing)) {
 		debug("%s: Failed to decode display timing\n", __func__);
 		return -EINVAL;
 	}
diff --git a/drivers/video/rockchip/rk_mipi.c b/drivers/video/rockchip/rk_mipi.c
index f9280e8607..a77bdfd24d 100644
--- a/drivers/video/rockchip/rk_mipi.c
+++ b/drivers/video/rockchip/rk_mipi.c
@@ -29,8 +29,7 @@ int rk_mipi_read_timing(struct udevice *dev,
 {
 	int ret;
 
-	ret = fdtdec_decode_display_timing(gd->fdt_blob, dev_of_offset(dev),
-					 0, timing);
+	ret = ofnode_decode_display_timing(dev_ofnode(dev), 0, timing);
 	if (ret) {
 		debug("%s: Failed to decode display timing (ret=%d)\n",
 		      __func__, ret);
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT
  2020-02-19  1:45 [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing Kever Yang
@ 2020-02-19  1:45 ` Kever Yang
  2020-02-20  3:04   ` Simon Glass
  2020-02-20  3:04 ` [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing Simon Glass
  1 sibling, 1 reply; 5+ messages in thread
From: Kever Yang @ 2020-02-19  1:45 UTC (permalink / raw)
  To: u-boot

Use ofnode_ or dev_ APIs instead of fdt_ and fdtdec_ APIs so that the
driver can support live DT.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
---

 drivers/video/rockchip/rk3288_mipi.c |  1 -
 drivers/video/rockchip/rk3399_mipi.c |  1 -
 drivers/video/rockchip/rk_edp.c      |  2 +-
 drivers/video/rockchip/rk_lvds.c     | 10 ++++------
 drivers/video/rockchip/rk_mipi.c     | 11 +++++------
 5 files changed, 10 insertions(+), 15 deletions(-)

diff --git a/drivers/video/rockchip/rk3288_mipi.c b/drivers/video/rockchip/rk3288_mipi.c
index 65891ce45c..5b2dc2ad02 100644
--- a/drivers/video/rockchip/rk3288_mipi.c
+++ b/drivers/video/rockchip/rk3288_mipi.c
@@ -8,7 +8,6 @@
 #include <clk.h>
 #include <display.h>
 #include <dm.h>
-#include <fdtdec.h>
 #include <panel.h>
 #include <regmap.h>
 #include "rk_mipi.h"
diff --git a/drivers/video/rockchip/rk3399_mipi.c b/drivers/video/rockchip/rk3399_mipi.c
index a5b7ba69a8..03e1349509 100644
--- a/drivers/video/rockchip/rk3399_mipi.c
+++ b/drivers/video/rockchip/rk3399_mipi.c
@@ -8,7 +8,6 @@
 #include <clk.h>
 #include <display.h>
 #include <dm.h>
-#include <fdtdec.h>
 #include <panel.h>
 #include <regmap.h>
 #include "rk_mipi.h"
diff --git a/drivers/video/rockchip/rk_edp.c b/drivers/video/rockchip/rk_edp.c
index 4330725a25..e617a974a5 100644
--- a/drivers/video/rockchip/rk_edp.c
+++ b/drivers/video/rockchip/rk_edp.c
@@ -995,7 +995,7 @@ static int rk_edp_ofdata_to_platdata(struct udevice *dev)
 {
 	struct rk_edp_priv *priv = dev_get_priv(dev);
 
-	priv->regs = (struct rk3288_edp *)devfdt_get_addr(dev);
+	priv->regs = dev_read_addr_ptr(dev);
 	priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
 
 	return 0;
diff --git a/drivers/video/rockchip/rk_lvds.c b/drivers/video/rockchip/rk_lvds.c
index cae8bada32..92e70f6317 100644
--- a/drivers/video/rockchip/rk_lvds.c
+++ b/drivers/video/rockchip/rk_lvds.c
@@ -171,13 +171,11 @@ int rk_lvds_read_timing(struct udevice *dev, struct display_timing *timing)
 static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
 {
 	struct rk_lvds_priv *priv = dev_get_priv(dev);
-	const void *blob = gd->fdt_blob;
-	int node = dev_of_offset(dev);
 	int ret;
-	priv->regs = (void *)devfdt_get_addr(dev);
+	priv->regs = dev_read_addr_ptr(dev);
 	priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
 
-	ret = fdtdec_get_int(blob, node, "rockchip,output", -1);
+	ret = dev_read_s32_default(dev, "rockchip,output", -1);
 	if (ret != -1) {
 		priv->output = ret;
 		debug("LVDS output : %d\n", ret);
@@ -186,7 +184,7 @@ static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
 		priv->output = LVDS_OUTPUT_RGB;
 	}
 
-	ret = fdtdec_get_int(blob, node, "rockchip,data-mapping", -1);
+	ret = dev_read_s32_default(dev, "rockchip,data-mapping", -1);
 	if (ret != -1) {
 		priv->format = ret;
 		debug("LVDS data-mapping : %d\n", ret);
@@ -195,7 +193,7 @@ static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
 		priv->format = LVDS_FORMAT_JEIDA;
 	}
 
-	ret = fdtdec_get_int(blob, node, "rockchip,data-width", -1);
+	ret = dev_read_s32_default(dev, "rockchip,data-width", -1);
 	if (ret != -1) {
 		debug("LVDS data-width : %d\n", ret);
 		if (ret == 24) {
diff --git a/drivers/video/rockchip/rk_mipi.c b/drivers/video/rockchip/rk_mipi.c
index a77bdfd24d..f1c21bb8d7 100644
--- a/drivers/video/rockchip/rk_mipi.c
+++ b/drivers/video/rockchip/rk_mipi.c
@@ -8,7 +8,6 @@
 #include <clk.h>
 #include <display.h>
 #include <dm.h>
-#include <fdtdec.h>
 #include <panel.h>
 #include <regmap.h>
 #include "rk_mipi.h"
@@ -76,7 +75,7 @@ static void rk_mipi_dsi_write(uintptr_t regs, u32 reg, u32 val)
 int rk_mipi_dsi_enable(struct udevice *dev,
 		       const struct display_timing *timing)
 {
-	int node, timing_node;
+	ofnode node, timing_node;
 	int val;
 	struct rk_mipi_priv *priv = dev_get_priv(dev);
 	uintptr_t regs = priv->regs;
@@ -119,10 +118,10 @@ int rk_mipi_dsi_enable(struct udevice *dev,
 	rk_mipi_dsi_write(regs, VID_PKT_SIZE, 0x4b0);
 
 	/* Set dpi color coding depth 24 bit */
-	timing_node = fdt_subnode_offset(gd->fdt_blob, dev_of_offset(dev),
-									 "display-timings");
-	node = fdt_first_subnode(gd->fdt_blob, timing_node);
-	val = fdtdec_get_int(gd->fdt_blob, node, "bits-per-pixel", -1);
+	timing_node = ofnode_find_subnode(dev->node, "display-timings");
+	node = ofnode_first_subnode(timing_node);
+
+	val = ofnode_read_u32_default(node, "bits-per-pixel", -1);
 	switch (val) {
 	case 16:
 		rk_mipi_dsi_write(regs, DPI_COLOR_CODING, DPI_16BIT_CFG_1);
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing
  2020-02-19  1:45 [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing Kever Yang
  2020-02-19  1:45 ` [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT Kever Yang
@ 2020-02-20  3:04 ` Simon Glass
  1 sibling, 0 replies; 5+ messages in thread
From: Simon Glass @ 2020-02-20  3:04 UTC (permalink / raw)
  To: u-boot

On Tue, 18 Feb 2020 at 18:45, Kever Yang <kever.yang@rock-chips.com> wrote:
>
> Use ofnode_decode_display_timing() instead of
> fdtdec_decode_display_timing() to parse display timing, so that we can
> support live DT.
>
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> ---
>
>  drivers/video/rockchip/rk_lvds.c | 3 +--
>  drivers/video/rockchip/rk_mipi.c | 3 +--
>  2 files changed, 2 insertions(+), 4 deletions(-)

Reviewed-by: Simon Glass <sjg@chromium.org>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT
  2020-02-19  1:45 ` [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT Kever Yang
@ 2020-02-20  3:04   ` Simon Glass
  2020-03-29 14:26     ` Simon Glass
  0 siblings, 1 reply; 5+ messages in thread
From: Simon Glass @ 2020-02-20  3:04 UTC (permalink / raw)
  To: u-boot

Hi Kever,

On Tue, 18 Feb 2020 at 18:45, Kever Yang <kever.yang@rock-chips.com> wrote:
>
> Use ofnode_ or dev_ APIs instead of fdt_ and fdtdec_ APIs so that the
> driver can support live DT.
>
> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> ---
>
>  drivers/video/rockchip/rk3288_mipi.c |  1 -
>  drivers/video/rockchip/rk3399_mipi.c |  1 -
>  drivers/video/rockchip/rk_edp.c      |  2 +-
>  drivers/video/rockchip/rk_lvds.c     | 10 ++++------
>  drivers/video/rockchip/rk_mipi.c     | 11 +++++------
>  5 files changed, 10 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/video/rockchip/rk3288_mipi.c b/drivers/video/rockchip/rk3288_mipi.c
> index 65891ce45c..5b2dc2ad02 100644
> --- a/drivers/video/rockchip/rk3288_mipi.c
> +++ b/drivers/video/rockchip/rk3288_mipi.c
> @@ -8,7 +8,6 @@
>  #include <clk.h>
>  #include <display.h>
>  #include <dm.h>
> -#include <fdtdec.h>
>  #include <panel.h>
>  #include <regmap.h>
>  #include "rk_mipi.h"
> diff --git a/drivers/video/rockchip/rk3399_mipi.c b/drivers/video/rockchip/rk3399_mipi.c
> index a5b7ba69a8..03e1349509 100644
> --- a/drivers/video/rockchip/rk3399_mipi.c
> +++ b/drivers/video/rockchip/rk3399_mipi.c
> @@ -8,7 +8,6 @@
>  #include <clk.h>
>  #include <display.h>
>  #include <dm.h>
> -#include <fdtdec.h>
>  #include <panel.h>
>  #include <regmap.h>
>  #include "rk_mipi.h"
> diff --git a/drivers/video/rockchip/rk_edp.c b/drivers/video/rockchip/rk_edp.c
> index 4330725a25..e617a974a5 100644
> --- a/drivers/video/rockchip/rk_edp.c
> +++ b/drivers/video/rockchip/rk_edp.c
> @@ -995,7 +995,7 @@ static int rk_edp_ofdata_to_platdata(struct udevice *dev)
>  {
>         struct rk_edp_priv *priv = dev_get_priv(dev);
>
> -       priv->regs = (struct rk3288_edp *)devfdt_get_addr(dev);
> +       priv->regs = dev_read_addr_ptr(dev);
>         priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
>
>         return 0;
> diff --git a/drivers/video/rockchip/rk_lvds.c b/drivers/video/rockchip/rk_lvds.c
> index cae8bada32..92e70f6317 100644
> --- a/drivers/video/rockchip/rk_lvds.c
> +++ b/drivers/video/rockchip/rk_lvds.c
> @@ -171,13 +171,11 @@ int rk_lvds_read_timing(struct udevice *dev, struct display_timing *timing)
>  static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
>  {
>         struct rk_lvds_priv *priv = dev_get_priv(dev);
> -       const void *blob = gd->fdt_blob;
> -       int node = dev_of_offset(dev);
>         int ret;
> -       priv->regs = (void *)devfdt_get_addr(dev);
> +       priv->regs = dev_read_addr_ptr(dev);
>         priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
>
> -       ret = fdtdec_get_int(blob, node, "rockchip,output", -1);
> +       ret = dev_read_s32_default(dev, "rockchip,output", -1);

if (!dev_read_s32(...) {

>         if (ret != -1) {
>                 priv->output = ret;
>                 debug("LVDS output : %d\n", ret);
> @@ -186,7 +184,7 @@ static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
>                 priv->output = LVDS_OUTPUT_RGB;
>         }
>
> -       ret = fdtdec_get_int(blob, node, "rockchip,data-mapping", -1);
> +       ret = dev_read_s32_default(dev, "rockchip,data-mapping", -1);
>         if (ret != -1) {

Same here

>                 priv->format = ret;
>                 debug("LVDS data-mapping : %d\n", ret);
> @@ -195,7 +193,7 @@ static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
>                 priv->format = LVDS_FORMAT_JEIDA;
>         }
>
> -       ret = fdtdec_get_int(blob, node, "rockchip,data-width", -1);
> +       ret = dev_read_s32_default(dev, "rockchip,data-width", -1);

and here

>         if (ret != -1) {
>                 debug("LVDS data-width : %d\n", ret);
>                 if (ret == 24) {
> diff --git a/drivers/video/rockchip/rk_mipi.c b/drivers/video/rockchip/rk_mipi.c
> index a77bdfd24d..f1c21bb8d7 100644
> --- a/drivers/video/rockchip/rk_mipi.c
> +++ b/drivers/video/rockchip/rk_mipi.c
> @@ -8,7 +8,6 @@
>  #include <clk.h>
>  #include <display.h>
>  #include <dm.h>
> -#include <fdtdec.h>
>  #include <panel.h>
>  #include <regmap.h>
>  #include "rk_mipi.h"
> @@ -76,7 +75,7 @@ static void rk_mipi_dsi_write(uintptr_t regs, u32 reg, u32 val)
>  int rk_mipi_dsi_enable(struct udevice *dev,
>                        const struct display_timing *timing)
>  {
> -       int node, timing_node;
> +       ofnode node, timing_node;
>         int val;
>         struct rk_mipi_priv *priv = dev_get_priv(dev);
>         uintptr_t regs = priv->regs;
> @@ -119,10 +118,10 @@ int rk_mipi_dsi_enable(struct udevice *dev,
>         rk_mipi_dsi_write(regs, VID_PKT_SIZE, 0x4b0);
>
>         /* Set dpi color coding depth 24 bit */
> -       timing_node = fdt_subnode_offset(gd->fdt_blob, dev_of_offset(dev),
> -                                                                        "display-timings");
> -       node = fdt_first_subnode(gd->fdt_blob, timing_node);
> -       val = fdtdec_get_int(gd->fdt_blob, node, "bits-per-pixel", -1);
> +       timing_node = ofnode_find_subnode(dev->node, "display-timings");
> +       node = ofnode_first_subnode(timing_node);
> +
> +       val = ofnode_read_u32_default(node, "bits-per-pixel", -1);
>         switch (val) {
>         case 16:
>                 rk_mipi_dsi_write(regs, DPI_COLOR_CODING, DPI_16BIT_CFG_1);
> --
> 2.17.1
>

Regards,
Simon

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT
  2020-02-20  3:04   ` Simon Glass
@ 2020-03-29 14:26     ` Simon Glass
  0 siblings, 0 replies; 5+ messages in thread
From: Simon Glass @ 2020-03-29 14:26 UTC (permalink / raw)
  To: u-boot

On Wed, 19 Feb 2020 at 20:04, Simon Glass <sjg@chromium.org> wrote:
>
> Hi Kever,
>
> On Tue, 18 Feb 2020 at 18:45, Kever Yang <kever.yang@rock-chips.com> wrote:
> >
> > Use ofnode_ or dev_ APIs instead of fdt_ and fdtdec_ APIs so that the
> > driver can support live DT.
> >
> > Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
> > ---
> >
> >  drivers/video/rockchip/rk3288_mipi.c |  1 -
> >  drivers/video/rockchip/rk3399_mipi.c |  1 -
> >  drivers/video/rockchip/rk_edp.c      |  2 +-
> >  drivers/video/rockchip/rk_lvds.c     | 10 ++++------
> >  drivers/video/rockchip/rk_mipi.c     | 11 +++++------
> >  5 files changed, 10 insertions(+), 15 deletions(-)
> >
> > diff --git a/drivers/video/rockchip/rk3288_mipi.c b/drivers/video/rockchip/rk3288_mipi.c
> > index 65891ce45c..5b2dc2ad02 100644
> > --- a/drivers/video/rockchip/rk3288_mipi.c
> > +++ b/drivers/video/rockchip/rk3288_mipi.c
> > @@ -8,7 +8,6 @@
> >  #include <clk.h>
> >  #include <display.h>
> >  #include <dm.h>
> > -#include <fdtdec.h>
> >  #include <panel.h>
> >  #include <regmap.h>
> >  #include "rk_mipi.h"
> > diff --git a/drivers/video/rockchip/rk3399_mipi.c b/drivers/video/rockchip/rk3399_mipi.c
> > index a5b7ba69a8..03e1349509 100644
> > --- a/drivers/video/rockchip/rk3399_mipi.c
> > +++ b/drivers/video/rockchip/rk3399_mipi.c
> > @@ -8,7 +8,6 @@
> >  #include <clk.h>
> >  #include <display.h>
> >  #include <dm.h>
> > -#include <fdtdec.h>
> >  #include <panel.h>
> >  #include <regmap.h>
> >  #include "rk_mipi.h"
> > diff --git a/drivers/video/rockchip/rk_edp.c b/drivers/video/rockchip/rk_edp.c
> > index 4330725a25..e617a974a5 100644
> > --- a/drivers/video/rockchip/rk_edp.c
> > +++ b/drivers/video/rockchip/rk_edp.c
> > @@ -995,7 +995,7 @@ static int rk_edp_ofdata_to_platdata(struct udevice *dev)
> >  {
> >         struct rk_edp_priv *priv = dev_get_priv(dev);
> >
> > -       priv->regs = (struct rk3288_edp *)devfdt_get_addr(dev);
> > +       priv->regs = dev_read_addr_ptr(dev);
> >         priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
> >
> >         return 0;
> > diff --git a/drivers/video/rockchip/rk_lvds.c b/drivers/video/rockchip/rk_lvds.c
> > index cae8bada32..92e70f6317 100644
> > --- a/drivers/video/rockchip/rk_lvds.c
> > +++ b/drivers/video/rockchip/rk_lvds.c
> > @@ -171,13 +171,11 @@ int rk_lvds_read_timing(struct udevice *dev, struct display_timing *timing)
> >  static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
> >  {
> >         struct rk_lvds_priv *priv = dev_get_priv(dev);
> > -       const void *blob = gd->fdt_blob;
> > -       int node = dev_of_offset(dev);
> >         int ret;
> > -       priv->regs = (void *)devfdt_get_addr(dev);
> > +       priv->regs = dev_read_addr_ptr(dev);
> >         priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
> >
> > -       ret = fdtdec_get_int(blob, node, "rockchip,output", -1);
> > +       ret = dev_read_s32_default(dev, "rockchip,output", -1);
>
> if (!dev_read_s32(...) {
>
> >         if (ret != -1) {
> >                 priv->output = ret;
> >                 debug("LVDS output : %d\n", ret);
> > @@ -186,7 +184,7 @@ static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
> >                 priv->output = LVDS_OUTPUT_RGB;
> >         }
> >
> > -       ret = fdtdec_get_int(blob, node, "rockchip,data-mapping", -1);
> > +       ret = dev_read_s32_default(dev, "rockchip,data-mapping", -1);
> >         if (ret != -1) {
>
> Same here
>
> >                 priv->format = ret;
> >                 debug("LVDS data-mapping : %d\n", ret);
> > @@ -195,7 +193,7 @@ static int rk_lvds_ofdata_to_platdata(struct udevice *dev)
> >                 priv->format = LVDS_FORMAT_JEIDA;
> >         }
> >
> > -       ret = fdtdec_get_int(blob, node, "rockchip,data-width", -1);
> > +       ret = dev_read_s32_default(dev, "rockchip,data-width", -1);
>
> and here
>
> >         if (ret != -1) {
> >                 debug("LVDS data-width : %d\n", ret);
> >                 if (ret == 24) {
> > diff --git a/drivers/video/rockchip/rk_mipi.c b/drivers/video/rockchip/rk_mipi.c
> > index a77bdfd24d..f1c21bb8d7 100644
> > --- a/drivers/video/rockchip/rk_mipi.c
> > +++ b/drivers/video/rockchip/rk_mipi.c
> > @@ -8,7 +8,6 @@
> >  #include <clk.h>
> >  #include <display.h>
> >  #include <dm.h>
> > -#include <fdtdec.h>
> >  #include <panel.h>
> >  #include <regmap.h>
> >  #include "rk_mipi.h"
> > @@ -76,7 +75,7 @@ static void rk_mipi_dsi_write(uintptr_t regs, u32 reg, u32 val)
> >  int rk_mipi_dsi_enable(struct udevice *dev,
> >                        const struct display_timing *timing)
> >  {
> > -       int node, timing_node;
> > +       ofnode node, timing_node;
> >         int val;
> >         struct rk_mipi_priv *priv = dev_get_priv(dev);
> >         uintptr_t regs = priv->regs;
> > @@ -119,10 +118,10 @@ int rk_mipi_dsi_enable(struct udevice *dev,
> >         rk_mipi_dsi_write(regs, VID_PKT_SIZE, 0x4b0);
> >
> >         /* Set dpi color coding depth 24 bit */
> > -       timing_node = fdt_subnode_offset(gd->fdt_blob, dev_of_offset(dev),
> > -                                                                        "display-timings");
> > -       node = fdt_first_subnode(gd->fdt_blob, timing_node);
> > -       val = fdtdec_get_int(gd->fdt_blob, node, "bits-per-pixel", -1);
> > +       timing_node = ofnode_find_subnode(dev->node, "display-timings");
> > +       node = ofnode_first_subnode(timing_node);
> > +
> > +       val = ofnode_read_u32_default(node, "bits-per-pixel", -1);
> >         switch (val) {
> >         case 16:
> >                 rk_mipi_dsi_write(regs, DPI_COLOR_CODING, DPI_16BIT_CFG_1);
> > --
> > 2.17.1
> >

Reviewed-by: Simon Glass <sjg@chromium.org>

Sorry, but this patch is better than the alternative v2 now that I see
the contortions that need to be used.


- Simon

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-03-29 14:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-19  1:45 [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing Kever Yang
2020-02-19  1:45 ` [PATCH 2/2] rockchip: video: Convert to use APIs which support live DT Kever Yang
2020-02-20  3:04   ` Simon Glass
2020-03-29 14:26     ` Simon Glass
2020-02-20  3:04 ` [PATCH 1/2] rockchip: video: Use ofnode_decode_display_timing() to parse timing Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.