move dmi board read
This commit is contained in:
parent
2166c6a337
commit
3834651c0e
3 changed files with 20 additions and 8 deletions
|
|
@ -48,15 +48,12 @@ int main(int argc, char ** argv) {
|
|||
|
||||
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;
|
||||
|
|
|
|||
|
|
@ -29,3 +29,16 @@ 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;
|
||||
}
|
||||
|
|
@ -68,3 +68,5 @@ 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);
|
||||
|
||||
ssize_t dmi_board_name(char *const buf, size_t buf_len);
|
||||
Loading…
Add table
Add a link
Reference in a new issue