aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/crypto/mediatek/mtk-platform.h
diff options
context:
space:
mode:
authorRyder Lee <ryder.lee@mediatek.com>2017-03-08 21:11:15 -0500
committerHerbert Xu <herbert@gondor.apana.org.au>2017-03-16 05:58:53 -0400
commit3d21c41f7e9b51c70d37b316f11cf5cce9dd3311 (patch)
tree57a1fccf9f7d5e9399a2c8af74f4b9e743795249 /drivers/crypto/mediatek/mtk-platform.h
parent82445fe995f4b1edf131157a7328796d5aec1efb (diff)
crypto: mediatek - simplify descriptor ring management
This patch replaces cmd_pos/res_pos with pointer cmd_next/res_next. In old code, we must to add one to shift ring to the next segment, and then use this value to caculate current offset from ring base for each DMA operation. Now these pointers helps us to simplify flow, so we just need to move pointers and check the boundaries of ring. Signed-off-by: Ryder Lee <ryder.lee@mediatek.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/mediatek/mtk-platform.h')
-rw-r--r--drivers/crypto/mediatek/mtk-platform.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/crypto/mediatek/mtk-platform.h b/drivers/crypto/mediatek/mtk-platform.h
index 78ce54e136c5..218e30d1828a 100644
--- a/drivers/crypto/mediatek/mtk-platform.h
+++ b/drivers/crypto/mediatek/mtk-platform.h
@@ -84,11 +84,11 @@ struct mtk_desc {
84/** 84/**
85 * struct mtk_ring - Descriptor ring 85 * struct mtk_ring - Descriptor ring
86 * @cmd_base: pointer to command descriptor ring base 86 * @cmd_base: pointer to command descriptor ring base
87 * @cmd_next: pointer to the next command descriptor
87 * @cmd_dma: DMA address of command descriptor ring 88 * @cmd_dma: DMA address of command descriptor ring
88 * @cmd_pos: current position in the command descriptor ring
89 * @res_base: pointer to result descriptor ring base 89 * @res_base: pointer to result descriptor ring base
90 * @res_next: pointer to the next result descriptor
90 * @res_dma: DMA address of result descriptor ring 91 * @res_dma: DMA address of result descriptor ring
91 * @res_pos: current position in the result descriptor ring
92 * 92 *
93 * A descriptor ring is a circular buffer that is used to manage 93 * A descriptor ring is a circular buffer that is used to manage
94 * one or more descriptors. There are two type of descriptor rings; 94 * one or more descriptors. There are two type of descriptor rings;
@@ -96,11 +96,11 @@ struct mtk_desc {
96 */ 96 */
97struct mtk_ring { 97struct mtk_ring {
98 struct mtk_desc *cmd_base; 98 struct mtk_desc *cmd_base;
99 struct mtk_desc *cmd_next;
99 dma_addr_t cmd_dma; 100 dma_addr_t cmd_dma;
100 u32 cmd_pos;
101 struct mtk_desc *res_base; 101 struct mtk_desc *res_base;
102 struct mtk_desc *res_next;
102 dma_addr_t res_dma; 103 dma_addr_t res_dma;
103 u32 res_pos;
104}; 104};
105 105
106/** 106/**