Several features for auto need libc++fs, but the previous solution of
symlinking to external/libcxx would cause problems later down the
line. Instead, we will compile a separate version of libc++fs with a
different namespace, as to not interfere with the canonical
std::filesystem.
Change summary
===============================================================
directory_iterator.cpp:
-----------------------
* _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM --> namespace android::hardware::automotive::filesystem {
* _LIBCPP_END_NAMESPACE_FILESYSTEM --> } // namespace android::hardware::automotive::filesystem
* disable clang-format (to reduce diff size)
* "" --> <> for non-local includes
filesystem_common.h:
--------------------
* FILESYSTEM_COMMON_H --> AUTO_FILESYSTEM_COMMON_H
* "" --> <> for non-local includes
* filesystem --> automotive/filesystem
* don't include apple_availability.h
* add using std::error_code
* _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM --> namespace android::hardware::automotive::filesystem {
* use namespace std::chrono
* use std::error_code, std::is_floating_point, std::micro, std::nano, std::ratio
* LIBCPP_END_NAMESPACE_FILESYSTEM --> } // namespace android::hardware::automotive::filesystem
* disable clang format (to reduce diff size)
filesystem:
-----------
* _LIBCPP_FILESYSTEM --> _LIBAUTO_FILESYSTEM
* std::filesystem --> android::hardware:automotive::filesystem
* _VSTD_FS --> android::hardware::automotive::filesystem
* _LIBCPP_END_NAMESPACE_FILESYSTEM --> } // namespace android::hardware::automotive::filesystem
* Copied _FilesystemClock from chrono
* use namespace std and std::chrono
* use std::basic_string, std::enable_if, std::error_code, and std::false_type
operations.cpp:
---------------
* filesystem --> automotive/filesystem
* "" --> <> for non-local includes
* _LIBCPP_BEGIN_NAMESPACE_FILESYSTEM --> namespace android::hardware::automotive::filesystem {
* _VSTD_FS --> android::hardware::automotive::filesystem
* _LIBCPP_END_NAMESPACE_FILESYSTEM --> } // namespace android::hardware::automotive::filesystem
* disable clang-format (to reduce diff size)
* fix "the the" typo (to pass lint)
Bug: 152067309
Test: Manual
Change-Id: I5551b3e634b85b4d7236e888de68740bfda6aad1
TODO for serial number support should be removed now that the feature is
implemented and merged.
Bug: 142654031
Test: Manual - comment only change
Change-Id: Ib733e71840e82e5cd9c47825a53f804f9c296a3d
Configuration files may now specify a list of serial numbers, or serial
number suffixes. These can be used to identify a USB peripheral,
regardless of what order the interface names are configured by the OS.
Bug: 142654031
Test: Manual
Change-Id: Idcdad1159b216119eb063df8bb229172a383b9ed
Merged-In: Idcdad1159b216119eb063df8bb229172a383b9ed
(cherry picked from commit 442b3badc8)
Adding support for extended format frames and remote transmission
request frames to canhalsend.
Bug: 149404884
Test: Manual
Merged-In: I330b9d24c34918b38612ddc1745f019e11bfd474
Change-Id: I330b9d24c34918b38612ddc1745f019e11bfd474
(cherry picked from commit 30bd3dce06)
I learned that we should be using PLOG to log errno strings, and we
should be avoiding stoi, stol, etc... conversions and instead use the
built in Android ParseInt/ParseUint functions.
Bug: 150250606
Bug: 150245058
Test: Manual for CLI tools, VTS for everything else
Merged-In: Icdd8a6af8564d5de3bedd1bc934f7928eb5e66e9
Change-Id: Icdd8a6af8564d5de3bedd1bc934f7928eb5e66e9
(cherry picked from commit 1173a7253b)
Squeegee supports Android now, so I'm cleaning up my TODOs.
Bug: 144458917
Bug: 144775286
Test: Only changes to comments
Change-Id: Ifd9907ba944759d4d5b36bce92f6bd11b5bb74e7
(cherry picked from commit 1ab3554868)
Configurator service for the CAN HAL and extracting some of the CAN HAL
configuration logic into a library for the various tools to share.
Bug: 142653776
Test: Manual
Change-Id: Id33871da851bcb442a7f851919f713ec913830ff
(cherry picked from commit 33ce7505d1)
Add a temporary version of libc++fs for a couple of auto features. This
will need to be switched out when libc++fs merges, possibly in S.
Bug: 152067309
Bug: 142654031
Test: Manual
Change-Id: Ibb495af8140470b79e73fd104fd5061f7e3ad8a9
Previous bus configuration struct was meant for flexibility, but it
turned out that the only dimension that flexibility would go was a
serial number parameter. Let's rotate that configuration matrix by 90
degrees and just go a straightforward route of discriminating against
interface type.
Test: VTS
Bug: 135918744
Change-Id: I08967d0f78c998b0582958eb51bd387f9dbe15fe
Refactoring baudrate to bitrate to be consistent with terminology in
the broader literature.
Bug: 147448388
Test: Manual + VTS
Change-Id: I161b39727a3fd50ea5eddafed6fbd4924ccd149f
This adds support for native and slcan interfaces which are already
configured up to be registered in the CAN bus HAL.
Bug: 142655647
Test: manual
Change-Id: Ifd129db14dbf473bb627ebc9b9d13f5cb945b611
Remote transmission request, and extended format id's require testing to
verify that the feature works correctly.
Also included is a fix which correctly sets the EFF and RTR flags of the
canfd_frame object based on the state of the CanMessage object.
A readability change is made to the types.hal which improves clarity of
the way filters are defined.
Bug: 146173498
Test: run the VTS tests in vts/functional - verify that they pass
Change-Id: I9892a2e2465b8c381774e7ee277bfa8660f25028
Error frames, remote transmission request, and extended format frames
require some changes to the way that we set up our sockets.
Bug: 142655821
Bug: 144774939
Test: manual
Change-Id: I06212cb852d480c1c7093e8c509ca8aa9f85f81f
* Adding support for SLCAN type interfaces
* Made some of the formatting more consistent
Bug: 142656299
Test: Manually with canhalctrl, canhaldump, and canhalsend
Change-Id: Ifa4c234beb75f8a0ea93bfd75555c5ed8d68dca4
Error handling highlights:
- moved onError from ICanMessageListener to ICanErrorListener
- added isFatal callback argument to request client disconnect
- don't down interface that's already down
Also:
- don't crash if it's not possible to unregister ICanBus
- don't crash while trying to down interface that failed
- make hidl-utils available to vendor libraries
Bug: 143779011
Test: implemented a VHAL service prototype that communicates with this HAL
Change-Id: I98d054da9da0ead5ef952aebc086e052ac996212
Since these were combined into libhidlbase.
Bug: 135686713
Test: build only (libhwbinder/libhidltransport are empty)
Change-Id: I878a4d04e65ef13f3a0ebaf64177f673958d213c
These tools are for manual interaction with CAN bus HAL instances.
Meant primarily for testing/debugging, not useful in user builds.
Bug: 135918744
Test: adb shell <tool name>
Change-Id: I1dfbe94c0006f69954806c395cd888f3bf2a4249