[PATCH v6 5/5] drm/nouveau: Fix deadlocks in nouveau_connector_detect()

2018-08-13 Thread Lyude Paul
ke without any pending runtime PM requests. In the event that a hotplug occurs while the device is suspending or resuming, we can simply defer our response until the GPU is fully runtime resumed again. Changes since v5: - Use a new trick I came up with using pm_runtime_get() instead of the hack

[PATCH] drm/nouveau: Set DRIVER_ATOMIC cap earlier to fix debugfs

2018-07-23 Thread Lyude Paul
to use the state debugfs file to check the current display state even if clients aren't allowed to modify it through anything other than the legacy ioctls. Additionally, disable the DRIVER_ATOMIC cap in nv04's display core, as this was already disabled there previously. Signed-off-by

"irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-23 Thread Lyude Paul
Hi! Sorry to be the bearer of bad news, but this patch actually seems to break suspending and resuming with nouveau on my machine: [ 29.694755] PM: suspend entry (deep) [ 29.694773] PM: Syncing filesystems ... done. [ 29.696203] Freezing user space processes ... (elapsed 0.001 seconds) done.

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-23 Thread Lyude Paul
JFYI: I confirmed this patch is definitely broken. I'm seeing nouveau get assigned the same MSI vector as another device on the system, which would explain why interrupts suddenly stop working. I'll keep looking into it further tomorrow. On Tue, 2018-01-23 at 17:01 -0500, Lyude Paul w

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-24 Thread Lyude Paul
nally; when nouveau does initialize properly after resume (e.g. after reverting this patch) I see it get assigned a seperate vector from the other devices. On Wed, 2018-01-24 at 13:52 +0100, Thomas Gleixner wrote: > On Tue, 23 Jan 2018, Lyude Paul wrote: > > > JFYI: I confirmed this pa

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-24 Thread Lyude Paul
On Wed, 2018-01-24 at 19:13 +, Ghannam, Yazen wrote: > > -Original Message- > > From: linux-kernel-ow...@vger.kernel.org [mailto:linux-kernel- > > ow...@vger.kernel.org] On Behalf Of Lyude Paul > > Sent: Wednesday, January 24, 2018 12:49 PM > >

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-24 Thread Lyude Paul
On Wed, 2018-01-24 at 14:56 -0500, Lyude Paul wrote: > On Wed, 2018-01-24 at 19:13 +, Ghannam, Yazen wrote: > > > -Original Message- > > > From: linux-kernel-ow...@vger.kernel.org [mailto:linux-kernel- > > > ow...@vger.kernel.org] On Behalf Of Lyude Paul

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-25 Thread Lyude Paul
hing to do. Going to get some patches onto the mailing list for this, thanks for the help! On Thu, 2018-01-25 at 09:54 +0100, Thomas Gleixner wrote: > On Wed, 24 Jan 2018, Lyude Paul wrote: > > Sorry about that! Let me clarify a little bit: this is a problem that shows > > up > >

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-25 Thread Lyude Paul
Will cc you with some patches in a bit, think I have this problem figured out :) On Thu, 2018-01-25 at 04:29 +0100, Mike Galbraith wrote: > On Wed, 2018-01-24 at 15:02 -0500, Lyude Paul wrote: > > Almost forgot to mention: I came across this patch because reverting it > > locally

Re: "irq/matrix: Spread interrupts on allocation" breaks nouveau in mainline kernel

2018-01-25 Thread Lyude Paul
On Thu, 2018-01-25 at 19:46 +0100, Thomas Gleixner wrote: > On Thu, 25 Jan 2018, Lyude Paul wrote: > > > I think you are right, apologies. Glad to know this isn't a regression in > > the > > IRQ handling code :). It looks like our nouveau problems are probably com

[PATCH] drm/nouveau: Move irq setup/teardown to pci ctor/dtor

2018-01-25 Thread Lyude Paul
ouveau to work again. As well, this probably means we can also just remove the msi rearm call inside nvkm_pci_init(). But since our main focus here is to fix suspend/resume before 4.16, we'll save that for a later patch. Signed-off-by: Lyude Paul Cc: Karol Herbst Cc: Thomas Gl

[PATCH v2] drm/nouveau: Move irq setup/teardown to pci ctor/dtor

2018-01-25 Thread Lyude Paul
ouveau to work again. As well, this probably means we can also just remove the msi rearm call inside nvkm_pci_init(). But since our main focus here is to fix suspend/resume before 4.15, we'll save that for a later patch. Signed-off-by: Lyude Paul Cc: Karol Herbst Cc: Thomas Gl

[PATCH v3] drm/nouveau: Move irq setup/teardown to pci ctor/dtor

2018-01-25 Thread Lyude Paul
ouveau to work again. As well, this probably means we can also just remove the msi rearm call inside nvkm_pci_init(). But since our main focus here is to fix suspend/resume before 4.15, we'll save that for a later patch. Signed-off-by: Lyude Paul Cc: Karol Herbst Cc: Thomas Gl

[RFC v2 0/4] Implement full clockgating for Kepler1 and 2

2018-01-25 Thread Lyude Paul
o a simple boolean option. - Fixup nvkm_info() messages so that we don't mention powergating in them, since this isn't actually added in this series (and may not be for a while, only time will tell :) - Don't export unused function gk104_therm_new_() Lyude Paul (4): drm

[RFC v2 1/4] drm/nouveau: Add support for basic clockgating on Kepler1

2018-01-25 Thread Lyude Paul
/gf100.h header. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 5 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 17 +-- drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 60 +++--

[RFC v2 2/4] drm/nouveau: Add support for BLCG on Kepler1

2018-01-25 Thread Lyude Paul
#x27;ll reformat the clkgate_packs for kepler1 so that they share a list of mmio packs with Fermi. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 12 ++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/

[RFC v2 3/4] drm/nouveau: Add support for BLCG on Kepler2

2018-01-25 Thread Lyude Paul
Same as the previous patch, but for Kepler2 now Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 8 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c| 62 drivers/gpu/drm

[RFC v2 4/4] drm/nouveau: Add support for SLCG for Kepler2

2018-01-25 Thread Lyude Paul
o be gated before taking affect. As with the previous series, this results in another noticeable drop in power consumption and is programmed in the same manner. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 93 ++ 1 file changed, 93 insertion

Re: [PATCH] drm/nouveau: Fix drm poll_helper handling

2017-05-15 Thread Lyude Paul
036eea ("drm/nouveau: Don't enabling polling twice on > runtime resume") > Signed-off-by: Peter Ujfalusi > Cc: Lyude Paul > Cc: Dave Airlie > Cc: Gleb Nemshilov > --- > Hi, > > this patch was created and tested in connection of: > https://bugs.fre

[RFC v5 0/5] Implement full clockgating for Kepler1 and 2

2018-01-30 Thread Lyude Paul
Next version of my patchseries for adding clockgating support for kepler1 and 2 on nouveau. The first version of this series can be found here: https://patchwork.freedesktop.org/series/36504/ One small change: - Add Martin's R-B, whoops Lyude Paul (5): drm/nouveau: Add support for

[RFC v5 1/5] drm/nouveau: Add support for basic clockgating on Kepler1

2018-01-30 Thread Lyude Paul
Fermi for certain however, we at least add those into a new subdev/therm/gf100.h header. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 5 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 17 +-- drivers/gpu/drm/nouveau/nvkm/su

[RFC v5 2/5] drm/nouveau: Add support for BLCG on Kepler1

2018-01-30 Thread Lyude Paul
#x27;ll reformat the clkgate_packs for kepler1 so that they share a list of mmio packs with Fermi. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 12 ++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/

[RFC v5 3/5] drm/nouveau: Add support for BLCG on Kepler2

2018-01-30 Thread Lyude Paul
Same as the previous patch, but for Kepler2 now Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 8 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c| 62

[RFC v5 4/5] drm/nouveau: Add support for SLCG for Kepler2

2018-01-30 Thread Lyude Paul
o be gated before taking affect. As with the previous series, this results in another noticeable drop in power consumption and is programmed in the same manner. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 93 ++ 1 fi

[RFC v5 5/5] drm/nouveau: Introduce NvPmEnableGating option

2018-01-30 Thread Lyude Paul
that clockgating is enabled. Since clockgating has only had limited testing thus far, we leave this option disabled by default for now. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 4 +++- 1 file changed, 3 insertions(+), 1 del

[RFC v6 0/5] Implement full clockgating for Kepler1 and 2

2018-02-01 Thread Lyude Paul
hings entirely and also since we no longer need to, stop exporting gt215_therm_init Signed-off-by: Lyude Paul Reviewed-by: Martin Peres Lyude Paul (5): drm/nouveau: Add support for basic clockgating on Kepler1 drm/nouveau: Add support for BLCG on Kepler1 drm/nouveau: Add support for BLCG on Ke

[RFC v6 3/5] drm/nouveau: Add support for BLCG on Kepler2

2018-02-01 Thread Lyude Paul
Same as the previous patch, but for Kepler2 now Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 8 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c| 62

[RFC v6 2/5] drm/nouveau: Add support for BLCG on Kepler1

2018-02-01 Thread Lyude Paul
#x27;ll reformat the clkgate_packs for kepler1 so that they share a list of mmio packs with Fermi. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 12 ++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/

[RFC v6 1/5] drm/nouveau: Add support for basic clockgating on Kepler1

2018-02-01 Thread Lyude Paul
Fermi for certain however, we at least add those into a new subdev/therm/gf100.h header. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 5 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 17 +-- drivers/gpu/drm/nouveau/nvkm/su

[RFC v6 4/5] drm/nouveau: Add support for SLCG for Kepler2

2018-02-01 Thread Lyude Paul
o be gated before taking affect. As with the previous series, this results in another noticeable drop in power consumption and is programmed in the same manner. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 93 ++ 1 fi

[RFC v6 5/5] drm/nouveau: Introduce NvPmEnableGating option

2018-02-01 Thread Lyude Paul
that clockgating is enabled. Since clockgating has only had limited testing thus far, we leave this option disabled by default for now. Signed-off-by: Lyude Paul Reviewed-by: Martin Peres --- drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 4 +++- 1 file changed, 3 insertions(+), 1 del

Re: [Nouveau] [RFC v2 1/4] drm/nouveau: Add support for basic clockgating on Kepler1

2018-01-26 Thread Lyude Paul
On Fri, 2018-01-26 at 12:34 +0100, Karol Herbst wrote: > On Fri, Jan 26, 2018 at 4:35 AM, Lyude Paul wrote: > > This adds support for enabling automatic clockgating on nvidia GPUs for > > Kepler1. While this is not technically a clockgating level, it does > > enable

Re: [RFC v2 3/4] drm/nouveau: Add support for BLCG on Kepler2

2018-01-26 Thread Lyude Paul
On Fri, 2018-01-26 at 02:53 -0500, Ilia Mirkin wrote: > On Thu, Jan 25, 2018 at 10:35 PM, Lyude Paul wrote: > > Same as the previous patch, but for Kepler2 now > > > > Signed-off-by: Lyude Paul > > --- > > drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h |

[RFC v3 0/4] Implement full clockgating for Kepler1 and 2

2018-01-26 Thread Lyude Paul
vered that these patches have a higher chance of crashing your card if you reclock under load. However, reclocking under load has never been supported by nouveau in the first place and has always caused trouble so that's nothing new :). Reclocking while not under load with powergating works A-

[RFC v3 1/4] drm/nouveau: Add support for basic clockgating on Kepler1

2018-01-26 Thread Lyude Paul
/gf100.h header. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 5 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 17 +-- drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 60 +++--

[RFC v3 4/4] drm/nouveau: Add support for SLCG for Kepler2

2018-01-26 Thread Lyude Paul
o be gated before taking affect. As with the previous series, this results in another noticeable drop in power consumption and is programmed in the same manner. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 93 ++ 1 file changed, 93 insertion

[RFC v3 3/4] drm/nouveau: Add support for BLCG on Kepler2

2018-01-26 Thread Lyude Paul
Same as the previous patch, but for Kepler2 now Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 8 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c| 62 drivers/gpu/drm

[RFC v3 2/4] drm/nouveau: Add support for BLCG on Kepler1

2018-01-26 Thread Lyude Paul
#x27;ll reformat the clkgate_packs for kepler1 so that they share a list of mmio packs with Fermi. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 12 ++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/

[RFC v4 0/5] Implement full clockgating for Kepler1 and 2

2018-01-29 Thread Lyude Paul
the NvPmEnableGating option Lyude Paul (5): drm/nouveau: Add support for basic clockgating on Kepler1 drm/nouveau: Add support for BLCG on Kepler1 drm/nouveau: Add support for BLCG on Kepler2 drm/nouveau: Add support for SLCG for Kepler2 drm/nouveau: Introduce NvPmEnableGating opt

[RFC v4 1/5] drm/nouveau: Add support for basic clockgating on Kepler1

2018-01-29 Thread Lyude Paul
Fermi for certain however, we at least add those into a new subdev/therm/gf100.h header. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 5 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 17 +-- drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild | 1

[RFC v4 2/5] drm/nouveau: Add support for BLCG on Kepler1

2018-01-29 Thread Lyude Paul
#x27;ll reformat the clkgate_packs for kepler1 so that they share a list of mmio packs with Fermi. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 12 ++ drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/

[RFC v4 3/5] drm/nouveau: Add support for BLCG on Kepler2

2018-01-29 Thread Lyude Paul
Same as the previous patch, but for Kepler2 now Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 8 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c| 62 drivers/gpu/drm

[RFC v4 4/5] drm/nouveau: Add support for SLCG for Kepler2

2018-01-29 Thread Lyude Paul
o be gated before taking affect. As with the previous series, this results in another noticeable drop in power consumption and is programmed in the same manner. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 93 ++ 1 file changed, 93 insertion

[RFC 5/5] drm/nouveau: Introduce NvPmEnableGating option

2018-01-29 Thread Lyude Paul
that clockgating is enabled. Since clockgating has only had limited testing thus far, we leave this option disabled by default for now. Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gp

Re: [02/12] watchdog: sp5100_tco: Fix watchdog disable bit

2018-01-16 Thread Lyude Paul
ed > to enable watchdog address decoding, which is the default setting, but it > still needs to be fixed. Reviewed-by: Lyude Paul > > Cc: Zoltán Böszörményi > Signed-off-by: Guenter Roeck > --- > drivers/watchdog/sp5100_tco.h | 2 +- > 1 file changed, 1 insertion(+), 1

Re: [01/12] watchdog: sp5100_tco: Always use SP5100_IO_PM_{INDEX_REG, DATA_REG}

2018-01-16 Thread Lyude Paul
REG 0xCD6 > #define SP5100_IO_PM_DATA_REG0xCD7 > > +/* For SP5100/SB7x0 chipset */ > #define SP5100_SB_RESOURCE_MMIO_BASE 0x9C > > #define SP5100_PM_WATCHDOG_CONTROL 0x69 > @@ -44,11 +45,7 @@ > > #define SP5100_DEVNAME "SP5100 TCO" > > - > /* For SB8x0(or later) chipset */ > -#define SB800_IO_PM_INDEX_REG0xCD6 > -#define SB800_IO_PM_DATA_REG 0xCD7 > - IMO I would leave these macro definitions as SB800. For DRM drivers at least, we usually take the route of naming commonly used registers/methods after the first generation they appeared in, not the last. > #define SB800_PM_ACPI_MMIO_EN0x24 > #define SB800_PM_WATCHDOG_CONTROL0x48 > #define SB800_PM_WATCHDOG_BASE 0x48 -- Cheers, Lyude Paul

Re: [03/12] watchdog: sp5100_tco: Use request_muxed_region where possible

2018-01-16 Thread Lyude Paul
t; } > > @@ -535,7 +535,6 @@ static void sp5100_tco_cleanup(void) > misc_deregister(&sp5100_tco_miscdev); > iounmap(tcobase); > release_mem_region(tcobase_phys, SP5100_WDT_MEM_MAP_SIZE); > - release_region(SP5100_IO_PM_INDEX_REG, SP5100_PM_IOPORTS_SIZE); > } > > static int sp5100_tco_remove(struct platform_device *dev) -- Cheers, Lyude Paul

Re: [04/12] watchdog: sp5100_tco: Use standard error codes

2018-01-16 Thread Lyude Paul
On Sun, 2017-12-24 at 13:04 -0800, Guenter Roeck wrote: > By using standard error codes, we can identify and return more than one > error condition. > > Cc: Zoltán Böszörményi > Signed-off-by: Guenter Roeck Reviewed-by: Lyude Paul > --- > drivers/watch

Re: [05/12] watchdog: sp5100_tco: Clean up sp5100_tco_setupdevice

2018-01-16 Thread Lyude Paul
Thank you for this cleanup, the gotos that were in this code are really confusing to read through! I'd recommend one very small change described below. Assuming you add that in the next version: Reviewed-by: Lyude Paul On Sun, 2017-12-24 at 13:04 -0800, Guenter Roeck wrote: > There are

Re: [06/12] watchdog: sp5100_tco: Match PCI device early

2018-01-16 Thread Lyude Paul
Reviewed-by: Lyude Paul On Sun, 2017-12-24 at 13:04 -0800, Guenter Roeck wrote: > Match PCI device in module init function, not in the probe function. > It is pointless trying to probe if we can determine early that the device > is not supported. > > Cc: Zoltán Böszörményi

Re: [07/12] watchdog: sp5100_tco: Use dev_ print functions where possible

2018-01-16 Thread Lyude Paul
Reviewed-by: Lyude Paul On Sun, 2017-12-24 at 13:04 -0800, Guenter Roeck wrote: > Use dev_ instead of pr_ functions where possible. > > Cc: Zoltán Böszörményi > Signed-off-by: Guenter Roeck > --- > drivers/watchdog/sp5100_tco.c | 40 +---

Re: [08/12] watchdog: sp5100_tco: Clean up function and variable names

2018-01-16 Thread Lyude Paul
Reviewed-by: Lyude Paul On Sun, 2017-12-24 at 13:04 -0800, Guenter Roeck wrote: > Use more common function and variable names. > > Use pdev instead of dev for platform device. > Use sp5100_tco_probe() instead of sp5100_tco_init() for the probe function. > Drop sp5100_tco_clean

Re: [01/12] watchdog: sp5100_tco: Always use SP5100_IO_PM_{INDEX_REG, DATA_REG}

2018-01-16 Thread Lyude Paul
Oh has this patchset already been reviwed and pushed upstream? I checked patchwork beforehand and it looked like it was still pending On Tue, 2018-01-16 at 12:11 -0800, Guenter Roeck wrote: > On Tue, Jan 16, 2018 at 02:34:19PM -0500, Lyude Paul wrote: > > Sorry this review took so long!

Re: [11/12] watchdog: sp5100-tco: Abort if watchdog is disabled by hardware

2018-01-09 Thread Lyude Paul
Hi! I'm the one from the Fedora bugzilla who said they'd help review these patches. I might end up responding to this with a real review comment after this message, but first: mind cc'ing me future versions of this patchset and also, is there any way you know of that one could figure out whether o

Re: [11/12] watchdog: sp5100-tco: Abort if watchdog is disabled by hardware

2018-01-09 Thread Lyude Paul
How exactly did you go about enabling the Super-IO watchdog on your MSI board? This is an MSI A320M that I'm trying to make work here On Tue, 2018-01-09 at 15:37 -0800, Guenter Roeck wrote: > Hi, > > On Tue, Jan 09, 2018 at 05:58:07PM -0500, Lyude Paul wrote: > > Hi! I'

Re: [11/12] watchdog: sp5100-tco: Abort if watchdog is disabled by hardware

2018-01-09 Thread Lyude Paul
Oh fantastic! this works awesome, thank you ♥ On Tue, 2018-01-09 at 16:11 -0800, Guenter Roeck wrote: > On Tue, Jan 09, 2018 at 07:04:25PM -0500, Lyude Paul wrote: > > How exactly did you go about enabling the Super-IO watchdog on your MSI > > board? > > This is an MSI A32

[RFC 0/4] Implement full clockgating for Kepler1 and 2

2018-01-15 Thread Lyude Paul
ility, please feel free to try this patchset and let us know how well it works for you! Lyude Paul (4): drm/nouveau: Add support for basic clockgating on Kepler1 drm/nouveau: Add support for BLCG clockgating for Kepler1 drm/nouveau: Add BLCG clockgating for Kepler2 drm/nouveau: Add SLCG cl

[RFC 1/4] drm/nouveau: Add support for basic clockgating on Kepler1

2018-01-15 Thread Lyude Paul
.h header. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 10 ++ drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 17 +-- drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 72 +-- dri

[RFC 3/4] drm/nouveau: Add BLCG clockgating for Kepler2

2018-01-15 Thread Lyude Paul
This is mostly the same as Kepler1, but we save even more power! Signed-off-by: Lyude Paul --- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 8 +-- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c| 68

[RFC 4/4] drm/nouveau: Add SLCG clockgating for Kepler2

2018-01-15 Thread Lyude Paul
ally, it should be noted that SLCG was added starting with kepler2, previous generations have no SLCG. SLCG can be enabled with the nouveau config option, NvPmEnableGating=3 Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 1 + drivers/gpu/drm/nouveau/nvkm/en

[RFC 2/4] drm/nouveau: Add support for BLCG clockgating for Kepler1

2018-01-15 Thread Lyude Paul
since BLCG is mostly the same there as far as we can tell. In the future, it's likely we'll reformat the clkgate_packs for kepler1 so that they share a list of mmio packs with Fermi. Signed-off-by: Lyude Paul --- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h| 14 ++ drivers/gpu/d

Re: [Nouveau] [RFC 0/4] Implement full clockgating for Kepler1 and 2

2018-01-15 Thread Lyude Paul
achine. Is the rest of > the Fermi patch set available somewhere for me to test? > > Thank you > Regards Brock > > > > On 16 Jan. 2018 9:08 am, "Lyude Paul" wrote: > > It's here! After a lot of investigation, rewrites, and traces, I present > >

[PATCH v3 4/5] drm/dp_mst: Add drm_atomic_dp_mst_retrain_topology()

2018-03-09 Thread Lyude Paul
eated for every driver at some point, so let's save ourselves some trouble and just implement these atomic checks as a single helper. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/drm_dp_mst_topology.c | 223 ++ i

[PATCH v3 2/5] drm/i915: Only use one link bw config for MST topologies

2018-03-09 Thread Lyude Paul
or every modeset following, we instead use the last configured link bw for this topology. We only unlock the bw config when we've detected a new MST sink. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/i915/intel_dp.c | 11 +-- drive

[PATCH v3 5/5] drm/i915: Implement proper fallback training for MST

2018-03-09 Thread Lyude Paul
er. Running in a seperate handler allows us to avoid stalling the ESI during link retraining, and we can have the ESI signal that the channel EQ bit was cleared through a simple completion struct. Additionally, we take care to stick as much of this into the SST retraining path as possible since shari

[PATCH v3 1/5] drm/i915: Move DP modeset retry work into intel_dp

2018-03-09 Thread Lyude Paul
not we're dealing with an MST device, along with being able to easily trace the intel_dp struct back to it's respective connector (if there is any). So, move the modeset_retry_work function out of the intel_connector struct and into intel_dp. Signed-off-by: Lyude Paul Reviewed-by: Manas

[PATCH v3 3/5] drm/dp_mst: Add drm_dp_mst_topology_mgr_lower_link_rate()

2018-03-09 Thread Lyude Paul
given mst topology, then marks the link status of all connectors living in that topology as bad. We'll make use of it in i915 later in this series. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/drm_dp_mst_topology.c | 73 +

Re: [PATCH v3 5/5] drm/i915: Implement proper fallback training for MST

2018-03-12 Thread Lyude Paul
On Mon, 2018-03-12 at 15:05 -0700, Manasi Navare wrote: > On Fri, Mar 09, 2018 at 04:32:31PM -0500, Lyude Paul wrote: > > For a while we actually haven't had any way of retraining MST links with > > fallback link parameters like we do with SST. While uncommon, certain &

[PATCH v3] drm/i915/dp: Send DPCD ON for MST before phy_up

2018-04-05 Thread Lyude Paul
sage - dhnkrn Changes since v2: - Only send DPMS off when we're disabling the last sink, and only send DPMS on when we're enabling the first sink - dhnkrn Signed-off-by: Lyude Paul Cc: Dhinakaran Pandiyan Cc: Ville Syrjälä Cc: Laura Abbott Cc: sta...@vger.kernel.org Fixes: ad26

[PATCH v4] drm/i915/dp: Send DPCD ON for MST before phy_up

2018-04-06 Thread Lyude Paul
sage - dhnkrn Changes since v2: - Only send DPMS off when we're disabling the last sink, and only send DPMS on when we're enabling the first sink - dhnkrn Changes since v3: - Check against is_mst, not intel_dp->is_mst - dhnkrn/vsyrjala Signed-off-by: Lyude Paul Cc: Dhinakaran Pandi

Re: [PATCH v4] drm/i915/dp: Send DPCD ON for MST before phy_up

2018-04-06 Thread Lyude Paul
On Fri, 2018-04-06 at 12:48 -0700, Laura Abbott wrote: > On 04/06/2018 11:52 AM, Lyude Paul wrote: > > When doing a modeset where the sink is transitioning from D3 to D0 , it > > would sometimes be possible for the initial power_up_phy() to start > > timing out. This would on

[PATCH v5] drm/i915/dp: Send DPCD ON for MST before phy_up

2018-04-06 Thread Lyude Paul
sage - dhnkrn Changes since v2: - Only send DPMS off when we're disabling the last sink, and only send DPMS on when we're enabling the first sink - dhnkrn Changes since v3: - Check against is_mst, not intel_dp->is_mst - dhnkrn/vsyrjala Signed-off-by: Lyude Paul Reviewed-by: Dhinak

[PATCH v6 00/10] drm/i915: Implement proper fallback training for MST

2018-04-11 Thread Lyude Paul
Latest version of PW series 39642, hopefully this should also actually come up on intel-gfx and go through CI. No changes other than rebasing to the current drm-intel-next-queued Lyude Paul (10): drm/atomic: Print debug message on atomic check failure drm/i915: Move DP modeset retry work

[PATCH v6 01/10] drm/atomic: Print debug message on atomic check failure

2018-04-11 Thread Lyude Paul
Does what it says on the label, it's a little confusing debugging atomic check failures otherwise. Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- drivers/gpu/drm/drm_atomic.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gp

[PATCH v6 06/10] drm/dp_mst: Add reset_state callback to topology mgr

2018-04-11 Thread Lyude Paul
ilities in i915 from the topology's atomic state. Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- drivers/gpu/drm/drm_dp_mst_topology.c | 11 +++ include/drm/drm_dp_mst_helper.h | 3 ++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/

[PATCH v6 05/10] drm/dp_mst: Make drm_dp_mst_topology_state subclassable

2018-04-11 Thread Lyude Paul
. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 14 +++- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c| 35 +++- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.h| 4 +- drivers/gpu/drm/drm_dp_mst_topology.c

[PATCH v6 09/10] drm/dp_mst: Add MST fallback retraining helpers

2018-04-11 Thread Lyude Paul
tus to good - Write more docs on the retraining procedure. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/drm_dp_mst_topology.c | 438 +- include/drm/drm_dp_mst_helper.h | 20 ++ 2 files changed, 453 insertions(+), 5 d

[PATCH v6 10/10] drm/i915: Implement proper fallback training for MST

2018-04-11 Thread Lyude Paul
sharing is caring. V4: - Move all MST retraining work into hotplug_work - Grab the correct power wells when retraining. - Loop through MST encoders in intel_dp_get_crtc_mask(), quicker/easier than connectors Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu

[PATCH v6 07/10] drm/i915: Only use one link bw config for MST topologies

2018-04-11 Thread Lyude Paul
allow the link rate to change when the entire topology has been disconnected. V4: - Track link rate/lane count in the atomic topology state instead of in intel_dp. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/i915

[PATCH v6 08/10] drm/i915: Make intel_dp_mst_atomic_check() idempotent

2018-04-11 Thread Lyude Paul
e being disabled and thus will never have compute_config() ran on them, move vcpi freeing out of the atomic check and into compute_config(). Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- drivers/gpu/drm/i915/intel_dp_mst.c | 78 +++-- 1 file

[PATCH v6 03/10] drm/dp_mst: Fix naming on drm_atomic_get_mst_topology_state()

2018-04-11 Thread Lyude Paul
me used in drm_atomic.c/drm_atomic_helper.c. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/drm_dp_mst_topology.c | 13 +++-- include/drm/drm_dp_mst_helper.h | 5 +++-- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/drive

[PATCH v6 04/10] drm/dp_mst: Remove all evil duplicate state pointers

2018-04-11 Thread Lyude Paul
te->state. This confused me for over 4 hours until I realized there was no magic behind these pointers. So, let's save everyone else from the trouble. Signed-off-by: Lyude Paul . Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- include/drm/drm_dp_mst_helper.h | 6 -

[PATCH v6 02/10] drm/i915: Move DP modeset retry work into intel_dp

2018-04-11 Thread Lyude Paul
not we're dealing with an MST device, along with being able to easily trace the intel_dp struct back to it's respective connector (if there is any). So, move the modeset_retry_work function out of the intel_connector struct and into intel_dp. Signed-off-by: Lyude Paul Reviewed-by: Manas

[PATCH v7 04/10] drm/dp_mst: Remove all evil duplicate state pointers

2018-04-11 Thread Lyude Paul
te->state. This confused me for over 4 hours until I realized there was no magic behind these pointers. So, let's save everyone else from the trouble. Signed-off-by: Lyude Paul . Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- include/drm/drm_dp_mst_helper.h | 6 -

[PATCH v7 09/10] drm/dp_mst: Add MST fallback retraining helpers

2018-04-11 Thread Lyude Paul
tus to good - Write more docs on the retraining procedure. V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/drm_dp_mst_topology.c | 440 +- include/drm/drm_dp_mst_helper.h | 20 ++ 2 files chan

[PATCH v7 06/10] drm/dp_mst: Add reset_state callback to topology mgr

2018-04-11 Thread Lyude Paul
ilities in i915 from the topology's atomic state. Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul --- drivers/gpu/drm/drm_dp_mst_topology.c | 10 ++ include/drm/drm_dp_mst_helper.h | 3 ++- 2 files changed

[PATCH v7 05/10] drm/dp_mst: Make drm_dp_mst_topology_state subclassable

2018-04-11 Thread Lyude Paul
. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 14 +++- .../amd/display/amdgpu_dm/amdgpu_dm_mst_types.c| 46 --- .../amd/display/amdgpu_dm

[PATCH v7 10/10] drm/i915: Implement proper fallback training for MST

2018-04-11 Thread Lyude Paul
sharing is caring. V4: - Move all MST retraining work into hotplug_work - Grab the correct power wells when retraining. - Loop through MST encoders in intel_dp_get_crtc_mask(), quicker/easier than connectors V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul Cc: Manasi Navare Cc:

[PATCH v7 03/10] drm/dp_mst: Fix naming on drm_atomic_get_mst_topology_state()

2018-04-11 Thread Lyude Paul
me used in drm_atomic.c/drm_atomic_helper.c. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul --- drivers/gpu/drm/drm_dp_mst_topology.c | 13 +++-- include/drm/drm_dp_mst_helper.h | 6 -- 2 files changed, 11 insert

[PATCH v7 08/10] drm/i915: Make intel_dp_mst_atomic_check() idempotent

2018-04-11 Thread Lyude Paul
e being disabled and thus will never have compute_config() ran on them, move vcpi freeing out of the atomic check and into compute_config(). Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul --- drivers/gp

[PATCH v7 07/10] drm/i915: Only use one link bw config for MST topologies

2018-04-11 Thread Lyude Paul
allow the link rate to change when the entire topology has been disconnected. V4: - Track link rate/lane count in the atomic topology state instead of in intel_dp. V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/i915

[PATCH v7 00/10] drm/i915: Implement proper fallback training for MST

2018-04-11 Thread Lyude Paul
Next version of https://patchwork.freedesktop.org/series/41576/ All changes in this patch series are just to make checkpatch a little happier, no functional changes. Lyude Paul (10): drm/atomic: Print debug message on atomic check failure drm/i915: Move DP modeset retry work into intel_dp

[PATCH v7 02/10] drm/i915: Move DP modeset retry work into intel_dp

2018-04-11 Thread Lyude Paul
not we're dealing with an MST device, along with being able to easily trace the intel_dp struct back to it's respective connector (if there is any). So, move the modeset_retry_work function out of the intel_connector struct and into intel_dp. Signed-off-by: Lyude Paul Reviewed-by: Manas

[PATCH v7 01/10] drm/atomic: Print debug message on atomic check failure

2018-04-11 Thread Lyude Paul
Does what it says on the label, it's a little confusing debugging atomic check failures otherwise. Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- drivers/gpu/drm/drm_atomic.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gp

[PATCH v8 01/10] drm/atomic: Print debug message on atomic check failure

2018-04-11 Thread Lyude Paul
Does what it says on the label, it's a little confusing debugging atomic check failures otherwise. Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul --- drivers/gpu/drm/drm_atomic.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/gp

[PATCH v8 06/10] drm/dp_mst: Add reset_state callback to topology mgr

2018-04-11 Thread Lyude Paul
ilities in i915 from the topology's atomic state. Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul V7: - Fix CHECKPATCH errors --- drivers/gpu/drm/drm_dp_mst_topology.c | 10 ++ include/drm/drm_dp_mst_helper.h | 3 ++- 2 files changed, 12 insertions(+), 1 deletion

[PATCH v8 08/10] drm/i915: Make intel_dp_mst_atomic_check() idempotent

2018-04-11 Thread Lyude Paul
e being disabled and thus will never have compute_config() ran on them, move vcpi freeing out of the atomic check and into compute_config(). Cc: Manasi Navare Cc: Ville Syrjälä Signed-off-by: Lyude Paul V7: - Fix CHECKPATCH errors --- drivers/gpu/drm/i915/intel_dp_mst.c | 84 +++

[PATCH v8 10/10] drm/i915: Implement proper fallback training for MST

2018-04-11 Thread Lyude Paul
sharing is caring. V4: - Move all MST retraining work into hotplug_work - Grab the correct power wells when retraining. - Loop through MST encoders in intel_dp_get_crtc_mask(), quicker/easier than connectors V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul Cc: Manasi Navare Cc:

[PATCH v8 09/10] drm/dp_mst: Add MST fallback retraining helpers

2018-04-11 Thread Lyude Paul
tus to good - Write more docs on the retraining procedure. V7: - Fix CHECKPATCH errors Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä --- drivers/gpu/drm/drm_dp_mst_topology.c | 440 +- include/drm/drm_dp_mst_helper.h | 20 ++ 2 files chan

[PATCH v8 03/10] drm/dp_mst: Fix naming on drm_atomic_get_mst_topology_state()

2018-04-11 Thread Lyude Paul
me used in drm_atomic.c/drm_atomic_helper.c. Signed-off-by: Lyude Paul Cc: Manasi Navare Cc: Ville Syrjälä V7: - Fix CHECKPATCH errors --- drivers/gpu/drm/drm_dp_mst_topology.c | 13 +++-- include/drm/drm_dp_mst_helper.h | 6 -- 2 files changed, 11 insertions(+), 8 deletions(-) di

  1   2   3   4   5   6   7   8   >