move dmi board read
This commit is contained in:
parent
2166c6a337
commit
3834651c0e
3 changed files with 20 additions and 8 deletions
11
allynone.c
11
allynone.c
|
|
@ -47,16 +47,13 @@ int main(int argc, char ** argv) {
|
|||
load_out_config(&out_settings, configuration_file);
|
||||
|
||||
input_dev_composite_t* in_devs = NULL;
|
||||
|
||||
int dmi_name_fd = open("/sys/class/dmi/id/board_name", O_RDONLY | O_NONBLOCK);
|
||||
if (dmi_name_fd < 0) {
|
||||
|
||||
char bname[256];
|
||||
if (dmi_board_name(bname, sizeof(bname)) < 0) {
|
||||
fprintf(stderr, "Cannot get the board name\n");
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
char bname[256];
|
||||
memset(bname, 0, sizeof(bname));
|
||||
read(dmi_name_fd, bname, sizeof(bname));
|
||||
if (strstr(bname, "RC71L") != NULL) {
|
||||
printf("Running in an Asus ROG Ally device\n");
|
||||
in_devs = rog_ally_device_def(&in_settings);
|
||||
|
|
@ -64,7 +61,7 @@ int main(int argc, char ** argv) {
|
|||
printf("Running in an Lenovo Legion Go device\n");
|
||||
in_devs = legion_go_device_def();
|
||||
}
|
||||
close(dmi_name_fd);
|
||||
|
||||
|
||||
int dev_in_thread_creation = -1;
|
||||
int dev_out_thread_creation = -1;
|
||||
|
|
|
|||
|
|
@ -28,4 +28,17 @@ int64_t absolute_value(int64_t value) {
|
|||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
ssize_t dmi_board_name(char *const buf, size_t buf_len) {
|
||||
int dmi_name_fd = open("/sys/class/dmi/id/board_name", O_RDONLY | O_NONBLOCK);
|
||||
if (dmi_name_fd < 0) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
memset(buf, 0, buf_len);
|
||||
const ssize_t ret = read(dmi_name_fd, buf, buf_len);
|
||||
close(dmi_name_fd);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
@ -67,4 +67,6 @@ int64_t div_round_closest_i64(int64_t x, int64_t divisor);
|
|||
|
||||
int64_t min_max_clamp(int64_t value, int64_t min, int64_t max);
|
||||
|
||||
int64_t absolute_value(int64_t value);
|
||||
int64_t absolute_value(int64_t value);
|
||||
|
||||
ssize_t dmi_board_name(char *const buf, size_t buf_len);
|
||||
Loading…
Add table
Add a link
Reference in a new issue