dma-buf: add buffer mask to dma-buf container
authorCho KyongHo <pullip.cho@samsung.com>
Wed, 18 Apr 2018 13:24:20 +0000 (22:24 +0900)
committerhyesoo.yu <hyesoo.yu@samsung.com>
Tue, 29 May 2018 06:31:32 +0000 (15:31 +0900)
commit1b4af3728a3b94d7f46957d8bcb1fca979660c56
tree5822a5578ed82a9ea613976f09965d3848154817
parentdab21c320fea96f55fe8e1f0f6dd5239355900c6
dma-buf: add buffer mask to dma-buf container

Mask of dma-buf container is a bit-mask of buffers in the dma-buf
container. The bit order in the mask is the position of buffers in
the dma-buf container. LSB of the mask is the bit-mask of the buffer
0 in the dma-buf container.
The mask of a dma-buf container is zero on creation. This means that
all buffers in the dma-buf container are unmasked initially. Users
of dma-buf container can modify the mask of buffers later with the
following API functions/ioctl of dma-buf.
- dmabuf_container_set_mask()
- dmabuf_container_get_mask()
- DMA_BUF_IOCTL_CONTAINER_SET_MASK
- DMA_BUF_IOCTL_CONTAINER_GET_MASK

The mask of dma-buf container is not used by dma-buf container itself.
How to use the mask is entirely rely on the users. Users can configure
the activation information of buffers of a dma-buf container. Others
may use the mask to indicate buffers with special information.

Change-Id: I2cc7d68812c060ed4fabb50da89271d52ad01ddc
Signed-off-by: Cho KyongHo <pullip.cho@samsung.com>
drivers/dma-buf/dma-buf-container.c
drivers/dma-buf/dma-buf-container.h
drivers/dma-buf/dma-buf.c
include/linux/dma-buf-container.h
include/uapi/linux/dma-buf.h