| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the interest of making long-term branch maintenance incur as little
technical debt on us as possible, we should not maintain any files on
the branch we are not actually using.
This has the added effect of making it extremely clear when merging CLs
from the main branch when changes have the possibility to affect us.
The follow-on CL adds a convenience script to actually pull updates from
the main branch and generate a CL for the update.
BUG=b:204206272
BRANCH=ish
TEST=make BOARD=arcada_ish && make BOARD=drallion_ish
Signed-off-by: Jack Rosenthal <jrosenth@chromium.org>
Change-Id: I17e4694c38219b5a0823e0a3e55a28d1348f4b18
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3262038
Reviewed-by: Jett Rink <jettrink@chromium.org>
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
BRANCH=none
BUG=b:181607131
TEST=compare_build.sh matches
Change-Id: I2dc308bfc80c5921dcc172bee433a6502105852f
Signed-off-by: Caveh Jalali <caveh@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3060262
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Jora Jacobi <jora@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On dragonclaw, setting GPIO_DIVIDER_HIGHSIDE to 1 is necessary to
enable communication with FP sensor. Until now it was enabled during
fp_sensor_init() which was called from fp_task() only in private build
(when HAVE_FP_PRIVATE_DRIVER is defined). This was causing problems with
fpsensor_hw hardware unittest, which is public build.
The problem was solved by enabling GPIO_DIVIDER_HIGHSIDE in
configure_fp_sensor_spi(). This approach also required to change
get_fp_sensor_type() function to leave GPIO pin enabled.
BUG=b:170432597
BRANCH=none
TEST=./test/run_device_tests.py --board bloonchipper --tests fpsensor_hw
Signed-off-by: Patryk Duda <pdk@semihalf.com>
Change-Id: I9cf50ef1377da2dec57d73f9e1374928da86481d
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3034857
Reviewed-by: Craig Hesling <hesling@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Address of enroll_ctx array is provided to the FP library and under
some circumstances library can perform 4 byte load/store which needs
address to be 4 byte aligned.
This was found when debugging problem with skipped initialization
during fp_sensor_init(). Bio_sensor pointer was uninitialized, and when
enrollment was requested, FPMCU crashed. It looked like library was
performing 4 bytes access to enroll_ctx when bio_sensor was NULL.
BUG=b:170432597
BRANCH=none
TEST=make BOARD=dartmonkey
TEST=make BOARD=bloonchipper
Signed-off-by: Patryk Duda <pdk@semihalf.com>
Change-Id: I90b64d560448b4d737b09c706a636a567a3db943
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3033242
Reviewed-by: Craig Hesling <hesling@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=b:157576189
BRANCH=none
TEST=make buildall -j,
Using dragonclaw v0.2 and servo_micro:
./test/run_device_test.py -t fpsensor_hw
--flasher=servo_micro,
Using icetower and servo_micro:
./test/run_device_test.py -t fpsensor_wh
--flasher=servo_micro --board dartmonkey;
note: the testrunner hung after printing Test
"fpsensor_hw": PASSED, but this hang seems
unrelated
Cq-Depend: chromium:2872432
Change-Id: I2a3b31776cd40d7f0b422f4845869953b8f07249
Signed-off-by: Kevin Shelton <kmshelton@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2314101
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit ac08c9d1dbc9f587df3ee6b15d58c0203f7e356e.
Reason for revert: Breaks public build
Original change's description:
> fpsensor: Support building firmware that works for both sensors
>
> This is a refactoring to allow building FPMCU firmware that works for
> one FPC sensor and one ELAN sensor.
>
> 1. When both drivers implement our common functions, e.g. fp_sensor_init(),
> rename them to fp_sensor_init_fpc() and fp_sensor_init_elan().
> 2. There are a few functions implemented not in FPC driver but in FPC
> private library, e.g. fp_sensor_finger_status(). I kept this as-is for
> FPC but renamed the one in ELAN driver to fp_sensor_finger_status_elan()
> 3. If building for ELAN, need to hardcode elan=1 in hatch_fp/board.c
> because the sensor type GPIO always says FPC.
>
> BRANCH=none
> BUG=b:175158241
> TEST=make run-fpsensor; make run-fpsensor_status;
> make run-fpsensor_crypto
> TEST=make -j BOARD=dartmonkey
> TEST=add CONFIG_FP_SENSOR_ELAN515 to board/hatch_fp/board.h;
> make -j BOARD=bloonchipper
> Firmware binary fully works on Dragonair (FPC) and Voema (ELAN)
> TEST=run device tests with http://crrev/c/2750547 and
> http://crrev/i/3654297 on Dragonclaw, all pass
>
> Change-Id: I789090dbdfe35ac6aefd6a629fa4c7bde89dc437
> Signed-off-by: Yicheng Li <yichengli@chromium.org>
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2727971
> Reviewed-by: Tom Hughes <tomhughes@chromium.org>
> Commit-Queue: Tom Hughes <tomhughes@chromium.org>
Bug: b:175158241, b:184616069
Change-Id: I2a02a6eefc316e7e13aa188f1ae16672dce2babd
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2809521
Auto-Submit: Tom Hughes <tomhughes@chromium.org>
Tested-by: Tom Hughes <tomhughes@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: caveh jalali <caveh@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a refactoring to allow building FPMCU firmware that works for
one FPC sensor and one ELAN sensor.
1. When both drivers implement our common functions, e.g. fp_sensor_init(),
rename them to fp_sensor_init_fpc() and fp_sensor_init_elan().
2. There are a few functions implemented not in FPC driver but in FPC
private library, e.g. fp_sensor_finger_status(). I kept this as-is for
FPC but renamed the one in ELAN driver to fp_sensor_finger_status_elan()
3. If building for ELAN, need to hardcode elan=1 in hatch_fp/board.c
because the sensor type GPIO always says FPC.
BRANCH=none
BUG=b:175158241
TEST=make run-fpsensor; make run-fpsensor_status;
make run-fpsensor_crypto
TEST=make -j BOARD=dartmonkey
TEST=add CONFIG_FP_SENSOR_ELAN515 to board/hatch_fp/board.h;
make -j BOARD=bloonchipper
Firmware binary fully works on Dragonair (FPC) and Voema (ELAN)
TEST=run device tests with http://crrev/c/2750547 and
http://crrev/i/3654297 on Dragonclaw, all pass
Change-Id: I789090dbdfe35ac6aefd6a629fa4c7bde89dc437
Signed-off-by: Yicheng Li <yichengli@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2727971
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
Commit-Queue: Tom Hughes <tomhughes@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements the ELAN FP API, which is used to control the
ELAN FP sensor and matching algorithm on stm32f4.
Therefore, we reduce the size of TEMPLATE_SIZE on STM32f4 and
implements elan sensor reset API.
BRANCH=None
BUG=None
TEST=We build on bloonchipper and dartmonkey, and testing Elan sensor
with libelan_515_m4/m7.a and libelan_80_m4/m7.a successfully.
Signed-off-by: herman lin <herman.lin@emc.com.tw>
Change-Id: Iaf4b85744a49a3ae12f20d91740515b7dc198e56
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2643744
Reviewed-by: Yicheng Li <yichengli@chromium.org>
Commit-Queue: Yicheng Li <yichengli@chromium.org>
Tested-by: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"2002994" was built error in latest version.
This patch typedef on struct declaration its "fp_sensor_info_t" for
fixed error of "unknown type name".
BRANCH=None
BUG=None
TEST=We build on nami_fp, and testing Elan sensor with libelan_515.a
and libelan_80.a successfully.
Signed-off-by: herman lin <herman.lin@emc.com.tw>
Change-Id: I87884c9d69291839e7632379cd6700d2d77a8d05
Signed-off-by: herman lin <herman.lin@emc.com.tw>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2632113
Reviewed-by: Yicheng Li <yichengli@chromium.org>
Commit-Queue: Yicheng Li <yichengli@chromium.org>
Tested-by: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch provides ELAN FP APIs that used to control ELAN FP sensor
and matching algorithm.
BRANCH=None
BUG=None
TEST=We build on nami_fp, and testing Elan sensor with libelan_515.a
and libelan_80.a successfully.
Change-Id: I7a58025106f8ed570860b758323bf2047cde0731
Signed-off-by: Chiehchun Yu <chiehchun.yu@elan.corp-partner.google.com>
Signed-off-by: herman lin <herman.lin@emc.com.tw>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2002994
Reviewed-by: Yicheng Li <yichengli@chromium.org>
Tested-by: Yicheng Li <yichengli@chromium.org>
Commit-Queue: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a board doesn't have a FPC sensor, don't build FPC.
BRANCH=none
BUG=b:171812737, b:175158241
TEST=Change the sensor config on nocturne_fp to ELAN and build with
ELAN's driver and library.
Signed-off-by: Yicheng Li <yichengli@chromium.org>
Change-Id: I90eca478b6eadfbd373154c52e13f734473abfdf
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2591868
Commit-Queue: Tom Hughes <tomhughes@chromium.org>
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CONFIG_FP_SENSOR was only enabled for RW, but we need a way to know
whether the board is a fingerprint MCU when in RO as well.
"FINGERPRINT_MCU" is a bit more generic than FP_SENSOR. We still only
build the matching-related code for RW.
BRANCH=none
BUG=b:171370392
TEST=make buildall
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I808faa7a16522791cfb4eb9cc2e163d9eb994804
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2508860
Reviewed-by: Bhanu Prakash Maiya <bhanumaiya@google.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If HAVE_FP_PRIVATE_DRIVER is defined, the build will compile fingerprint
driver routines when compiling "common/fpsensor/fpsensor.c". Previously
we enable HAVE_FP_PRIVATE_DRIVER for both public and private unittest
builds. This was because we wanted to test "common/fpsensor/fpsensor.c"
with our mocks. However on public unittest builds this will break. This
change limits the compilation of driver-related code to private builds.
BRANCH=none
BUG=b:166807240, b:158580909
TEST=make -j buildall
TEST=make -j BOARD=bloonchipper test-rsa (private build)
TEST=mv private private-2 (hide private directory)
make -j BOARD=bloonchipper clean
make -j BOARD=bloonchipper test-rsa (public build)
Signed-off-by: Yicheng Li <yichengli@chromium.org>
Change-Id: Id144435bf1a60c259f4c1b120b9fc85ef85b7f4c
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2406189
Commit-Queue: Tom Hughes <tomhughes@chromium.org>
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This repairs building bloonchipper and dartmonkey builds
when private lib is unavailable.
There are two issues this remedies:
1) Redefinition of sensor info macros, like FP_SENSOR_RES_X
2) Undefined reference to fp_sensor_maintenance when building
bloonchipper/dartmonkey non-private image.
All of these issues stem from the way we handle code
when HAVE_FP_PRIVATE_DRIVER is set or faked by a test.
This is a fundamental issues that needs some thought and refactoring.
BRANCH=none
BUG=b:164174822,b:163109916, b:163411883
TEST=# With private
time make buildall -j
TEST=# Without private
time make buildall -j
TEST=# With private libs
# Cherry-pick https://crrev.com/c/2357870 first, then
# this patch.
./util/compare_build.sh -b all -o
# This confirms that the all output binaries with private-lib
# did not change at all
Signed-off-by: Craig Hesling <hesling@chromium.org>
Change-Id: If71e3376fb7a904b77f2fc9fc56c8e0daf54db3b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2357430
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Reviewed-by: YH Lin <yueherngl@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new console command "fpmaintenance" for testing.
BRANCH=none
BUG=b:76037094
TEST=With dragonclaw v0.2 connected to Segger J-Trace and servo micro:
./util/flash_jlink.py
On FP console:
> fpmaintenance
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I7125f8783d3dd7e815612d20742c9d949d00ba71
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2323709
Reviewed-by: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This matches the behavior in the libfp driver.
BRANCH=none
BUG=b:76037094
TEST=make buildall -j
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: Iec52b30be448a40f51baf03ddb9b8e8b0ddeb28f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2321829
Reviewed-by: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This function has always been in the fingerprint sensor binaries,
but somewhere along the way we lost the the declaration.
BRANCH=none
BUG=b:76037094
TEST=make buildall -j
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I06899f08c4a626f9d180ecdee6f73af0020b078c
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2321828
Reviewed-by: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that we run unit tests on device, we want to be able to include the
fingerprint sensor headers in test builds.
BRANCH=none
BUG=b:76037094
TEST=make buildall -j
TEST=With dragonclaw v0.2 connected to Segger J-Trace and servo micro:
./test/run_device_tests.py
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: Id406fd6039f1136f2ae8743453ead4a951805db5
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2321827
Reviewed-by: Yicheng Li <yichengli@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BRANCH=none
BUG=b:150407388
TEST=make buildall -j
Change-Id: Id0e7b42affcabf90c94334603a40b87cbc9543a8
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2092913
Commit-Queue: Craig Hesling <hesling@chromium.org>
Reviewed-by: Andrey Perminov <andrey.perminov@fingerprints.com>
Reviewed-by: Craig Hesling <hesling@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bloonchipper (aka hatch_fp aka dragonclaw) has a voltage divider that
can be used to select the sensor and the transport type.
Supported designs:
* Dragonclaw rev 0.2 (green with Google logo):
go/dragonclaw-schematic-rev-0.2
* Hatch reference v3.0:
go/hatch-schematic-rev-3.0
The selection lines are connected to ADC inputs, so a future change will
use the ADC to allow more than two transports or sensors.
BRANCH=none
BUG=b:147113851
TEST=flash dragonclaw rev 0.2 and view console output
Change-Id: If2e4b150d34cfe41477be528c70e1645043d4d82
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1986322
Reviewed-by: Craig Hesling <hesling@chromium.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We no longer need the various levels of indirection since the source
files are public.
BRANCH=none
BUG=b:137848573
TEST=make buildall -j
Cq-Depend: chrome-internal:2005128
Change-Id: I7483c233dc54c5dbf2907441365feffc9ae9f0a5
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1869533
|
|
|
|
|
|
|
|
|
|
|
| |
BRANCH=none
BUG=b:137848573
TEST=make buildall -j
Change-Id: I1dc902cb74ef902444b43642af52e28394296ae3
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1869532
Reviewed-by: Aseda Aboagye <aaboagye@chromium.org>
|
|
These source files have been approved to be released publicly (see
http://b/137848573#comment20). There were no source changes in the move,
except for small changes to the Makefiles to adjust for the move.
For future "git blame"s refer to the history of the files in the private
repo if you need to access the full history.
BRANCH=none
BUG=b:137848573
TEST=make buildall -j
Cq-Depend: chrome-internal:2005127
Change-Id: I1a809ac5a4d95637840ee47712e9c80a40a445c5
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1869531
|