From 0afe70b6199919a9c1d3f098ec21a2068e298f43 Mon Sep 17 00:00:00 2001 From: Yumi Yukimura Date: Sat, 17 May 2025 16:48:49 +0800 Subject: [PATCH 1/3] Remove lzma dependency for Android Signed-off-by: Yumi Yukimura --- json.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/json.c b/json.c index 3bc1e68..618955f 100644 --- a/json.c +++ b/json.c @@ -32,7 +32,9 @@ #include #include #include +#if !defined(__ANDROID__) #include +#endif #include #include #include @@ -315,7 +317,9 @@ struct json_value *json_parse(const char *json) return root; } +#if !defined(__ANDROID__) extern int lzma_decomp(const char *file); +#endif struct json_value *json_parse_file(const char *file) { @@ -324,10 +328,12 @@ struct json_value *json_parse_file(const char *file) int ret; int fd; +#if !defined(__ANDROID__) if ((strlen(file) > 3) && !strcmp(&file[strlen(file)-3], ".xz")) fd = lzma_decomp(file); else - fd = open(file, O_RDONLY); +#endif + fd = open(file, O_RDONLY); if (fd < 0) { fprintf(stderr, "failed to open %s: %s\n", file, strerror(errno)); From 003a20d80953f54cc18cf716321c5ccb319c9123 Mon Sep 17 00:00:00 2001 From: Yumi Yukimura Date: Fri, 12 Dec 2025 03:01:16 +0800 Subject: [PATCH 2/3] Fix build for Android after commit "Use firmware load path from sysfs" Signed-off-by: Yumi Yukimura --- pd-mapper.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/pd-mapper.c b/pd-mapper.c index 1167e02..d1652b6 100644 --- a/pd-mapper.c +++ b/pd-mapper.c @@ -210,14 +210,20 @@ static int concat_path(char *base_path, char *firmware_path, char *path, size_t #ifndef ANDROID #define FIRMWARE_BASE "/lib/firmware/" #define FIRMWARE_PARAM_PATH "/sys/module/firmware_class/parameters/path" +#else +#define FIRMWARE_BASE "/vendor/firmware/" +#endif static DIR *opendir_firmware(char *firmware_path, char *out_path_opened, size_t out_path_size) { - int ret = 0, n; + int ret = 0; DIR *fw_dir = NULL; - int fw_param_path = open(FIRMWARE_PARAM_PATH, O_RDONLY); char fw_sysfs_path[PATH_MAX]; +#ifndef ANDROID + int n; + int fw_param_path = open(FIRMWARE_PARAM_PATH, O_RDONLY); + if (fw_param_path < 0) { warn("Cannot open sysfs path: %s", FIRMWARE_PARAM_PATH); close(fw_param_path); @@ -247,6 +253,7 @@ static DIR *opendir_firmware(char *firmware_path, char *out_path_opened, size_t return fw_dir; err: +#endif ret = concat_path(FIRMWARE_BASE, firmware_path, out_path_opened, out_path_size); if (ret) return fw_dir; @@ -257,14 +264,6 @@ static DIR *opendir_firmware(char *firmware_path, char *out_path_opened, size_t return fw_dir; } -#else -#define FIRMWARE_BASE "/vendor/firmware/" - -DIR opendir_firmware(char *firmware_path) -{ - return open_concat_path("/vendor/firmware/", firmware_path); -} -#endif static char *known_extensions[] = { ".jsn.xz", From 1e7f1fa77c35ffa0e7da68f43541b1a9cac8c94d Mon Sep 17 00:00:00 2001 From: Yumi Yukimura Date: Mon, 24 Nov 2025 00:43:40 +0800 Subject: [PATCH 3/3] Run bpfmt on Android.bp Signed-off-by: Yumi Yukimura --- Android.bp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Android.bp b/Android.bp index 3bdbc32..77c2560 100644 --- a/Android.bp +++ b/Android.bp @@ -2,10 +2,10 @@ cc_binary { name: "pd-mapper", vendor: true, srcs: [ - "pd-mapper.c", - "assoc.c", - "json.c", - "servreg_loc.c", + "assoc.c", + "json.c", + "pd-mapper.c", + "servreg_loc.c", ], shared_libs: ["libqrtr"], }