Re: [RESEND 1/6] drm/nouveau: convert to using is_hdmi and has_audio from display info

2024-05-10 Thread Lyude Paul
Reviewed-by: Lyude Paul On Fri, 2024-05-10 at 18:08 +0300, Jani Nikula wrote: > Prefer the parsed results for is_hdmi and has_audio in display info > over > calling drm_detect_hdmi_monitor() and drm_detect_monitor_audio(), > respectively. > > Conveniently, this also remov

[PATCH v2 2/2] drm/nouveau/gsp: Use the sg allocator for level 2 of radix3

2024-04-29 Thread Lyude Paul
of the scatterlist we're currently on when writing out the page table for level 2 Signed-off-by: Lyude Paul Cc: sta...@vger.kernel.org --- .../gpu/drm/nouveau/include/nvkm/subdev/gsp.h | 4 +- .../gpu/drm/nouveau/nvkm/subdev/gsp/r535.c| 77 --- 2 files changed, 54

[PATCH v2 1/2] drm/nouveau/firmware: Fix SG_DEBUG error with nvkm_firmware_ctor()

2024-04-29 Thread Lyude Paul
y allocating the memory with vmalloc instead(). V2: * Fixup explanation as the prior one was bogus Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/core/firmware.c | 19 --- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/core/f

Re: [PATCH 2/2] drm/nouveau/gsp: Use the sg allocator for level 2 of radix3

2024-04-29 Thread Lyude Paul
ix3 page table for > > suspend/resume data. So, let's rewrite nvkm_gsp_radix3_sg() to use > > the sg > > allocator for level 2. We continue using coherent allocations for > > lvl0 and > > 1, since they only take a single page. > > > > Signed-off-by: Lyu

Re: [PATCH 1/2] drm/nouveau/firmware: Fix SG_DEBUG error with nvkm_firmware_ctor()

2024-04-28 Thread Lyude Paul
On Fri, 2024-04-26 at 15:47 +, Timur Tabi wrote: > On Fri, 2024-04-26 at 11:41 -0400, Lyude Paul wrote: > > We hit this because when initializing firmware of type > > NVKM_FIRMWARE_IMG_DMA we allocate coherent memory and then attempt > > to > > include that coher

[PATCH 2/2] drm/nouveau/gsp: Use the sg allocator for level 2 of radix3

2024-04-26 Thread Lyude Paul
the GPU a radix3 page table for suspend/resume data. So, let's rewrite nvkm_gsp_radix3_sg() to use the sg allocator for level 2. We continue using coherent allocations for lvl0 and 1, since they only take a single page. Signed-off-by: Lyude Paul Cc: sta...@vger.kernel.org --- .../gpu/drm/nouveau

[PATCH 1/2] drm/nouveau/firmware: Fix SG_DEBUG error with nvkm_firmware_ctor()

2024-04-26 Thread Lyude Paul
since that's the only thing that would make sense to put in the scatterlist. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/core/firmware.c | 19 --- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/core/firmware.c b/drivers/gpu/drm/

Re: [PATCH 1/2] drm/print: drop include debugfs.h and include where needed

2024-04-24 Thread Lyude Paul
For the nouveau bits: Reviewed-by: Lyude Paul On Mon, 2024-04-22 at 15:10 +0300, Jani Nikula wrote: > Surprisingly many places depend on debugfs.h to be included via > drm_print.h. Fix them. > > v3: Also fix armada, ite-it6505, imagination, msm, sti, vc4, and xe > >

Issues with trying to boot falcons from sgt memory + Possible firmware SG_DEBUG fix?

2024-04-18 Thread Lyude Paul
So - first some context here for Ben and anyone else who hasn't been following. A little while ago I got a Slimbook Executive 16 with a Nvidia RTX 4060 in it, and I've unfortunately been running into a kind of annoying issue. Currently this laptop only has 16 gigs of ram, and as it turns out -

Re: [PATCH v2 1/2] drm/nouveau/disp: add backlight for ada lovelace

2024-04-15 Thread Lyude Paul
_backlight_init(bl, > nouveau_connector(connector), >     nv_encoder, , ); >   break; > + case NV_DEVICE_INFO_V0_ADA: > + ret = nv19x_backlight_init(bl, > nouveau_connector(connector), > +    nv_encoder, , > ); > + break; >   default: >   ret = 0; >   goto fail_alloc; -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

Re: [PATCH 4/5] drm/nouveau: Use drm_crtc_vblank_crtc()

2024-04-08 Thread Lyude Paul
Reviewed-by: Lyude Paul On Mon, 2024-04-08 at 22:06 +0300, Ville Syrjala wrote: > From: Ville Syrjälä > > Replace the open coded drm_crtc_vblank_crtc() with the real > thing. > > Cc: Karol Herbst > Cc: Lyude Paul > Cc: Danilo Krummrich > Cc: nouveau@lists.f

Re: [PATCH] drm: nv04: Add check to avoid out of bounds access

2024-04-05 Thread Lyude Paul
gt; > 'dcb->or' is assigned value '0' in call to > > 'fabricate_dcb_output()'). > > I don't really know much about the semantics of this code. > > Looking at fabricate_dcb_output() though I wonder if the intention > was to assign > BIT(or) to entry->or. > >

Re: [PATCH v0 13/14] drm/nouveau: Make I2C terminology more inclusive

2024-04-05 Thread Lyude Paul
I'm in support of this as well! As long as we make sure it gets renamed everywhere :) > > Thanks, > Easwar > -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

[PATCH 2/2] drm/nouveau/dp: Don't probe eDP ports twice harder

2024-04-04 Thread Lyude Paul
to ACPI hotplug probe events. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nouveau_dp.c | 14 +- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nouveau_dp.c b/drivers/gpu/drm/nouveau/nouveau_dp.c index 8b1be7dd64ebe..8b27d372e86da 100644

[PATCH 1/2] drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports

2024-04-04 Thread Lyude Paul
is actually on the connector. Otherwise, we just shut it off. This should fix some people's runtime PM issues (like myself), and also get rid of quite of a lot of GSP error spam in dmesg. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nouveau_dp.c | 10 ++ 1 file changed, 10 insertions

[PATCH 0/2] nouveau: GSP DP aux fixes

2024-04-04 Thread Lyude Paul
Slimbook Executive 16! Lyude Paul (2): drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports drm/nouveau/dp: Don't probe eDP ports twice harder drivers/gpu/drm/nouveau/nouveau_dp.c | 24 +++- 1 file changed, 19 insertions(+), 5 deletions(-) -- 2.44.0

[PATCH] drm/nouveau/dp: Fix incorrect return code in r535_dp_aux_xfer()

2024-03-15 Thread Lyude Paul
that. Fixes: 4ae3a20102b2 ("nouveau/gsp: don't free ctrl messages on errors") Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/disp/r535.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/r535.c b/drivers/gpu/d

Re: [PATCH 2/2] drm/nouveau: move more missing UAPI bits

2024-03-04 Thread Lyude Paul
Reviewed-by: Lyude Paul On Mon, 2024-03-04 at 19:31 +0100, Karol Herbst wrote: > Those are already de-facto UAPI, so let's just move it into the uapi > header. > > Signed-off-by: Karol Herbst > --- > drivers/gpu/drm/nouveau/nouveau_abi16.c | 20 +++- > dr

Re: [PATCH 1/2] drm/nouveau: fix stale locked mutex in nouveau_gem_ioctl_pushbuf

2024-03-04 Thread Lyude Paul
Reviewed-by: Lyude Paul On Mon, 2024-03-04 at 19:31 +0100, Karol Herbst wrote: > If VM_BIND is enabled on the client the legacy submission ioctl can't be > used, however if a client tries to do so regardless it will return an > error. In this case the clients mutex remained unlocke

Future of nouveau/nova's display driver, and rvkms introduction!

2024-02-06 Thread Lyude Paul
orking on writing up KMS bindings. If anyone has any questions or comments feel free to reply :)! -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

[PATCH] drm/nouveau/kms/nv50-: Don't allow inheritance of headless iors

2023-12-13 Thread Lyude Paul
ted through nvif. This -should- hopefully fix the WARN_ON on GT218 reported by Borislav. Signed-off-by: Lyude Paul Cc: Borislav Petkov --- drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/d

Re: nouveau 0000:01:00.0: drm_WARN_ON(!found_head)

2023-12-13 Thread Lyude Paul
Nevermind - I don't think I'll need the logs, I stared at the code for long enough and I think I realized what's happening. I will have a patch for you to test in just a moment, just waiting for it to compile so I can verify nothing else breaks On Wed, 2023-12-13 at 18:48 -0500, Lyude Paul wrote

Re: nouveau 0000:01:00.0: drm_WARN_ON(!found_head)

2023-12-13 Thread Lyude Paul
for the time being, but I'd really love to know how we're managing to get that far on a hardware generation we never implemented that nvkm ioctl for… On Wed, 2023-12-13 at 18:37 -0500, Lyude Paul wrote: > agh - thank you for repeatedly poking on this, I've been busy enough with GSP > work I totally

Re: nouveau 0000:01:00.0: drm_WARN_ON(!found_head)

2023-12-13 Thread Lyude Paul
this or shut > > up the WARN. > > Not only that - panic_on_warn turns this into an explosion so you don't > want that in a released kernel. > -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

Re: [Nouveau] [PATCH -next] drm/nouveau/fifo: Remove duplicated include in chan.c

2023-11-22 Thread Lyude Paul
Reviewed-by: Lyude Paul Will push upstream in a moment On Wed, 2023-11-22 at 08:49 +0800, Yang Li wrote: > ./drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c: chid.h is included more > than once. > > Reported-by: Abaci Robot > Closes: https://bugzilla.openanolis.cn/show_

Re: [Nouveau] [PATCH] drm/nouveau/disp: fix DP capable DSM connectors

2023-10-12 Thread Lyude Paul
Reviewed-by: Lyude Paul On Wed, 2023-10-11 at 13:41 +0200, Karol Herbst wrote: > Just special case DP DSM connectors until we properly figure out how to > deal with this. > > This resolves user regressions on GPUs with such connectors without > reverting the original fix. >

Re: [Nouveau] [PATCH] drm/nouveau: exec: fix ioctl kernel-doc warning

2023-10-09 Thread Lyude Paul
Reviewed-by: Lyude Paul On Fri, 2023-10-06 at 17:55 -0700, Randy Dunlap wrote: > include/uapi/drm/nouveau_drm.h:49: warning: Cannot understand * > @NOUVEAU_GETPARAM_EXEC_PUSH_MAX > on line 49 - I thought it was a doc line > > Fixes: d59e75eef52d ("drm/nouveau: exec: repo

Re: [Nouveau] [PATCH v2] drm/nouveau: exec: fix ioctl kernel-doc warning

2023-10-09 Thread Lyude Paul
Reviewed-by: Lyude Paul On Sun, 2023-10-08 at 07:02 -0700, Randy Dunlap wrote: > kernel-doc emits a warning: > > include/uapi/drm/nouveau_drm.h:49: warning: Cannot understand * > @NOUVEAU_GETPARAM_EXEC_PUSH_MAX > on line 49 - I thought it was a doc line > > We don't h

Re: [Nouveau] [PATCH v2 1/3] drm/nouveau: chan: use struct nvif_mclass

2023-10-02 Thread Lyude Paul
For the whole series: Reviewed-by: Lyude Paul On Mon, 2023-10-02 at 15:46 +0200, Danilo Krummrich wrote: > Use actual struct nvif_mclass instead of identical anonymous struct. > > Signed-off-by: Danilo Krummrich > --- > drivers/gpu/drm/nouveau/nouveau_chan.c | 5 + >

Re: [Nouveau] [PATCH] drm/nouveau: fence: fix type cast warning in nouveau_fence_emit()

2023-09-29 Thread Lyude Paul
Reviewed-by: Lyude Paul On Sat, 2023-09-16 at 03:14 +0200, Danilo Krummrich wrote: > Fix the following warning. > > drivers/gpu/drm/nouveau/nouveau_fence.c:210:45: sparse: sparse: > incorrect type in initializer (different address spaces) > @@ expected struct nouvea

Re: [Nouveau] [RFT PATCH v2 04/12] drm/nouveau: Call drm_atomic_helper_shutdown() or equiv at shutdown time

2023-09-22 Thread Lyude Paul
actually very glad to see this because I think I've seen one bug in the wild as a result of things not getting shut down :) Reviewed-by: Lyude Paul Tested-by: Lyude Paul On Thu, 2023-09-21 at 12:26 -0700, Douglas Anderson wrote: > Based on grepping through the source code this driver appe

Re: [PATCH 5/9] drm/nouveau/pm: Annotate struct nvkm_perfdom with __counted_by

2023-09-22 Thread Lyude Paul
Reviewed-by: Lyude Paul Thanks! On Fri, 2023-09-22 at 10:32 -0700, Kees Cook wrote: > Prepare for the coming implementation by GCC and Clang of the __counted_by > attribute. Flexible array members annotated with __counted_by can have > their accesses bounds-checked at run-time che

[Nouveau] [PATCH v3 44/44] drm/nouveau/kms/nv50-: disable dcb parsing

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - nvkm should provide all this info now - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nouveau_bios.c| 8 +--- drivers/gpu/drm/nouveau/nouveau_display.c | 8

[Nouveau] [PATCH v3 43/44] drm/nouveau/kms/nv50-: create outputs based on nvkm info

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 97 ++- drivers/gpu/drm/nouveau/dispnv50/disp.h | 2 - drivers/gpu/drm

[Nouveau] [PATCH v3 37/44] drm/nouveau/disp: move outp init/fini paths to chipset code

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - pre-nv5x doesn't use any of this - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/nvkm/engine/disp/base.c | 31 +++ .../gpu/drm/nouveau/nvkm/engine

[Nouveau] [PATCH v3 39/44] drm/nouveau/kms/nv50-: create heads based on nvkm head mask

2023-09-19 Thread Lyude Paul
From: Ben Skeggs No need to go poking HW directly, and probably shouldn't on GSP-RM. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 18 +++--- 1 file changed, 3 insertions

[Nouveau] [PATCH v3 38/44] drm/nouveau/disp/nv50-: skip DCB_OUTPUT_TV

2023-09-19 Thread Lyude Paul
From: Ben Skeggs We've never supported it. Signed-off-by: Ben Skeggs Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c

[Nouveau] [PATCH v3 41/44] drm/nouveau/kms/nv50-: name aux channels after their connector

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - removes use of VBIOS data for naming - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nouveau_connector.c | 25 - 1 file changed, 9 insertions

[Nouveau] [PATCH v3 40/44] drm/nouveau/kms/nv50-: create heads after outps/conns

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - output info will be used later to determine MST support Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 64 - 1 file changed, 32 insertions(+), 32

[Nouveau] [PATCH v3 36/44] drm/nouveau/disp: move outp/conn construction to chipset code

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - pre-nv5x doesn't use any of this, has its own version DRM-side - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/nvkm/engine/disp/base.c | 117

[Nouveau] [PATCH v3 35/44] drm/nouveau/disp: add dp mst id get/put methods

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 32 --- drivers/gpu/drm/nouveau/dispnv50/head.h | 1 + drivers/gpu/drm

[Nouveau] [PATCH v3 34/44] drm/nouveau/disp: add dp sst config method

2023-09-19 Thread Lyude Paul
-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 12 +++ drivers/gpu/drm/nouveau/include/nvif/outp.h | 1 + drivers/gpu/drm/nouveau/nvif/outp.c | 18 .../gpu/drm/nouveau/nvkm/engine/disp

[Nouveau] [PATCH v3 33/44] drm/nouveau/disp: move link training out of supervisor

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 11 ++ drivers/gpu/drm/nouveau/include/nvif/outp.h | 1 + drivers/gpu/drm/nouveau

[Nouveau] [PATCH v3 32/44] drm/nouveau/disp: add dp train method

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - passes DPCD information from DRM to NVKM - removes NVKM's own sink caps handling - link still trained from supervisor, more patches to come Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau

[Nouveau] [PATCH v3 31/44] drm/nouveau/kms/nv50-: fixup sink D3 before tearing down link

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - fixes bug preventing this on SST - implement for MST Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 13 +++-- drivers/gpu/drm/nouveau/nouveau_dp.c | 15

[Nouveau] [PATCH v3 30/44] drm/nouveau/kms/nv50-: flush mst disables together

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - fixes some issues tearing down modes on tiled displays Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 11 +-- drivers/gpu/drm/nouveau/dispnv50/disp.h | 1 - 2

[Nouveau] [PATCH v3 29/44] drm/nouveau/kms/nv50-: split DP disable+enable into two modesets

2023-09-19 Thread Lyude Paul
From: Ben Skeggs Link training can finally be moved out of the supervisor sequence, but first we need to split DP modesets into separate disable and enable sequences to be able to perform link training between them instead. - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude

[Nouveau] [PATCH v3 28/44] drm/nouveau/disp: add dp rates method

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - moves building of link rates table from NVKM to DRM - preparing to move link training out of supervisor Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 13

[Nouveau] [PATCH v3 27/44] drm/nouveau/disp: add dp aux xfer method

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 32 +-- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 12 +++ drivers

[Nouveau] [PATCH v3 26/44] drm/nouveau/disp: move dp aux pwr method to HAL

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c| 9 + drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.h | 4 drivers/gpu/drm

[Nouveau] [PATCH v3 25/44] drm/nouveau/disp: add hdmi audio hal function

2023-09-19 Thread Lyude Paul
From: Ben Skeggs This just adds a hook for RM to use, HW paths remain untouched, but should probably be cleaned up to use this too at some point. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine

[Nouveau] [PATCH v3 24/44] drm/nouveau/disp: add output lvds config method

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - was previously part of acquire() Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 2 +- drivers/gpu/drm/nouveau/include/nvif/if0012.h| 16

[Nouveau] [PATCH v3 23/44] drm/nouveau/disp: add output backlight control methods

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 17 drivers/gpu/drm/nouveau/include/nvif/outp.h | 3 + drivers/gpu/drm/nouveau

[Nouveau] [PATCH v3 22/44] drm/nouveau/disp: remove SOR routing updates from supervisor

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - these shouldn't be necessary now, and are done in acquire()/release() - preparation for GSP-RM, where we don't control the supervisor Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm

[Nouveau] [PATCH v3 21/44] drm/nouveau/disp: release outputs post-modeset

2023-09-19 Thread Lyude Paul
-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c| 18 -- .../gpu/drm/nouveau/nvkm/engine/disp/outp.c| 1 + .../gpu/drm/nouveau/nvkm/engine/disp/uoutp.c | 2 ++ 3 files changed, 11 insertions(+), 10

[Nouveau] [PATCH v3 20/44] drm/nouveau/disp: move hdmi disable out of release()

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - release() is being moved post-modeset, preserve hdmi behaviour for now Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 8 drivers/gpu/drm/nouveau

[Nouveau] [PATCH v3 19/44] drm/nouveau/disp: add output hdmi config method

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - was previously part of acquire() - preparation for GSP-RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 10 ++--- drivers/gpu/drm/nouveau/include/nvif/if0012.h

[Nouveau] [PATCH v3 15/44] drm/nouveau/kms/nv50-: pull some common init out of OR-specific code

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - cleanup before additional changes Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 69 --- drivers/gpu/drm/nouveau/nouveau_encoder.h | 2 + 2 files

[Nouveau] [PATCH v3 17/44] drm/nouveau/kms/nv50-: keep output state around until modeset complete

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - we'll want this info post-UPDATE for later patches Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) diff

[Nouveau] [PATCH v3 18/44] drm/nouveau/kms/nv50-: move audio enable post-modeset

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - adds tracking for post-UPDATE modeset operations, similar to mst[mo]'s - audio won't work on RM without this - we should probably have been doing this anyway Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul

[Nouveau] [PATCH v3 16/44] drm/nouveau/kms/nv50-: remove nv_encoder.audio.connector

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - use nv_encoder.conn instead, outp->conn never changes Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 4 +--- drivers/gpu/drm/nouveau/nouveau_encoder.h | 1 - 2 fi

[Nouveau] [PATCH v3 14/44] drm/nouveau/disp: update SOR routing immediately on acquire()

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - was previously delayed until second supervisor interrupt Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.c

[Nouveau] [PATCH v3 13/44] drm/nouveau/disp: add acquire_sor/pior()

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparing to move protocol-specific args out of acquire() again - avoid re-acquiring acquired output, will matter when enforced later - sor/pior done at same time due to shared tmds/dp handling Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich

[Nouveau] [PATCH v3 12/44] drm/nouveau/disp: add acquire_dac()

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparing to move protocol-specific args out of acquire() again - avoid re-acquiring acquired output, will matter when enforced later - this one is basically just a rename Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude

[Nouveau] [PATCH v3 10/44] drm/nouveau/kms: Add INHERIT ioctl to nvkm/nvif for reading IOR state

2023-09-19 Thread Lyude Paul
mostly work without this commit, this commit should fix some edge case bugs that can occur on initial driver load. This also paves the way for some of the initial groundwork for fastboot support. Signed-off-by: Lyude Paul Signed-off-by: Ben Skeggs Acked-by: Danilo Krummrich --- drivers/gpu/drm

[Nouveau] [PATCH v3 11/44] drm/nouveau/disp: shuffle to make upcoming diffs prettier

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparing to move protocol-specific args out of acquire() again - no code changes Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvif/outp.c | 106 +- .../gpu

[Nouveau] [PATCH v3 09/44] drm/nouveau/disp: rename internal output acquire/release functions

2023-09-19 Thread Lyude Paul
From: Ben Skeggs These will be made static later in the patch series, after the code that uses them has been cleaned up in preparation for GSP-RM support. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm

[Nouveau] [PATCH v3 07/44] drm/nouveau/disp: add output detect method

2023-09-19 Thread Lyude Paul
From: Ben Skeggs This will check the relevant hotplug pin and skip the DDC probe we currently do if a display is present. - preparation for GSP-RM. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include

[Nouveau] [PATCH v3 08/44] drm/nouveau/disp: add output method to fetch edid

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - needed to support TMDS EDID on RM Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 10 +++ drivers/gpu/drm/nouveau/include/nvif/outp.h | 1 + drivers/gpu/drm

[Nouveau] [PATCH v3 04/44] drm/nouveau/mmu/gp100-: always invalidate TLBs at CACHE_LEVEL_ALL

2023-09-19 Thread Lyude Paul
From: Ben Skeggs Fixes some issues when running on top of RM. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmtu102.c | 2 +- 2

[Nouveau] [PATCH v3 05/44] drm/nouveau/kms/nv50-: fix mst payload alloc fail crashing evo

2023-09-19 Thread Lyude Paul
From: Ben Skeggs Programming -1 (vc_start_slot, if alloc fails) into HW probably isn't the best idea. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/disp.c | 10 +++--- 1 file changed, 7

[Nouveau] [PATCH v3 06/44] drm/nouveau/disp: rearrange output methods

2023-09-19 Thread Lyude Paul
From: Ben Skeggs - preparation for a bunch of API changes, to make diffs prettier Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvif/if0012.h | 19 +++ .../gpu/drm/nouveau/nvkm

[Nouveau] [PATCH v3 03/44] drm/nouveau/gr/gf100-: lose contents of global ctxbufs across suspend

2023-09-19 Thread Lyude Paul
From: Ben Skeggs Some of these buffers are quite large, and there's no need to preserve them across suspend. Mark the contents as lost to speedup suspend/resume. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm

[Nouveau] [PATCH v3 02/44] drm/nouveau/imem: support allocations not preserved across suspend

2023-09-19 Thread Lyude Paul
From: Ben Skeggs Will initially be used to tag some large grctx allocations which don't need to be saved, to speedup suspend/resume. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- .../drm/nouveau/include/nvkm/core/memory.h| 1

[Nouveau] [PATCH v3 01/44] drm/nouveau/devinit/tu102-: remove attempt at loading PreOS

2023-09-19 Thread Lyude Paul
From: Ben Skeggs >From Turing, HW will already have handled this and locked-down the falcon before we get control. So this *should* be a no-op. Signed-off-by: Ben Skeggs Reviewed-by: Lyude Paul Acked-by: Danilo Krummrich Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/sub

[Nouveau] [PATCH v3 00/44] drm/nouveau: initial support for GSP-RM 535.54.04 (and Ada GPUs)

2023-09-19 Thread Lyude Paul
drm/nouveau/kms/nv50-: create heads after outps/conns drm/nouveau/kms/nv50-: name aux channels after their connector drm/nouveau/kms/nv50-: create connectors based on nvkm info drm/nouveau/kms/nv50-: create outputs based on nvkm info drm/nouveau/kms/nv50-: disable dcb parsing Lyude Paul (1

Re: [Nouveau] [PATCH] nouveau/u_memcpya: fix NULL vs error pointer bug

2023-09-18 Thread Lyude Paul
Reviewed-by: Lyude Paul I assume you need me to push this to drm-misc? On Fri, 2023-09-15 at 15:59 +0300, Dan Carpenter wrote: > The u_memcpya() function is supposed to return error pointers on > error. Returning NULL will lead to an Oops. > > Fixes: 68132cc6d1bc ("nouve

Re: [Nouveau] [PATCH] drm/nouveau: sched: fix leaking memory of timedout job

2023-09-18 Thread Lyude Paul
t; if (job->ops->timeout) > - return job->ops->timeout(job); > + stat = job->ops->timeout(job); > + else > + NV_PRINTK(warn, job->cli, "Generic job timeout.\n"); > + > + drm_sched_start(sched, true); > > - return DRM_GPU_SCHED_STAT_ENODEV; > + return stat; > } > > static void -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

Re: [Nouveau] [PATCH 00/44] drm/nouveau: display rework to support GSP-RM

2023-09-15 Thread Lyude Paul
For the whole series: Reviewed-by: Lyude Paul Tested on an RTX4000 On Thu, 2023-09-14 at 18:45 +1000, Ben Skeggs wrote: > From: Ben Skeggs > > The primary issue being tackled here is that, for historical reasons (we > didn't know any better / couldn't make it work reliably othe

Re: [Nouveau] [PATCH] drm/nouveau/nvif: refactor deprecated strncpy

2023-09-15 Thread Lyude Paul
Reviewed-by: Lyude Paul Will push this and your other patches in just a moment On Thu, 2023-09-14 at 21:30 +, Justin Stitt wrote: > `strncpy` is deprecated and as such we should prefer more robust and > less ambiguous string interfaces. > > A suitable replacement is `strs

Re: [Nouveau] [PATCH] drm/nouveau/pm: refactor deprecated strncpy

2023-09-15 Thread Lyude Paul
...oops, responded to the wrong email :P Reviewed-by: Lyude Paul On Thu, 2023-09-14 at 22:17 +, Justin Stitt wrote: > `strncpy` is deprecated for use on NUL-terminated destination strings [1]. > > We should prefer more robust and less ambiguous string interfaces. >

Re: [Nouveau] [PATCH] drm/nouveau/core: refactor deprecated strncpy

2023-09-15 Thread Lyude Paul
Eek, I didn't realize how many instances of this we had. Thanks for doing this :) Reviewed-by: Lyude Paul On Thu, 2023-09-14 at 21:40 +, Justin Stitt wrote: > `strncpy` is deprecated for use on NUL-terminated destination strings [1]. > > We should prefer more robust and less

Re: [Nouveau] [PATCH] drm/nouveau/pm: refactor deprecated strncpy

2023-09-15 Thread Lyude Paul
Nice catch! Reviewed-by: Lyude Paul Will push in just a moment On Thu, 2023-09-14 at 21:59 -0700, Kees Cook wrote: > On Thu, Sep 14, 2023 at 10:17:08PM +, Justin Stitt wrote: > > `strncpy` is deprecated for use on NUL-terminated destination strings [1]. > > > >

Re: [Nouveau] [PATCH] drm/nouveau/disp: fix use-after-free in error handling of nouveau_connector_create

2023-08-16 Thread Lyude Paul
Reviewed-by: Lyude Paul On Mon, 2023-08-14 at 16:49 +0200, Karol Herbst wrote: > We can't simply free the connector after calling drm_connector_init on it. > We need to clean up the drm side first. > > It might not fix all regressions from 2b5d1c29f6c4 ("drm/nouveau/disp: &g

Re: [Nouveau] [PATCH] drm/nouveau/disp: Revert a NULL check inside nouveau_connector_get_modes

2023-08-07 Thread Lyude Paul
Ugh, thanks for catching this! Reviewed-by: Lyude Paul On Sat, 2023-08-05 at 12:18 +0200, Karol Herbst wrote: > The original commit adding that check tried to protect the kenrel against > a potential invalid NULL pointer access. > > However we call nouveau_connector_detect_depth

[Nouveau] [PATCH v2] drm/nouveau/nvkm/dp: Add workaround to fix DP 1.3+ DPCD issues

2023-07-28 Thread Lyude Paul
://gitlab.freedesktop.org/drm/nouveau/-/issues/211 Signed-off-by: Lyude Paul Reviewed-by: Karol Herbst --- drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c | 48 ++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c b/drivers/gpu

Re: [Nouveau] [PATCH] drm/nouveau/nvkm/dp: Add hack to fix DP 1.3+ DPCD issues

2023-07-27 Thread Lyude Paul
On Sun, 2023-07-09 at 01:42 +0200, Karol Herbst wrote: > On Fri, Jul 7, 2023 at 11:58 PM Lyude Paul wrote: > > > > Currently we use the drm_dp_dpcd_read_caps() helper in the DRM side of > > nouveau in order to read the DPCD of a DP connector, which makes sure we do > &g

Re: [Nouveau] [PATCH] drm/nouveau/fifo:Fix Nineteen occurrences of the gk104.c error: ERROR: : trailing statements should be on next line

2023-07-14 Thread Lyude Paul
e NVKM_MEM_TARGET_NCOH: > +target = 3; > +break; This one isn't very long, but I'd still say it's definitely a lot easier to read in the compact form. If anything, the only change I would make here is formatting the default: case to be on a single line as well > default: > WARN_ON(1); > return; -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

[Nouveau] [PATCH] drm/nouveau/nvkm/dp: Add hack to fix DP 1.3+ DPCD issues

2023-07-07 Thread Lyude Paul
should be pretty easy to accomplish (I'm already working on it!). Until then however, let's workaround this problem by porting a copy of drm_dp_read_dpcd_caps() into NVKM - which should fix this issue. Issue: https://gitlab.freedesktop.org/drm/nouveau/-/issues/211 Signed-off-by: Lyude Paul

Re: [Nouveau] [PATCH] drm/nouveau/disp: use drm_kms_helper_connector_hotplug_event()

2023-07-07 Thread Lyude Paul
On Wed, 2023-06-21 at 22:13 +, Simon Ser wrote: > Hi Lyude! > > On Wednesday, June 21st, 2023 at 23:56, Lyude Paul wrote: > > > > - if (changed) > > > + if (changed == 1) > > > + drm_kms_helper_connector_hotplug_event(first_changed_c

Re: [Nouveau] [PATCH] drm/nouveau/disp/g94: enable HDMI

2023-07-07 Thread Lyude Paul
Reviewed-by: Lyude Paul But seeing as I looked at this + some other patches yesterday I assume there's still more to this? On Fri, 2023-06-30 at 18:06 +0200, Karol Herbst wrote: > Cc: Ben Skeggs > Cc: Lyude Paul > Fixes: f530bc60a30b ("drm/nouveau/disp: move HDMI confi

Re: [Nouveau] [PATCH v6 0/8] PCI/VGA: introduce is_boot_device function callback to vga_client_register

2023-06-21 Thread Lyude Paul
For the nouveau bits: Reviewed-by: Lyude Paul On Tue, 2023-06-13 at 03:25 +0800, Sui Jingfeng wrote: > From: Sui Jingfeng > > The vga_is_firmware_default() function is arch-dependent, it's probably > wrong if we simply remove the arch guard. As the VRAM BAR which contain

Re: [Nouveau] [PATCH] drm/nouveau/disp: use drm_kms_helper_connector_hotplug_event()

2023-06-21 Thread Lyude Paul
Looks alright! Some comments below On Tue, 2023-06-20 at 18:15 +, Simon Ser wrote: > This adds more information to the hotplug uevent and lets user-space > know that it's about a particular connector only. > > Signed-off-by: Simon Ser > Cc: Ben Skeggs > Cc: Lyude Paul

Re: [Nouveau] [PATCH 01/10] drm/nouveau/nvkm: fini object children in reverse order

2023-06-13 Thread Lyude Paul
For the whole series: Reviewed-by: Lyude Paul On Thu, 2023-05-25 at 10:30 +1000, Ben Skeggs wrote: > From: Ben Skeggs > > Turns out, we're currently tearing down the disp core channel *before* > the satellite channels (wndw, etc) during suspend. > > This makes RM return NV

[Nouveau] [PATCH] drm/nouveau/kms/nv50-: Fix drm_dp_remove_payload() invocation

2023-06-13 Thread Lyude Paul
We changed the semantics for this in: e761cc20946a ("drm/display/dp_mst: Handle old/new payload states in drm_dp_remove_payload()") But I totally forgot to update this properly in nouveau. So, let's do that. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/dispnv50/

Re: [Nouveau] [PATCH] nouveau_connector: add nv_encoder pointer check for NULL

2023-06-13 Thread Lyude Paul
Nice catch! Reviewed-by: Lyude Paul Will push upstream On Fri, 2023-05-12 at 13:33 +0300, Natalia Petrova wrote: > Pointer nv_encoder could be dereferenced at nouveau_connector.c > in case it's equal to NULL by jumping to goto label. > This patch adds a NULL-check to avoid it. &

Re: [Nouveau] [PATCH] drm/nouveau/dp: check for NULL nv_connector->native_mode

2023-06-13 Thread Lyude Paul
Reviewed-by: Lyude Paul Will push upstream in a bit On Fri, 2023-05-12 at 14:15 +0300, Natalia Petrova wrote: > Add checking for NULL before calling nouveau_connector_detect_depth() in > nouveau_connector_get_modes() function because nv_connector->native_mode > could be dereferenced

Re: [Nouveau] [PATCH 3/4] drm/nouveau: stop using is_swiotlb_active

2023-05-18 Thread Lyude Paul
Reviewed-by: Lyude Paul Thanks for getting to this! On Thu, 2023-05-18 at 15:42 +0200, Christoph Hellwig wrote: > Drivers have no business looking into dma-mapping internals and check > what backend is used. Unfortunstely the DRM core is still broken and > tries to do plain page al

Re: [Nouveau] Disabling -Warray-bounds for gcc-13 too

2023-04-27 Thread Lyude Paul
On Fri, 2023-04-28 at 00:50 +0200, Karol Herbst wrote: > On Fri, Apr 28, 2023 at 12:46 AM Lyude Paul wrote: > > > > Hey Linus, Kees. Responses below > > > > On Sun, 2023-04-23 at 13:23 -0700, Kees Cook wrote: > > > On April 23, 2023 10:36:24 AM PDT, Linus

Re: [Nouveau] Disabling -Warray-bounds for gcc-13 too

2023-04-27 Thread Lyude Paul
fix. > > > > > So that warning does find real cases of wrong code. But when those > > real cases are hidden by hundreds of lines of unfixable false > > positives, we don't have much choice. > > Yup, totally agreed. The false positives I've looked at all seem to be > similar to the outstanding jump threading bug, so I'm hoping once that gets > fixed we'll finally have a good signal with that warning enabled. :) > > -Kees > > -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat

  1   2   3   4   5   6   7   8   9   10   >