search for: nv50_outp_atom

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...