Home | History | Annotate | Line # | Download | only in fb
      1 /*	$NetBSD: nv50.h,v 1.4 2021/12/18 23:45:39 riastradh Exp $	*/
      2 
      3 /* SPDX-License-Identifier: MIT */
      4 #ifndef __NVKM_FB_NV50_H__
      5 #define __NVKM_FB_NV50_H__
      6 #define nv50_fb(p) container_of((p), struct nv50_fb, base)
      7 #include "priv.h"
      8 
      9 struct nv50_fb {
     10 	const struct nv50_fb_func *func;
     11 	struct nvkm_fb base;
     12 #ifdef __NetBSD__
     13 	bus_dma_segment_t r100c08_seg;
     14 	bus_dmamap_t r100c08_page;
     15 	void *r100c08_kva;
     16 #else
     17 	struct page *r100c08_page;
     18 #endif
     19 	dma_addr_t r100c08;
     20 };
     21 
     22 struct nv50_fb_func {
     23 	int (*ram_new)(struct nvkm_fb *, struct nvkm_ram **);
     24 	u32 (*tags)(struct nvkm_fb *);
     25 	u32 trap;
     26 };
     27 
     28 int nv50_fb_new_(const struct nv50_fb_func *, struct nvkm_device *, int index,
     29 		 struct nvkm_fb **pfb);
     30 #endif
     31