mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH] dma: add function to check a buffer for proper DMA alignment
@ 2025-03-20 12:09 Sascha Hauer
  2025-03-20 12:37 ` Ahmad Fatoum
  0 siblings, 1 reply; 2+ messages in thread
From: Sascha Hauer @ 2025-03-20 12:09 UTC (permalink / raw)
  To: Barebox List

Add dma_map_buf_is_aligned() which can be used to check if a buffer is
sufficiently aligned for DMA.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 include/dma.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/dma.h b/include/dma.h
index 5877f4b13c..41eeacc478 100644
--- a/include/dma.h
+++ b/include/dma.h
@@ -141,4 +141,9 @@ void dma_free_coherent(struct device *dev, void *mem, dma_addr_t dma_handle, siz
 void *dma_alloc_writecombine(struct device *dev, size_t size, dma_addr_t *dma_handle);
 #endif
 
+static inline bool dma_map_buf_is_aligned(struct device *dev, void *buf, size_t size)
+{
+	return IS_ALIGNED((uintptr_t)buf, ARCH_DMA_MINALIGN) &&
+		IS_ALIGNED(size, ARCH_DMA_MINALIGN);
+}
 #endif /* __DMA_H */
-- 
2.39.5




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] dma: add function to check a buffer for proper DMA alignment
  2025-03-20 12:09 [PATCH] dma: add function to check a buffer for proper DMA alignment Sascha Hauer
@ 2025-03-20 12:37 ` Ahmad Fatoum
  0 siblings, 0 replies; 2+ messages in thread
From: Ahmad Fatoum @ 2025-03-20 12:37 UTC (permalink / raw)
  To: Sascha Hauer, Barebox List

Hello Sascha,

On 3/20/25 13:09, Sascha Hauer wrote:
> Add dma_map_buf_is_aligned() which can be used to check if a buffer is
> sufficiently aligned for DMA.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  include/dma.h | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/include/dma.h b/include/dma.h
> index 5877f4b13c..41eeacc478 100644
> --- a/include/dma.h
> +++ b/include/dma.h
> @@ -141,4 +141,9 @@ void dma_free_coherent(struct device *dev, void *mem, dma_addr_t dma_handle, siz
>  void *dma_alloc_writecombine(struct device *dev, size_t size, dma_addr_t *dma_handle);
>  #endif
>  
> +static inline bool dma_map_buf_is_aligned(struct device *dev, void *buf, size_t size)

const void *.

So we don't need to case twice; once here and once at dma_map time.

> +{
> +	return IS_ALIGNED((uintptr_t)buf, ARCH_DMA_MINALIGN) &&

PTR_IS_ALIGNED

Thanks,
Ahmad

> +		IS_ALIGNED(size, ARCH_DMA_MINALIGN);
> +}
>  #endif /* __DMA_H */




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-03-20 12:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-03-20 12:09 [PATCH] dma: add function to check a buffer for proper DMA alignment Sascha Hauer
2025-03-20 12:37 ` Ahmad Fatoum

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox