Message ID | 20190902125359.18001-3-tomi.valkeinen@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/omap: misc improvements | expand |
Hi Tomi, Thank you for the path. On Mon, Sep 02, 2019 at 03:53:54PM +0300, Tomi Valkeinen wrote: > From: Alejandro Hernandez <ajhernandez@ti.com> > > A "HDMI I2C Master Error" is sometimes reported with the current DDC SCL > timings. The current settings for a 10us SCL period (100 KHz) causes the > error with some displays. This patch increases the SCL signal period > from 10us to 10.2us, with the new settings the error is not observed > It would be useful to document what those "some displays" are if you can. Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Signed-off-by: Alejandro Hernandez <ajhernandez@ti.com> > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> > --- > drivers/gpu/drm/omapdrm/dss/hdmi5_core.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c b/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c > index 7400fb99d453..4c588ec7634a 100644 > --- a/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c > +++ b/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c > @@ -39,8 +39,8 @@ static void hdmi_core_ddc_init(struct hdmi_core_data *core) > { > void __iomem *base = core->base; > const unsigned long long iclk = 266000000; /* DSS L3 ICLK */ > - const unsigned int ss_scl_high = 4600; /* ns */ > - const unsigned int ss_scl_low = 5400; /* ns */ > + const unsigned int ss_scl_high = 4700; /* ns */ > + const unsigned int ss_scl_low = 5500; /* ns */ > const unsigned int fs_scl_high = 600; /* ns */ > const unsigned int fs_scl_low = 1300; /* ns */ > const unsigned int sda_hold = 1000; /* ns */
On 03/09/2019 17:23, Laurent Pinchart wrote: > Hi Tomi, > > Thank you for the path. > > On Mon, Sep 02, 2019 at 03:53:54PM +0300, Tomi Valkeinen wrote: >> From: Alejandro Hernandez <ajhernandez@ti.com> >> >> A "HDMI I2C Master Error" is sometimes reported with the current DDC SCL >> timings. The current settings for a 10us SCL period (100 KHz) causes the >> error with some displays. This patch increases the SCL signal period >> from 10us to 10.2us, with the new settings the error is not observed >> > > It would be useful to document what those "some displays" are if you > can. Unfortunately I have no idea. This was quite a while ago. Alejandro, do you recall? Tomi
On 9/26/19 8:54 AM, Tomi Valkeinen wrote: > On 03/09/2019 17:23, Laurent Pinchart wrote: >> Hi Tomi, >> >> Thank you for the path. >> >> On Mon, Sep 02, 2019 at 03:53:54PM +0300, Tomi Valkeinen wrote: >>> From: Alejandro Hernandez <ajhernandez@ti.com> >>> >>> A "HDMI I2C Master Error" is sometimes reported with the current DDC >>> SCL >>> timings. The current settings for a 10us SCL period (100 KHz) causes >>> the >>> error with some displays. This patch increases the SCL signal period >>> from 10us to 10.2us, with the new settings the error is not observed >>> >> >> It would be useful to document what those "some displays" are if you >> can. > > Unfortunately I have no idea. This was quite a while ago. > > Alejandro, do you recall? Not at this point, we threw out a bunch of equipment out during the move to the new office last year. I could only find one and it has no identifying information on it. Alejandro > > Tomi >
diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c b/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c index 7400fb99d453..4c588ec7634a 100644 --- a/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c +++ b/drivers/gpu/drm/omapdrm/dss/hdmi5_core.c @@ -39,8 +39,8 @@ static void hdmi_core_ddc_init(struct hdmi_core_data *core) { void __iomem *base = core->base; const unsigned long long iclk = 266000000; /* DSS L3 ICLK */ - const unsigned int ss_scl_high = 4600; /* ns */ - const unsigned int ss_scl_low = 5400; /* ns */ + const unsigned int ss_scl_high = 4700; /* ns */ + const unsigned int ss_scl_low = 5500; /* ns */ const unsigned int fs_scl_high = 600; /* ns */ const unsigned int fs_scl_low = 1300; /* ns */ const unsigned int sda_hold = 1000; /* ns */