mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-01 22:58:38 -04:00
Moved headers to the correct place.
This commit is contained in:
parent
aca13320b3
commit
95a553dc51
6 changed files with 0 additions and 160 deletions
54
include/backend/drm/drm.h
Normal file
54
include/backend/drm/drm.h
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
#ifndef DRM_H
|
||||
#define DRM_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
#include <xf86drmMode.h>
|
||||
#include <EGL/egl.h>
|
||||
#include <gbm.h>
|
||||
|
||||
enum otd_display_state {
|
||||
OTD_DISP_INVALID,
|
||||
OTD_DISP_DISCONNECTED,
|
||||
OTD_DISP_NEEDS_MODESET,
|
||||
OTD_DISP_CONNECTED,
|
||||
};
|
||||
|
||||
struct otd_display {
|
||||
struct otd *otd;
|
||||
|
||||
enum otd_display_state state;
|
||||
uint32_t connector;
|
||||
char name[16];
|
||||
|
||||
size_t num_modes;
|
||||
drmModeModeInfo *modes;
|
||||
drmModeModeInfo *active_mode;
|
||||
|
||||
uint32_t width;
|
||||
uint32_t height;
|
||||
|
||||
uint32_t crtc;
|
||||
drmModeCrtc *old_crtc;
|
||||
|
||||
struct gbm_surface *gbm;
|
||||
EGLSurface *egl;
|
||||
uint32_t fb_id;
|
||||
|
||||
bool pageflip_pending;
|
||||
bool cleanup;
|
||||
};
|
||||
|
||||
bool init_renderer(struct otd *otd);
|
||||
void destroy_renderer(struct otd *otd);
|
||||
|
||||
void scan_connectors(struct otd *otd);
|
||||
bool modeset_str(struct otd *otd, struct otd_display *disp, const char *str);
|
||||
void destroy_display_renderer(struct otd *otd, struct otd_display *disp);
|
||||
|
||||
void get_drm_event(struct otd *otd);
|
||||
|
||||
void rendering_begin(struct otd_display *disp);
|
||||
void rendering_end(struct otd_display *disp);
|
||||
|
||||
#endif
|
||||
21
include/backend/drm/event.h
Normal file
21
include/backend/drm/event.h
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
#ifndef EVENT_H
|
||||
#define EVENT_H
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
enum otd_event_type {
|
||||
OTD_EV_NONE,
|
||||
OTD_EV_RENDER,
|
||||
OTD_EV_DISPLAY_REM,
|
||||
OTD_EV_DISPLAY_ADD,
|
||||
};
|
||||
|
||||
struct otd_event {
|
||||
enum otd_event_type type;
|
||||
struct otd_display *display;
|
||||
};
|
||||
|
||||
bool otd_get_event(struct otd *otd, struct otd_event *restrict ret);
|
||||
bool event_add(struct otd *otd, struct otd_display *disp, enum otd_event_type type);
|
||||
|
||||
#endif
|
||||
44
include/backend/drm/otd.h
Normal file
44
include/backend/drm/otd.h
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
#ifndef LIBOTD_H
|
||||
#define LIBOTD_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <stddef.h>
|
||||
#include <EGL/egl.h>
|
||||
#include <gbm.h>
|
||||
#include <libudev.h>
|
||||
|
||||
#include "session.h"
|
||||
|
||||
struct otd {
|
||||
int fd;
|
||||
bool paused;
|
||||
|
||||
// Priority Queue (Max-heap)
|
||||
size_t event_cap;
|
||||
size_t event_len;
|
||||
struct otd_event *events;
|
||||
|
||||
size_t display_len;
|
||||
struct otd_display *displays;
|
||||
|
||||
uint32_t taken_crtcs;
|
||||
|
||||
struct gbm_device *gbm;
|
||||
struct {
|
||||
EGLDisplay disp;
|
||||
EGLConfig conf;
|
||||
EGLContext context;
|
||||
} egl;
|
||||
|
||||
struct otd_session session;
|
||||
|
||||
struct udev *udev;
|
||||
struct udev_monitor *mon;
|
||||
int udev_fd;
|
||||
char *drm_path;
|
||||
};
|
||||
|
||||
struct otd *otd_start(void);
|
||||
void otd_finish(struct otd *otd);
|
||||
|
||||
#endif
|
||||
25
include/backend/drm/session.h
Normal file
25
include/backend/drm/session.h
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
#ifndef SESSION_H
|
||||
#define SESSION_H
|
||||
|
||||
#include <systemd/sd-bus.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
struct otd_session {
|
||||
char *id;
|
||||
char *path;
|
||||
char *seat;
|
||||
|
||||
sd_bus *bus;
|
||||
};
|
||||
|
||||
struct otd;
|
||||
bool otd_new_session(struct otd *otd);
|
||||
void otd_close_session(struct otd *otd);
|
||||
|
||||
int take_device(struct otd *restrict otd,
|
||||
const char *restrict path,
|
||||
bool *restrict paused_out);
|
||||
|
||||
void release_device(struct otd *otd, int fd);
|
||||
|
||||
#endif
|
||||
9
include/backend/drm/udev.h
Normal file
9
include/backend/drm/udev.h
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef UDEV_H
|
||||
#define UDEV_H
|
||||
|
||||
bool otd_udev_start(struct otd *otd);
|
||||
void otd_udev_finish(struct otd *otd);
|
||||
void otd_udev_find_gpu(struct otd *otd);
|
||||
void otd_udev_event(struct otd *otd);
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue