mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 23:50:19 +00:00
Kernel: Add framebuffer ioctls; wrap raw ioctls with a C API
This commit is contained in:
parent
1868523e00
commit
5e46122a82
Notes:
sideshowbarker
2024-07-19 12:37:50 +09:00
Author: https://github.com/deoxxa Commit: https://github.com/SerenityOS/serenity/commit/5e46122a821 Pull-request: https://github.com/SerenityOS/serenity/pull/463
2 changed files with 44 additions and 0 deletions
33
Kernel/FB.h
Normal file
33
Kernel/FB.h
Normal file
|
@ -0,0 +1,33 @@
|
|||
#pragma once
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <sys/ioctl.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
int fb_get_size_in_bytes(int fd, size_t* out)
|
||||
{
|
||||
return ioctl(fd, FB_IOCTL_GET_SIZE_IN_BYTES, out);
|
||||
}
|
||||
|
||||
int fb_get_resolution(int fd, FBResolution* info)
|
||||
{
|
||||
return ioctl(fd, FB_IOCTL_GET_RESOLUTION, info);
|
||||
}
|
||||
|
||||
int fb_set_resolution(int fd, FBResolution* info)
|
||||
{
|
||||
return ioctl(fd, FB_IOCTL_SET_RESOLUTION, info);
|
||||
}
|
||||
|
||||
int fb_get_buffer(int fd, int* index)
|
||||
{
|
||||
return ioctl(fd, FB_IOCTL_GET_BUFFER, index);
|
||||
}
|
||||
|
||||
int fb_set_buffer(int fd, int index)
|
||||
{
|
||||
return ioctl(fd, FB_IOCTL_SET_BUFFER, index);
|
||||
}
|
||||
|
||||
__END_DECLS
|
|
@ -9,6 +9,12 @@ struct winsize {
|
|||
unsigned short ws_col;
|
||||
};
|
||||
|
||||
struct FBResolution {
|
||||
int pitch;
|
||||
int width;
|
||||
int height;
|
||||
};
|
||||
|
||||
__END_DECLS
|
||||
|
||||
enum IOCtlNumber {
|
||||
|
@ -22,4 +28,9 @@ enum IOCtlNumber {
|
|||
TIOCSCTTY,
|
||||
TIOCNOTTY,
|
||||
TIOCSWINSZ,
|
||||
FB_IOCTL_GET_SIZE_IN_BYTES,
|
||||
FB_IOCTL_GET_RESOLUTION,
|
||||
FB_IOCTL_SET_RESOLUTION,
|
||||
FB_IOCTL_GET_BUFFER,
|
||||
FB_IOCTL_SET_BUFFER,
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue