Legacy radio HAL named it SCAN and the name slipped through HAL 1.x
into HAL 2.0. I finally noticed it after HAL 2.0 was locked down.
Bug: 109740376
Test: build ow
Change-Id: I5ca4147227a7dd0c32248a279f03fb632d97258e
It was not compliant with the HAL definition - it didn't auto-change
band if necessary.
Bug: 74353024
Test: manual
Change-Id: I015faffc42778fa27fca3030306f31b0abe409c7
It makes clear which fields are required for the program list entries,
and which for currently tuned program.
Test: none
Change-Id: If7ec3ad8f99e22b225063ca71a0c249b5d6d2bc1
There is no standard for DAB label format, the regexp is based on our
partners knowledge.
Bug: 69958423
Test: VTS
Change-Id: I917508408de22f8a75d39d4e9badddd385869b03
In theory, 32bit HD Radio station ID + subchannel index (parts of
HD_STATION_ID_EXT) is a globally unique identifier. It allows broadcast
radio framework to determine which programs are the same and allow the
application to match entries from favourite list and the program list
provided by the tuner.
However, some broadcasters don't perform equipment setup correctly and
don't set station ID. As a result, there are some stations with
conflicting IDs.
As a workaround to treat these stations separately in a given location,
FM frequency was added as a part of HD_STATION_ID_EXT. This still doesn't
solve the global uniqueness problem: user might save KCQW 105.5 (sid=0) in
California, travel to Nevada and find KNAB 105.5 (sid=0). It turns out
there is no reliable identifier that might identify the station globally.
As a workaround, shortened station name is added for double-checking.
This is a best-effort fix, so it's not required for such misbehaving
stations to get correctly identified in every corner case.
Bug: 69958777
Test: VTS
Change-Id: Id11243096f1cde7fdda5cb70a7248d1831985cdd
Broken builds: aosp_x86, docs, full, sdk_phone_armv7.
I cannot reproduce the break locally, so making my best guess on the fix.
Test: it still builds
Change-Id: Icf86c3502fede66dba815458b66f2ebdf33afe91
The new HAL is a cleanup of 1.x branch of the legacy burden:
* structure flattened (multi-level factory removed);
* only one hardware tuner per HAL instance, only one session;
* front-end app doesn't control region settings anymore;
* metadata limited to int and string values;
* removed deprecated methods;
* result codes redefined.
It also fixes minor mistakes made with HAL 1.1:
* ProgramSelector simplified;
* there is no need to control background scan.
There are three features missing compared to the HAL 1.1, as they
are in development with the new design (see design docs attached):
* Announcements - b/68045105
* Program list - b/69860743
* Region handling - b/69958423
Test: VTS
Bug: b/69958777
Change-Id: I0ad83f25630c1250d73dc3941144d345339fbde0
This replaces DAB_SIDECC with DAB_SID_EXT as primary DAB identifier.
Bug: 69308221
Test: it builds
Change-Id: I8d3c9628e7dc8a03c5aa0c04f136e60eccaa9940
Removing whenever I see these in code reviews.
Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d