Add SessionTrack for session status tracking

1. Stop the ongoing sessions on country code switching.
   When the country code is switching from A to B,
   Active Sessions restricted by B country should be stopped.

2. Delay per-country calibrations when it's ACTIVE
   Device calibrations shouldn't be executed when device is ACTIVE state.
   Execute per-country calibrations only when the device is in IDLE.

3. (Optional/Experimental) Issue URSK_DELETE_CMD for CCC session
   closing. This is activated only when DELETE_URSK_FOR_CCC_SESSION=1
   is set from config.

4. (Optional/Expermental) Call suspend to kernel driver on idle.
   It calls ioctl/suspend when it's idle for a given duration
   and ioctl/resume the device before sending any commands.
   This is only activated when AUTO_SUSPEND_ENABLED=1 set from config.

Bug: 323275554
Test: Change country code, regression_2_test_suite, stress_1_test_suite
Change-Id: Iceac1478e9100adaf44b63c8a78257c178851b52
(cherry picked from commit f13904b23d47746816730e963e080005a068c143)
Signed-off-by: Ikjoon Jang <ikjn@google.com>
7 files changed
tree: f74d4b3e5032aa812da66a8f86922930b1814b56
  1. aidl/
  2. extns/
  3. halimpl/
  4. Android.bp