I considered that, but I'm only equipped to test on a few cards--the ones IBM is interested in. So this Cedar-specific change fixes the problem on the FirePro 2270; the other cards seem perfectly capable of handling 40+ bit DMA addresses on the Power8 platform. On Thu, Feb 22, 2018 at 11:07 AM, Alex Deucher <alexdeucher at gmail.com> wrote: > On Thu, Feb 22, 2018 at 10:55 AM, Ben Crocker <bcrocker at redhat.com> wrote: > > Alex, Christian, et al. > > > > Thanks for your rapid response! > > > > I can certainly make the change PPC-only (#ifdef CONFIG_PPC64...) and I > > think > > that's the safest way to go right now. It makes the patch very specific > to > > Cedar > > on PowerPC64, so it doesn't break anything that may have come to depend > on > > Russell's and Alistair's changes, and my timetable for getting a fix in > is > > very short. > > If you want to go this route, you might just set need_dma32 > unconditionally for PPC64. The bus interface hw is pretty much the > same across all asics in this time period. > > Alex > > > > > > -- Ben > > > > > > > > On Thu, Feb 22, 2018 at 2:25 AM, Christian König > > <ckoenig.leichtzumerken at gmail.com> wrote: > >> > >> Am 22.02.2018 um 03:05 schrieb Alex Deucher: > >>> > >>> On Wed, Feb 21, 2018 at 6:41 PM, Ben Crocker <bcrocker at redhat.com> > wrote: > >>>> > >>>> In radeon_device_init, set the need_dma32 flag for Cedar chips > >>>> (e.g. FirePro 2270). This fixes, or at least works around, a bug > >>>> on PowerPC exposed by last year's commits > >>>> > >>>> 8e3f1b1d8255105f31556aacf8aeb6071b00d469 (Russell Currey) > >>>> > >>>> and > >>>> > >>>> 253fd51e2f533552ae35a0c661705da6c4842c1b (Alistair Popple) > >>>> > >>>> which enabled the 64-bit DMA iommu bypass. > >>>> > >>>> This caused the device to freeze, in some cases unrecoverably, and is > >>>> the subject of several bug reports internal to Red Hat. > >>> > >>> Can we make this ppc only? 40 bit DMA works fine on x86. > >> > >> > >> Yeah and at least when the dma_coherent allocator path is used it should > >> work fine on PPC as well. > >> > >> So that is not really a driver bug, but a platform bug and we should > think > >> about reverting or at least disabling those two patches instead. > >> > >> Christian. > >> > >>> > >>> Alex > >>> > >>>> Signed-off-by: Ben Crocker <bcrocker at redhat.com> > >>>> --- > >>>> drivers/gpu/drm/radeon/radeon_device.c | 5 ++++- > >>>> 1 file changed, 4 insertions(+), 1 deletion(-) > >>>> > >>>> diff --git a/drivers/gpu/drm/radeon/radeon_device.c > >>>> b/drivers/gpu/drm/radeon/radeon_device.c > >>>> index ffc10cadcf34..02538903830d 100644 > >>>> --- a/drivers/gpu/drm/radeon/radeon_device.c > >>>> +++ b/drivers/gpu/drm/radeon/radeon_device.c > >>>> @@ -1395,7 +1395,10 @@ int radeon_device_init(struct radeon_device > >>>> *rdev, > >>>> if (rdev->flags & RADEON_IS_AGP) > >>>> rdev->need_dma32 = true; > >>>> if ((rdev->flags & RADEON_IS_PCI) && > >>>> - (rdev->family <= CHIP_RS740)) > >>>> + (rdev->family <= CHIP_RS740 || rdev->family == > CHIP_CEDAR)) > >>>> + rdev->need_dma32 = true; > >>>> + if ((rdev->flags & RADEON_IS_PCIE) && > >>>> + (rdev->family == CHIP_CEDAR)) > >>>> rdev->need_dma32 = true; > >>>> > >>>> dma_bits = rdev->need_dma32 ? 32 : 40; > >>>> -- > >>>> 2.13.6 > >>>> > >>>> _______________________________________________ > >>>> dri-devel mailing list > >>>> dri-devel at lists.freedesktop.org > >>>> https://lists.freedesktop.org/mailman/listinfo/dri-devel > >>> > >>> _______________________________________________ > >>> amd-gfx mailing list > >>> amd-gfx at lists.freedesktop.org > >>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx > >> > >> > > > _______________________________________________ > amd-gfx mailing list > amd-gfx at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx > -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.freedesktop.org/archives/amd-gfx/attachments/20180222/10051c38/attachment.html>