* arm32 build failure after abe882a39a9c ("drm/amd/display: fix issue with eDP not detected on driver load")
@ 2019-06-18 1:11 Nathan Chancellor
2019-06-25 3:59 ` Dave Airlie
0 siblings, 1 reply; 5+ messages in thread
From: Nathan Chancellor @ 2019-06-18 1:11 UTC (permalink / raw)
To: Anthony Koo, Alex Deucher
Cc: Jun Lei, Bhawanpreet Lakha, Harry Wentland, Leo Li,
Christian König, David (ChunMing) Zhou, amd-gfx, dri-devel,
linux-kernel
Hi all,
After commit abe882a39a9c ("drm/amd/display: fix issue with eDP not
detected on driver load") in -next, arm32 allyesconfig builds start
failing at link time:
arm-linux-gnueabi-ld: drivers/gpu/drm/amd/display/dc/core/dc_link.o: in
function `dc_link_detect':
dc_link.c:(.text+0x260c): undefined reference to `__bad_udelay'
arm32 only allows a udelay value of up to 2000, see
arch/arm/include/asm/delay.h for more info.
Please look into this when you have a chance!
Nathan
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: arm32 build failure after abe882a39a9c ("drm/amd/display: fix issue with eDP not detected on driver load") 2019-06-18 1:11 arm32 build failure after abe882a39a9c ("drm/amd/display: fix issue with eDP not detected on driver load") Nathan Chancellor @ 2019-06-25 3:59 ` Dave Airlie 2019-06-25 14:00 ` [PATCH] drm/amd/display: Use msleep instead of udelay for 8ms wait Harry Wentland 0 siblings, 1 reply; 5+ messages in thread From: Dave Airlie @ 2019-06-25 3:59 UTC (permalink / raw) To: Nathan Chancellor Cc: Anthony Koo, Alex Deucher, Jun Lei, Bhawanpreet Lakha, Harry Wentland, Leo Li, Christian König, David (ChunMing) Zhou, amd-gfx mailing list, dri-devel, LKML Hi Alex, please resolve this ASAP, I cannot pull your tree without this fixed as it breaks my arm builds here. an 8 second delay there seems pointless and arbitary, an 8 sec delay there without a comment, seems like a lack of review. Dave. On Tue, 18 Jun 2019 at 11:12, Nathan Chancellor <natechancellor@gmail.com> wrote: > > Hi all, > > After commit abe882a39a9c ("drm/amd/display: fix issue with eDP not > detected on driver load") in -next, arm32 allyesconfig builds start > failing at link time: > > arm-linux-gnueabi-ld: drivers/gpu/drm/amd/display/dc/core/dc_link.o: in > function `dc_link_detect': > dc_link.c:(.text+0x260c): undefined reference to `__bad_udelay' > > arm32 only allows a udelay value of up to 2000, see > arch/arm/include/asm/delay.h for more info. > > Please look into this when you have a chance! > Nathan ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] drm/amd/display: Use msleep instead of udelay for 8ms wait 2019-06-25 3:59 ` Dave Airlie @ 2019-06-25 14:00 ` Harry Wentland 2019-06-25 14:12 ` Lucas Stach 0 siblings, 1 reply; 5+ messages in thread From: Harry Wentland @ 2019-06-25 14:00 UTC (permalink / raw) To: airlied, natechancellor Cc: Anthony.Koo, alexander.deucher, Jun.Lei, Bhawanpreet.Lakha, sunpeng.li, christian.koenig, David1.Zhou, amd-gfx, dri-devel, linux-kernel, Harry Wentland arm32's udelay only allows values up to 2000 microseconds. msleep does the trick for us here as there is no problem if this isn't microsecond accurate and takes a tad longer. Signed-off-by: Harry Wentland <harry.wentland@amd.com> --- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c index 4c31930f1cdf..f5d02f89b3f9 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c @@ -548,7 +548,7 @@ static void read_edp_current_link_settings_on_detect(struct dc_link *link) break; } - udelay(8000); + msleep(8); } ASSERT(status == DC_OK); -- 2.22.0 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] drm/amd/display: Use msleep instead of udelay for 8ms wait 2019-06-25 14:00 ` [PATCH] drm/amd/display: Use msleep instead of udelay for 8ms wait Harry Wentland @ 2019-06-25 14:12 ` Lucas Stach 2019-06-25 14:26 ` Koenig, Christian 0 siblings, 1 reply; 5+ messages in thread From: Lucas Stach @ 2019-06-25 14:12 UTC (permalink / raw) To: Harry Wentland, airlied, natechancellor Cc: sunpeng.li, Anthony.Koo, linux-kernel, amd-gfx, dri-devel, alexander.deucher, Jun.Lei, Bhawanpreet.Lakha, christian.koenig Hi Harry, Am Dienstag, den 25.06.2019, 10:00 -0400 schrieb Harry Wentland: > arm32's udelay only allows values up to 2000 microseconds. msleep > does the trick for us here as there is no problem if this isn't > microsecond accurate and takes a tad longer. A "tad" longer in this case means likely double the intended wait. Please see "SLEEPING FOR ~USECS OR SMALL MSECS ( 10us - 20ms)" in Documentation/timers/timers-howto.txt. The sleep here should use usleep_range. In general the DC code seems to use quite a lot of the udelay busy waits. I doubt that many of those occurrences are in atomic context, so could easily use a sleeping wait. Digging further this seems to apply across amdgpu, not only DC. Regards, Lucas > Signed-off-by: Harry Wentland <harry.wentland@amd.com> > --- > drivers/gpu/drm/amd/display/dc/core/dc_link.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c > b/drivers/gpu/drm/amd/display/dc/core/dc_link.c > index 4c31930f1cdf..f5d02f89b3f9 100644 > --- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c > +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c > @@ -548,7 +548,7 @@ static void > read_edp_current_link_settings_on_detect(struct dc_link *link) > break; > } > > - udelay(8000); > + msleep(8); > } > > ASSERT(status == DC_OK); ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] drm/amd/display: Use msleep instead of udelay for 8ms wait 2019-06-25 14:12 ` Lucas Stach @ 2019-06-25 14:26 ` Koenig, Christian 0 siblings, 0 replies; 5+ messages in thread From: Koenig, Christian @ 2019-06-25 14:26 UTC (permalink / raw) To: Lucas Stach, Wentland, Harry, airlied@gmail.com, natechancellor@gmail.com Cc: Li, Sun peng (Leo), Koo, Anthony, linux-kernel@vger.kernel.org, amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, Deucher, Alexander, Lei, Jun, Lakha, Bhawanpreet Am 25.06.19 um 16:12 schrieb Lucas Stach: > Hi Harry, > > Am Dienstag, den 25.06.2019, 10:00 -0400 schrieb Harry Wentland: >> arm32's udelay only allows values up to 2000 microseconds. msleep >> does the trick for us here as there is no problem if this isn't >> microsecond accurate and takes a tad longer. > A "tad" longer in this case means likely double the intended wait. > Please see "SLEEPING FOR ~USECS OR SMALL MSECS ( 10us - 20ms)" in > Documentation/timers/timers-howto.txt. Oh, thanks so much for the link! I was searching desperately for this the last time this came up and couldn't find it. Clearly going to remember now where to find that. Thanks, Christian. > > The sleep here should use usleep_range. In general the DC code seems to > use quite a lot of the udelay busy waits. I doubt that many of those > occurrences are in atomic context, so could easily use a sleeping wait. > > Digging further this seems to apply across amdgpu, not only DC. > > Regards, > Lucas > >> Signed-off-by: Harry Wentland <harry.wentland@amd.com> >> --- >> drivers/gpu/drm/amd/display/dc/core/dc_link.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c >> b/drivers/gpu/drm/amd/display/dc/core/dc_link.c >> index 4c31930f1cdf..f5d02f89b3f9 100644 >> --- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c >> +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c >> @@ -548,7 +548,7 @@ static void >> read_edp_current_link_settings_on_detect(struct dc_link *link) >> break; >> } >> >> - udelay(8000); >> + msleep(8); >> } >> >> ASSERT(status == DC_OK); ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-06-25 14:27 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-18 1:11 arm32 build failure after abe882a39a9c ("drm/amd/display: fix issue with eDP not detected on driver load") Nathan Chancellor
2019-06-25 3:59 ` Dave Airlie
2019-06-25 14:00 ` [PATCH] drm/amd/display: Use msleep instead of udelay for 8ms wait Harry Wentland
2019-06-25 14:12 ` Lucas Stach
2019-06-25 14:26 ` Koenig, Christian
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox