1/*	$NetBSD: lut.h,v 1.3 2021/12/19 10:49:47 riastradh Exp $	*/
2
3#ifndef __NV50_KMS_LUT_H__
4#define __NV50_KMS_LUT_H__
5#include <nvif/mem.h>
6struct drm_property_blob;
7struct drm_color_lut;
8struct nv50_disp;
9
10struct nv50_lut {
11	struct nvif_mem mem[2];
12};
13
14int nv50_lut_init(struct nv50_disp *, struct nvif_mmu *, struct nv50_lut *);
15void nv50_lut_fini(struct nv50_lut *);
16#ifdef __NetBSD__
17#  define	__lut_iomem	volatile
18#  define	__iomem		__lut_iomem
19#endif
20u32 nv50_lut_load(struct nv50_lut *, int buffer, struct drm_property_blob *,
21		  void (*)(struct drm_color_lut *, int size, void __iomem *));
22#ifdef __NetBSD__
23#  undef	__iomem
24#endif
25#endif
26