Add pipeline to get the sysfs path for an InputDevice's battery

This will be used to listen to UEvent notifications coming from the
battery's device path that notify userspace about battery state changes.

Bug: 243005009
Test: atest inputflinger_tests
Test: manual with logs
Change-Id: I464c6212cdb33242cb319176d502b6e8431125fb
diff --git a/services/inputflinger/tests/fuzzers/InputReaderFuzzer.cpp b/services/inputflinger/tests/fuzzers/InputReaderFuzzer.cpp
index f15d871..f5bd297 100644
--- a/services/inputflinger/tests/fuzzers/InputReaderFuzzer.cpp
+++ b/services/inputflinger/tests/fuzzers/InputReaderFuzzer.cpp
@@ -107,6 +107,10 @@
         return reader->getBatteryStatus(deviceId);
     }
 
+    std::optional<std::string> getBatteryDevicePath(int32_t deviceId) {
+        return reader->getBatteryDevicePath(deviceId);
+    }
+
     std::vector<InputDeviceLightInfo> getLights(int32_t deviceId) {
         return reader->getLights(deviceId);
     }
@@ -232,6 +236,7 @@
                 },
                 [&]() -> void { reader->getBatteryCapacity(fdp->ConsumeIntegral<int32_t>()); },
                 [&]() -> void { reader->getBatteryStatus(fdp->ConsumeIntegral<int32_t>()); },
+                [&]() -> void { reader->getBatteryDevicePath(fdp->ConsumeIntegral<int32_t>()); },
                 [&]() -> void { reader->getLights(fdp->ConsumeIntegral<int32_t>()); },
                 [&]() -> void { reader->getSensors(fdp->ConsumeIntegral<int32_t>()); },
                 [&]() -> void {