From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> To: Brian Masney <masneyb@onstation.org> Cc: Andrzej Hajda <a.hajda@samsung.com>, bjorn.andersson@linaro.org, robh+dt@kernel.org, agross@kernel.org, narmstrong@baylibre.com, robdclark@gmail.com, sean@poorly.run, airlied@linux.ie, daniel@ffwll.ch, mark.rutland@arm.com, jonas@kwiboo.se, jernej.skrabec@siol.net, linus.walleij@linaro.org, enric.balletbo@collabora.com, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, freedreno@lists.freedesktop.org Subject: Re: [PATCH 05/11] drm/bridge: analogix-anx78xx: correct value of TX_P0 Date: Mon, 16 Sep 2019 13:49:07 +0300 [thread overview] Message-ID: <20190916104907.GB4734@pendragon.ideasonboard.com> (raw) In-Reply-To: <20190916103614.GA1644@onstation.org> Hi Brian, On Mon, Sep 16, 2019 at 06:36:14AM -0400, Brian Masney wrote: > On Mon, Sep 16, 2019 at 12:02:09PM +0200, Andrzej Hajda wrote: > > On 15.08.2019 02:48, Brian Masney wrote: > > > When attempting to configure this driver on a Nexus 5 phone (msm8974), > > > setting up the dummy i2c bus for TX_P0 would fail due to an -EBUSY > > > error. The downstream MSM kernel sources [1] shows that the proper value > > > for TX_P0 is 0x78, not 0x70, so correct the value to allow device > > > probing to succeed. > > > > > > [1] https://github.com/AICP/kernel_lge_hammerhead/blob/n7.1/drivers/video/slimport/slimport_tx_reg.h > > > > > > Signed-off-by: Brian Masney <masneyb@onstation.org> > > > --- > > > drivers/gpu/drm/bridge/analogix-anx78xx.h | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/drivers/gpu/drm/bridge/analogix-anx78xx.h b/drivers/gpu/drm/bridge/analogix-anx78xx.h > > > index 25e063bcecbc..bc511fc605c9 100644 > > > --- a/drivers/gpu/drm/bridge/analogix-anx78xx.h > > > +++ b/drivers/gpu/drm/bridge/analogix-anx78xx.h > > > @@ -6,7 +6,7 @@ > > > #ifndef __ANX78xx_H > > > #define __ANX78xx_H > > > > > > -#define TX_P0 0x70 > > > +#define TX_P0 0x78 > > > > > > This bothers me little. There are no upstream users, grepping android > > sources suggests that both values can be used [1][2] (grep for "#define > > TX_P0"), moreover there is code suggesting both values can be valid [3]. > > > > Could you verify datasheet which i2c slave addresses are valid for this > > chip, if both I guess this patch should be reworked. > > > > > > [1]: > > https://android.googlesource.com/kernel/msm/+/android-msm-flo-3.4-jb-mr2/drivers/misc/slimport_anx7808/slimport_tx_reg.h > > > > [2]: > > https://github.com/AndroidGX/SimpleGX-MM-6.0_H815_20d/blob/master/drivers/video/slimport/anx7812/slimport7812_tx_reg.h > > > > [3]: > > https://github.com/commaai/android_kernel_leeco_msm8996/blob/master/drivers/video/msm/mdss/dp/slimport_custom_declare.h#L73 > > This address is 0x78 on my Nexus 5. Given [3] above it looks like we > need to support both addresses. What do you think about moving these > addresses into device tree? Assuming that the device supports different addresses (I can't validate that as I don't have access to the datasheet), and different addresses need to be used on different systems, then the address to be used needs to be provided by the firmware (DT in this case). Two options are possible, either specifying the address explicitly in the device's DT node, or specifying free addresses (in the form of a white list or black list) and allocating an address from that pool. The latter has been discussed in a BoF at the Linux Plumbers Conference last week, https://linuxplumbersconf.org/event/4/contributions/542/. > The downstream and upstream kernel sources divide these addresses by two > to get the i2c address. Here's the code in upstream: > > https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/bridge/analogix-anx78xx.c#L1353 > https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/bridge/analogix-anx78xx.c#L41 > > I'm not sure why the actual i2c address isn't used in this code. -- Regards, Laurent Pinchart
WARNING: multiple messages have this Message-ID (diff)
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> To: Brian Masney <masneyb@onstation.org> Cc: mark.rutland@arm.com, devicetree@vger.kernel.org, jernej.skrabec@siol.net, narmstrong@baylibre.com, airlied@linux.ie, linux-kernel@vger.kernel.org, linus.walleij@linaro.org, jonas@kwiboo.se, agross@kernel.org, dri-devel@lists.freedesktop.org, bjorn.andersson@linaro.org, Andrzej Hajda <a.hajda@samsung.com>, robdclark@gmail.com, robh+dt@kernel.org, daniel@ffwll.ch, linux-arm-msm@vger.kernel.org, enric.balletbo@collabora.com, freedreno@lists.freedesktop.org, sean@poorly.run, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 05/11] drm/bridge: analogix-anx78xx: correct value of TX_P0 Date: Mon, 16 Sep 2019 13:49:07 +0300 [thread overview] Message-ID: <20190916104907.GB4734@pendragon.ideasonboard.com> (raw) In-Reply-To: <20190916103614.GA1644@onstation.org> Hi Brian, On Mon, Sep 16, 2019 at 06:36:14AM -0400, Brian Masney wrote: > On Mon, Sep 16, 2019 at 12:02:09PM +0200, Andrzej Hajda wrote: > > On 15.08.2019 02:48, Brian Masney wrote: > > > When attempting to configure this driver on a Nexus 5 phone (msm8974), > > > setting up the dummy i2c bus for TX_P0 would fail due to an -EBUSY > > > error. The downstream MSM kernel sources [1] shows that the proper value > > > for TX_P0 is 0x78, not 0x70, so correct the value to allow device > > > probing to succeed. > > > > > > [1] https://github.com/AICP/kernel_lge_hammerhead/blob/n7.1/drivers/video/slimport/slimport_tx_reg.h > > > > > > Signed-off-by: Brian Masney <masneyb@onstation.org> > > > --- > > > drivers/gpu/drm/bridge/analogix-anx78xx.h | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/drivers/gpu/drm/bridge/analogix-anx78xx.h b/drivers/gpu/drm/bridge/analogix-anx78xx.h > > > index 25e063bcecbc..bc511fc605c9 100644 > > > --- a/drivers/gpu/drm/bridge/analogix-anx78xx.h > > > +++ b/drivers/gpu/drm/bridge/analogix-anx78xx.h > > > @@ -6,7 +6,7 @@ > > > #ifndef __ANX78xx_H > > > #define __ANX78xx_H > > > > > > -#define TX_P0 0x70 > > > +#define TX_P0 0x78 > > > > > > This bothers me little. There are no upstream users, grepping android > > sources suggests that both values can be used [1][2] (grep for "#define > > TX_P0"), moreover there is code suggesting both values can be valid [3]. > > > > Could you verify datasheet which i2c slave addresses are valid for this > > chip, if both I guess this patch should be reworked. > > > > > > [1]: > > https://android.googlesource.com/kernel/msm/+/android-msm-flo-3.4-jb-mr2/drivers/misc/slimport_anx7808/slimport_tx_reg.h > > > > [2]: > > https://github.com/AndroidGX/SimpleGX-MM-6.0_H815_20d/blob/master/drivers/video/slimport/anx7812/slimport7812_tx_reg.h > > > > [3]: > > https://github.com/commaai/android_kernel_leeco_msm8996/blob/master/drivers/video/msm/mdss/dp/slimport_custom_declare.h#L73 > > This address is 0x78 on my Nexus 5. Given [3] above it looks like we > need to support both addresses. What do you think about moving these > addresses into device tree? Assuming that the device supports different addresses (I can't validate that as I don't have access to the datasheet), and different addresses need to be used on different systems, then the address to be used needs to be provided by the firmware (DT in this case). Two options are possible, either specifying the address explicitly in the device's DT node, or specifying free addresses (in the form of a white list or black list) and allocating an address from that pool. The latter has been discussed in a BoF at the Linux Plumbers Conference last week, https://linuxplumbersconf.org/event/4/contributions/542/. > The downstream and upstream kernel sources divide these addresses by two > to get the i2c address. Here's the code in upstream: > > https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/bridge/analogix-anx78xx.c#L1353 > https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/bridge/analogix-anx78xx.c#L41 > > I'm not sure why the actual i2c address isn't used in this code. -- Regards, Laurent Pinchart _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-09-16 10:49 UTC|newest] Thread overview: 100+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <CGME20190815004916epcas3p4d8a62e215eff5e227721d3449e6bfbd3@epcas3p4.samsung.com> 2019-08-15 0:48 ` [PATCH 00/11] ARM: dts: qcom: msm8974: add support for external display Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` [PATCH 01/11] dt-bindings: drm/bridge: analogix-anx78xx: add new variants Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:17 ` Linus Walleij 2019-08-15 8:17 ` Linus Walleij 2019-08-15 8:17 ` Linus Walleij 2019-08-27 16:20 ` Rob Herring 2019-08-27 16:20 ` Rob Herring 2019-08-15 0:48 ` [PATCH 02/11] " Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:17 ` Linus Walleij 2019-08-15 8:17 ` Linus Walleij 2019-08-15 8:17 ` Linus Walleij 2019-08-15 0:48 ` [PATCH 03/11] drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:35 ` Linus Walleij 2019-08-15 8:35 ` Linus Walleij 2019-08-15 8:35 ` Linus Walleij 2019-08-15 0:48 ` [PATCH 04/11] drm/bridge: analogix-anx78xx: convert to i2c_new_dummy_device Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:18 ` Linus Walleij 2019-08-15 8:18 ` Linus Walleij 2019-08-15 8:18 ` Linus Walleij 2019-08-15 0:48 ` [PATCH 05/11] drm/bridge: analogix-anx78xx: correct value of TX_P0 Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:24 ` Linus Walleij 2019-08-15 8:24 ` Linus Walleij 2019-08-15 8:24 ` Linus Walleij 2019-09-16 10:02 ` Andrzej Hajda 2019-09-16 10:02 ` Andrzej Hajda 2019-09-16 10:36 ` Brian Masney 2019-09-16 10:36 ` Brian Masney 2019-09-16 10:49 ` Laurent Pinchart [this message] 2019-09-16 10:49 ` Laurent Pinchart 2019-09-16 11:32 ` Enric Balletbo i Serra 2019-09-16 11:32 ` Enric Balletbo i Serra 2019-09-16 12:02 ` Brian Masney 2019-09-16 12:02 ` Brian Masney 2019-09-16 12:25 ` Andrzej Hajda 2019-09-16 12:25 ` Andrzej Hajda 2019-09-17 7:28 ` Andrzej Hajda 2019-09-17 7:28 ` Andrzej Hajda 2019-09-16 10:36 ` Enric Balletbo i Serra 2019-09-16 10:36 ` Enric Balletbo i Serra 2019-09-16 10:40 ` Brian Masney 2019-09-16 10:40 ` Brian Masney 2019-08-15 0:48 ` [PATCH RFC 06/11] drm/bridge: analogix-anx78xx: add support for avdd33 regulator Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:22 ` Linus Walleij 2019-08-15 8:22 ` Linus Walleij 2019-08-15 8:22 ` Linus Walleij 2019-08-15 22:51 ` Brian Masney 2019-08-15 22:51 ` Brian Masney 2019-08-15 22:51 ` Brian Masney 2019-08-15 0:48 ` [PATCH 07/11] ARM: qcom_defconfig: add CONFIG_DRM_ANALOGIX_ANX78XX Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:23 ` Linus Walleij 2019-08-15 8:23 ` Linus Walleij 2019-08-15 8:23 ` Linus Walleij 2019-08-15 0:48 ` [PATCH 08/11] drm/msm/hdmi: silence -EPROBE_DEFER warning Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:35 ` Linus Walleij 2019-08-15 8:35 ` Linus Walleij 2019-08-15 8:35 ` Linus Walleij 2019-08-15 0:48 ` [PATCH 09/11] ARM: dts: qcom: pm8941: add 5vs2 regulator node Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:34 ` Linus Walleij 2019-08-15 8:34 ` Linus Walleij 2019-08-15 8:34 ` Linus Walleij 2019-08-15 22:44 ` Brian Masney 2019-08-15 22:44 ` Brian Masney 2019-08-15 22:44 ` Brian Masney 2019-08-15 0:48 ` [PATCH RFC 10/11] ARM: dts: qcom: msm8974: add HDMI nodes Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:25 ` Linus Walleij 2019-08-15 8:25 ` Linus Walleij 2019-08-15 8:25 ` Linus Walleij 2019-08-15 0:48 ` [PATCH RFC 11/11] ARM: dts: qcom: msm8974-hammerhead: add support for external display Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 0:48 ` Brian Masney 2019-08-15 8:31 ` Linus Walleij 2019-08-15 8:31 ` Linus Walleij 2019-08-15 8:31 ` Linus Walleij 2019-09-16 8:13 ` [PATCH 00/11] ARM: dts: qcom: msm8974: " Andrzej Hajda 2019-09-16 8:13 ` Andrzej Hajda 2019-09-16 9:01 ` Brian Masney 2019-09-16 9:01 ` Brian Masney 2019-09-16 12:02 ` Andrzej Hajda 2019-09-16 12:02 ` Andrzej Hajda 2019-09-16 12:02 ` Andrzej Hajda
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190916104907.GB4734@pendragon.ideasonboard.com \ --to=laurent.pinchart@ideasonboard.com \ --cc=a.hajda@samsung.com \ --cc=agross@kernel.org \ --cc=airlied@linux.ie \ --cc=bjorn.andersson@linaro.org \ --cc=daniel@ffwll.ch \ --cc=devicetree@vger.kernel.org \ --cc=dri-devel@lists.freedesktop.org \ --cc=enric.balletbo@collabora.com \ --cc=freedreno@lists.freedesktop.org \ --cc=jernej.skrabec@siol.net \ --cc=jonas@kwiboo.se \ --cc=linus.walleij@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-arm-msm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=masneyb@onstation.org \ --cc=narmstrong@baylibre.com \ --cc=robdclark@gmail.com \ --cc=robh+dt@kernel.org \ --cc=sean@poorly.run \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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.