linux/Documentation
Oded Gabbay 639781dcab habanalabs/gaudi: add debugfs to DMA from the device
When trying to debug program, the user often needs to
dump large parts of the device's DRAM, which can reach to tens of GBs.
Because reading from the device's internal memory through the PCI BAR
is extremely slow, the debug can take hours.

Instead, we can provide the user to copy data through one of the DMA
engines. This will make the operation much faster.

Currently, only GAUDI is supported.

In GAUDI, we need to find a PCI DMA engine that is IDLE and set the
DMA as secured to be able to bypass our MMU as we currently don't
map the temporary buffer to the MMU.

Example bash one-line to dump entire HBM to file (~2 minutes):

for (( i=0x0; i < 0x800000000; i+=0x8000000 )); do \
printf '0x%x\n' $i | sudo tee /sys/kernel/debug/habanalabs/hl0/addr ; \
echo 0x8000000 | sudo tee /sys/kernel/debug/habanalabs/hl0/dma_size ; \
sudo cat /sys/kernel/debug/habanalabs/hl0/data_dma >> hbm.txt ; done

Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
2021-04-09 14:09:24 +03:00
..
ABI habanalabs/gaudi: add debugfs to DMA from the device 2021-04-09 14:09:24 +03:00
PCI Documentation: PCI: Add PCI endpoint NTB function user guide 2021-02-23 14:15:45 -06:00
RCU It has been a relatively quiet cycle in docsland. 2021-02-22 10:57:46 -08:00
accounting
admin-guide More new code for 5.12: 2021-02-28 11:45:25 -08:00
arm
arm64 arm64: kernel: disable CNP on Carmel 2021-03-25 10:00:23 +00:00
block block/bfq: update comments and default value in docs for fifo_expire 2021-03-02 11:25:38 -07:00
bpf
cdrom
core-api Merge branch 'akpm' (patches from Andrew) 2021-02-24 16:20:38 -08:00
cpu-freq
crypto
dev-tools kasan: clarify that only first bug is reported in HW_TAGS 2021-02-26 09:41:03 -08:00
devicetree Update extcon next for v5.13 2021-04-08 08:45:30 +02:00
doc-guide
driver-api Char/Misc driver patches for 5.12-rc1 2021-02-24 10:25:37 -08:00
fault-injection
fb
features Documentation: features: refresh feature list 2021-02-25 11:25:57 -07:00
filesystems Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2021-02-27 08:07:12 -08:00
firmware-guide
firmware_class
fpga Documentation: fpga: dfl: Add description for DFL UIO support 2021-03-28 14:58:18 +02:00
gpu drm: Use USB controller's DMA mask when importing dmabufs 2021-03-11 11:11:33 +01:00
hid
hwmon
i2c
ia64
ide
iio
infiniband
input
isdn
kbuild Kbuild updates for v5.12 2021-02-25 10:17:31 -08:00
kernel-hacking
leds
litmus-tests
livepatch
locking
m68k
maintainer
mhi
mips
misc-devices Documentation: misc-devices: Add Documentation for dw-xdata-pcie driver 2021-04-05 13:15:52 +02:00
netlabel
networking docs: networking: Fix a typo 2021-03-20 19:02:42 -07:00
nios2
nvdimm
openrisc
parisc
pcmcia
power It has been a relatively quiet cycle in docsland. 2021-02-22 10:57:46 -08:00
powerpc docs: powerpc: Fix tables in syscall64-abi.rst 2021-02-25 13:04:24 -07:00
process Merge git://git.kernel.org:/pub/scm/linux/kernel/git/netdev/net 2021-03-09 17:15:56 -08:00
riscv
s390
scheduler It has been a relatively quiet cycle in docsland. 2021-02-22 10:57:46 -08:00
scsi SCSI misc on 20210219 2021-02-22 10:24:58 -08:00
security Keyrings miscellany 2021-02-23 16:09:23 -08:00
sh
sound
sparc
sphinx
sphinx-static
spi
staging
target
timers
trace Char/Misc driver patches for 5.12-rc1 2021-02-24 10:25:37 -08:00
translations A handful of late-arriving documentation fixes, nothing all that notable. 2021-02-26 14:21:18 -08:00
usb
userspace-api Char/Misc driver patches for 5.12-rc1 2021-02-24 10:25:37 -08:00
virt documentation/kvm: additional explanations on KVM_SET_BOOT_CPU_ID 2021-03-19 05:31:32 -04:00
vm mm/debug_vm_pgtable/basic: add validation for dirtiness after write protect 2021-02-24 13:38:27 -08:00
w1
watchdog
x86
xtensa
.gitignore
COPYING-logo
Changes
CodingStyle
Kconfig
Makefile
SubmittingPatches
asm-annotations.rst
atomic_bitops.txt
atomic_t.txt
conf.py Fix unaesthetic indentation 2021-02-22 14:35:04 -07:00
docutils.conf
dontdiff
index.rst
logo.gif
memory-barriers.txt
watch_queue.rst