Commit | Line | Data |
---|---|---|
1517b039 TS |
1 | /* |
2 | * vsp1_dl.h -- R-Car VSP1 Display List | |
3 | * | |
4 | * Copyright (C) 2015 Renesas Corporation | |
5 | * | |
6 | * Contact: Laurent Pinchart (laurent.pinchart@ideasonboard.com) | |
7 | * | |
8 | * This program is free software; you can redistribute it and/or modify | |
9 | * it under the terms of the GNU General Public License as published by | |
10 | * the Free Software Foundation; either version 2 of the License, or | |
11 | * (at your option) any later version. | |
12 | */ | |
13 | #ifndef __VSP1_DL_H__ | |
14 | #define __VSP1_DL_H__ | |
15 | ||
aa380ea0 | 16 | #include <linux/types.h> |
1517b039 TS |
17 | |
18 | struct vsp1_device; | |
f81e83c4 | 19 | struct vsp1_dl_fragment; |
c2dd2513 | 20 | struct vsp1_dl_list; |
ef9621bc | 21 | struct vsp1_dl_manager; |
1517b039 | 22 | |
c2dd2513 | 23 | void vsp1_dlm_setup(struct vsp1_device *vsp1); |
1517b039 | 24 | |
ef9621bc | 25 | struct vsp1_dl_manager *vsp1_dlm_create(struct vsp1_device *vsp1, |
12161989 | 26 | unsigned int index, |
ef9621bc LP |
27 | unsigned int prealloc); |
28 | void vsp1_dlm_destroy(struct vsp1_dl_manager *dlm); | |
c2dd2513 LP |
29 | void vsp1_dlm_reset(struct vsp1_dl_manager *dlm); |
30 | void vsp1_dlm_irq_display_start(struct vsp1_dl_manager *dlm); | |
31 | void vsp1_dlm_irq_frame_end(struct vsp1_dl_manager *dlm); | |
1517b039 | 32 | |
c2dd2513 LP |
33 | struct vsp1_dl_list *vsp1_dl_list_get(struct vsp1_dl_manager *dlm); |
34 | void vsp1_dl_list_put(struct vsp1_dl_list *dl); | |
35 | void vsp1_dl_list_write(struct vsp1_dl_list *dl, u32 reg, u32 data); | |
36 | void vsp1_dl_list_commit(struct vsp1_dl_list *dl); | |
1517b039 | 37 | |
f81e83c4 LP |
38 | struct vsp1_dl_body *vsp1_dl_fragment_alloc(struct vsp1_device *vsp1, |
39 | unsigned int num_entries); | |
40 | void vsp1_dl_fragment_free(struct vsp1_dl_body *dlb); | |
41 | void vsp1_dl_fragment_write(struct vsp1_dl_body *dlb, u32 reg, u32 data); | |
42 | int vsp1_dl_list_add_fragment(struct vsp1_dl_list *dl, | |
43 | struct vsp1_dl_body *dlb); | |
44 | ||
1517b039 | 45 | #endif /* __VSP1_DL_H__ */ |