Message ID | 20220802181115.22369-1-mario.limonciello@amd.com |
---|---|
Headers | show |
Series | | expand |
On 02.08.22 20:11, Mario Limonciello wrote: > BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 > > When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 > port on AMD Yellow Carp (Rembrandt) a software connection manager works > with the hardware to initialize tunnels. > > One of those tunnels is for DP (display port). It was observed that > on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling > specifically when connecting to a Thunderbolt monitor fails. > This circumstance does not happen on OEM-5.17 or mainline kernels. > > This is due to a backport error on the USB4 patch series that went > into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this > series corrects that error as minimally as possible as a SAUCE patch. > > It was also observed that DP tunneling is not working for Thunderbolt > monitor connected at boot, but this is a different root cause. > The "Pre-OS" connection manager creates DP tunnels that are expected > to be re-used by the OS connection manager. The remaining patches in > this series enable this flow. > > Patches 2-6 are upstream patches or reverts to closer match upstream. > Patch 7 is a SAUCE patch because it is not landed upstream yet, but > will be needed for patch 2-6 to work properly. If the Thunderbolt > CM doesn't hand off resources, amdgpu can't possibly re-use them. > > For this whole flow to work an updated AMDGPU DMCUB firmware is also > needed. This is already in process as part of: > https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 > > v1->v2: > * Fixup [1/4], it didn't work due to a contextual error > * Add a revert of a stable patch before previous patch [3/4] applied > so that it can re-apply cleanly. > * Add missing dependencies for patch [3/4] to allow applying cleanly > * Re-apply revert commit > > Mario Limonciello (2): > UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors > Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" > > Meenakshikumar Somasundaram (1): > drm/amd/display: Fix for dmub outbox notification enable > > Nicholas Kazlauskas (2): > drm/amd/display: Reset link encoder assignments for GPU reset > drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset > > Sanjay R Mehta (1): > UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is > discovered. > > Stylon Wang (1): > drm/amd/display: Fix new dmub notification enabling in DM > > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- > drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- > drivers/gpu/drm/amd/display/dc/dc.h | 3 + > .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- > .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- > .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- > .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- > .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- > drivers/thunderbolt/tb.c | 15 +++++ > drivers/thunderbolt/tb.h | 1 + > drivers/thunderbolt/tunnel.c | 2 + > 11 files changed, 133 insertions(+), 33 deletions(-) > I think this is a replacement for the previous set but lacking the topic. If that is correct, then the previous thread should be NACKed to make it clear. The method chosen to work around the context change is somewhat worrying. Basically the patch reverted was upstream stable and had been adjusted in context to match the v5.15.y code base. Then you re-apply the unmodified upstream patch. So we are closer to what code looks like in upstream v5.16 or later but further away from linux-5.15.y. I know we are already diverting. Just scary to see this example of how mind boggling things can become. This time it is just context but it might be a different flow of execution or locking in other cases. And this is near impossible to properly review. -Stefan
On 8/3/22 09:35, Stefan Bader wrote: > On 02.08.22 20:11, Mario Limonciello wrote: >> BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 >> >> When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 >> port on AMD Yellow Carp (Rembrandt) a software connection manager works >> with the hardware to initialize tunnels. >> >> One of those tunnels is for DP (display port). It was observed that >> on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling >> specifically when connecting to a Thunderbolt monitor fails. >> This circumstance does not happen on OEM-5.17 or mainline kernels. >> >> This is due to a backport error on the USB4 patch series that went >> into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this >> series corrects that error as minimally as possible as a SAUCE patch. >> >> It was also observed that DP tunneling is not working for Thunderbolt >> monitor connected at boot, but this is a different root cause. >> The "Pre-OS" connection manager creates DP tunnels that are expected >> to be re-used by the OS connection manager. The remaining patches in >> this series enable this flow. >> >> Patches 2-6 are upstream patches or reverts to closer match upstream. >> Patch 7 is a SAUCE patch because it is not landed upstream yet, but >> will be needed for patch 2-6 to work properly. If the Thunderbolt >> CM doesn't hand off resources, amdgpu can't possibly re-use them. >> >> For this whole flow to work an updated AMDGPU DMCUB firmware is also >> needed. This is already in process as part of: >> https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 >> >> v1->v2: >> * Fixup [1/4], it didn't work due to a contextual error >> * Add a revert of a stable patch before previous patch [3/4] applied >> so that it can re-apply cleanly. >> * Add missing dependencies for patch [3/4] to allow applying cleanly >> * Re-apply revert commit >> >> Mario Limonciello (2): >> UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors >> Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" >> >> Meenakshikumar Somasundaram (1): >> drm/amd/display: Fix for dmub outbox notification enable >> >> Nicholas Kazlauskas (2): >> drm/amd/display: Reset link encoder assignments for GPU reset >> drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset >> >> Sanjay R Mehta (1): >> UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is >> discovered. >> >> Stylon Wang (1): >> drm/amd/display: Fix new dmub notification enabling in DM >> >> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- >> drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- >> drivers/gpu/drm/amd/display/dc/dc.h | 3 + >> .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- >> .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- >> .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- >> .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- >> .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- >> drivers/thunderbolt/tb.c | 15 +++++ >> drivers/thunderbolt/tb.h | 1 + >> drivers/thunderbolt/tunnel.c | 2 + >> 11 files changed, 133 insertions(+), 33 deletions(-) >> > > I think this is a replacement for the previous set but lacking the > topic. If that is correct, then the previous thread should be NACKed to > make it clear. Yes it's replacement for previous series to make everything apply cleanly. I'll drop a message to that thread to make it clearer. > > The method chosen to work around the context change is somewhat > worrying. Basically the patch reverted was upstream stable and had been > adjusted in context to match the v5.15.y code base. Then you re-apply > the unmodified upstream patch. So we are closer to what code looks like > in upstream v5.16 or later but further away from linux-5.15.y. Yes that's correct. I guess it's up to you which way you prefer to take it. I thought it was more important to make things apply cleanly. If you prefer the previous approach I'll resubmit the previous patches [2-4] and the fixed [1/7] in this series as a v3. > I know we > are already diverting. Just scary to see this example of how mind > boggling things can become. This time it is just context but it might be > a different flow of execution or locking in other cases. And this is > near impossible to properly review. Yeah I don't think this approach works every single time.
On 03.08.22 16:42, Mario Limonciello wrote: > On 8/3/22 09:35, Stefan Bader wrote: >> On 02.08.22 20:11, Mario Limonciello wrote: >>> BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 >>> >>> When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 >>> port on AMD Yellow Carp (Rembrandt) a software connection manager works >>> with the hardware to initialize tunnels. >>> >>> One of those tunnels is for DP (display port). It was observed that >>> on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling >>> specifically when connecting to a Thunderbolt monitor fails. >>> This circumstance does not happen on OEM-5.17 or mainline kernels. >>> >>> This is due to a backport error on the USB4 patch series that went >>> into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this >>> series corrects that error as minimally as possible as a SAUCE patch. >>> >>> It was also observed that DP tunneling is not working for Thunderbolt >>> monitor connected at boot, but this is a different root cause. >>> The "Pre-OS" connection manager creates DP tunnels that are expected >>> to be re-used by the OS connection manager. The remaining patches in >>> this series enable this flow. >>> >>> Patches 2-6 are upstream patches or reverts to closer match upstream. >>> Patch 7 is a SAUCE patch because it is not landed upstream yet, but >>> will be needed for patch 2-6 to work properly. If the Thunderbolt >>> CM doesn't hand off resources, amdgpu can't possibly re-use them. >>> >>> For this whole flow to work an updated AMDGPU DMCUB firmware is also >>> needed. This is already in process as part of: >>> https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 >>> >>> v1->v2: >>> * Fixup [1/4], it didn't work due to a contextual error >>> * Add a revert of a stable patch before previous patch [3/4] applied >>> so that it can re-apply cleanly. >>> * Add missing dependencies for patch [3/4] to allow applying cleanly >>> * Re-apply revert commit >>> >>> Mario Limonciello (2): >>> UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors >>> Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" >>> >>> Meenakshikumar Somasundaram (1): >>> drm/amd/display: Fix for dmub outbox notification enable >>> >>> Nicholas Kazlauskas (2): >>> drm/amd/display: Reset link encoder assignments for GPU reset >>> drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset >>> >>> Sanjay R Mehta (1): >>> UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is >>> discovered. >>> >>> Stylon Wang (1): >>> drm/amd/display: Fix new dmub notification enabling in DM >>> >>> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- >>> drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- >>> drivers/gpu/drm/amd/display/dc/dc.h | 3 + >>> .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- >>> .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- >>> .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- >>> .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- >>> .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- >>> drivers/thunderbolt/tb.c | 15 +++++ >>> drivers/thunderbolt/tb.h | 1 + >>> drivers/thunderbolt/tunnel.c | 2 + >>> 11 files changed, 133 insertions(+), 33 deletions(-) >>> >> >> I think this is a replacement for the previous set but lacking the topic. If >> that is correct, then the previous thread should be NACKed to make it clear. > > Yes it's replacement for previous series to make everything apply cleanly. I'll > drop a message to that thread to make it clearer. > >> >> The method chosen to work around the context change is somewhat worrying. >> Basically the patch reverted was upstream stable and had been adjusted in >> context to match the v5.15.y code base. Then you re-apply the unmodified >> upstream patch. So we are closer to what code looks like in upstream v5.16 or >> later but further away from linux-5.15.y. > > Yes that's correct. I guess it's up to you which way you prefer to take it. I > thought it was more important to make things apply cleanly. > > If you prefer the previous approach I'll resubmit the previous patches [2-4] and > the fixed [1/7] in this series as a v3. In this case it probably is better to go with the revert and upstream version. It is just scary and makes me doubt how much I can help to keep the overall driver stable. -Stefan > >> I know we are already diverting. Just scary to see this example of how mind >> boggling things can become. This time it is just context but it might be a >> different flow of execution or locking in other cases. And this is near >> impossible to properly review. > > Yeah I don't think this approach works every single time. >
On 02.08.22 20:11, Mario Limonciello wrote: > BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 > > When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 > port on AMD Yellow Carp (Rembrandt) a software connection manager works > with the hardware to initialize tunnels. > > One of those tunnels is for DP (display port). It was observed that > on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling > specifically when connecting to a Thunderbolt monitor fails. > This circumstance does not happen on OEM-5.17 or mainline kernels. > > This is due to a backport error on the USB4 patch series that went > into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this > series corrects that error as minimally as possible as a SAUCE patch. > > It was also observed that DP tunneling is not working for Thunderbolt > monitor connected at boot, but this is a different root cause. > The "Pre-OS" connection manager creates DP tunnels that are expected > to be re-used by the OS connection manager. The remaining patches in > this series enable this flow. > > Patches 2-6 are upstream patches or reverts to closer match upstream. > Patch 7 is a SAUCE patch because it is not landed upstream yet, but > will be needed for patch 2-6 to work properly. If the Thunderbolt > CM doesn't hand off resources, amdgpu can't possibly re-use them. > > For this whole flow to work an updated AMDGPU DMCUB firmware is also > needed. This is already in process as part of: > https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 > > v1->v2: > * Fixup [1/4], it didn't work due to a contextual error > * Add a revert of a stable patch before previous patch [3/4] applied > so that it can re-apply cleanly. > * Add missing dependencies for patch [3/4] to allow applying cleanly > * Re-apply revert commit > > Mario Limonciello (2): > UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors > Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" > > Meenakshikumar Somasundaram (1): > drm/amd/display: Fix for dmub outbox notification enable > > Nicholas Kazlauskas (2): > drm/amd/display: Reset link encoder assignments for GPU reset > drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset > > Sanjay R Mehta (1): > UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is > discovered. > > Stylon Wang (1): > drm/amd/display: Fix new dmub notification enabling in DM > > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- > drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- > drivers/gpu/drm/amd/display/dc/dc.h | 3 + > .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- > .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- > .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- > .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- > .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- > drivers/thunderbolt/tb.c | 15 +++++ > drivers/thunderbolt/tb.h | 1 + > drivers/thunderbolt/tunnel.c | 2 + > 11 files changed, 133 insertions(+), 33 deletions(-) > Since we already carry additional changes on this driver it sounds like replacing an upstream stable patch which had to be context adjusted by its upstream original is acceptable as it allows fixes for the already deviated code to be cherry picks as well. Review is complicated without deeper knowledge of the driver. We rely more on test results here. Acked-by: Stefan Bader <stefan.bader@canonical.com>
On 02.08.22 20:11, Mario Limonciello wrote: > BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 > > When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 > port on AMD Yellow Carp (Rembrandt) a software connection manager works > with the hardware to initialize tunnels. > > One of those tunnels is for DP (display port). It was observed that > on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling > specifically when connecting to a Thunderbolt monitor fails. > This circumstance does not happen on OEM-5.17 or mainline kernels. > > This is due to a backport error on the USB4 patch series that went > into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this > series corrects that error as minimally as possible as a SAUCE patch. > > It was also observed that DP tunneling is not working for Thunderbolt > monitor connected at boot, but this is a different root cause. > The "Pre-OS" connection manager creates DP tunnels that are expected > to be re-used by the OS connection manager. The remaining patches in > this series enable this flow. > > Patches 2-6 are upstream patches or reverts to closer match upstream. > Patch 7 is a SAUCE patch because it is not landed upstream yet, but > will be needed for patch 2-6 to work properly. If the Thunderbolt > CM doesn't hand off resources, amdgpu can't possibly re-use them. > > For this whole flow to work an updated AMDGPU DMCUB firmware is also > needed. This is already in process as part of: > https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 > > v1->v2: > * Fixup [1/4], it didn't work due to a contextual error > * Add a revert of a stable patch before previous patch [3/4] applied > so that it can re-apply cleanly. > * Add missing dependencies for patch [3/4] to allow applying cleanly > * Re-apply revert commit > > Mario Limonciello (2): > UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors > Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" > > Meenakshikumar Somasundaram (1): > drm/amd/display: Fix for dmub outbox notification enable > > Nicholas Kazlauskas (2): > drm/amd/display: Reset link encoder assignments for GPU reset > drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset > > Sanjay R Mehta (1): > UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is > discovered. > > Stylon Wang (1): > drm/amd/display: Fix new dmub notification enabling in DM > > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- > drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- > drivers/gpu/drm/amd/display/dc/dc.h | 3 + > .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- > .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- > .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- > .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- > .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- > drivers/thunderbolt/tb.c | 15 +++++ > drivers/thunderbolt/tb.h | 1 + > drivers/thunderbolt/tunnel.c | 2 + > 11 files changed, 133 insertions(+), 33 deletions(-) > Acked-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com> Thanks
On 02.08.22 20:11, Mario Limonciello wrote: > BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 > > When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 > port on AMD Yellow Carp (Rembrandt) a software connection manager works > with the hardware to initialize tunnels. > > One of those tunnels is for DP (display port). It was observed that > on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling > specifically when connecting to a Thunderbolt monitor fails. > This circumstance does not happen on OEM-5.17 or mainline kernels. > > This is due to a backport error on the USB4 patch series that went > into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this > series corrects that error as minimally as possible as a SAUCE patch. > > It was also observed that DP tunneling is not working for Thunderbolt > monitor connected at boot, but this is a different root cause. > The "Pre-OS" connection manager creates DP tunnels that are expected > to be re-used by the OS connection manager. The remaining patches in > this series enable this flow. > > Patches 2-6 are upstream patches or reverts to closer match upstream. > Patch 7 is a SAUCE patch because it is not landed upstream yet, but > will be needed for patch 2-6 to work properly. If the Thunderbolt > CM doesn't hand off resources, amdgpu can't possibly re-use them. > > For this whole flow to work an updated AMDGPU DMCUB firmware is also > needed. This is already in process as part of: > https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 > > v1->v2: > * Fixup [1/4], it didn't work due to a contextual error > * Add a revert of a stable patch before previous patch [3/4] applied > so that it can re-apply cleanly. > * Add missing dependencies for patch [3/4] to allow applying cleanly > * Re-apply revert commit > > Mario Limonciello (2): > UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors > Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" > > Meenakshikumar Somasundaram (1): > drm/amd/display: Fix for dmub outbox notification enable > > Nicholas Kazlauskas (2): > drm/amd/display: Reset link encoder assignments for GPU reset > drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset > > Sanjay R Mehta (1): > UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is > discovered. > > Stylon Wang (1): > drm/amd/display: Fix new dmub notification enabling in DM > > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- > drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- > drivers/gpu/drm/amd/display/dc/dc.h | 3 + > .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- > .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- > .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- > .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- > .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- > drivers/thunderbolt/tb.c | 15 +++++ > drivers/thunderbolt/tb.h | 1 + > drivers/thunderbolt/tunnel.c | 2 + > 11 files changed, 133 insertions(+), 33 deletions(-) > Applied to jammy:linux/master-next. Thanks. -Stefan
On 8/5/2022 09:32, Stefan Bader wrote: > On 02.08.22 20:11, Mario Limonciello wrote: >> BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 >> >> When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 >> port on AMD Yellow Carp (Rembrandt) a software connection manager works >> with the hardware to initialize tunnels. >> >> One of those tunnels is for DP (display port). It was observed that >> on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling >> specifically when connecting to a Thunderbolt monitor fails. >> This circumstance does not happen on OEM-5.17 or mainline kernels. >> >> This is due to a backport error on the USB4 patch series that went >> into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this >> series corrects that error as minimally as possible as a SAUCE patch. >> >> It was also observed that DP tunneling is not working for Thunderbolt >> monitor connected at boot, but this is a different root cause. >> The "Pre-OS" connection manager creates DP tunnels that are expected >> to be re-used by the OS connection manager. The remaining patches in >> this series enable this flow. >> >> Patches 2-6 are upstream patches or reverts to closer match upstream. >> Patch 7 is a SAUCE patch because it is not landed upstream yet, but >> will be needed for patch 2-6 to work properly. If the Thunderbolt >> CM doesn't hand off resources, amdgpu can't possibly re-use them. >> >> For this whole flow to work an updated AMDGPU DMCUB firmware is also >> needed. This is already in process as part of: >> https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 >> >> v1->v2: >> * Fixup [1/4], it didn't work due to a contextual error >> * Add a revert of a stable patch before previous patch [3/4] applied >> so that it can re-apply cleanly. >> * Add missing dependencies for patch [3/4] to allow applying cleanly >> * Re-apply revert commit >> >> Mario Limonciello (2): >> UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors >> Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" >> >> Meenakshikumar Somasundaram (1): >> drm/amd/display: Fix for dmub outbox notification enable >> >> Nicholas Kazlauskas (2): >> drm/amd/display: Reset link encoder assignments for GPU reset >> drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset >> >> Sanjay R Mehta (1): >> UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is >> discovered. >> >> Stylon Wang (1): >> drm/amd/display: Fix new dmub notification enabling in DM >> >> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- >> drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- >> drivers/gpu/drm/amd/display/dc/dc.h | 3 + >> .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- >> .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- >> .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- >> .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- >> .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- >> drivers/thunderbolt/tb.c | 15 +++++ >> drivers/thunderbolt/tb.h | 1 + >> drivers/thunderbolt/tunnel.c | 2 + >> 11 files changed, 133 insertions(+), 33 deletions(-) >> > > Applied to jammy:linux/master-next. Thanks. Thx. KH - are these needed still for OEM-5.14 too? Or will it EOL before needed there? > > -Stefan >
Mario Limonciello kirjoitti 2.8.2022 klo 21.11: > BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 > > When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 > port on AMD Yellow Carp (Rembrandt) a software connection manager works > with the hardware to initialize tunnels. > > One of those tunnels is for DP (display port). It was observed that > on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling > specifically when connecting to a Thunderbolt monitor fails. > This circumstance does not happen on OEM-5.17 or mainline kernels. > > This is due to a backport error on the USB4 patch series that went > into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this > series corrects that error as minimally as possible as a SAUCE patch. > > It was also observed that DP tunneling is not working for Thunderbolt > monitor connected at boot, but this is a different root cause. > The "Pre-OS" connection manager creates DP tunnels that are expected > to be re-used by the OS connection manager. The remaining patches in > this series enable this flow. > > Patches 2-6 are upstream patches or reverts to closer match upstream. > Patch 7 is a SAUCE patch because it is not landed upstream yet, but > will be needed for patch 2-6 to work properly. If the Thunderbolt > CM doesn't hand off resources, amdgpu can't possibly re-use them. > > For this whole flow to work an updated AMDGPU DMCUB firmware is also > needed. This is already in process as part of: > https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 > > v1->v2: > * Fixup [1/4], it didn't work due to a contextual error > * Add a revert of a stable patch before previous patch [3/4] applied > so that it can re-apply cleanly. > * Add missing dependencies for patch [3/4] to allow applying cleanly > * Re-apply revert commit > > Mario Limonciello (2): > UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors > Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" > > Meenakshikumar Somasundaram (1): > drm/amd/display: Fix for dmub outbox notification enable > > Nicholas Kazlauskas (2): > drm/amd/display: Reset link encoder assignments for GPU reset > drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset > > Sanjay R Mehta (1): > UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is > discovered. > > Stylon Wang (1): > drm/amd/display: Fix new dmub notification enabling in DM > > .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- > drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- > drivers/gpu/drm/amd/display/dc/dc.h | 3 + > .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- > .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- > .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- > .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- > .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- > drivers/thunderbolt/tb.c | 15 +++++ > drivers/thunderbolt/tb.h | 1 + > drivers/thunderbolt/tunnel.c | 2 + > 11 files changed, 133 insertions(+), 33 deletions(-) > applied to oem-5.14, thanks
and now with the subject fixed Timo Aaltonen kirjoitti 12.8.2022 klo 9.27: > Mario Limonciello kirjoitti 2.8.2022 klo 21.11: >> BugLink: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1983143 >> >> When a Thunderbolt monitor or Thunderbolt dock are connected to a USB4 >> port on AMD Yellow Carp (Rembrandt) a software connection manager works >> with the hardware to initialize tunnels. >> >> One of those tunnels is for DP (display port). It was observed that >> on both the OEM-5.14 as well as Jammy-5.15 kernel that DP tunneling >> specifically when connecting to a Thunderbolt monitor fails. >> This circumstance does not happen on OEM-5.17 or mainline kernels. >> >> This is due to a backport error on the USB4 patch series that went >> into OEM-5.14 and moved forward to Jammy-5.15. Patch 1/7 in this >> series corrects that error as minimally as possible as a SAUCE patch. >> >> It was also observed that DP tunneling is not working for Thunderbolt >> monitor connected at boot, but this is a different root cause. >> The "Pre-OS" connection manager creates DP tunnels that are expected >> to be re-used by the OS connection manager. The remaining patches in >> this series enable this flow. >> >> Patches 2-6 are upstream patches or reverts to closer match upstream. >> Patch 7 is a SAUCE patch because it is not landed upstream yet, but >> will be needed for patch 2-6 to work properly. If the Thunderbolt >> CM doesn't hand off resources, amdgpu can't possibly re-use them. >> >> For this whole flow to work an updated AMDGPU DMCUB firmware is also >> needed. This is already in process as part of: >> https://bugs.launchpad.net/ubuntu/+source/linux-firmware/+bug/1981922 >> >> v1->v2: >> * Fixup [1/4], it didn't work due to a contextual error >> * Add a revert of a stable patch before previous patch [3/4] applied >> so that it can re-apply cleanly. >> * Add missing dependencies for patch [3/4] to allow applying cleanly >> * Re-apply revert commit >> >> Mario Limonciello (2): >> UBUNTU: SAUCE: drm/amd: Fix DP Tunneling with Thunderbolt monitors >> Revert "drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset" >> >> Meenakshikumar Somasundaram (1): >> drm/amd/display: Fix for dmub outbox notification enable >> >> Nicholas Kazlauskas (2): >> drm/amd/display: Reset link encoder assignments for GPU reset >> drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset >> >> Sanjay R Mehta (1): >> UBUNTU: SAUCE: thunderbolt: Add DP out resource when DP tunnel is >> discovered. >> >> Stylon Wang (1): >> drm/amd/display: Fix new dmub notification enabling in DM >> >> .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 39 +++++++++-- >> drivers/gpu/drm/amd/display/dc/core/dc.c | 66 +++++++++++++++++-- >> drivers/gpu/drm/amd/display/dc/dc.h | 3 + >> .../gpu/drm/amd/display/dc/dce/dmub_outbox.c | 25 +++---- >> .../gpu/drm/amd/display/dc/dce/dmub_outbox.h | 4 +- >> .../amd/display/dc/dcn10/dcn10_hw_sequencer.c | 4 -- >> .../drm/amd/display/dc/dcn20/dcn20_hwseq.c | 5 +- >> .../drm/amd/display/dc/dcn31/dcn31_hwseq.c | 2 +- >> drivers/thunderbolt/tb.c | 15 +++++ >> drivers/thunderbolt/tb.h | 1 + >> drivers/thunderbolt/tunnel.c | 2 + >> 11 files changed, 133 insertions(+), 33 deletions(-) >> > > applied to oem-5.14, thanks >