dma-buf: heaps: qcom: import LKP.QCLINUX.1.0.r2-03800-kernel.0
JIRA: https://issues.redhat.com/browse/VROOM-34036
Here's an MR to enable the qcom dma-buf heap drivers. It depends on echanude/centos-stream-10!16 (merged)
It was tested with a custom tool of mine that will allocate and free a buffer, and optionally, map, read, write and check its content.
/ # ls /dev/dma_heap/
linux,cma qcom,secure-pixel qcom,system-uncached
qcom,secure-non-pixel qcom,system system
/ # test-dma-buf --no-map /dev/dma_heap/qcom,secure-non-pixel
1970-01-01T00:00:36.345817Z INFO test_dma_buf: Opening Heap /dev/dma_heap/qcom,secure-non-pixel
1970-01-01T00:00:36.345873Z INFO test_dma_buf: Allocating buffer of 8192
1970-01-01T00:00:36.345898Z INFO test_dma_buf: Freeing the buffer
/ # test-dma-buf --no-map /dev/dma_heap/qcom,secure-pixel
1970-01-01T00:00:47.214533Z INFO test_dma_buf: Opening Heap /dev/dma_heap/qcom,secure-pixel
1970-01-01T00:00:47.214600Z INFO test_dma_buf: Allocating buffer of 8192
1970-01-01T00:00:47.215406Z INFO test_dma_buf: Freeing the buffer
/ # test-dma-buf /dev/dma_heap/qcom,system
1970-01-01T00:01:01.884432Z INFO test_dma_buf: Opening Heap /dev/dma_heap/qcom,system
1970-01-01T00:01:01.884473Z INFO test_dma_buf: Allocating buffer of 8192
1970-01-01T00:01:01.884496Z INFO test_dma_buf: Mapping the buffer.
1970-01-01T00:01:01.884546Z INFO test_dma_buf: Zeroed buffer hash is 2b5073505a48fb4 (expected 2b5073505a48fb4)
1970-01-01T00:01:01.884589Z INFO test_dma_buf: Filled buffer hash is b746f89938b7b253 (expected b746f89938b7b253)
1970-01-01T00:01:01.884620Z INFO test_dma_buf: Zeroed buffer hash is 2b5073505a48fb4 (expected 2b5073505a48fb4)
1970-01-01T00:01:01.884631Z INFO test_dma_buf: Unmapping and freeing the buffer
/ # test-dma-buf /dev/dma_heap/qcom,system-uncached
1970-01-01T00:01:04.471515Z INFO test_dma_buf: Opening Heap /dev/dma_heap/qcom,system-uncached
1970-01-01T00:01:04.471585Z INFO test_dma_buf: Allocating buffer of 8192
1970-01-01T00:01:04.471612Z INFO test_dma_buf: Mapping the buffer.
1970-01-01T00:01:04.471658Z INFO test_dma_buf: Zeroed buffer hash is 2b5073505a48fb4 (expected 2b5073505a48fb4)
1970-01-01T00:01:04.471698Z INFO test_dma_buf: Filled buffer hash is b746f89938b7b253 (expected b746f89938b7b253)
1970-01-01T00:01:04.471733Z INFO test_dma_buf: Zeroed buffer hash is 2b5073505a48fb4 (expected 2b5073505a48fb4)
1970-01-01T00:01:04.471744Z INFO test_dma_buf: Unmapping and freeing the buffer