ueventd: change firmware location in apexes

To be consistent with other prebuilt modules within APEXes, the location
for firmware files is switched from /apex/*/firmware to
/apex/*/etc/firmware.

Bug: 167942098
Test: loading vibrator firmware from vibrator apex(sunfish)
Change-Id: Ia05735bf5a54482fded26525fa4a8f795dcfc029
This commit is contained in:
Jooyung Han 2020-09-21 10:56:10 +09:00
parent 62ccfa0c61
commit 2833e5d37d
2 changed files with 2 additions and 2 deletions

View File

@ -86,7 +86,7 @@ Ueventd by default serves firmware requests by searching through a list of firmw
for a file matching the uevent `FIRMWARE`. It then forks a process to serve this firmware to the for a file matching the uevent `FIRMWARE`. It then forks a process to serve this firmware to the
kernel. kernel.
`/apex/*/firmware` is also searched after a list of firmware directories. `/apex/*/etc/firmware` is also searched after a list of firmware directories.
The list of firmware directories is customized by a `firmware_directories` line in a ueventd.rc The list of firmware directories is customized by a `firmware_directories` line in a ueventd.rc
file. This line takes the format of file. This line takes the format of

View File

@ -256,7 +256,7 @@ bool FirmwareHandler::ForEachFirmwareDirectory(
} }
glob_t glob_result; glob_t glob_result;
glob("/apex/*/firmware/", GLOB_MARK, nullptr, &glob_result); glob("/apex/*/etc/firmware/", GLOB_MARK, nullptr, &glob_result);
auto free_glob = android::base::make_scope_guard(std::bind(&globfree, &glob_result)); auto free_glob = android::base::make_scope_guard(std::bind(&globfree, &glob_result));
for (size_t i = 0; i < glob_result.gl_pathc; i++) { for (size_t i = 0; i < glob_result.gl_pathc; i++) {
char* apex_firmware_directory = glob_result.gl_pathv[i]; char* apex_firmware_directory = glob_result.gl_pathv[i];