summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-11-20Merge android13-gs-pixel-5.10-tm-qpr2 into android13-gs-pixel-5.10-tm-qpr3android-t-qpr3-beta-3_r0.5android-t-qpr3-beta-3_r0.4android-t-qpr3-beta-3_r0.3android-t-qpr3-beta-3.1_r0.5android-t-qpr3-beta-3.1_r0.4android-t-qpr3-beta-3.1_r0.3android-t-qpr3-beta-2_r0.5android-t-qpr3-beta-2_r0.4android-t-qpr3-beta-2_r0.3android-t-qpr3-beta-1_r0.5android-t-qpr3-beta-1_r0.4android-t-qpr3-beta-1_r0.3android-t-qpr3-beta-1_r0.1android-13.0.0_r0.93android-13.0.0_r0.92android-13.0.0_r0.85android-13.0.0_r0.84android-13.0.0_r0.83android-13.0.0_r0.82android-13.0.0_r0.127android-13.0.0_r0.126android-13.0.0_r0.125android-13.0.0_r0.124android-13.0.0_r0.123android-13.0.0_r0.121android-13.0.0_r0.117android-13.0.0_r0.116android-13.0.0_r0.115android-13.0.0_r0.114android-13.0.0_r0.113android-13.0.0_r0.112android-13.0.0_r0.107android-13.0.0_r0.106android-13.0.0_r0.105android-13.0.0_r0.104android-13.0.0_r0.103android-13.0.0_r0.100android-gs-tangorpro-5.10-android13-qpr3android-gs-raviole-5.10-t-qpr3-beta-3android-gs-raviole-5.10-t-qpr3-beta-2android-gs-raviole-5.10-android13-qpr3-beta1android-gs-raviole-5.10-android13-qpr3android-gs-pantah-5.10-t-qpr3-beta-3android-gs-pantah-5.10-t-qpr3-beta-2android-gs-pantah-5.10-android13-qpr3-beta1android-gs-pantah-5.10-android13-qpr3android-gs-lynx-5.10-android13-qpr3android-gs-felix-5.10-android13-qpr3-candroid-gs-felix-5.10-android13-qpr3android-gs-felix-5.10-android13-d3android-gs-bluejay-5.10-t-qpr3-beta-3android-gs-bluejay-5.10-t-qpr3-beta-2android-gs-bluejay-5.10-android13-qpr3-beta1android-gs-bluejay-5.10-android13-qpr3PixelBot AutoMerger
SBMerger: 478053055 Change-Id: Icbb7f85b0491aa899d73d44b100cfe57e8f138ed Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-11-14edgetpu: abrolhos: add pre-allocated iommu domainsandroid-t-qpr2-beta-3_r0.5android-t-qpr2-beta-3_r0.4android-t-qpr2-beta-3_r0.3android-t-qpr2-beta-3.2_r0.6android-t-qpr2-beta-3.2_r0.5android-t-qpr2-beta-2_r0.5android-t-qpr2-beta-2_r0.4android-t-qpr2-beta-2_r0.3android-t-qpr2-beta-1_r0.6android-13.0.0_r0.91android-13.0.0_r0.77android-13.0.0_r0.76android-13.0.0_r0.75android-13.0.0_r0.74android-13.0.0_r0.73android-13.0.0_r0.70android-13.0.0_r0.69android-13.0.0_r0.68android-13.0.0_r0.64android-gs-tangorpro-5.10-android13-d2android-gs-raviole-5.10-android13-qpr2-betaandroid-gs-raviole-5.10-android13-qpr2android-gs-pantah-5.10-t-qpr2-beta-3.2android-gs-pantah-5.10-t-qpr2-beta-1android-gs-pantah-5.10-android13-qpr2-betaandroid-gs-pantah-5.10-android13-qpr2android-gs-lynx-5.10-android13-qpr2-bandroid-gs-lynx-5.10-android13-d4android-gs-bluejay-5.10-t-qpr2-beta-3android-gs-bluejay-5.10-android13-qpr2-betaandroid-gs-bluejay-5.10-android13-qpr2Nishant Prajapati
Add pre-allocated iommu domains per contexts. Bug: 251639928 Signed-off-by: Nishant Prajapati <nishantpjpt@google.com> Change-Id: Ia43d80e12cc046dc67c9f5cf49d6773eb3fcaa06 (cherry picked from commit 3778a777b969d38a2e2443c64d84e36bbe14e47f)
2022-09-30Fix include file name to gs_tmu.handroid-t-qpr2-beta-1_r0.5android-t-qpr2-beta-1_r0.4android-gs-raviole-5.10-t-qpr2-beta-1android-gs-bluejay-5.10-t-qpr2-beta-1Lucas Wei
commit 9adbf68cf96 ("drivers: thermal: Rename gs101_tmu to gs_tmu") renamed including file from gs101_tmu.h to gs_tmu.h. Rename including path to avoid build breakage. Bug: 238399460 Signed-off-by: Lucas Wei <lucaswei@google.com> Change-Id: Ibcb80425a70aa6d0b17c32f6c8c337019f3734be
2022-06-12Merge android13-gs-pixel-5.10-tm-d1 into android13-gs-pixel-5.10-tm-qpr1PixelBot AutoMerger
SBMerger: 442815275 Change-Id: Ic6ae222b6021db3aad8953bf26df01dfc0c6831a Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-06-12Merge android12-gs-pixel-5.10-sc-qpr3 into android13-gs-pixel-5.10-tm-d1PixelBot AutoMerger
SBMerger: 442815275 Change-Id: I64cc38ce2f46753d5ecefe1daf5f38150043b263 Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-05-20[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.10android-t-qpr1-beta-3_r0.4android-t-qpr1-beta-3_r0.3android-t-qpr1-beta-2_r0.5android-t-qpr1-beta-2_r0.4android-t-qpr1-beta-1_r0.4android-t-qpr1-beta-1_r0.3android-t-beta-4_r0.6android-t-beta-4_r0.5android-t-beta-4_r0.4android-13.0.0_r0.59android-13.0.0_r0.58android-13.0.0_r0.54android-13.0.0_r0.53android-13.0.0_r0.5android-13.0.0_r0.49android-13.0.0_r0.48android-13.0.0_r0.44android-13.0.0_r0.43android-13.0.0_r0.4android-13.0.0_r0.20android-13.0.0_r0.19android-13.0.0_r0.15android-13.0.0_r0.14android-gs-raviole-5.10-t-qpr1-beta-2android-gs-raviole-5.10-t-beta-4android-gs-raviole-5.10-android13-qpr1-beta-3android-gs-raviole-5.10-android13-qpr1-betaandroid-gs-raviole-5.10-android13-qpr1android-gs-raviole-5.10-android13android-gs-bluejay-5.10-t-qpr1-beta-2android-gs-bluejay-5.10-t-beta-4android-gs-bluejay-5.10-android13-qpr1-beta-3android-gs-bluejay-5.10-android13-qpr1-betaandroid-gs-bluejay-5.10-android13-qpr1android-gs-bluejay-5.10-android13Whi copybara merger
edgetpu: add namespace import for DMA_BUF for 5.16 Bug: 232003048 edgetpu: add support for all dvfs frequencies Bug: 230582743 edgetpu: fetch hw ctx region from device tree Bug: 230236668 edgetpu: include uaccess.h for access_ok Bug: 201243473 edgetpu: cast access_ok address param to avoid type warning Bug: 201243473 (repeat) edgetpu: retry buffer map read-only on EFAULT Bug: 201243473 (repeat) edgetpu: add new firmware metrics Bug: 229311738 edgetpu: Change debug dump logs for prod FW builds. Bug: 228917587 edgetpu: mobile: Add handler for FW checkpoint dump reason. Bug: 228916950 edgetpu: fix system out of memory locking pages log message edgetpu: add edgetpu_domain_pool edgetpu: update client pid on wakelock acquire Bug: 217454089 GitOrigin-RevId: 73c9cafea4482608a8010716af983a72da30a7f3 Change-Id: Icd69eb5cdbe0aa135c5074f11daaa8cd9890893b
2022-04-03Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10PixelBot AutoMerger
SBMerger: 410055097 Change-Id: Ie5c7ea49e6441bff8df922f7959b8750517500fc Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-03-28[Copybara Auto Merge] Merge branch 'whitechapel' into ↵Whi copybara merger
android-gs-pixel-5.10-gs101 edgetpu: include linux thermal header edgetpu: mobile: handle merged PM QoS and BTS RKCI req Bug: 182818500 edgetpu: Move thermal header to chip specific file Bug: 223233475 edgetpu: add logs to help diagnose out of memory during buffer mapping edgetpu: initialise external mailbox according to power state Bug: 223076410 edgetpu: decouple mailbox alloc and set queue Bug: 223076410 edgetpu: Log dbg msg when dbg dump KCI is unimplemented in FW. edgetpu: Allocate external mailbox without holding wakelock Bug: 220660262 edgetpu: make fs_release wakelock free Bug: 197788097 Revert "Revert "edgetpu: Balance power up count during wakelock ..." edgetpu: janeiro: include tmu header file Bug: 215040856 Revert "edgetpu: Balance power up count during wakelock acquire" edgetpu: Balance power up count during wakelock acquire Bug: 221360331 edgetpu: re-add bus speed block KCI Bug: 199166333 edgetpu: chip-specific: declare TPU dma-coherent Bug: 218921150 edgetpu: fix iommu_map_sg return type change Bug: 220067471 GitOrigin-RevId: f5661a9dec62cc108b4dba4af826dd686c9335de Change-Id: Ie6f41ea8d5581e478941b8922329d4f6a7624df5
2022-02-20Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10PixelBot AutoMerger
SBMerger: 410055097 Change-Id: Ia5bb2c0357ad3d69b7e2b5cbbafb04045a8c4b76 Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-02-16[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.10Whi copybara merger
edgetpu: setup SSMT on firmware restart Bug: 218787370 GitOrigin-RevId: e8d902fb423dd814357e99877209da03391b8f62 Change-Id: I5b8a850b672e1ab408863f0a8f0aa584ae7c075d
2022-02-13Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10PixelBot AutoMerger
SBMerger: 410055097 Change-Id: I87fa143b7edd10c931ee0d9c41ff21eb6e89ff1d Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-02-11[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.101Whi copybara merger
edgetpu: initialize telemetry buffer size Bug: 216696239 edgetpu: change err logging during fw dbg dump buffer init Bug: 216522017 edgetpu: Modify wdt ref count based on mailbox activation Bug: 213415021 edgetpu: fixup comment typos edgetpu: fix memory allocation in ext test Bug: 215071893 edgetpu: always reset CPU on power down Bug: 214251686 edgetpu: Send single kci for mboxes with the same VCID. Bug: 201503258 edgetpu: dump etdev info Bug: 214028088 edgetpu: dump client info Bug: 214028088 edgetpu: debug dump mappings with headers Bug: 214027183 edgetpu: dbg dump remove queues edgetpu: dbg dump groups info Bug: 214028088 edgetpu: dbg dump introduce sscd context Bug: 214028088 edgetpu: define kernel info structs for debug dump Bug: 214027183 Bug: 214028088 edgetpu: Set debug dump buffer in FW after handshake Bug: 176556808 edgetpu: move wakelock releasing to client put GitOrigin-RevId: f5d0f49ce2fdd8af1a59137eb6f2af9acf3529de Change-Id: I442991d28371f57b8da3dbfb96d25ef833db6935
2022-01-23Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10PixelBot AutoMerger
SBMerger: 410055097 Change-Id: I49caa659303328c3040fc95ecce3f9e766fab56c Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2022-01-18[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.10Whi copybara merger
edgetpu: Remove dbg dump error msg to avoid flooding logs. edgetpu: dbg dump debugFS return EOPNOTSUPP edgetpu: dbg dump handle recoverable fault edgetpu: fix wakelock order to avoid lock inversion Bug: 197788097 edgetpu: power up TPU before sending dbg dump KCI edgetpu: add debugfs for getting dbg dump Bug: 207607509 edgetpu: map_size instead of alloc_size on dump Bug: 210563422 edgetpu: fix UAF on dumping group mappings Bug: 210549145 edgetpu: dmabuf fix potential UAF Bug: 210571509 edgetpu: notify MCP-wide thermal shutdown via kworker Bug: 207807085 Bug: 174552882 edgetpu: expand mobile debug dump support Bug: 207459857 edgetpu: mobile: share debug dump handlers Bug: 207459857 edgetpu: abrolhos: init sscd_dev in dbg dump init Bug: 208359418 edgetpu: expand EXT_MAILBOX support Bug: 204795149 GitOrigin-RevId: ccd0602e3352e9c241ebccfffa5a7d1322e43050 Change-Id: I72fe4428080e6f8e80ac09828e7fc8e330c91c66
2021-12-21Merge "Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10" ↵Robin Peng
into android13-gs-pixel-5.10
2021-12-20Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10Robin Peng
Bug: 199698959 Signed-off-by: Robin Peng <robinpeng@google.com> Change-Id: I437c76a754f209abaa6c37d7e02f54c781664120
2021-12-19Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10PixelBot AutoMerger
SBMerger: 410055097 Change-Id: Icd196f7054ce3793263ff53587aebdc1deae8dbb Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2021-12-10Merge branch 'whitechapel' into android-gs-pixel-5.10-gs101Whi copybara merger
edgetpu: add iterator for each device in an MCP Bug: 174552882 edgetpu: mobile: fixups for android review comments Bug: 205749891 edgetpu: mcp synchronous usage stats update at device group disband Bug: 195612161 edgetpu: unregister KCI irq handler Bug: 206717576 Bug: 204847583 edgetpu: add h/w preempt metric Bug: 205901661 edgetpu: define and use vma offset for external test Bug: 204846795 edgetpu: fix compile failure on older linux for pin_user_pages Bug: 205000780 edgetpu: add ioctl for testing interop interface Bug: 204846795 edgetpu: do SSMT setup after firmware image loaded Bug: 204155811 edgetpu: hermosa / shared firmware auth changes from prodkernel Bug: 195776283 GitOrigin-RevId: 835d991b33de161b6ce677cd1d190ee097daac7f Change-Id: I1c7e35550c7c14973358fb86fd26bc4b314a780c
2021-11-21Merge android13-gs-pixel-5.10-gs101 into android13-gs-pixel-5.10PixelBot AutoMerger
SBMerger: 410055097 Change-Id: If1eb2b74fbfcf1277f0c09405121a196f84736a3 Signed-off-by: SecurityBot <android-nexus-securitybot@system.gserviceaccount.com>
2021-11-09Merge branch 'whitechapel' into android-gs-pixel-5.10-gs101Whi copybara merger
edgetpu: code style fixups Bug: 204391548 edgetpu: Decrease pm_refcount when pm_runtime_get_sync fails Bug: 199111759 edgetpu: Increase trace buffer size to 256 KB Bug: 202436856 edgetpu: Split EDGETPU_TELEMETRY_{LOG,TRACE}_BUFFER_SIZE Bug: 202436856 edgetpu: Calculate wrap bit by buffer size Bug: 202436856 edgetpu: thermal update call no longer available at 5.12 edgetpu: retry shutdown on GSA error response Bug: 194954722 edgetpu: janeiro: update mbox manager to support aoc Bug: 202489917 Bug: 201727491 edgetpu: ensure TPU is completely off Bug: 202744710 edgetpu: add a mobile thermal module Bug: 194241938 Bug: 201076651 edgetpu: support memory for f/w context switch Bug: 200744848 edgetpu: abrolhos: add bus speed block KCI Bug: 199166333 edgetpu: fix mobile pm variables scope Bug: 199929284 edgetpu: Show mappings for every telemetry Bug: 202089755 edgetpu: Support mmapping different buffers Bug: 202089755 edgetpu: Introduce VMA_TYPE_WIDTH Bug: 202089755 edgetpu: Set/unset event on every telemetry Bug: 202089755 edgetpu: Check every telemetry when receiving irq Bug: 202089755 edgetpu: Use telemetry[0] for telemetry_kci Bug: 202089755 edgetpu: Initiate telemetry based on etdev->num_cores Bug: 202089755 edgetpu: Add missing #if CONFIG_EDGETPU_TELEMETRY_TRACE Bug: 202089755 edgetpu: Add num_cores to struct edgetpu_dev Bug: 202089755 edgetpu: Add detail clk debugfs Bug: 199929284 edgetpu: change interop interface Bug: 200658064 edgetpu: remove unnecessary explicit inclusions Bug: 201267603 edgetpu: move mobile headers out from unittests/ Bug: 201267603 edgetpu: add include/ to the include path Bug: 201267603 edgetpu: fix Kbuild inclusion path Bug: 201267603 edgetpu: remove fault handlers for linux < 5.3 edgetpu: set first_open to false for external mailbox Bug: 200507456 edgetpu: Put sscoredump features behind config flag Bug: 197672212 edgetpu: rio import drivers Bug: 198718365 Revert "edgetpu: remove edgetpu_unregister_irq" Bug: 200183185 edgetpu: implement commands for interop Bug: 199355448 edgetpu: fix up header inclusions edgetpu: abrolhos use common mobile interface Bug: 199717700 edgetpu: add edgetpu-mobile-platform.c Bug: 199717700 edgetpu: remove edgetpu_unregister_irq edgetpu: mobile add IRQ fields to platform_dev Bug: 199717700 edgetpu: support predefined KCI timeout Bug: 197068927 edgetpu: mobile cpu reset according to #cores Bug: 199571462 Bug: 198718365 edgetpu: config add EDGETPU_NUM_CORES Bug: 199571462 edgetpu: clearer config selection Bug: 198718365 edgetpu: mobile firmware fix typos edgetpu: abrolhos: use get/put_device on gsa_dev edgetpu: fix firmware load at different priv level edgetpu: fix returning/check correct status of errors Bug: 197919435 edgetpu: merge mobile firmware code Bug: 176881607 edgetpu: merge mobile PM code Bug: 176881607 edgetpu: move number of contexts to chip configs Bug: 194989925 edgetpu: fix potential KP on device probing Bug: 197144362 edgetpu: Reset dump memory after handling dump. edgetpu: abrolhos: Collect host side debug dump segments. Bug: 176555699 Bug: 168082238 Bug: 176556808 edgetpu: Sync debug dump contract with FW edgetpu: restrict printing a couple of kernel and physical addresses edgetpu: use %# instead of 0x% for hex printks edgetpu: use __s32 for int fd field of dma-buf map ioctl edgetpu: fix UAF in edgetpu_device_group_map Bug: 192641593 edgetpu: hermosa fix out of tree build for shared firmware Bug: 195776283 edgetpu: hermosa add support for firmware signature checks Bug: 195776283 edgetpu: add physical address field to coherent memory Bug: 183621442 edgetpu: abrolhos avoid thermal update call no longer available at 5.12 edgetpu: fix invalid wait context Bug: 196340168 edgeptu: abrolhos: fix out-of-tree build edgetpu: thermal: tmu: add tpu pause/resume feature Bug: 194307914 edgetpu: add sysfs groups attr edgetpu: abrolhos thermal code style fixups edgetpu: add user_vote for user space request TPU throttling Bug: 188701596 edgetpu: abrolhos fail firmware run on GSA fails Bug: 194942314 edgetpu: debugfs mappings improvements edgetpu: use pin_user_pages, alloc own vma struct pointers array Bug: 194989197 edgetpu: abrolhos disable ext mbox on client remove Bug: 195126121 edgetpu: don't fail mbox deactivation on KCI fails Bug: 195126121 edgetpu: abrolhos enable mbox before secure client Bug: 195126121 edgetpu: add group id to sysfs clients attr, fix output Bug: 193484549 edgetpu: mobile guard bcl inclusion with KCONFIG Bug: None edgetpu: use kvmalloc for pages array Bug: 193759145 edgetpu: add support for multiple interfaces Bug: 191193044 edgetpu: restrict debugfs statusregs file to non-mobile chipsets Mobile chipsets may fully or partially lockout host kernel access to TPU registers. Bug: 194228073 edgetpu: abrolhos: expose thermal suspend/resume Expose two functions edgetpu_thermal_{suspend,resume} which are expected to be used by the thermal governor. Remove the suspend/resume logic from edgetpu_set_cur_state. Bug: 193247519 edgetpu: add support to create coherent/non-coherent mapping Bug: 193058645 edgetpu: add sysfs attr clients to dump client and wakelock state Sysfs device attr "clients" lists all registered clients for the device, showing PID/TGID and wakelock status, for diagnosing which client is holding the TPU powered. Bug: 193484549 edgetpu: add support to track device removal Bug: 193765650 edgetpu: PM log clients holding TPU wakelocks at suspend reject time Bug: 193484549 edgetpu: add list of clients per device Bug: 193484549 edgetpu: rename group client list fields and iterators Bug: 193484549 edgetpu: abrolhos remove obsolete DT binding Bug: 190677977 edgetpu: cleanup host DMA direction modification edgetpu: remove redundant obj from Makefile Remove the wrong obj from Makefile that was caused by a wrong syntax matching in Copybara. Hard fix in this branch to unblock the build failures. edgetpu: fix kernel paging error in edgetpu_mmu_attach_domain Bug: 193591701 edgetpu: remove remaining references to emulators edgetpu: add "is a mobile style device" feature flag Bug: 193353802 edgetpu: organize objects into mobile vs. mcp groupings Bug: 193353802 edgetpu: remove ref to shared firmware header in common source Bug: 193353802 edgetpu: use only one style of shared vs. carveout fw buffer management Bug: 193353802 edgetpu: remove integer overflow check Bug: None edgetpu: set first_open to true for external mailbox Bug: 192808637 edgetpu: use DIV_ROUND_UP for various page size calculations edgetpu: Add common interface for mobile power management Bug: 179343138 Bug: 185797093 Bug: 176881607 edgetpu: abrolhos: Send throttling notification KCI only if TPU is on. Bug: 193254607 edgetpu: add force_reset flag when restarting firmware Bug: 190871324 Revert "edgetpu: abrolhos attempt FW restart on power down" edgetpu: unittests: compile based on CONFIG_EDGETPU_TEST Bug: 153947157 edgetpu: abrolhos: Send throttling notification KCI only if TPU is on. Move the pm_get from within edgetpu_kci_notify_throttling to the caller. Tested: Verified that when cooling state is changed by setting emul temp and the device is powered off, the throttling KCI function is not called. Bug: 193254607 (cherry picked from commit 34bd4e2d241e076b2df3dd2d3c531a51c53581dc) GitOrigin-RevId: 55fb0c8476374df0c4916ad500dfe4d049b8d86a Change-Id: I758f397194e4f9ae21e21827591b8b59697f7017
2021-09-11edgetpu: sync critical fixes: GSA failure, UAF on mappingDavid Chiang
Sync the following CLs from darwinn-2.0: 950f4f74 edgetpu: abrolhos fail firmware run on GSA fails 93cd0c2c edgetpu: fix UAF in edgetpu_device_group_map Bug: 192641593 Bug: 194942314 Signed-off-by: David Chiang <davidchiang@google.com> Change-Id: Id4382b28af3deb67ae5cddbc5af8e21f6a9f5cb0
2021-08-09edgetpu: thermal: tmu: add tpu pause/resume featureDavid Chao
Add tpu pause/resume feature Bug: 194307914 Test: boot to home and tpu pause/resume worked properly Change-Id: I737dc6d10cb8f1300459e72045d6b47788e3ee2c Signed-off-by: David Chao <davidchao@google.com>
2021-08-09edgetpu: add user_vote for user space request TPU throttlingTeYuan Wang
For the current upstream design, userspace can request cooling device via "cur_state" sysfs. However, the request will be overwritten by other kernel governor or it will overwrite other governor's request. So, create this user_vote sysfs for userspace to request cooling device and vote with other kernel governor's request. Bug: 188701596 Test: build Change-Id: I6ea5c1a5f5fdeb72f78f69fa7cc833f5f464d28e Signed-off-by: TeYuan Wang <kamewang@google.com>
2021-08-05edgetpu: sync critical fixes: page pin out of memory, faceauth crashTodd Poynor
Sync the following CLs from darwinn-2.0: 5d2f9ddb7 edgetpu: use pin_user_pages, alloc own vma struct pointers array db00a2f91 edgetpu: abrolhos disable ext mbox on client remove 4e838d0f7 edgetpu: don't fail mbox deactivation on KCI fails Bug: 194989197 Bug: 195126121 Signed-off-by: Todd Poynor <toddpoynor@google.com> Change-Id: Iedd6cf0314ca76bf74ea91d85c853ed71a163fd3
2021-07-27edgetpu: use kvmalloc for pages arrayErick Reyes
Under heavy memory pressure, allocating a physically contiguous buffer for a struct pages * array may fail. Since this array does not need to be physically contiguous, switch to kvmalloc instead. Bug: 193759145 Signed-off-by: Erick Reyes <erickreyes@google.com> Change-Id: I810019402315e7211e00f942dff5fc32687a3d25
2021-07-27edgetpu: sync critical fixes from darwinn-internalTodd Poynor
Roll up the following fixes from darwinn-internal/darwinn-2.0 branch: 4bea3ab59 edgetpu: add support for multiple interfaces Bug: 191193044 a3845eb1f edgetpu: restrict debugfs statusregs file to non-mobile chipsets 0cf49546e edgetpu: add "is a mobile style device" feature flag Bug: 194228073 0afc743e5 edgetpu: abrolhos: expose thermal suspend/resume [toddpoynor@google.com: fixup merge conflict on pwr_state enum] Bug: 193247519 34bd4e2d2 edgetpu: abrolhos: Send throttling notification KCI only if TPU is on. Bug: 193254607 Signed-off-by: Erick Reyes <erickreyes@google.com> Signed-off-by: abhilashkul <abhilashkul@google.com> Signed-off-by: David Chiang <davidchiang@google.com> Signed-off-by: Todd Poynor <toddpoynor@google.com> Change-Id: I5eb392271b07f28bba66701639e453f2674cfad2
2021-07-20edgetpu: sync fixes from darwinn-internalTodd Poynor
Roll-up the following commits suggested for including in pixel 5.10: 90c2dbb04 edgetpu: add sysfs attr clients to dump client and wakelock state 465a02519 edgetpu: PM log clients holding TPU wakelocks at suspend reject time 6614f7487 edgetpu: add list of clients per device bcbadfe1c edgetpu: fix kernel paging error in edgetpu_mmu_attach_domain Bug: 193484549 Bug: 193591701 Signed-off-by: Claire Chang <tientzu@google.com> Signed-off-by: Todd Poynor <toddpoynor@google.com> Change-Id: I19eb15187af66d35360349929738c9de6f5cc05b
2021-07-09[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.10Whi copybara merger
edgetpu: add force_reset flag when restarting firmware When CPU reset is controlled externaly (like mobile platforms relying on GSA), we want the critical wake-up path to be as short as possible. At the same time, when the device goes to a bad state we want to make sure a CPU reset is issued. Add a flag to edgetpu_firmware_restart_locked, propagate it to the restart handler in edgetpu_firmware_chip_data, and use it on Abrolhos to send a GSA_TPU_SHUTDOWN command in order to make sure the CPU is reset. Bug: 190871324 (cherry picked from commit 88bae702e99cd57b7962043ec76a97939765f6d7) Revert "edgetpu: abrolhos attempt FW restart on power down" This reverts commit d5487306b13e81d89435778dd487541ac341759b. (cherry picked from commit 963540540ce495cd1c0bd6123aea470f26dbbc75) edgetpu: abrolhos attempt FW restart on power down Bug: 190871324 edgetpu: KCI early leave if the device state is bad edgetpu: check device pointer in logging functions edgetpu: abrolhos: bcl: Renaming gs101_bcl to google_bcl Bug: 192683348 Bug: 193049438 edgetpu: abrolhos: return 0 when TZ mailbox is not acquired Bug: 192808637 edgetpu: log pids when acquire fails edgetpu: increase reverse KCI buffer size edgetpu: abrolhos fix thermal suspend condition edgetpu: move default firmware run and firmware_name param to common edgetpu: create edgetpu_firmware_chip_data edgetpu: move default firmware run and firmware_name param to common edgetpu: create edgetpu_firmware_chip_data edgetpu: watchdog bite when OPEN_DEVICE KCI timed out edgetpu: remove edgetpu_chip_firmware_run edgetpu: detach mailbox when activation failed edgetpu: reduce IOMMU fault reports severity edgetpu: allow buffer unmapping on errored groups GitOrigin-RevId: 0f4b817fa17e1df8270cb303eab0aceec4e8bf50 Change-Id: I1e7092b9f8f25ee72b559c6246d705bca24c1cdb
2021-07-02bcl: Renaming gs101_bcl to google_bclGeorge Lee
Renaming to future proofing code. Bug: 192683348 Signed-off-by: George Lee <geolee@google.com> Change-Id: I2e6725ede94b4d0b33a063420dd3a97faa263ffb
2021-06-28[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.10Whi copybara merger
edgetpu: abrolhos return actual error for throttling kci edgetpu: handle job lockup notification from firmware edgetpu: add API to send fatal error notifications to a specific group edgetpu: add fatal error event for firmware-detected job timeout edgetpu: Improve the check in edgetpu_thermal_* functions edgetpu: Modify the log function due to thermal suspended edgetpu: fail wakelock acquiring if suspended edgetpu: ignore offset arg in edgetpu_map_dmabuf edgetpu: abrolhos: hook exynos acpm functions edgetpu: abrolhos remove memset log/trace buffers edgetpu: update mobile SoC DT bindings edgetpu: mapping remove WARN when release not set edgetpu: remove reference to future chipset name in common source edgetpu: allocate/free external mailboxes edgetpu: add support for external mailboxes edgetpu: KCI allocate data with iremap GitOrigin-RevId: 7374471f6dd6c760248d0cf03c6bb3dacc0fdf1d Change-Id: I48ecd34e0c3378dcb9f3192eeda969e8d7923c21
2021-06-22[Copybara Auto Merge] Merge branch 'whitechapel' into android-gs-pixel-5.10Whi copybara merger
edgetpu: fix memory leak in alloc_mapping_from_useraddr GitOrigin-RevId: 6d7038802247d109a9a89d703332fc232f7c9769 Change-Id: I8eb1c380880b8530a2b15acaea3dcc0ad71da413
2021-06-17Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: (33 commits) edgetpu: add edgetpu_kci_send_cmd_with_data edgetpu: activate single mbox instead of bitmasks edgetpu: add get_fatal_errors ioctl edgetpu: set fatal error event codes edgetpu: add fatal error event codes edgetpu: remove redundant args edgetpu: abrolhos scrub more TPU CPU references edgetpu: remove some references to codenames and hardware details edgetpu: remove some details from usage-stats comments and symbols edgetpu: fix typo in debug dump header edgetpu: log error when firmware load failed edgetpu: google: use default domain when AUX disabled edgetpu: fix edgetpu_mmu_alloc_domain memory leak edgetpu: remove dependency on iommu_group_id edgetpu: fix watchdog job cancel ordering edgetpu: don't check mailbox_detachable on fs_release ... Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I9e876a348e290740cbc844cc7f48566f65071341 Bug: 191153847
2021-06-11edgetpu: remove dependency on iommu_group_idThierry Strudel
A dev_dbg line was using iommu_grou_id, but this function is not part of KMI. Removing the line to avoid a build failure when building against Pixel kernels with -DDYNAMIC_DEBUG_MODULE enabled. Bug: 186701019 Signed-off-by: Thierry Strudel <tstrudel@google.com> Change-Id: I6e1cdb710e62ce88057c8457de486f06eb8edb06 Signed-off-by: Erick Reyes <erickreyes@google.com>
2021-06-10Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: move mailbox disable out from mbox remove edgetpu: export mailbox enable and disable functions edgetpu: fix error checking while creating debufs dir edgetpu: check for error after creating debugfs dir edgetpu: dmabuf map add debug logs for diagnosing errors edgetpu: make various usage metrics group writeable Bug: 190662132 Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: Id4b139ef3d08ef1615bc51844058107ebda4a55e
2021-06-02Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: set cacheability according to device edgetpu: add offset back to dmabuf mapping edgetpu: refactor error handling edgetpu: reset thread stats on write edgetpu: abrolhos remove parsing csr-iova nodes edgetpu: remove mapping CSRs on mmu setup edgetpu: add corrupted log queue msg back edgetpu: deprecate offset in edgetpu_map_dmabuf_ioctl edgetpu: fix use-after-free Read in edgetpu_chip_acquire_ext_mailbox edgetpu: map dmabuf ignore size argument Bug: 189968759 Change-Id: I1a0c652eeb002e9f43639dec945a43dadf7b39d2
2021-05-24Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: (35 commits) edgetpu: abrolhos fix thermal notify null deref edgetpu: fix UAF write on edgetpu_sync_fence_create edgetpu: add firmware_is_loading utility edgetpu: move etdev state change into FW run / restart edgetpu: don't attempt FW restart on FW loading edgetpu: add firmware_pm_get edgetpu: abrolhos: remove power policy shutdown edgetpu: remove obsolete reg_window from client edgetpu: set FW status when run / restart finished edgetpu: handle tagged pointers in edgetpu_pin_user_pages edgetpu: swap the order of fw desc and etdev state lock edgetpu: enhance size of mapping overflow check edgetpu: refine user-space header documentation edgetpu: abrolhos: Change the minimum state to UUD edgetpu: don't signal signaled dma fence edgetpu: fix error handling on sync_fence creation edgetpu: remove etdev "open" field edgetpu: don't notify runtime of potentially recoverable fw crash ... Bug: 188735590, 189147298 Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I04c6acba0252e641f7bf99d07190b5991ae95566
2021-05-12Merge branch 'darwinn-2.0' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: using fw trylock in update usage KCI edgetpu: use pm_trylock for usage update KCI edgetpu: abrolhos: add kci to notify firmware about throttling. edgetpu: add firmware launch_failed callback edgetpu: add PM get_if_powered API edgetpu: hold group locks when restoring VII mboxes Revert "edgetpu: abrolhos temporarily disable pm test" edgetpu: add asynchronous usage update KCI edgetpu: reset iomux cfg on top hermosa reset edgetpu: abrolhos temporarily disable pm test edgetpu: modify SG length before sync edgetpu: abrolhos: use vmalloc for firmware image edgetpu: fix unit tests for usage stats to create valid firmware edgetpu: KCI update usage lockout f/w state changes, abort if f/w bad Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I902de9634e3ec5082c279d8bb7eebbc8af33060e
2021-05-05Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: pin pages without FOLL_WRITE if the first try failed with EFAULT. clang-format: add .clang-format edgetpu: validate the circular_queue_count result edgetpu: validate the value of tail before using it edgetpu: add ioctl for external mailbox handshake edgetpu: add firmware state change lockout API edgetpu: fix group leave for dies that failed to load firmware edgetpu: fix overflow on number of pages edgetpu: KCI print return status code on error response edgetpu: check edgetpu_sync_fence_signal errno Change-Id: If418b09faaf3439b4b4a61b0adf648536f20e52e
2021-04-27Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: Fix error handling for unpin_user_pages edgetpu: check DMA direction in map flags edgetpu: use entire page for sg table allocation edgetpu: disallow mmap buffer copies edgetpu: introduce edgetpu_vma_type to handle mmap edgetpu: check mailbox attached on mmap queues edgetpu: add size check on iremap mmap edgetpu: use num_pages for sg table allocation edgetpu: use max function for thread stats max stack values edgetpu: handle firmware thread stats edgetpu: make counters stats additive edgetpu: add firmware max watermark usage tracking edgetpu: abrolhos: implement firmware restart handler edgetpu: abrolhos: fix BTS scenario cleanup edgetpu: add additional counters to usage stats edgetpu: add firmware thread stats types to usage tracker Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I8b4f02a103d81fb468e6d23d81066c7e14441069
2021-04-19Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* android-gs-pixel-5.10: edgetpu: add error logs for group finalize failure edgetpu: abrolhos: fix update stats kci req on shutdown. edgetpu: abrolhos: initialize clock divider ratios edgetpu: add common sysfs watchdog_timeout_count attr edgetpu: remove secure IOMMU SMC edgetpu: add optional wrapper class for validating edgetpu fds Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: Id4aff09f9fe65deaec60b670914e10e16af50d92
2021-04-16Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: check file op on group join edgetpu: restart firmware on unrecoverable fault notification edgetpu: remove firmware crash extra_info field edgetpu: fix size and offset on host buffer map edgetpu: Create common f/w interface for mobile chipsets edgetpu: remove unbalanced unlock in group alloc edgetpu: abrolhos fix uninit power lock edgetpu: fixup KCI header file comments on response element edgetpu: raise log severity of MMU setup edgetpu: abort probe when MMU setup failed Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I4d968724c8b73a86b607085090289b2845ccfe18
2021-04-07Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: protect tel is_mapped with a mutex lock edgetpu: check size more strictly on mbox attr validation edgetpu: save IRQ state for KCI spinlocks edgetpu: add NOWARN flag when pinning user pages edgetpu: abrolhos: only throttle to active TPU states edgetpu: add reverse KCI handler for firmware crash events edgetpu: KCI update response data structure comments for Reverse KCI edgetpu: make edgetpu_usage_get_counter static edgetpu: remove deprecated FW info KCI edgetpu: unset all per die events on client remove edgetpu: allow one process to mmap log/trace buffers edgetpu: add "counters" usage stats edgetpu: Alloc dump memory outside iremap region edgetpu: abrolhos: add min_state debugfs entry Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I524a0ce3d44ee5f6c9501960f7e535fbab8af7be
2021-03-31bcl: initialize tpu clock divider ratioGeorge Lee
Bug: 183412759 Signed-off-by: George Lee <geolee@google.com> Change-Id: I55ee8cbaebdbdb329d451ee7c683eab453a89022
2021-03-25Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: free reserved IOVA on error in edgetpu_map_iova_sgt_worker edgetpu: return EPERM for non-root full CSR mmap edgetpu: remove ALLOCATE_DEVICE_BUFFER_COMPAT Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: Ic53bb9eb07be428cafc870deacb110bbeb1b4248
2021-03-18Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: shorten KCI timeout for testing edgetpu: replace WDT modify with mode settings edgetpu: add active and dormant mode to SW watchdog edgetpu: clear mappings after sending leave group edgetpu: make wakelock event warning more descriptive Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: Ia3a8aea5b578a528164d7a9d6175a9f43e6fd7d9
2021-03-10Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: send OPEN KCI only if wakelock acquired edgetpu: remove etdev state check for group join edgetpu: remove implicit wakelock on device open edgetpu: power on before group finalization edgetpu: simplify edgetpu_mailbox_init_vii edgetpu: init VII only when necessary edgetpu: move VII init from alloc to finalize edgetpu: add edgetpu_mailbox_validate_attr edgetpu: add snippets for mailbox at(de)taching edgetpu: code style fix on suspend/resume functions Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com>0 Change-Id: I7c8373ce473078101581e9f1588ddf76064de873
2021-03-04Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: edgetpu: detachable VII queues edgetpu: guard mbox queue mmap with wakelock edgetpu: set wakelock to null on cleanup edgetpu: APIs that bind KCI and removable mailbox edgetpu: abrolhos: cap thermal state change requests edgetpu: adopt new wakelock interface edgetpu: add chip files for wakelock edgetpu: add edgetpu-wakelock.c edgetpu: abrolhos: do SMC on power up/down Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I2f2d8927e3edd2c0d804d7984221c2af102a6a37
2021-03-03edgetpu: prevent system suspend when clients are activeErick Reyes
Implement minimal suspend/resume handlers to notify the system the device cannot go to sleep state when a client is holding the firmware wakelock. Bug: 181578920 Signed-off-by: Erick Reyes <erickreyes@google.com> Change-Id: I387d073c9b2a9012b84427805918d3731171e7e0 (cherry picked from commit 6438b8f6536c9383ae0e59e4a0b22de7e7063afb)
2021-02-25Merge branch 'whitechapel' into android-gs-pixel-5.10Nrithya Kanakasabapathy
* whitechapel: GKI: edgetpu: Remove unused variable *tz edgetpu: sleep between p-channel handshake attempts edgetpu: abrolhos: handle PM_QOS and BTS requests edgetpu: add reverse KCI handler edgetpu: fix memory leak in edgetpu_device_group_map edgetpu: fix asynchronous utility crash edgetpu: add warning when mmap-ing the full CSR edgetpu: add accessor function for utilization stats edgetpu: asynchronously map sgt edgetpu: don't update stats if device powered down edgetpu: add DRAM used accessor function edgetpu: only poll mailbox activity for KCI+VII mailboxes in ISR edgetpu: load_firmware read "[none]" if firmware is not valid Signed-off-by: Nrithya Kanakasabapathy <nrithya@google.com> Change-Id: I053c982a54cff2981785e22ab7a392ec2f851338
2021-02-13Merge android-gs-pixel-mainline into android-gs-pixel-5.10Chris Fries
* partner/android-gs-pixel-mainline: Merge branch 'whitechapel' into android-gs-pixel-mainline Signed-off-by: Chris Fries <cfries@google.com> Change-Id: I2dcff878f3f080564527be3b6a842ccb91da7995