Commit Graph

246 Commits

Author SHA1 Message Date
terrycrhuang
ab269b9cd4
msm8974-common: libril: Change rild initial sequence to guarantee non-null function pointer before rild register its hidl service
Test: Build and local test
Bug: 78886552
Change-Id: I1137cc0f4f09f0304662a2227b84c2b5b228d45d
2018-10-09 06:25:55 -06:00
Steven Moreland
7e86bb0923
msm8974-common: libril: Add DISABLE_RILD_OEM_HOOK.
OEM hook is deprecated, so adding a way to disable it to
this radio implementation.

Bug: 75322118
Test: boot device w/ DISABLE_RILD_OEM_HOOK works, lshal
Change-Id: Ie7ade48476d2c330df608e9cc8dab805f84dd81d
2018-10-09 06:25:55 -06:00
Amit Mahajan
6762d13586
msm8974-common: libril: Store the system time when NITZ is received.
If cached value for NITZ is used, the time at which it was
received needs to be cached too.

Test: Basic telephony sanity
Bug: 72283604
Change-Id: I8f443171c4583e3eab9be7973d7714ae6c7ab6af
2018-10-09 06:25:54 -06:00
Gohulan Balachandran
7113220c88
msm8974-common: libril: Fix double freeing of memory in SAP service and add null-checks.
The payload of a SAP request could be freed twice in certain scenarios.
Also, add null-checks to prevent dereferencing of null pointers.

Bug: 64729356
Test: Manually run the fuzz tests and ensure that there is no crash in
      rild

Change-Id: Ib7ae269fa5297d6acea267337b220b8858c82bae
2018-10-09 06:25:53 -06:00
Pengquan Meng
7d4e0308a2
msm8974-common: libril: Remove unused code
Bug: 62249769
Test: manually

Change-Id: Ibeae8537ee87dc9c3481538df0fcdb4f3d50f50c
2018-10-09 06:25:52 -06:00
Nathan Harold
f174e36781
msm8974-common: libril: Fix Const-Correctness for RIL_RadioFunctions
Re-add constant for function pointer table to
RIL_RadioFunctions. Const was accidentally removed
during a warnings cleanup.

Bug: 64231560
Test: compilation
Change-Id: I93675980c51d9162f624495d12fe3c97f1da8031
2018-10-09 06:25:51 -06:00
Lennart Wieboldt
900794d8b2
msm8974-common: libril: Remove LOCAL_CLANG
clang is the default compiler since Android nougat

Change-Id: I0555fa8067352fd43b47aabe80be1224597da17e
Signed-off-by: Lennart Wieboldt <lennart.1997@gmx.de>
2018-10-09 06:25:44 -06:00
Michael Bestas
482de62af8
msm8974-common: Switch to 1.1 power HAL
Change-Id: I4690a5b913141427a828d6a3a4af407d35a10775
2018-10-06 08:34:19 -06:00
Kevin F. Haggerty
e1b8705691
msm8974-common: Build binderized samsung8974 sensors service
Change-Id: I85010c4ab26c771c585e0dc65d14552853f147c2
2018-09-21 16:02:05 -06:00
Michael Bestas
32d31a6be7
msm8974-common: sensors: Add input group to sensor service
* Fixes light and proximity sensor in hwbinder mode

Change-Id: I1dadda8c68043f97190d85763405058cc1761b0e
2018-09-21 16:02:05 -06:00
Kevin F. Haggerty
36f23a1b47
msm8974-common: sensors: Convert to samsung8974 target
Change-Id: Ic897c67c4caf9ba07dc770f19226e016ae9a5d77
2018-09-21 16:02:05 -06:00
Kevin F. Haggerty
3fe9c310d1
msm8974-common: sensors: Import default service and impl from hardware/interfaces
* Source: LineageOS/android_hardware_interfaces@ef97157

Change-Id: Id12ceb1bca1578a0c8a9e048562a224ec74d93fb
2018-09-21 16:02:05 -06:00
Kevin F. Haggerty
d6c5ae5030
msm8974-common: sensors: Update multihal with P changes
Change-Id: Iee33e9043e5f4eb9b5ff8af562800e0392c041b5
2018-09-21 16:02:05 -06:00
Kevin F. Haggerty
2bd8da39b5 msm8974-common: sensors: Resolve unused parameter warnings
* Change dce39f8a86 ("msm8974-common: sensors: Disable batching")
  resulted in unused parameters. Fix that.

Change-Id: If6590e6e7c2e14dbb4f7141c69c6bd71900fe896
2018-09-22 00:01:01 +02:00
Bruno Martins
11152c4794
msm8974-common: Remove no longer needed Android Blueprints
* Soong now finds all Android.bp and Blueprints files in the source tree

Change-Id: I2b7b22ecec7efb439d4c20c9d579ed9ceed5b20d
2018-09-21 11:53:48 -06:00
Kevin F. Haggerty
68ef2d47da
msm8974-common: Commonize camera packages and manifest entries
Change-Id: I348680ccf6541b13289d1470c7e91111be4992c0
2018-09-15 11:52:02 -06:00
Kevin F. Haggerty
82bf4a6bc2
msm8974-common: Allow additional gralloc 1.0 buffer usage bits
* Our platform requires 0x02000000U (USAGE_PRIVATE_UNCACHED) for
  camera, video, and various other functionality

Change-Id: Ie5a8a46fef1c0f28ebd2cd3b3d29cc19763bc2a3
2018-09-15 11:51:09 -06:00
Bruno Martins
7eb0d299d2
msm8974-common: Explicitly set all used audio features
* These features have long been enabled by default in the audio HAL,
   but things changed since the unification of the audio policy HAL.
   Set all of them here, also to make it easily clear what is used.

Change-Id: I5bdb5fda3b9d5add5b9bac1f6980607761fbd692
2018-09-07 13:44:39 -06:00
Roshan Pius
729be7cd13 msm8974-common: Add hostapd HIDL interface
Bug: 36646171
Test: Manual softap toggle
Change-Id: Ia7ef8bf3da8adc3491c4dac4096e4297cbd5bf5b
2018-09-07 20:52:59 +02:00
Roshan Pius
25d567adaf msm8974-common: Uprev to supplicant 1.1
Bug: 65673412
Test: Device boots up and connects to wifi networks.
Change-Id: I2e51291b30fd242edbeae2c69ef9545383895bb3
2018-09-07 20:52:28 +02:00
Etan Cohen
4deb4c7291 msm8974-common: Uprev Wi-Fi HAL to 1.2
New HAL APIs are planned. This requires a HAL uprev.

Bug: 65647646
Test: builds and Wi-Fi runs
Change-Id: Ib7efd3d5263e73d1ad40e1a5a687bdb6c133c812
2018-09-07 20:52:01 +02:00
Bruno Martins
d0d2796406 msm8974-common: Switch to common basic USB HAL
Change-Id: I0e0809a2338f006063c5160bb7aec36a555cebab
2018-09-05 22:53:22 +02:00
Lalit Kansara
dbafdacb41 msm8974-common: Prefix AID with VENDOR_
Change-Id: I560eb0fb5ca248b20765fe564139c1f7cc1dbc93
2018-08-27 22:18:46 -06:00
Hung-ying Tyan
2e7e451227 msm8974-common: manifest: Uprev configstore (1.0 -> 1.1)
Bug: 69691076
Test: Built and tested on device
Change-Id: I16f06827ef83711c9e29698540ffcec658081fda
2018-08-21 21:44:04 -06:00
Hashbang173
5e3b3ba5e3 msm8974-common: Enable HWC2on1 adapter
* This fixes display (see: d265c42386)

Change-Id: Ic749a38828563be7dacd005aeb91dbce3121ae07
2018-08-20 17:53:16 -06:00
Kevin F. Haggerty
96aaef5008 msm8974-common: Use TARGET_COPY_OUT_VENDOR instead of explicit path
Change-Id: I5a35a481fcdee8b1f85e0b9aa9a5c726909b928f
2018-08-20 06:30:23 -06:00
Michael Bestas
e0e8272585 msm8974-common: Remove device/qcom/common dependency
Change-Id: Iad029259b1fcf1e3e38bef575bf65238f1c834b5
2018-08-19 10:30:27 -06:00
Kevin F. Haggerty
55cf3f11c6 msm8974-common: Set TARGET_NEEDS_LEGACY_CAMERA_HAL1_DYN_NATIVE_HANDLE
* This is required to enable our legacy HAL1 camera recording
  following OMX hardening in Ief2d2d4d0445074c0ecdc723b1b25997a7631389

Change-Id: Ide8dad10bf72fbd1acefec2f8ef4a90b0e3c0a4b
2018-08-14 04:08:15 -06:00
T H
dce39f8a86 msm8974-common: sensors: Disable batching
* Set FIFO values to 0 for all sensors to disable batching.
* Only change the delay for batch calls.

Change-Id: I8e8384e63a24122e02f3c6c7e09311561c180c17
2018-08-05 08:34:09 -06:00
LuK1337
3b6f6bb075 msm8974-common: sensors: Adjust for our usecase
* Rename hals.conf -> _hals.conf so legitimate
  MultiHAL won't attempt to load our HALs.
* Rename multihal -> multihal-samsung8974 so soong
  doesn't complain about duplicate package names.
* Remove USE_SENSOR_MULTI_HAL flag requirement so
  we can actually build it.
* Use TARGET_BOARD_PLATFORM variable in package
  name because it's a common tree.

Change-Id: Ifa8c20747e3f0bf9bae8b42dd4c499cf6d770e27
2018-08-05 08:34:09 -06:00
LuK1337
e0db06fff8 msm8974-common: Import sensors MultiHAL
Change-Id: I8dbe13560d74f88109b7265d1c511ad3beab731e
2018-08-05 08:22:14 -06:00
D. Andrei Măceș
289c1006ef libril: Protect against NULL unsolicited response function
Upstream change I732234a22328a1bfcb603bb020547f543b6fd766 makes
RIL_UNSOL_DC_RT_INFO_CHANGED's responseFunction() NULL, without
protecting against it in RIL_onUnsolicitedResponse(), thus crash-
ing at least hammerhead's RIL stack upon mobile data connection.

https://android-review.googlesource.com/#/c/platform/hardware/ril/+/345950/

Change-Id: I6567019cb6daf6492a29e04cc9872e69b2ba456d
Signed-off-by: D. Andrei Măceș <Andrei.Maces@alumni.nd.edu>
(cherry picked from commit e73eafff8695ab28201acbc03a362d5b177047aa)
2018-07-24 06:17:08 -06:00
Gareth Kitchen
d3810f950a Localise NTP to improve GPS TTFF
Testing response times to time.android.com from around the globe reveals
in ms:-

Europe			 <30
Middle East		 <68
North America		<150
Johannesburg		 183
Buenos Aires		 220
Tokyo			 226
Sydney			 276
Hong Kong		 285
Brisbane		 295
Mumbai			 349
Beijing			4691
Shanghai		4906
Russia			 n/a

Whilst time.android.com is NOT used for GPS NTP, North American time servers
are, by specifying north-america.pool.ntp.org as default in the framework,
to align with pixel devices.  I am assuming similar response times to these
servers from around the world.

Great for North America and it appears Europe but it does not address the
global issue. Also, the pool.ntp.org project forbids both hardware and
software vendors from using these default zone names.
http://www.pool.ntp.org/en/vendors.html

It makes sense, therefore, to leverage the ntp.org's existing 'android' vendor
name to make the default ntp server for GPS purposes:
1.android.pool.ntp.org this will return a random but accurate NTP server in
close geopraphic proximity to the device.

Testing on my own build in the UK seems to improve hot and cold TTFF
considerably.

Change-Id: I144af45757efa35b32daf034eece6e046d2bde79
2018-07-17 19:28:25 -06:00
Paul Keith
cf7ed4588b msm8974-common: Correct MCC code for Verizon CarrierConfig
* Verizon's operator numeric is 311480 not 310480

Change-Id: I0732fc277f412c151a235a4abdc27011d7ba10c7
2018-07-03 07:24:08 -06:00
Paul Keith
754d229086 msm8974-common: Add comments to explain carrier hackery
Change-Id: Id414b2daa08186f2f426f450391a8d2c0b695397
2018-07-03 07:24:08 -06:00
Paul Keith
b1352d7bec msm8974-common: Don't mess with APN or CDMA CarrierConfig options
* These should be set appropriately by carrier, and should already be
  at the correct values by default in packages/apps/CarrierConfig

Change-Id: I433b110570c2b79b15076dadf58777e0289e347a
2018-07-03 07:24:05 -06:00
Paul Keith
8e587068f7 msm8974-common: Move sprint_mwi_quirk overlay to CarrerConfig
[javelinanddart]: msm8974-common never had sprint_mwi_quirk

Change-Id: I65cbdb8cb0305f41735ddcafe275250c678dda55
2018-07-02 18:32:34 -06:00
Paul Keith
1d79ff94da msm8974-common: Import CarrierConfig overlay
* From LineageOS/android_device_samsung_klte@3ea5d5050b

Change-Id: Ifcb775aa6a1893dd3e2ad93c81b338493cd9337a
2018-07-02 18:32:33 -06:00
Paul Keith
86e492652d msm8974-common: libril: Use libril way of freeing strings for nitz hack
Change-Id: I7addc27abb3730873799518ea2ac6ec51a280bd9
2018-07-02 18:32:28 -06:00
Kevin F. Haggerty
8f6082f460 msm8974-common: libril: Build non-inlined android_atomic methods
* All of the libsec-ril*.so libraries reference these symbols, but
  Google finally dropped the non-inlined versions from libcutils with
  Android 8.0. This could be handled with shims in numerous device
  trees, but shim semantics and implementation aren't exactly stable
  and we can handle it more cleanly here in one place.
* See LineageOS/android_system_core@103e8f560

Change-Id: I787372b739f3ace0d9cbbc33e4bffafa6876665e
2018-06-15 15:03:03 -06:00
Kevin F. Haggerty
f7e78593f9 msm8974-common: proprietary-files: Drop libuiblur.so
* This isn't a thing on 15.1

Change-Id: Id6cf006a263c0d1a2e13e540b4b4825d0d67e097
2018-06-14 18:24:58 -06:00
Bruno Martins
56a46f0d66 msm8974-common: Inform Trust about legacy encryption support
* Encryption causes noticeable performances loss, because HW crypto
   is not suported.

Change-Id: I4336c0cd050584020780d8ff97f454e40c7e6125
2018-06-13 07:30:43 -06:00
Zhao Wei Liew
855591ca38 msm8974-common: Enable legacy mediaserver
Change-Id: I4881ce7a0342b0dc9a9c50d6870f1b072b45af82
2018-04-24 17:33:25 -06:00
Kevin F. Haggerty
245828cf0c msm8974-common: No tenemos HWC2
Change-Id: I56932ab5ed3ae6ab930f40a549fdcf7b3806c5e2
2018-04-04 18:38:42 -06:00
Bruno Martins
73f591dd82 msm8974-common: libinit: Handle overriding system and vendor props
* Up until now, vendor build properties were added into /system/build.prop
   when property split isn't enabled. However, Google realised that
   either /vendor/build.prop or /system/vendor/build.prop can always exist,
   and decided to clean up code and always install vendor build props
   into $(TARGET_OUT_VENDOR)/build.prop.

 * For this reason, the unified devices that used to override build props
   such as build fingerprint, will need to override the matching vendor
   build props.

Change-Id: Iacdd8eb67543daff5a46b92dbaf17cd094ce462b
2018-04-02 06:32:31 -06:00
Kevin F. Haggerty
d766a7e028 msm8974-common: sepolicy: Resolve misc denials
avc: denied { chown } for capability=0 scontext=u:r:thermal-engine:s0
tcontext=u:r:thermal-engine:s0 tclass=capability permissive=0

avc: denied  { find } for interface=android.hardware.camera.provider::ICameraProvider
pid=1315 scontext=u:r:mediaserver:s0 tcontext=u:object_r:hal_camera_hwservice:s0
tclass=hwservice_manager permissive=0

avc: denied { getattr } for pid=1940 comm="mount.ntfs"
path="/dev/block/mmcblk0p23" dev="tmpfs" ino=6957 scontext=u:r:vold:s0
tcontext=u:object_r:system_block_device:s0 tclass=blk_file permissive=0

avc: denied { read write } for pid=1370 comm="mm-qcamera-daem" name="rear_corever"
dev="sysfs" ino=24696 scontext=u:r:mm-qcamerad:s0 tcontext=u:object_r:sysfs:s0
tclass=file permissive=0

avc: denied { search } for pid=561 comm="mm-qcamera-daem" name="camera"
dev="sysfs" ino=24680 scontext=u:r:mm-qcamerad:s0
tcontext=u:object_r:sysfs_camera:s0 tclass=dir permissive=0

avc: denied { getattr } for pid=1950 comm="mount.ntfs"
path="/dev/block/mmcblk0p24" dev="tmpfs" ino=8134 scontext=u:r:vold:s0
tcontext=u:object_r:cache_block_device:s0 tclass=blk_file permissive=0

avc: denied { getattr } for pid=1926 comm="fsck.ntfs" path="/dev/block"
dev="tmpfs" ino=6956 scontext=u:r:fsck_untrusted:s0
tcontext=u:object_r:block_device:s0 tclass=dir permissive=0

avc: denied { getattr } for pid=1948 comm="mount.ntfs"
path="/dev/block/mmcblk0p12" dev="tmpfs" ino=8090 scontext=u:r:vold:s0
tcontext=u:object_r:efs_block_device:s0 tclass=blk_file permissive=0

avc: denied { read } for pid=339 comm="mediaserver" name="rear_camfw_load"
dev="sysfs" ino=24694 scontext=u:r:mediaserver:s0
tcontext=u:object_r:sysfs_camera:s0 tclass=file permissive=0

Change-Id: Ieb941d135d9f245f4a2bb9abb78e1b84bbef4b38
2018-03-31 09:25:48 -06:00
Kevin F. Haggerty
e405ae831d msm8974-common: sepolicy: Allow mediaextractor r_file_perms to fuse:file
* This is necessary for the built-in music player to play files off
  of fuse (NTFS, in our case, for the most part) volumes

Change-Id: Ib6fffb5c2b5c8c514979a7aabce949d82902b2d1
2018-03-18 17:23:30 -06:00
Kevin F. Haggerty
399e9af90a msm8974-common: Move XTRA_SERVER entries to overlays
* XTRA_SERVERs are important, right? Like to get the almanac data
  necessary for aGPS. Without the XTRA download, the chip needs to
  collect sufficient navigation messages from the birds to compute
  where they are in order to make sense of the ranging signals.
* Well, it seems that O doesn't like reading these entries from the
  gps.conf file.

  When in gps.conf:
  GpsXtraDownloader: No XTRA servers were specified in the GPS configuration

  When in overlay:
  <that noise doesn't exist>

* This seems to, finally, return GPS fix performance to what we had
  in N.

Change-Id: I70679835ec5dea053c5aa3750acee628906d6390
2018-03-07 06:44:43 -07:00
Paul Keith
306c353400 msm8974-common: Allow overriding full dex preopt
* This is wonderful for users, but I want to override this

Change-Id: I12b0cd7620b4615f8f3ba945fbae8a332d4ea203
2018-03-03 05:39:35 +01:00
Paul Keith
da14a8d88a msm8974-common: libril: Fix RIL_Call struct for 64-bit platforms
* While msm8974 is not 64 bit, certain users of this libril will be
* A previous revision of this libril had 16 bytes of padding in this
  struct for 64-bit platforms (due to word size and struct alignment),
  but a change by me to use a long instead of a pointer and an int
  broke this padding for 64-bit platforms because a long is still
  just 8 bytes on 64-bit platforms, where 16 bytes is necessary
* Use two pointers as padding instead to make 64-bit great again

Change-Id: If599bdb625f7a45e083f5b30df512d12810be79b
2018-03-01 19:48:48 +00:00