Messages in this thread | | | Date | Fri, 24 Jul 2020 20:49:24 +0300 | From | Oded Gabbay <> | Subject | [git pull] habanalabs pull request for kernel 5.9-rc1 (resend again) |
| |
Hello Greg,
(Re-sending again this pull request)
This is habanalabs pull request for the merge window of kernel 5.9. It contains many small improvements to common and GAUDI code. Details are in the tag.
Thanks, Oded
The following changes since commit 92ca3dd4867bafbfd026b06d53737d61ded1bd27:
mei: hw: don't use one element arrays (2020-07-23 19:33:09 +0200)
are available in the Git repository at:
git://people.freedesktop.org/~gabbayo/linux misc-habanalabs-next-2020-07-24
for you to fetch changes up to 94f8be9eb065412cf069efd45053d33e8911fa9e:
habanalabs: Fix memory leak in error flow of context initialization (2020-07-24 20:40:06 +0300)
---------------------------------------------------------------- This tag contains the following changes for kernel 5.9-rc1:
- Remove rate limiters from GAUDI configuration (no longer needed). - Set maximum amount of in-flight CS per ASIC type and increase the maximum amount for GAUDI. - Refactor signal/wait command submissions code - Calculate trace frequency from PLLs to show accurate profiling data - Rephrase error messages to make them more clear to the common user - Add statistics of dropped CS (counter per possible reason for drop) - Get ECC information from firmware - Remove support for partial SoC reset in Gaudi - Halt device CPU only when reset is certain to happen. Sometimes we abort the reset procedure and in that case we can't leave device CPU in halt mode. - set each CQ to its own work queue to prevent a race between completions on different CQs. - Use queue pi/ci in order to determine queue occupancy. This is done to make the code reusable between current and future ASICs. - Add more validations for user inputs. - Refactor PCIe controller configuration to make the code reusable between current and future ASICs. - Update firmware interface headers to latest version - Move all common code to a dedicated common sub-folder
---------------------------------------------------------------- Adam Aharon (1): habanalabs: calculate trace frequency from PLL
Christine Gharzuzi (1): habanalabs: extract cpu boot status lookup
Moti Haimovski (1): habanalabs: check for DMA errors when clearing memory
Oded Gabbay (10): habanalabs: remove rate limiters from GAUDI uapi/habanalabs: fix some comments habanalabs: align armcp_packet structure to 8 bytes habanalabs: rephrase error messages habanalabs: Extract ECC information from FW habanalabs: remove soft-reset support from GAUDI habanalabs: halt device CPU only upon certain reset habanalabs: create common folder habanalabs: update hl_boot_if.h from firmware habanalabs: enable device before hw_init()
Ofir Bitton (11): habanalabs: Use pending CS amount per ASIC habanalabs: sync stream generic functionality habanalabs: Use mask instead of shift in sync stream registers habanalabs: Increase queues depth habanalabs: Add dropped cs statistics info struct habanalabs: PCIe iATU refactoring habanalabs: configure maximum queues per asic habanalabs: use queue pi/ci in order to determine queue occupancy habanalabs: Assign each CQ with its own work queue habanalabs: verify queue can contain all cs jobs habanalabs: create internal CB pool
Omer Shpigelman (2): habanalabs: rephrase error message habanalabs: remove unused hash
Tomer Tayar (2): habanalabs: use no flags on MMU cache invalidation habanalabs: Fix memory leak in error flow of context initialization
drivers/misc/habanalabs/Makefile | 11 +- drivers/misc/habanalabs/common/Makefile | 9 + drivers/misc/habanalabs/{ => common}/asid.c | 0 .../misc/habanalabs/{ => common}/command_buffer.c | 82 +- .../habanalabs/{ => common}/command_submission.c | 97 ++- drivers/misc/habanalabs/{ => common}/context.c | 39 +- drivers/misc/habanalabs/{ => common}/debugfs.c | 0 drivers/misc/habanalabs/{ => common}/device.c | 88 +- drivers/misc/habanalabs/{ => common}/firmware_if.c | 101 +-- drivers/misc/habanalabs/{ => common}/habanalabs.h | 172 ++-- .../misc/habanalabs/{ => common}/habanalabs_drv.c | 1 - .../habanalabs/{ => common}/habanalabs_ioctl.c | 24 + drivers/misc/habanalabs/{ => common}/hw_queue.c | 165 ++-- drivers/misc/habanalabs/{ => common}/hwmon.c | 0 drivers/misc/habanalabs/{ => common}/irq.c | 13 +- drivers/misc/habanalabs/{ => common}/memory.c | 3 +- drivers/misc/habanalabs/{ => common}/mmu.c | 1 - drivers/misc/habanalabs/{ => common}/pci.c | 136 ++-- drivers/misc/habanalabs/{ => common}/sysfs.c | 3 + drivers/misc/habanalabs/gaudi/Makefile | 2 +- drivers/misc/habanalabs/gaudi/gaudi.c | 894 ++++++++------------- drivers/misc/habanalabs/gaudi/gaudiP.h | 16 +- drivers/misc/habanalabs/gaudi/gaudi_coresight.c | 6 +- drivers/misc/habanalabs/goya/goya.c | 172 ++-- drivers/misc/habanalabs/goya/goyaP.h | 14 +- drivers/misc/habanalabs/goya/goya_coresight.c | 6 +- .../habanalabs/include/{ => common}/armcp_if.h | 14 +- .../habanalabs/include/{ => common}/hl_boot_if.h | 14 + .../misc/habanalabs/include/{ => common}/qman_if.h | 0 .../habanalabs/include/gaudi/asic_reg/gaudi_regs.h | 21 +- .../include/gaudi/asic_reg/psoc_cpu_pll_regs.h | 114 +++ .../misc/habanalabs/include/gaudi/gaudi_masks.h | 3 + .../misc/habanalabs/include/gaudi/gaudi_packets.h | 4 +- include/uapi/misc/habanalabs.h | 27 +- 34 files changed, 1260 insertions(+), 992 deletions(-) create mode 100644 drivers/misc/habanalabs/common/Makefile rename drivers/misc/habanalabs/{ => common}/asid.c (100%) rename drivers/misc/habanalabs/{ => common}/command_buffer.c (85%) rename drivers/misc/habanalabs/{ => common}/command_submission.c (92%) rename drivers/misc/habanalabs/{ => common}/context.c (84%) rename drivers/misc/habanalabs/{ => common}/debugfs.c (100%) rename drivers/misc/habanalabs/{ => common}/device.c (94%) rename drivers/misc/habanalabs/{ => common}/firmware_if.c (89%) rename drivers/misc/habanalabs/{ => common}/habanalabs.h (94%) rename drivers/misc/habanalabs/{ => common}/habanalabs_drv.c (99%) rename drivers/misc/habanalabs/{ => common}/habanalabs_ioctl.c (95%) rename drivers/misc/habanalabs/{ => common}/hw_queue.c (86%) rename drivers/misc/habanalabs/{ => common}/hwmon.c (100%) rename drivers/misc/habanalabs/{ => common}/irq.c (95%) rename drivers/misc/habanalabs/{ => common}/memory.c (99%) rename drivers/misc/habanalabs/{ => common}/mmu.c (99%) rename drivers/misc/habanalabs/{ => common}/pci.c (73%) rename drivers/misc/habanalabs/{ => common}/sysfs.c (99%) rename drivers/misc/habanalabs/include/{ => common}/armcp_if.h (98%) rename drivers/misc/habanalabs/include/{ => common}/hl_boot_if.h (84%) rename drivers/misc/habanalabs/include/{ => common}/qman_if.h (100%) create mode 100644 drivers/misc/habanalabs/include/gaudi/asic_reg/psoc_cpu_pll_regs.h The following changes since commit 92ca3dd4867bafbfd026b06d53737d61ded1bd27:
mei: hw: don't use one element arrays (2020-07-23 19:33:09 +0200)
are available in the Git repository at:
git://people.freedesktop.org/~gabbayo/linux tags/misc-habanalabs-next-2020-07-24
for you to fetch changes up to 94f8be9eb065412cf069efd45053d33e8911fa9e:
habanalabs: Fix memory leak in error flow of context initialization (2020-07-24 20:40:06 +0300)
---------------------------------------------------------------- This tag contains the following changes for kernel 5.9-rc1:
- Remove rate limiters from GAUDI configuration (no longer needed). - Set maximum amount of in-flight CS per ASIC type and increase the maximum amount for GAUDI. - Refactor signal/wait command submissions code - Calculate trace frequency from PLLs to show accurate profiling data - Rephrase error messages to make them more clear to the common user - Add statistics of dropped CS (counter per possible reason for drop) - Get ECC information from firmware - Remove support for partial SoC reset in Gaudi - Halt device CPU only when reset is certain to happen. Sometimes we abort the reset procedure and in that case we can't leave device CPU in halt mode. - set each CQ to its own work queue to prevent a race between completions on different CQs. - Use queue pi/ci in order to determine queue occupancy. This is done to make the code reusable between current and future ASICs. - Add more validations for user inputs. - Refactor PCIe controller configuration to make the code reusable between current and future ASICs. - Update firmware interface headers to latest version - Move all common code to a dedicated common sub-folder
---------------------------------------------------------------- Adam Aharon (1): habanalabs: calculate trace frequency from PLL
Christine Gharzuzi (1): habanalabs: extract cpu boot status lookup
Moti Haimovski (1): habanalabs: check for DMA errors when clearing memory
Oded Gabbay (10): habanalabs: remove rate limiters from GAUDI uapi/habanalabs: fix some comments habanalabs: align armcp_packet structure to 8 bytes habanalabs: rephrase error messages habanalabs: Extract ECC information from FW habanalabs: remove soft-reset support from GAUDI habanalabs: halt device CPU only upon certain reset habanalabs: create common folder habanalabs: update hl_boot_if.h from firmware habanalabs: enable device before hw_init()
Ofir Bitton (11): habanalabs: Use pending CS amount per ASIC habanalabs: sync stream generic functionality habanalabs: Use mask instead of shift in sync stream registers habanalabs: Increase queues depth habanalabs: Add dropped cs statistics info struct habanalabs: PCIe iATU refactoring habanalabs: configure maximum queues per asic habanalabs: use queue pi/ci in order to determine queue occupancy habanalabs: Assign each CQ with its own work queue habanalabs: verify queue can contain all cs jobs habanalabs: create internal CB pool
Omer Shpigelman (2): habanalabs: rephrase error message habanalabs: remove unused hash
Tomer Tayar (2): habanalabs: use no flags on MMU cache invalidation habanalabs: Fix memory leak in error flow of context initialization
drivers/misc/habanalabs/Makefile | 11 +- drivers/misc/habanalabs/common/Makefile | 9 + drivers/misc/habanalabs/{ => common}/asid.c | 0 .../misc/habanalabs/{ => common}/command_buffer.c | 82 +- .../habanalabs/{ => common}/command_submission.c | 97 ++- drivers/misc/habanalabs/{ => common}/context.c | 39 +- drivers/misc/habanalabs/{ => common}/debugfs.c | 0 drivers/misc/habanalabs/{ => common}/device.c | 88 +- drivers/misc/habanalabs/{ => common}/firmware_if.c | 101 +-- drivers/misc/habanalabs/{ => common}/habanalabs.h | 172 ++-- .../misc/habanalabs/{ => common}/habanalabs_drv.c | 1 - .../habanalabs/{ => common}/habanalabs_ioctl.c | 24 + drivers/misc/habanalabs/{ => common}/hw_queue.c | 165 ++-- drivers/misc/habanalabs/{ => common}/hwmon.c | 0 drivers/misc/habanalabs/{ => common}/irq.c | 13 +- drivers/misc/habanalabs/{ => common}/memory.c | 3 +- drivers/misc/habanalabs/{ => common}/mmu.c | 1 - drivers/misc/habanalabs/{ => common}/pci.c | 136 ++-- drivers/misc/habanalabs/{ => common}/sysfs.c | 3 + drivers/misc/habanalabs/gaudi/Makefile | 2 +- drivers/misc/habanalabs/gaudi/gaudi.c | 894 ++++++++------------- drivers/misc/habanalabs/gaudi/gaudiP.h | 16 +- drivers/misc/habanalabs/gaudi/gaudi_coresight.c | 6 +- drivers/misc/habanalabs/goya/goya.c | 172 ++-- drivers/misc/habanalabs/goya/goyaP.h | 14 +- drivers/misc/habanalabs/goya/goya_coresight.c | 6 +- .../habanalabs/include/{ => common}/armcp_if.h | 14 +- .../habanalabs/include/{ => common}/hl_boot_if.h | 14 + .../misc/habanalabs/include/{ => common}/qman_if.h | 0 .../habanalabs/include/gaudi/asic_reg/gaudi_regs.h | 21 +- .../include/gaudi/asic_reg/psoc_cpu_pll_regs.h | 114 +++ .../misc/habanalabs/include/gaudi/gaudi_masks.h | 3 + .../misc/habanalabs/include/gaudi/gaudi_packets.h | 4 +- include/uapi/misc/habanalabs.h | 27 +- 34 files changed, 1260 insertions(+), 992 deletions(-) create mode 100644 drivers/misc/habanalabs/common/Makefile rename drivers/misc/habanalabs/{ => common}/asid.c (100%) rename drivers/misc/habanalabs/{ => common}/command_buffer.c (85%) rename drivers/misc/habanalabs/{ => common}/command_submission.c (92%) rename drivers/misc/habanalabs/{ => common}/context.c (84%) rename drivers/misc/habanalabs/{ => common}/debugfs.c (100%) rename drivers/misc/habanalabs/{ => common}/device.c (94%) rename drivers/misc/habanalabs/{ => common}/firmware_if.c (89%) rename drivers/misc/habanalabs/{ => common}/habanalabs.h (94%) rename drivers/misc/habanalabs/{ => common}/habanalabs_drv.c (99%) rename drivers/misc/habanalabs/{ => common}/habanalabs_ioctl.c (95%) rename drivers/misc/habanalabs/{ => common}/hw_queue.c (86%) rename drivers/misc/habanalabs/{ => common}/hwmon.c (100%) rename drivers/misc/habanalabs/{ => common}/irq.c (95%) rename drivers/misc/habanalabs/{ => common}/memory.c (99%) rename drivers/misc/habanalabs/{ => common}/mmu.c (99%) rename drivers/misc/habanalabs/{ => common}/pci.c (73%) rename drivers/misc/habanalabs/{ => common}/sysfs.c (99%) rename drivers/misc/habanalabs/include/{ => common}/armcp_if.h (98%) rename drivers/misc/habanalabs/include/{ => common}/hl_boot_if.h (84%) rename drivers/misc/habanalabs/include/{ => common}/qman_if.h (100%) create mode 100644 drivers/misc/habanalabs/include/gaudi/asic_reg/psoc_cpu_pll_regs.h
| |