Commit Graph

4724 Commits

Author SHA1 Message Date
John Reck
8ca80dbdee Merge "Add owners for HardwareBuffer & friends" am: e8c5cf956f am: 200d79d156
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1906882

Change-Id: I3a8f958ee96426071190d4b81be7fd44178b18c4
2021-12-01 02:35:45 +00:00
John Reck
200d79d156 Merge "Add owners for HardwareBuffer & friends" am: e8c5cf956f
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1906882

Change-Id: I98c2f9f753b1434ab899dfaf5ab8772a3573bb02
2021-12-01 02:13:15 +00:00
John Reck
b7b469bb28 Add owners for HardwareBuffer & friends
Test: this
Change-Id: I36531490b7736bc4ac9d8693fc3feffb4058ad6e
2021-11-30 18:42:52 -05:00
Xin Li
10d9972786 Merge sc-qpr1-dev-plus-aosp-without-vendor@7810918
Bug: 205056467
Merged-In: I13199bc39e9445929195f3d15579cbffe94e92b0
Change-Id: I35fa3c6c2abf679c51033f1395a08d511ed8739f
2021-11-18 17:00:37 +00:00
Eino-Ville Talvala
19e0a03336 Merge "Camera: Fix wrong wasImageCaptured flag" into sc-qpr1-dev am: 0f6c1c9d24
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16009383

Change-Id: I63a7faa7932142e8e54b6e8db6d95c121c517866
2021-10-08 20:26:19 +00:00
Eino-Ville Talvala
0f6c1c9d24 Merge "Camera: Fix wrong wasImageCaptured flag" into sc-qpr1-dev 2021-10-08 20:10:28 +00:00
TreeHugger Robot
2d7bc584fc Merge "Camera: Avoid possible deadlock when closing advanced extension session" into sc-qpr1-dev am: 00c890cda7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15976219

Change-Id: Ie77645540b5cd01e6fa44316111bc364078baaad
2021-10-08 20:05:06 +00:00
TreeHugger Robot
00c890cda7 Merge "Camera: Avoid possible deadlock when closing advanced extension session" into sc-qpr1-dev 2021-10-08 19:49:12 +00:00
Emilian Peev
dd55b3dee5 Camera: Avoid possible deadlock when closing advanced extension session
The advanced extension session request processor must not hold the
'mInterfaceLock' when calling the camera device implementation as it
could result in a deadlock with the camera device close that can
run at the same time and try to acquire the same locks in reverse order.
The request processor will only read from 'mCameraConfigMap' which is
initialized only once during session setup and will not change during
the session lifetime.
A sample stack trace will look like this:
Service thread:
1) android.hardware.camera2.impl.CameraCaptureSessionImpl.stopRepeating
2) android.hardware.camera2.impl.CameraAdvancedExtensionSessionImpl$RequestProcessor.stopRepeating

Client thread:
1) android.hardware.camera2.impl.CameraAdvancedExtensionSessionImpl.release
2) android.hardware.camera2.impl.CameraDeviceImpl.close


Bug: 202074988
Test: Manual using application,
Camera CTS

Change-Id: If992667a7d7e54be5bea1fcc4b1d71ec1b895ca0
2021-10-08 19:48:12 +00:00
Shuzhen Wang
8af9bbaeed Camera: Fix wrong wasImageCaptured flag
CaptureFailure is created with a "dropped" parameter. But what's passed
in is mayHaveBuffers, which is opposite of "dropped".

Test: Camera CTS, GoogleCamera
Bug: 201967385
Change-Id: I42eb2daa78f116502cb1c5943015ea3f4af3f1e3
2021-10-08 16:26:14 +00:00
Daniel Solomon
7cd1097495 Merge changes from topic "b200851199" into sc-qpr1-dev am: 250448c0bc
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15909960

Change-Id: Ifd26b07f419a1a810415373348728b570bd32737
2021-10-05 23:00:43 +00:00
Daniel Solomon
13d3dffa66 Make DisplayModeDirector aware of whether HBM is active
Currently DisplayModeDirector casts Vote.PRIORITY_HIGH_BRIGHTNESS_MODE
based on whether High Brightness Mode (HBM) is allowed, rather than
based on whether HBM is actually active. This can lead to cases where
the HBM refresh rate vote is cast when HBM is allowed but not actually
used.

This change corrects this behavior, and makes DisplayModeDirector check
that HBM is both allowed (enabled) and actually in use (active).

Bug: 200851199
Test: atest DisplayModeDirectorTest
    BrightnessLevelPreferenceControllerTest
    HighBrightnessModeControllerTest
Change-Id: I8cb8f023a6bca11de976866259032143f43d9a4f
2021-10-03 16:59:21 -07:00
Daniel Solomon
a49b90befe Change DisplayModeDirector's brightness source to DisplayListener
Currently, DisplayModeDirector listens to brightness changes from Settings.
However, brightness value in Settings is overridden for various reasons
inside DisplayPowerController before being propagated to HALs. As a
result, the brightness value that DisplayModeDirector is acting on isn't
always the brightness value that gets applied to the display.

This change,
- Changes DisplayPowerController so that the final brightness value (after all
modifications) is saved.
- Changes DisplayModeDirector to use DisplayManager.DisplayListener to
observe brightness changes and then retrieve and act on the final
brightness value saved in DisplayPowerController.

Bug: 199955532
Test: atest DisplayModeDirectorTest
Change-Id: Ia6dd7d194b6913d2942bea9c29a2011b8058beef
2021-09-30 17:18:03 -07:00
TreeHugger Robot
ac548fb61e Merge "Separate refresh rate restrictions for different High Brightness Modes" into sc-qpr1-dev am: af5c64f76f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15937366

Change-Id: I7dcc13f83b31615c4f6acf88bf9c2c8a4ec9807a
2021-09-29 13:37:38 +00:00
Daniel Solomon
448dd444ad Separate refresh rate restrictions for different High Brightness Modes
Allow setting a different refresh rate for High Brightness Mode for HDR
and for Sunlight.

Bug: 196691596
Test: atest DisplayModeDirectorTest
Test: Manual:
      1. Ensure HBM for HDR takes presedence over HBM for Sunlight
      2. Ensure app refresh rate votes override bothHBM for Sunlight
Change-Id: I4a29c47f218046d0852178ad5dc7484a86ef8607
2021-09-29 03:55:26 +00:00
Xin Li
8891d70334 Merge SP1A.210812.016
Merged-In: I8b62b9b9d7ae271bc623764d545db1320b4dc64f
Change-Id: I458ed7f2eb8603f5e89c1d73bc0f0d52b826973e
2021-09-28 19:26:36 +00:00
TreeHugger Robot
92105a485a Merge "Camera: Switch the jpeg orientation when using the native encoder" into sc-qpr1-dev am: 6e60223a63
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15899922

Change-Id: I9cca2c93a9e128d065d9d1412df7df04fea1b3c0
2021-09-23 22:04:52 +00:00
Emilian Peev
b233caa56d Camera: Switch the jpeg orientation when using the native encoder
The native Jpeg encoder expects rotation in counter
clockwise direction. However according to the Camera2 specification
clients need to pass the Jpeg rotation in clockwise direction.
Flip the client rotation value before passing to the Jpeg encoder.

Bug: 200890552
Test: Manual using sample application,
atest -c
cts/tests/camera/src/android/hardware/camera2/cts/CameraExtensionSessionTest.java

Change-Id: Ib70a8f5b5165d8319d89c2ed4b7509929c2faa71
2021-09-23 13:22:32 -07:00
Curtis Belmonte
61bc143bb8 Merge "Support configurable multi-stage UDFPS enrollment" into sc-qpr1-dev am: bbbca8b27f
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15873595

Change-Id: I75e8a966bb73a29461f0a3054918e30e1044ea8c
2021-09-22 18:08:40 +00:00
Curtis Belmonte
bbbca8b27f Merge "Support configurable multi-stage UDFPS enrollment" into sc-qpr1-dev 2021-09-22 17:52:47 +00:00
TreeHugger Robot
7544e7795d Merge "Wait for camera extensions service during initialization" into sc-qpr1-dev am: 2f68a663a9
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15838336

Change-Id: I3470b2d3fbb888a81217c69ba8a2476281f233ec
2021-09-21 18:38:26 +00:00
Curtis Belmonte
2f2a86282a Support configurable multi-stage UDFPS enrollment
Implements multi-stage enrollment for UDFPS. This implementation
supports both highlighting the progress bar when a help message is
received and configuring the progress thresholds between enroll stages
via an XML resource.

Test: Manual

Bug: 198928407
Bug: 200076382
Change-Id: I6f6111ab0ed29ca7f1be01303f0457764d5afe01
Merged-In: I6f6111ab0ed29ca7f1be01303f0457764d5afe01
2021-09-20 22:45:07 -07:00
Diego Wilson
0cde32dbf2 Wait for camera extensions service during initialization
During Camera2 Extensions initialization we need to check
if the Camera Extensions Proxy service supports advanced
extensions. Now we're not only waiting
for the service to connect but were also waiting for
the query for advanced extensions to finish.

Fixes: 198818625
Change-Id: I8040eab80a4b97f77b551152b3f76f93f9b8af88
2021-09-20 18:35:32 +00:00
Rucha Katakwar
47907370d3 Merge "Camera:Fix the memory leak caused during HFR mode." into sc-qpr1-dev am: 4881b7d690
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15828855

Change-Id: I7a9e1944893d88ed9099023ee255e027f5e8ed01
2021-09-15 17:48:25 +00:00
Rucha Katakwar
2d99c9f930 Camera:Fix the memory leak caused during HFR mode.
During high speed recording mode, it was observed that there was a
memory leak due to too many nodes at mPendingFrameNumbersWithOtherType
list. After ag/1962479 added batching for HFR it only updates the
FrameNumberTracker every 4 or 8 frames during high speed recording. This
change fixes that by updating every frame. A map is used to store
requestIds which have batchOutput. For every such requests we update
each frame in the batch in a for loop.

bug: 194618660

Test: 1. Did validity check with the change. Now frameNumber is incremented
by 1 instead of every 4 or 8 in FrameNumberTracker.
2. The mPendingFrameNumbersWithOtherType for otherType is empty during
HFR recording.
3. Verified using other modes of camera and did not observe any
crashes.
4. CTS tests Pass.

Change-Id: I2638e6663e7b70e4ef7a29dfeb27d423c9c7137d
(cherry picked from commit 236ed73e26)
2021-09-14 18:42:01 +00:00
Anthony Stange
e342a87830 Merge "Correct ranges for pitch and roll" am: 68e875719b am: 99b930a64c am: 642b1fe32c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1438054

Change-Id: Ib622b9acd726279758060cc0893cab229b24bcbc
2021-09-08 22:32:56 +00:00
Anthony Stange
642b1fe32c Merge "Correct ranges for pitch and roll" am: 68e875719b am: 99b930a64c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1438054

Change-Id: I90732615ad26b4d41d36e9b9b7034bd22f1f4b20
2021-09-08 22:11:40 +00:00
Anthony Stange
99b930a64c Merge "Correct ranges for pitch and roll" am: 68e875719b
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1438054

Change-Id: If0c6aebc7ecb401d0f68a00a746f7ae337e4bb86
2021-09-08 22:01:31 +00:00
Anthony Stange
68e875719b Merge "Correct ranges for pitch and roll" 2021-09-08 21:34:34 +00:00
Kevin Chyn
2f49c497e8 Merge "Add callback for when enrollment state changes" into sc-qpr1-dev am: ada5e05660
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15730868

Change-Id: I20576b5e8311c1ed641dcc2851f78f8286154dbc
2021-09-07 22:47:44 +00:00
Kevin Chyn
f7a019f584 Add callback for when enrollment state changes
Bug: 195663312

(New tests):
Test: manual, FingerprintManager no longer shows up in strict
      mode logs when changing keyguard states
Test: atest FingerprintStateCallbackTest

(Existing cases below):
Test: atest com.android.server.biometrics
Test: atest CtsBiometricsTestCases
Test: atest com.android.systemui.biometrics
Test: atest KeyguardUpdateMonitorTest

Change-Id: I57304f9ed938cbe4ec63683b826ead086cc33a5b
2021-09-02 16:11:04 -07:00
Joe Bolinger
02eb16d887 Merge changes from topic "more-cancel-sc-qpr1-dev" into sc-qpr1-dev am: 16a7d2e7bd
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15727904

Change-Id: Id9964610269328c04806b44d10b9bb555b1f63e0
2021-09-01 22:23:39 +00:00
Joe Bolinger
ead0fe8093 Merge "Add a default string for failures." into sc-qpr1-dev am: 7d26092122
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15671476

Change-Id: I00b3c562eb7ac39d4b7c0a3fe5e16abe088235fd
2021-09-01 22:23:05 +00:00
Joe Bolinger
16a7d2e7bd Merge changes from topic "more-cancel-sc-qpr1-dev" into sc-qpr1-dev
* changes:
  Add requestId to authentication entry points.
  Check cancel status whenever cookies are received.
2021-09-01 22:06:13 +00:00
Joe Bolinger
7d26092122 Merge "Add a default string for failures." into sc-qpr1-dev 2021-09-01 22:05:34 +00:00
Joe Bolinger
bdd477a5d1 Add requestId to authentication entry points.
The CancellationSignal passed into the authentication methods is not
associated with the request and can be used to cancel the current
operation, even if it is more recent. The new id prevents outdated
signals from being using.

Note that there are still issues with the Callbacks that are not
addressed (see bug for details).

Bug: 194405579
Bug: 189451155
Bug: 191716671
Test: atest com.android.systemui.biometrics com.android.server.biometrics

Change-Id: Id71be912cc88ae90df8087eb8f1a6fc3e110f883
2021-09-01 08:49:26 -07:00
Ady Abraham
a999a6220a Merge "DisplayManagerGlobal: fix native refresh rate callback registration" into sc-qpr1-dev am: c265f32026
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15689742

Change-Id: I36a45529613eb6cfc64a27ef5e424d57ea919698
2021-08-31 00:31:42 +00:00
Ady Abraham
0ee31107ed DisplayManagerGlobal: fix native refresh rate callback registration
When AChoreographer is the only callback registered with
DisplayManagerGlobal and there are no other display listeners,
DisplayManagerGlobal incorrectly skips callback registration with DMS.

Bug: 193945763
Test: atest DisplayManagerGlobalTest
Change-Id: I4b737fa0a91541fe331edcf3454724200e2db971
2021-08-27 20:26:46 +00:00
Joe Bolinger
1cf97a94e0 Add a default string for failures.
Test: N/A
Fix: 196639965
Change-Id: I3db7c4e0837641ad6aa7094894df92d5b2581b0e
2021-08-25 02:48:16 +00:00
Jooyung Han
8a3b6fc1e6 Merge "tuner: use typed Map<String, String>" am: 6f3ebef588 am: 150af91f9c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1801772

Change-Id: I2dfc4cb57c3072c116d2e79d4ecc3c209c7d37e2
2021-08-19 21:21:04 +00:00
Jooyung Han
150af91f9c Merge "tuner: use typed Map<String, String>" am: 6f3ebef588
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1801772

Change-Id: If52235c7a0da54145d1682212a6ca5e83885e1d5
2021-08-19 21:07:28 +00:00
Jooyung Han
54a1fd2e0f tuner: use typed Map<String, String>
Bug: 192615532
Test: m
Change-Id: Ifa4c9c56d642e1047397cc185872f76a5970f944
2021-08-19 15:29:23 +09:00
Emilian Peev
4d404ff17e Camera: Return sequence id for advanced extension requests
Allow 'IRequestProcessorImpl' to return the camera sequence id
in response to capture requests.

Bug: 196090349
Test: atest -c
cts/tests/camera/src/android/hardware/camera2/cts/CameraExtensionSessionTest.java

Change-Id: I3d67e4ba1b4503cf71c31751920e916d014ef3ab
(cherry picked from commit 5cf033ccb7)
2021-08-19 03:21:39 +00:00
Joe Bolinger
436f041ed9 Add a generic error message for missing vendor error strings.
The message is empty, instead of null, to prevent apps from crashing but it will be changed to a more meaninful string in a future change.

Fix: 196176475
Test: N/A
Change-Id: I7823084238a87cb1b8892b8550c472cd8b40f556
(cherry picked from commit 5d5d9eb812)
2021-08-17 22:53:55 +00:00
Xin Li
e7449820a4 Merge "Merge sc-dev-plus-aosp-without-vendor@7634622" into stage-aosp-master 2021-08-17 18:14:29 +00:00
Treehugger Robot
24bf4abd78 Merge "Update OWNERS." am: bfc5088c1d am: a2ddc936eb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1796485

Change-Id: I5b712798299b03e33ebf45d5b8532ec894be6fae
2021-08-17 04:28:47 +00:00
Emilian Peev
842915025f Camera: Initialize the forward processor along with the repeating pipeline
Some preview extensions of the image processor type expect to recevive
'onOutputSurface' calls before the session is enabled by 'onEnableSession'.

Bug: 187341271
Test: atest -c
cts/tests/camera/src/android/hardware/camera2/cts/CameraExtensionSessionTest.java

Change-Id: I67147ec24553cf87d23e33c63692fa7e59c57e5f
(cherry picked from commit a0ced2aa9e)
2021-08-17 01:10:06 +00:00
Jayant Chowdhary
455f98831b camera2: Documentation updates for ultra high resolution sensors.
Bug: 195987968

1) Document mininum pixel array size restriction for ultra high resolution sensors.
2) Add docs explaining mandatory stream combinations for ultra high resolution sensors.

Change-Id: Ic630259a57906c475210465588eda1a5cc3f68ec
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
(cherry picked from commit 1f3071d540)
2021-08-17 01:10:03 +00:00
Joe Bolinger
2fc9e3fa0a Update OWNERS.
Test: N/A
Change-Id: I3da6e85dd944ca19ecfabfacb2e6928500ee0c49
2021-08-16 17:11:15 -07:00
Joe Bolinger
5d5d9eb812 Add a generic error message for missing vendor error strings.
The message is empty, instead of null, to prevent apps from crashing but it will be changed to a more meaninful string in a future change.

Fix: 196176475
Test: N/A
Change-Id: I7823084238a87cb1b8892b8550c472cd8b40f556
2021-08-13 16:03:54 -07:00