search for: ttm_kmap_obj_virtual

Displaying 20 results from an estimated 69 matches for "ttm_kmap_obj_virtual".

2020 Sep 29
3
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...m_gem.h> > #include <drm/drm_hashtab.h> > #include <drm/drm_vma_manager.h> > +#include <linux/dma-buf-map.h> > #include <linux/kref.h> > #include <linux/list.h> > #include <linux/wait.h> > @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct ttm_bo_kmap_obj *map, > return map->virtual; > } > > +/** > + * ttm_kmap_obj_to_dma_buf_map > + * > + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. > + * @map: Returns the mapping as struct dma_buf_map > + * > + * Converts struct ttm_bo...
2020 Sep 29
3
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...m_gem.h> > #include <drm/drm_hashtab.h> > #include <drm/drm_vma_manager.h> > +#include <linux/dma-buf-map.h> > #include <linux/kref.h> > #include <linux/list.h> > #include <linux/wait.h> > @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct ttm_bo_kmap_obj *map, > return map->virtual; > } > > +/** > + * ttm_kmap_obj_to_dma_buf_map > + * > + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. > + * @map: Returns the mapping as struct dma_buf_map > + * > + * Converts struct ttm_bo...
2020 Sep 29
3
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...m_gem.h> > #include <drm/drm_hashtab.h> > #include <drm/drm_vma_manager.h> > +#include <linux/dma-buf-map.h> > #include <linux/kref.h> > #include <linux/list.h> > #include <linux/wait.h> > @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct ttm_bo_kmap_obj *map, > return map->virtual; > } > > +/** > + * ttm_kmap_obj_to_dma_buf_map > + * > + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. > + * @map: Returns the mapping as struct dma_buf_map > + * > + * Converts struct ttm_bo...
2020 Sep 30
2
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...#include <drm/drm_vma_manager.h> >>>> +#include <linux/dma-buf-map.h> >>>> ? #include <linux/kref.h> >>>> ? #include <linux/list.h> >>>> ? #include <linux/wait.h> >>>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >>>> ttm_bo_kmap_obj *map, >>>> ????? return map->virtual; >>>> ? } >>>> ? +/** >>>> + * ttm_kmap_obj_to_dma_buf_map >>>> + * >>>> + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. >>&gt...
2020 Sep 29
1
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...ude <drm/drm_hashtab.h> >> ? #include <drm/drm_vma_manager.h> >> +#include <linux/dma-buf-map.h> >> ? #include <linux/kref.h> >> ? #include <linux/list.h> >> ? #include <linux/wait.h> >> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >> ttm_bo_kmap_obj *map, >> ????? return map->virtual; >> ? } >> ? +/** >> + * ttm_kmap_obj_to_dma_buf_map >> + * >> + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. >> + * @map: Returns the mapping as struct dma_buf_map >&g...
2016 Jul 13
1
[PATCH 1/2] ttm: remove special handling of coherent objects
...>bo.ttm; - m = dma_tt->cpu_address[index / PAGE_SIZE]; - m += index % PAGE_SIZE; - } - - return m; -} -#define nouveau_bo_mem_index(o, i, m) _nouveau_bo_mem_index(o, i, m, sizeof(*m)) - void nouveau_bo_wr16(struct nouveau_bo *nvbo, unsigned index, u16 val) { bool is_iomem; u16 *mem = ttm_kmap_obj_virtual(&nvbo->kmap, &is_iomem); - mem = nouveau_bo_mem_index(nvbo, index, mem); + mem += index; if (is_iomem) iowrite16_native(val, (void __force __iomem *)mem); @@ -548,7 +515,7 @@ nouveau_bo_rd32(struct nouveau_bo *nvbo, unsigned index) bool is_iomem; u32 *mem = ttm_kmap_obj_virt...
2020 Sep 30
1
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...ma_manager.h> >>>>> +#include <linux/dma-buf-map.h> >>>>> ? #include <linux/kref.h> >>>>> ? #include <linux/list.h> >>>>> ? #include <linux/wait.h> >>>>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >>>>> ttm_bo_kmap_obj *map, >>>>> ????? return map->virtual; >>>>> ? } >>>>> ? +/** >>>>> + * ttm_kmap_obj_to_dma_buf_map >>>>> + * >>>>> + * @kmap: A struct ttm_bo_kmap_obj returne...
2020 Sep 29
0
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...h @@ -34,6 +34,7 @@ #include <drm/drm_gem.h> #include <drm/drm_hashtab.h> #include <drm/drm_vma_manager.h> +#include <linux/dma-buf-map.h> #include <linux/kref.h> #include <linux/list.h> #include <linux/wait.h> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct ttm_bo_kmap_obj *map, return map->virtual; } +/** + * ttm_kmap_obj_to_dma_buf_map + * + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. + * @map: Returns the mapping as struct dma_buf_map + * + * Converts struct ttm_bo_kmap_obj to struct dma_buf_map. If the memory + * is...
2020 Sep 29
0
[PATCH v3 1/7] drm/vram-helper: Remove invariant parameters from internal kmap function
...*drm_gem_vram_kmap_locked(struct drm_gem_vram_object *gbo, return ERR_PTR(ret); out: - if (!kmap->virtual) { - if (is_iomem) - *is_iomem = false; + if (!kmap->virtual) return NULL; /* not mapped; don't increment ref */ - } ++gbo->kmap_use_count; - if (is_iomem) - return ttm_kmap_obj_virtual(kmap, is_iomem); - return kmap->virtual; + return ttm_kmap_obj_virtual(kmap, &is_iomem); } static void drm_gem_vram_kunmap_locked(struct drm_gem_vram_object *gbo) @@ -452,7 +447,7 @@ void *drm_gem_vram_vmap(struct drm_gem_vram_object *gbo) ret = drm_gem_vram_pin_locked(gbo, 0); if (r...
2020 Oct 15
0
[PATCH v4 01/10] drm/vram-helper: Remove invariant parameters from internal kmap function
...t; - ret = ttm_bo_kmap(&gbo->bo, 0, gbo->bo.num_pages, kmap); if (ret) return ERR_PTR(ret); out: - if (!kmap->virtual) { - if (is_iomem) - *is_iomem = false; - return NULL; /* not mapped; don't increment ref */ - } ++gbo->kmap_use_count; - if (is_iomem) - return ttm_kmap_obj_virtual(kmap, is_iomem); - return kmap->virtual; + return ttm_kmap_obj_virtual(kmap, &is_iomem); } static void drm_gem_vram_kunmap_locked(struct drm_gem_vram_object *gbo) @@ -452,7 +442,7 @@ void *drm_gem_vram_vmap(struct drm_gem_vram_object *gbo) ret = drm_gem_vram_pin_locked(gbo, 0); if (r...
2020 Sep 30
1
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...; +#include <linux/dma-buf-map.h> > > > > > > ? #include <linux/kref.h> > > > > > > ? #include <linux/list.h> > > > > > > ? #include <linux/wait.h> > > > > > > @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct > > > > > > ttm_bo_kmap_obj *map, > > > > > > ????? return map->virtual; > > > > > > ? } > > > > > > ? +/** > > > > > > + * ttm_kmap_obj_to_dma_buf_map > > > > > > + * > >...
2020 Sep 29
0
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...t;drm/drm_hashtab.h> > > #include <drm/drm_vma_manager.h> > > +#include <linux/dma-buf-map.h> > > #include <linux/kref.h> > > #include <linux/list.h> > > #include <linux/wait.h> > > @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct ttm_bo_kmap_obj *map, > > return map->virtual; > > } > > > > +/** > > + * ttm_kmap_obj_to_dma_buf_map > > + * > > + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. > > + * @map: Returns the mapping as struct dma_buf_map...
2014 Oct 27
4
[PATCH v5 0/4] drm: nouveau: memory coherency on ARM
It has been a couple of months since v4 - apologies for this. v4 has not received many comments, but this version addresses them and makes a new attempt at pushing the critical bit for GK20A and Nouveau on ARM in general. As a reminder, this series addresses the memory coherency issue that we are seeing on ARM platforms. Contrary to x86 which invalidates the PCI caches whenever a write is made by
2020 Sep 30
3
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...ux/dma-buf-map.h> > >>>>>>> #include <linux/kref.h> > >>>>>>> #include <linux/list.h> > >>>>>>> #include <linux/wait.h> > >>>>>>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct > >>>>>>> ttm_bo_kmap_obj *map, > >>>>>>> return map->virtual; > >>>>>>> } > >>>>>>> +/** > >>>>>>> + * ttm_kmap_obj_to_dma_buf_map > >>>>...
2020 Sep 30
0
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...; >>> ? #include <drm/drm_vma_manager.h> >>> +#include <linux/dma-buf-map.h> >>> ? #include <linux/kref.h> >>> ? #include <linux/list.h> >>> ? #include <linux/wait.h> >>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >>> ttm_bo_kmap_obj *map, >>> ????? return map->virtual; >>> ? } >>> ? +/** >>> + * ttm_kmap_obj_to_dma_buf_map >>> + * >>> + * @kmap: A struct ttm_bo_kmap_obj returned from ttm_bo_kmap. >>> + * @map: Returns the m...
2020 Oct 07
2
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...;>>>>>>>> #include <linux/kref.h> >>>>>>>>>> #include <linux/list.h> >>>>>>>>>> #include <linux/wait.h> >>>>>>>>>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >>>>>>>>>> ttm_bo_kmap_obj *map, >>>>>>>>>> return map->virtual; >>>>>>>>>> } >>>>>>>>>> +/** >>>>>>>>>> + * ttm_kmap_obj_t...
2020 Oct 02
1
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...t;>>>>>>> #include <linux/kref.h> >>>>>>>>>> #include <linux/list.h> >>>>>>>>>> #include <linux/wait.h> >>>>>>>>>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >>>>>>>>>> ttm_bo_kmap_obj *map, >>>>>>>>>> return map->virtual; >>>>>>>>>> } >>>>>>>>>> +/** >>>>>>>>>> + * ttm_kmap_ob...
2009 Aug 17
8
drm bo accessors etc. v2
Revised patch set v2. [PATCH 1/8] drm/nouveau: bo read/write wrappers for nv04_crtc.c [PATCH 2/8] drm/nouveau: use bo accessors for push buffers [PATCH 3/8] drm/nouveau: OUT_RINGp - optimize OUT_RING loops [PATCH 4/8] drm/nv50: proper notifier_bo access in nv50_display_vblank_crtc_handler() [PATCH 5/8] drm/nouveau: access fbcon notifier via bo accessors [PATCH 6/8] drm/nouveau: screen_base and
2020 Sep 30
0
[PATCH v3 2/7] drm/ttm: Add ttm_kmap_obj_to_dma_buf_map() for type conversion
...t; +#include <linux/dma-buf-map.h> >>>>>>> ? #include <linux/kref.h> >>>>>>> ? #include <linux/list.h> >>>>>>> ? #include <linux/wait.h> >>>>>>> @@ -486,6 +487,29 @@ static inline void *ttm_kmap_obj_virtual(struct >>>>>>> ttm_bo_kmap_obj *map, >>>>>>> ????? return map->virtual; >>>>>>> ? } >>>>>>> ? +/** >>>>>>> + * ttm_kmap_obj_to_dma_buf_map >>>>>>> + * >>>&...
2009 Aug 04
5
[PATCH 1/6] drm/nouveau: bo read/write wrappers for nv04_crtc.c
...2bab7 100644 --- a/drivers/gpu/drm/nouveau/nouveau_bo.c +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c @@ -172,6 +172,29 @@ nouveau_bo_unmap(struct nouveau_bo *nvbo) ttm_bo_kunmap(&nvbo->kmap); } +u32 +nouveau_bo_rd32(struct nouveau_bo *nvbo, unsigned index) +{ + bool is_iomem; + u32 *mem = ttm_kmap_obj_virtual(&nvbo->kmap, &is_iomem); + mem = &mem[index]; + if (is_iomem) + return ioread32_native((void __force __iomem *)mem); + else + return *mem; +} + +void +nouveau_bo_wr32(struct nouveau_bo *nvbo, unsigned index, u32 val) +{ + bool is_iomem; + u32 *mem = ttm_kmap_obj_virtual(&nvbo-&...