Commit graph

218 commits

Author SHA1 Message Date
Tomasz Wasilczyk
af898821d8 Fix program info call over-saturation.
It was an omission to not allow onCurrentProgramInfoChanged
to be called more than once.

Bug: 120186193
Test: atest VtsHalBroadcastradioV2_0TargetTest
Change-Id: I667c552fb88e8fa3be3931901f7ba86ee7743baa
(cherry picked from commit 3f71e6c33ae34065cbf40ce1a2e4f9914383f969)
2018-12-03 22:34:55 +00:00
Keun Soo YIM
ff84c37bc1 pack VTS cc_test binaries as general-tests
Test: make general-tests
Bug: 120093339
Change-Id: I363450d205868f900e4925ccff1430e2a569f2a4
2018-11-27 16:11:41 -08:00
Tomasz Wasilczyk
84ec4e14f6 Migrate broadcast radio default HAL to the new logging API.
Bug: 112540729
Test: flash and boot
Change-Id: I18d8b508971cd9a9b7b2c9c221674d862ff351d6
2018-11-14 09:28:04 -08:00
Chih-hung Hsieh
1ea726b6d7 Merge "Fix implicit-fallthrough warnings." 2018-10-22 20:36:53 +00:00
Chih-Hung Hsieh
9e1793b891 Allow implicit-fallthrough warnings locally.
It will be a global error by default.

Test: make checkbuild
Bug: 112564944
Change-Id: I3e914835fcb4ee97662ab51136f143e665d0ba01
Exempt-From-Owner-Approval: do not block on new warnings
2018-10-22 09:42:57 -07:00
Chih-Hung Hsieh
63f4fe65b2 Fix implicit-fallthrough warnings.
Test: make checkbuild
Bug: 112564944
Change-Id: Ifc8b7444b95d667b0d185c7d45b3f15278d4af2f
2018-10-19 14:24:58 -07:00
Tomasz Wasilczyk
b557e0b748 Fix comments and internal names about SEEK operation.
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
2018-06-07 15:19:27 -07:00
Tomasz Wasilczyk
cea64964dc Improve current program info validation.
Bug: 74022658
Test: atest VtsHalBroadcastradioV2_0TargetTest
Change-Id: Ifee19249a9033363df863480e8a5da24334f5e59
2018-05-23 12:02:39 -07:00
Steven Moreland
4ee4582230 Update comments for doc comments.
Doc comments look like "/** ... */" and they
can only be in certain places.

Bug: 79865343
Test: m
Change-Id: Ic15c08ff7dc6e4f9827c1dbe7f7236c11a572ec1
2018-05-18 10:10:32 -07:00
Tomasz Wasilczyk
8acabf21a4 Add check for empty RDS_PS.
Bug: 78885613
Test: atest VtsHalBroadcastradioV2_0TargetTest
Change-Id: I9ac0e8975972636696504a6eeb0ecce58396e3fd
2018-04-30 10:25:22 -07:00
Tomasz Wasilczyk
55241f7c76 Extend tune workaround time.
Bug: 73963096
Test: atest VtsHalBroadcastradioV2_0TargetTest
Change-Id: I6b722fb4f82005fe468a17f0f29af9dc8bd0e8f7
2018-04-30 08:55:14 -07:00
Tomasz Wasilczyk
674696f92a Clear out ambiguity in broadcastradio@2.0 comments.
Bug: 76798863
Test: it builds
Change-Id: Icd13a187d3a002e6d1d0af8d360de31a75949b69
2018-03-30 16:01:22 -07:00
Tomasz Wasilczyk
5e6bebbd83 Update program list when switching bands.
Test: manual
Bug: 74353024
Change-Id: I893cd4f9c7d14951924759792206af798b0ceefc
2018-03-28 17:48:18 -07:00
Tomasz Wasilczyk
c863a957d4 Fix boadcastradio HAL 1.1 tuneByProgramSelector implementation.
It was not compliant with the HAL definition - it didn't auto-change
band if necessary.

Bug: 74353024
Test: manual
Change-Id: I015faffc42778fa27fca3030306f31b0abe409c7
2018-03-08 11:41:55 -08:00
Tomasz Wasilczyk
b314271b58 Reword ProgramInfo comments.
It makes clear which fields are required for the program list entries,
and which for currently tuned program.

Test: none
Change-Id: If7ec3ad8f99e22b225063ca71a0c249b5d6d2bc1
2018-02-21 13:20:50 -08:00
Zhuoyao Zhang
b46346f9bd Merge "Convert broadcastradio hal test to use VtsHalHidlTargetTestEnvBase" 2018-02-14 17:25:33 +00:00
Zhuoyao Zhang
190548f558 Convert broadcastradio hal test to use VtsHalHidlTargetTestEnvBase
Bug: 64203181
Test: make vts
      vts-tradefed run vts -m VtsHalBroadcastradioV1_0Target
      vts-tradefed run vts -m VtsHalBroadcastradioV1_1Target

Change-Id: I574b54dc95522486f4be9b50da436e90f3f88b9d
2018-02-13 10:15:37 -08:00
Tomasz Wasilczyk
869779ae92 Merge "Drop broadcastradio HAL 1.2." 2018-02-13 14:22:00 +00:00
Tomasz Wasilczyk
67360529f6 Verify physically/logicallyTunedTo field in ProgramInfo.
Test: it builds
Bug: 71614466
Change-Id: Iae6fe660cbadd3a4309c4700fc939289c0528d8f
2018-02-12 11:42:25 -08:00
Tomasz Wasilczyk
7aad611408 Drop broadcastradio HAL 1.2.
Test: it boots
Bug: 62945293
Change-Id: Ie05d50f3084f51aa6e4de53096656b1387503459
2018-02-10 10:49:58 -08:00
Tomasz Wasilczyk
0f5d21ae53 Remove broadcastradio HAL 1.2 support from the framework.
Bug: 62945293
Test: VTS
Change-Id: Ifd54fe476717ae71e5c9ff72498bf702b0c29454
2018-02-10 12:40:41 +00:00
Tomasz Wasilczyk
8c34c8179d Move broadcast radio 1.2 default implementation back to 1.1.
Bug: 62945293
Test: VTS

Change-Id: I95d68ea61f5b50c5b510212b0941bddad1158f97
2018-02-09 19:43:45 +00:00
TreeHugger Robot
6a99a2a901 Merge "Rename getConfigFlag to isConfigFlagSet." 2018-01-20 02:22:21 +00:00
Tomasz Wasilczyk
d773e954a4 Merge "Allow spaces in DAB frequency labels and make it up to 7 characters long." 2018-01-19 19:38:13 +00:00
Tomasz Wasilczyk
a425dedbe8 Allow spaces in DAB frequency labels and make it up to 7 characters long.
There is no standard for DAB label format, the regexp is based on our
partners knowledge.

Bug: 69958423
Test: VTS

Change-Id: I917508408de22f8a75d39d4e9badddd385869b03
2018-01-15 08:34:28 -08:00
Tomasz Wasilczyk
db902860e8 Fix remaining instrumentation tests.
Bug: 69958777
Test: VTS, Instrumentation
Change-Id: I98956ea4b1d2953b9159fb7d53ce61e57f80a90f
2018-01-15 08:10:40 -08:00
Tomasz Wasilczyk
3dd452a979 Rename getConfigFlag to isConfigFlagSet.
The latter matches code guidelines better.

Bug: 69958423
Test: it builds
Change-Id: I520733a061f03bab57544a1451dd763dc53ce5c6
2018-01-12 14:59:07 -08:00
Tomasz Wasilczyk
0d5ef5de01 Rename AnnouncementObserver to AnnouncementListener.
I feel this wording match java naming more closely.

Bug: 68045105
Test: VTS
Change-Id: If30fa9b356b6b45fe8853bc5194c7098d0fb2aa5
2018-01-11 19:26:02 -08:00
Tomasz Wasilczyk
653f766177 Broadcast radio 1.x default implementation: let's support background scan for real.
Bug: 69860743
Test: VTS, instrumentation
Change-Id: Ia636795494c88a82edf681adaa403e3b70f77814
2018-01-09 21:11:38 -08:00
Tomasz Wasilczyk
a72fb98f2b Merge "Broadcast radio 1.x default implementation: let's support background scan." 2018-01-09 22:20:27 +00:00
Tomasz Wasilczyk
06c82dd932 Merge "Fix few typos in broadcast radio HAL 2.0 comments." 2018-01-08 23:54:09 +00:00
Tomasz Wasilczyk
db1386a902 Broadcast radio 1.x default implementation: let's support background scan.
Bug: 69860743
Test: VTS
Change-Id: I7f0dc841e2b3fc218e5e7efa9b102697655cc9d5
2018-01-08 15:37:09 -08:00
Tomasz Wasilczyk
88960f1d3d Fix few typos in broadcast radio HAL 2.0 comments.
Bug: 69958423
Test: none
Change-Id: Ic9e5ddd4fb6d033f6f98eb0b537856abe4e4f025
2018-01-05 13:37:44 -08:00
Tomasz Wasilczyk
38b51669e4 Merge "Prepare a best-effort workaround for HD Radio station id abuse." 2018-01-04 20:17:28 +00:00
Tomasz Wasilczyk
c71624f8ed Prepare a best-effort workaround for HD Radio station id abuse.
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
2018-01-04 08:40:31 -08:00
Tomasz Wasilczyk
6a9f856e24 Implement broadcast radio announcements.
Bug: 68045105
Test: VTS
Change-Id: I14d394862ec34d63218c938779e217c28710e230
2018-01-03 10:01:10 -08:00
Tomasz Wasilczyk
8b70ee43b0 Implement regional configuration fetching.
Bug: 69958423
Test: VTS
Change-Id: I7c184191b4f4999bd03b06bd3b2283e028694918
2018-01-02 11:51:59 -08:00
Tomasz Wasilczyk
4ce6382a45 Implement currently tuned ID / channel indication.
Bug: 70939328
Test: it builds
Change-Id: I62011b70b3786b0d5e5ac24eb480a3c52a35f104
2017-12-28 20:31:20 -08:00
Tomasz Wasilczyk
eb2b87ba3e Merge "Implement program list fetching." 2017-12-22 20:44:15 +00:00
Tomasz Wasilczyk
bceb88585d Implement program list fetching.
Bug: 69860743
Test: VTS
Change-Id: I04eb43c1e0e1bb7bad86e123594a473454eed983
2017-12-22 10:19:50 -08:00
Tomasz Wasilczyk
30240f61ed Redefine meaning of DAB/FM linking.
Bug: 69958423
Test: VTS
Change-Id: I0ab4ddd6fc34f12720085cca9d0b821ec660a5c8
2017-12-20 14:49:45 -08:00
Tomasz Wasilczyk
43fe894562 Implement config flags.
Bug: 69958423
Test: VTS
Change-Id: I6221d2bd2c6f1e31c93b105fce4cfc6d673e3b77
2017-12-14 15:04:06 -08:00
Tomasz Wasilczyk
c961f613c3 Merge "Try to fix some builds." 2017-12-13 19:31:45 +00:00
Tomasz Wasilczyk
28ca7e9740 Try to fix some builds.
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
2017-12-13 10:09:22 -08:00
Tomasz Wasilczyk
6f6509f96b Merge "Implement broadcast radio HAL 2.0 VTS tests." 2017-12-13 17:05:42 +00:00
Tomasz Wasilczyk
b464e47977 Merge "Implement broadcast radio HAL 2.0 default implementation." 2017-12-13 15:21:12 +00:00
Tomasz Wasilczyk
31e8632d10 Implement broadcast radio HAL 2.0 VTS tests.
Test: VTS
Bug: 69958777
Change-Id: I671c033519a6a41421b9ad73b0b897f832a1c3c0
2017-12-12 10:46:56 -08:00
Tomasz Wasilczyk
06100b39db Implement broadcast radio HAL 2.0 default implementation.
Also, split internal common utils library to 1.x and 2.x.

Test: VTS
Bug: 69958777
Change-Id: I21244c74270a07cc350e8a2b974dafcdae02a0e8
2017-12-12 10:22:11 -08:00
Steven Moreland
4cd5506baa Update makefiles.
Been seeing these in CLs. Some were forgotten.

Test/Bug: none

Change-Id: I678f9ef157a3631586a3d3a9cc503121eed5a703
2017-12-11 20:48:11 +00:00
Tomasz Wasilczyk
6e0e1ae2a9 Define broadcast radio HAL 2.0.
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
2017-12-05 14:10:04 -08:00