From b6fc0eeaddf4edb45983a0d801f7a803d2e49327 Mon Sep 17 00:00:00 2001 From: David Rocha Date: Fri, 14 Jan 2022 18:22:22 +0000 Subject: [PATCH 1/2] add can bus shmem readings; still have to decide what to process --- src/CMakeLists.txt | 1 + src/cam.c | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ba7d9f0..1f335a9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -28,6 +28,7 @@ TARGET_LINK_LIBRARIES(it2s-itss-facilities -lit2s-asn-tpm -lit2s-tender -lm + -lrt ) INSTALL( diff --git a/src/cam.c b/src/cam.c index 78ab791..d2a2eb3 100644 --- a/src/cam.c +++ b/src/cam.c @@ -7,16 +7,20 @@ #include #include +#include #include #include #include #include #include #include +#include #include #include +#include + #define syslog_info(msg, ...) syslog(LOG_INFO, msg, ##__VA_ARGS__) #define syslog_emerg(msg, ...) syslog(LOG_EMERG, "%s:%d [" msg "]", __func__, __LINE__, ##__VA_ARGS__) #define syslog_err(msg, ...) syslog(LOG_ERR, "%s:%d [" msg "]", __func__, __LINE__, ##__VA_ARGS__) @@ -88,6 +92,17 @@ static int permissions_check(int cid, uint8_t* permissions, uint8_t permissions_ static int mk_cam(facilities_t* facilities, uint8_t *cam_oer, uint32_t *cam_len) { int rv = 0; + int shm_fd, shm_valid = 0; + + shm_fd = shm_open("it2s-bluetooth-decoded", O_RDONLY, 0666); + if(shm_fd == -1) + syslog_err("[facilities] failed to open CAN shared memory\n"); + + decoded_can_values_shm *shared_message = (decoded_can_values_shm *)mmap(0, sizeof(decoded_can_values_shm), PROT_READ, MAP_SHARED, shm_fd, 0); + if(shared_message == MAP_FAILED) + syslog_err("[facilities] failed to map CAN shared memory\n"); + else + shm_valid = 1; CAM_t *cam = calloc(1, sizeof(CAM_t)); @@ -289,6 +304,12 @@ static int mk_cam(facilities_t* facilities, uint8_t *cam_oer, uint32_t *cam_len) goto cleanup; } *cam_len = (enc.encoded + 7) / 8; + + if(shm_valid){ + munmap(shared_message, sizeof(can_values_shm)); + if(close(shm_fd) == -1) + syslog_err("[facilities] failed to close CAN shared memory\n"); + } cleanup: ASN_STRUCT_FREE(asn_DEF_CAM, cam); From 6fc48c16885e2f71f62a2cda0b23465a0af021da Mon Sep 17 00:00:00 2001 From: David Rocha Date: Fri, 14 Jan 2022 18:33:28 +0000 Subject: [PATCH 2/2] add it2s-obd to ci --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 65a0f10..ccb9d3d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,7 +8,7 @@ stages: .dependencies: before_script: - - pacman -Sy zeromq it2s-config-git it2s-asn-git it2s-tender-git it2s-gps-git --overwrite=* --noconfirm + - pacman -Sy zeromq it2s-config-git it2s-asn-git it2s-tender-git it2s-gps-git it2s-obd-git --overwrite=* --noconfirm build: stage: build