| From 98f716f999ecdd792d61e22e4e69ffa5419cf37b Mon Sep 17 00:00:00 2001 |
| From: Paul Gortmaker <paul.gortmaker@windriver.com> |
| Date: Sat, 22 Jan 2011 23:29:37 -0500 |
| Subject: [PATCH] fix sema in arm bcmring_dma |
| |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/arch/arm/mach-bcmring/dma.c b/arch/arm/mach-bcmring/dma.c |
| index cbda897..744edb0 100644 |
| --- a/arch/arm/mach-bcmring/dma.c |
| +++ b/arch/arm/mach-bcmring/dma.c |
| @@ -1573,7 +1573,7 @@ int dma_init_mem_map(DMA_MemMap_t *memMap) |
| { |
| memset(memMap, 0, sizeof(*memMap)); |
| |
| - init_MUTEX(&memMap->lock); |
| + sema_init(&memMap->lock, 1); |
| |
| return 0; |
| } |
| @@ -2225,6 +2225,8 @@ int dma_unmap(DMA_MemMap_t *memMap, /* Stores state information about the map */ |
| DMA_Region_t *region; |
| DMA_Segment_t *segment; |
| |
| + down(&memMap->lock); |
| + |
| for (regionIdx = 0; regionIdx < memMap->numRegionsUsed; regionIdx++) { |
| region = &memMap->region[regionIdx]; |
| |
| -- |
| 1.7.1.1 |
| |