Commit 54536c5c authored by Yi Li's avatar Yi Li Committed by Mike Frysinger

Blackfin: simplify SMP handling in SRAM code

There is no need to use {get,put}_cpu() when we already have a spinlock to
protect against multiple processors running simultaneously.
Signed-off-by: default avatarYi Li <yi.li@analog.com>
Signed-off-by: default avatarMike Frysinger <vapier@gentoo.org>
parent 0b39db28
...@@ -402,7 +402,7 @@ void *l1_data_A_sram_alloc(size_t size) ...@@ -402,7 +402,7 @@ void *l1_data_A_sram_alloc(size_t size)
void *addr; void *addr;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags);
...@@ -411,7 +411,6 @@ void *l1_data_A_sram_alloc(size_t size) ...@@ -411,7 +411,6 @@ void *l1_data_A_sram_alloc(size_t size)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags);
put_cpu();
pr_debug("Allocated address in l1_data_A_sram_alloc is 0x%lx+0x%lx\n", pr_debug("Allocated address in l1_data_A_sram_alloc is 0x%lx+0x%lx\n",
(long unsigned int)addr, size); (long unsigned int)addr, size);
...@@ -430,7 +429,7 @@ int l1_data_A_sram_free(const void *addr) ...@@ -430,7 +429,7 @@ int l1_data_A_sram_free(const void *addr)
int ret; int ret;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags);
...@@ -439,7 +438,6 @@ int l1_data_A_sram_free(const void *addr) ...@@ -439,7 +438,6 @@ int l1_data_A_sram_free(const void *addr)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags);
put_cpu();
return ret; return ret;
#else #else
...@@ -455,7 +453,7 @@ void *l1_data_B_sram_alloc(size_t size) ...@@ -455,7 +453,7 @@ void *l1_data_B_sram_alloc(size_t size)
void *addr; void *addr;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags);
...@@ -464,7 +462,6 @@ void *l1_data_B_sram_alloc(size_t size) ...@@ -464,7 +462,6 @@ void *l1_data_B_sram_alloc(size_t size)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags);
put_cpu();
pr_debug("Allocated address in l1_data_B_sram_alloc is 0x%lx+0x%lx\n", pr_debug("Allocated address in l1_data_B_sram_alloc is 0x%lx+0x%lx\n",
(long unsigned int)addr, size); (long unsigned int)addr, size);
...@@ -483,7 +480,7 @@ int l1_data_B_sram_free(const void *addr) ...@@ -483,7 +480,7 @@ int l1_data_B_sram_free(const void *addr)
int ret; int ret;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1_data_sram_lock, cpu), flags);
...@@ -492,7 +489,6 @@ int l1_data_B_sram_free(const void *addr) ...@@ -492,7 +489,6 @@ int l1_data_B_sram_free(const void *addr)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1_data_sram_lock, cpu), flags);
put_cpu();
return ret; return ret;
#else #else
...@@ -540,7 +536,7 @@ void *l1_inst_sram_alloc(size_t size) ...@@ -540,7 +536,7 @@ void *l1_inst_sram_alloc(size_t size)
void *addr; void *addr;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1_inst_sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1_inst_sram_lock, cpu), flags);
...@@ -549,7 +545,6 @@ void *l1_inst_sram_alloc(size_t size) ...@@ -549,7 +545,6 @@ void *l1_inst_sram_alloc(size_t size)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1_inst_sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1_inst_sram_lock, cpu), flags);
put_cpu();
pr_debug("Allocated address in l1_inst_sram_alloc is 0x%lx+0x%lx\n", pr_debug("Allocated address in l1_inst_sram_alloc is 0x%lx+0x%lx\n",
(long unsigned int)addr, size); (long unsigned int)addr, size);
...@@ -568,7 +563,7 @@ int l1_inst_sram_free(const void *addr) ...@@ -568,7 +563,7 @@ int l1_inst_sram_free(const void *addr)
int ret; int ret;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1_inst_sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1_inst_sram_lock, cpu), flags);
...@@ -577,7 +572,6 @@ int l1_inst_sram_free(const void *addr) ...@@ -577,7 +572,6 @@ int l1_inst_sram_free(const void *addr)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1_inst_sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1_inst_sram_lock, cpu), flags);
put_cpu();
return ret; return ret;
#else #else
...@@ -593,7 +587,7 @@ void *l1sram_alloc(size_t size) ...@@ -593,7 +587,7 @@ void *l1sram_alloc(size_t size)
void *addr; void *addr;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1sram_lock, cpu), flags);
...@@ -602,7 +596,6 @@ void *l1sram_alloc(size_t size) ...@@ -602,7 +596,6 @@ void *l1sram_alloc(size_t size)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1sram_lock, cpu), flags);
put_cpu();
return addr; return addr;
} }
...@@ -614,7 +607,7 @@ void *l1sram_alloc_max(size_t *psize) ...@@ -614,7 +607,7 @@ void *l1sram_alloc_max(size_t *psize)
void *addr; void *addr;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1sram_lock, cpu), flags);
...@@ -623,7 +616,6 @@ void *l1sram_alloc_max(size_t *psize) ...@@ -623,7 +616,6 @@ void *l1sram_alloc_max(size_t *psize)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1sram_lock, cpu), flags);
put_cpu();
return addr; return addr;
} }
...@@ -635,7 +627,7 @@ int l1sram_free(const void *addr) ...@@ -635,7 +627,7 @@ int l1sram_free(const void *addr)
int ret; int ret;
unsigned int cpu; unsigned int cpu;
cpu = get_cpu(); cpu = smp_processor_id();
/* add mutex operation */ /* add mutex operation */
spin_lock_irqsave(&per_cpu(l1sram_lock, cpu), flags); spin_lock_irqsave(&per_cpu(l1sram_lock, cpu), flags);
...@@ -644,7 +636,6 @@ int l1sram_free(const void *addr) ...@@ -644,7 +636,6 @@ int l1sram_free(const void *addr)
/* add mutex operation */ /* add mutex operation */
spin_unlock_irqrestore(&per_cpu(l1sram_lock, cpu), flags); spin_unlock_irqrestore(&per_cpu(l1sram_lock, cpu), flags);
put_cpu();
return ret; return ret;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment