Displaying 18 results from an estimated 18 matches for "nv50_outp_atom".
2020 Mar 18
0
[PATCH 7/9] drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
...disp.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
@@ -56,24 +56,6 @@
#include <subdev/bios/dp.h>
-/******************************************************************************
- * Atomic state
- *****************************************************************************/
-
-struct nv50_outp_atom {
- struct list_head head;
-
- struct drm_encoder *encoder;
- bool flush_disable;
-
- union nv50_outp_atom_mask {
- struct {
- bool ctrl:1;
- };
- u8 mask;
- } set, clr;
-};
-
/******************************************************************************
* EVO channel
*******************...
2020 Apr 17
0
[RFC v3 09/11] drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
...disp.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
@@ -57,24 +57,6 @@
#include <subdev/bios/dp.h>
-/******************************************************************************
- * Atomic state
- *****************************************************************************/
-
-struct nv50_outp_atom {
- struct list_head head;
-
- struct drm_encoder *encoder;
- bool flush_disable;
-
- union nv50_outp_atom_mask {
- struct {
- bool ctrl:1;
- };
- u8 mask;
- } set, clr;
-};
-
/******************************************************************************
* EVO channel
*******************...
2020 May 08
0
[RFC v4 10/12] drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
...disp.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
@@ -57,24 +57,6 @@
#include <subdev/bios/dp.h>
-/******************************************************************************
- * Atomic state
- *****************************************************************************/
-
-struct nv50_outp_atom {
- struct list_head head;
-
- struct drm_encoder *encoder;
- bool flush_disable;
-
- union nv50_outp_atom_mask {
- struct {
- bool ctrl:1;
- };
- u8 mask;
- } set, clr;
-};
-
/******************************************************************************
* EVO channel
*******************...
2017 Jul 12
2
[PATCH 15/16] drm/nouveau: Convert nouveau to use new iterator macros
...state *old_connector_state)
{
- struct drm_encoder *encoder = connector->state->best_encoder;
- struct drm_crtc_state *crtc_state;
+ struct drm_encoder *encoder = old_connector_state->best_encoder;
+ struct drm_crtc_state *old_crtc_state, *new_crtc_state;
struct drm_crtc *crtc;
struct nv50_outp_atom *outp;
- if (!(crtc = connector->state->crtc))
+ if (!(crtc = old_connector_state->crtc))
return 0;
- crtc_state = drm_atomic_get_existing_crtc_state(&atom->state, crtc);
- if (crtc->state->active && drm_atomic_crtc_needs_modeset(crtc_state)) {
+ old_crtc_state...
2017 Jul 19
1
[PATCH v2 6/7] drm/nouveau: Convert nouveau to use new iterator macros, v2.
...state *old_connector_state)
{
- struct drm_encoder *encoder = connector->state->best_encoder;
- struct drm_crtc_state *crtc_state;
+ struct drm_encoder *encoder = old_connector_state->best_encoder;
+ struct drm_crtc_state *old_crtc_state, *new_crtc_state;
struct drm_crtc *crtc;
struct nv50_outp_atom *outp;
- if (!(crtc = connector->state->crtc))
+ if (!(crtc = old_connector_state->crtc))
return 0;
- crtc_state = drm_atomic_get_existing_crtc_state(&atom->state, crtc);
- if (crtc->state->active && drm_atomic_crtc_needs_modeset(crtc_state)) {
+ old_crtc_state...
2020 Jun 29
0
[PATCH] drm/nouveau/kms/nvd9-: Fix disabling CRCs alongside OR reprogramming
...{
- struct drm_atomic_state *state = asyh->state.state;
+ struct nv50_atom *atom = nv50_atom(asyh->state.state);
struct drm_device *dev = head->base.base.dev;
- struct nv50_atom *atom = nv50_atom(state);
struct nv50_disp *disp = nv50_disp(dev);
- struct drm_encoder *encoder;
- struct nv50_outp_atom *outp_atom;
bool changed = armh->crc.src != asyh->crc.src;
if (!armh->crc.src && !asyh->crc.src) {
@@ -373,27 +385,52 @@ int nv50_crc_atomic_check(struct nv50_head *head,
asyh->set.or |= armh->or.crc_raster !=
asyh->or.crc_raster;
+ if (asyh->clr.c...
2017 Jul 13
0
[Intel-gfx] [PATCH 15/16] drm/nouveau: Convert nouveau to use new iterator macros
...> - struct drm_encoder *encoder = connector->state->best_encoder;
> - struct drm_crtc_state *crtc_state;
> + struct drm_encoder *encoder = old_connector_state->best_encoder;
> + struct drm_crtc_state *old_crtc_state, *new_crtc_state;
> struct drm_crtc *crtc;
> struct nv50_outp_atom *outp;
>
> - if (!(crtc = connector->state->crtc))
> + if (!(crtc = old_connector_state->crtc))
> return 0;
>
> - crtc_state = drm_atomic_get_existing_crtc_state(&atom->state, crtc);
> - if (crtc->state->active && drm_atomic_crtc_needs_modes...
2020 Apr 20
0
[RFC v3 00/11] drm/nouveau: Introduce CRC support for gf119+
...()
> drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
> commit
> drm/nouveau/kms/nv50-: Fix disabling dithering
> drm/nouveau/kms/nv50-: s/harm/armh/g
> drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
> drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
> drm/nouveau/kms/nv50-: Move hard-coded object handles into header
> drm/nouveau/kms/nvd9-: Add CRC support
>
> drivers/gpu/drm/drm_vblank.c | 314 ++++++++-
> drivers/gpu/drm/nouveau/dispnv04/crtc.c | 25 +-
> drivers/gpu/drm/nouveau/dispnv50/K...
2020 Apr 17
9
[RFC v3 00/11] drm/nouveau: Introduce CRC support for gf119+
...or cleanup in nv50_head_create()
drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
commit
drm/nouveau/kms/nv50-: Fix disabling dithering
drm/nouveau/kms/nv50-: s/harm/armh/g
drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
drm/nouveau/kms/nv50-: Move hard-coded object handles into header
drm/nouveau/kms/nvd9-: Add CRC support
drivers/gpu/drm/drm_vblank.c | 314 ++++++++-
drivers/gpu/drm/nouveau/dispnv04/crtc.c | 25 +-
drivers/gpu/drm/nouveau/dispnv50/Kbuild | 4 +
drivers/gp...
2020 Jun 27
9
[RFC v8 0/9] drm/nouveau: Introduce CRC support for gf119+
..._(un)lock_irq() in drm_crtc_vblank_off()
drm/vblank: Add vblank works
drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
commit
drm/nouveau/kms/nv50-: Fix disabling dithering
drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
drm/nouveau/kms/nv50-: Move hard-coded object handles into header
drm/nouveau/kms/nvd9-: Add CRC support
Documentation/gpu/drm-kms.rst | 15 +
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm/drm_internal.h | 27 +
drivers/gpu/drm/dr...
2020 May 08
16
[RFC v4 00/12] drm/nouveau: Introduce CRC support for gf119+
...or cleanup in nv50_head_create()
drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
commit
drm/nouveau/kms/nv50-: Fix disabling dithering
drm/nouveau/kms/nv50-: s/harm/armh/g
drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
drm/nouveau/kms/nv50-: Move hard-coded object handles into header
drm/nouveau/kms/nvd9-: Add CRC support
drivers/gpu/drm/drm_vblank.c | 280 +++++++-
drivers/gpu/drm/nouveau/dispnv04/crtc.c | 25 +-
drivers/gpu/drm/nouveau/dispnv50/Kbuild | 4 +
drivers/gpu...
2020 Mar 18
12
[PATCH 0/9] drm/nouveau: Introduce CRC support for gf119+
...or cleanup in nv50_head_create()
drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
commit
drm/nouveau/kms/nv50-: Fix disabling dithering
drm/nouveau/kms/nv50-: s/harm/armh/g
drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
drm/nouveau/kms/nv50-: Move hard-coded object handles into header
drm/nouveau/kms/nvd9-: Add CRC support
Ville Syrj?l? (1):
drm/vblank: Add vblank works
drivers/gpu/drm/drm_vblank.c | 322 +++++++++
drivers/gpu/drm/nouveau/dispnv04/crtc.c | 25 +-
drivers/gpu/...
2020 Jun 22
13
[RFC v5 00/10] drm/nouveau: Introduce CRC support for gf119+
...or cleanup in nv50_head_create()
drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
commit
drm/nouveau/kms/nv50-: Fix disabling dithering
drm/nouveau/kms/nv50-: s/harm/armh/g
drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
drm/nouveau/kms/nv50-: Move hard-coded object handles into header
drm/nouveau/kms/nvd9-: Add CRC support
drivers/gpu/drm/drm_vblank.c | 287 +++++++-
drivers/gpu/drm/nouveau/dispnv04/crtc.c | 25 +-
drivers/gpu/drm/nouveau/dispnv50/Kbuild | 4 +
drivers/gpu...
2020 Jun 24
13
[RFC v7 00/11] drm/nouveau: Introduce CRC support for gf119+
...or cleanup in nv50_head_create()
drm/nouveau/kms/nv140-: Don't modify depth in state during atomic
commit
drm/nouveau/kms/nv50-: Fix disabling dithering
drm/nouveau/kms/nv50-: s/harm/armh/g
drm/nouveau/kms/nv140-: Track wndw mappings in nv50_head_atom
drm/nouveau/kms/nv50-: Expose nv50_outp_atom in disp.h
drm/nouveau/kms/nv50-: Move hard-coded object handles into header
drm/nouveau/kms/nvd9-: Add CRC support
Documentation/gpu/drm-kms.rst | 15 +
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm/drm_vblank.c | 83 ++-
drivers/gpu/drm/...
2020 Jun 22
0
[RFC v5 10/10] drm/nouveau/kms/nvd9-: Add CRC support
...struct nv50_head_atom *armh)
+{
+ struct drm_atomic_state *state = asyh->state.state;
+ struct drm_device *dev = head->base.base.dev;
+ struct nv50_atom *atom = nv50_atom(state);
+ struct nv50_disp *disp = nv50_disp(dev);
+ struct drm_encoder *encoder;
+ struct nouveau_encoder *outp;
+ struct nv50_outp_atom *outp_atom;
+ bool changed = armh->crc.src != asyh->crc.src;
+
+ if (!armh->crc.src && !asyh->crc.src) {
+ asyh->set.crc = false;
+ asyh->clr.crc = false;
+ return 0;
+ }
+
+ /* While we don't care about entry tags, Volta+ hw always needs the
+ * controlling wndw c...
2020 Mar 18
0
[PATCH 9/9] drm/nouveau/kms/nvd9-: Add CRC support
...struct nv50_head_atom *armh)
+{
+ struct drm_atomic_state *state = asyh->state.state;
+ struct drm_device *dev = head->base.base.dev;
+ struct nv50_atom *atom = nv50_atom(state);
+ struct nv50_disp *disp = nv50_disp(dev);
+ struct drm_encoder *encoder;
+ struct nouveau_encoder *outp;
+ struct nv50_outp_atom *outp_atom;
+ bool changed = armh->crc.src != asyh->crc.src;
+
+ if (!armh->crc.src && !asyh->crc.src) {
+ asyh->set.crc = false;
+ asyh->clr.crc = false;
+ return 0;
+ }
+
+ /* While we don't care about entry tags, Volta+ hw always needs the
+ * controlling wndw c...
2020 Apr 17
0
[RFC v3 11/11] drm/nouveau/kms/nvd9-: Add CRC support
...struct nv50_head_atom *armh)
+{
+ struct drm_atomic_state *state = asyh->state.state;
+ struct drm_device *dev = head->base.base.dev;
+ struct nv50_atom *atom = nv50_atom(state);
+ struct nv50_disp *disp = nv50_disp(dev);
+ struct drm_encoder *encoder;
+ struct nouveau_encoder *outp;
+ struct nv50_outp_atom *outp_atom;
+ bool changed = armh->crc.src != asyh->crc.src;
+
+ if (!armh->crc.src && !asyh->crc.src) {
+ asyh->set.crc = false;
+ asyh->clr.crc = false;
+ return 0;
+ }
+
+ /* While we don't care about entry tags, Volta+ hw always needs the
+ * controlling wndw c...
2020 May 08
0
[RFC v4 12/12] drm/nouveau/kms/nvd9-: Add CRC support
...struct nv50_head_atom *armh)
+{
+ struct drm_atomic_state *state = asyh->state.state;
+ struct drm_device *dev = head->base.base.dev;
+ struct nv50_atom *atom = nv50_atom(state);
+ struct nv50_disp *disp = nv50_disp(dev);
+ struct drm_encoder *encoder;
+ struct nouveau_encoder *outp;
+ struct nv50_outp_atom *outp_atom;
+ bool changed = armh->crc.src != asyh->crc.src;
+
+ if (!armh->crc.src && !asyh->crc.src) {
+ asyh->set.crc = false;
+ asyh->clr.crc = false;
+ return 0;
+ }
+
+ /* While we don't care about entry tags, Volta+ hw always needs the
+ * controlling wndw c...