aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/sh/kernel/early_printk.c2
-rw-r--r--arch/sh/kernel/machvec.c7
-rw-r--r--arch/sh/kernel/ptrace.c1
-rw-r--r--include/asm-sh/dma-mapping.h19
4 files changed, 28 insertions, 1 deletions
diff --git a/arch/sh/kernel/early_printk.c b/arch/sh/kernel/early_printk.c
index 9833493d88..80b637c302 100644
--- a/arch/sh/kernel/early_printk.c
+++ b/arch/sh/kernel/early_printk.c
@@ -76,7 +76,7 @@ static void scif_sercon_putc(int c)
76 sci_in(&scif_port, SCxSR); 76 sci_in(&scif_port, SCxSR);
77 sci_out(&scif_port, SCxSR, 0xf3 & ~(0x20 | 0x40)); 77 sci_out(&scif_port, SCxSR, 0xf3 & ~(0x20 | 0x40));
78 78
79 while ((sci_in(&scif_port, SCxSR) & 0x40) == 0); 79 while ((sci_in(&scif_port, SCxSR) & 0x40) == 0)
80 ; 80 ;
81 81
82 if (c == '\n') 82 if (c == '\n')
diff --git a/arch/sh/kernel/machvec.c b/arch/sh/kernel/machvec.c
index 23c5948f01..129b2cfd18 100644
--- a/arch/sh/kernel/machvec.c
+++ b/arch/sh/kernel/machvec.c
@@ -91,6 +91,13 @@ void __init sh_mv_setup(void)
91 (unsigned long)&__machvec_start); 91 (unsigned long)&__machvec_start);
92 92
93 /* 93 /*
94 * Sanity check for machvec section alignment. Ensure
95 * __initmv hasn't been misused.
96 */
97 if (machvec_size % sizeof(struct sh_machine_vector))
98 panic("machvec misaligned, invalid __initmv use?");
99
100 /*
94 * If the machvec hasn't been preselected, use the first 101 * If the machvec hasn't been preselected, use the first
95 * vector (usually the only one) from .machvec.init. 102 * vector (usually the only one) from .machvec.init.
96 */ 103 */
diff --git a/arch/sh/kernel/ptrace.c b/arch/sh/kernel/ptrace.c
index 891d1d46c9..f64a2d2416 100644
--- a/arch/sh/kernel/ptrace.c
+++ b/arch/sh/kernel/ptrace.c
@@ -93,6 +93,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data)
93 case PTRACE_PEEKTEXT: /* read word at location addr. */ 93 case PTRACE_PEEKTEXT: /* read word at location addr. */
94 case PTRACE_PEEKDATA: 94 case PTRACE_PEEKDATA:
95 ret = generic_ptrace_peekdata(child, addr, data); 95 ret = generic_ptrace_peekdata(child, addr, data);
96 break;
96 97
97 /* read the word at location addr in the USER area. */ 98 /* read the word at location addr in the USER area. */
98 case PTRACE_PEEKUSR: { 99 case PTRACE_PEEKUSR: {
diff --git a/include/asm-sh/dma-mapping.h b/include/asm-sh/dma-mapping.h
index 6f492ac3fa..84fefdaa01 100644
--- a/include/asm-sh/dma-mapping.h
+++ b/include/asm-sh/dma-mapping.h
@@ -160,6 +160,25 @@ static inline void dma_sync_single_for_device(struct device *dev,
160 dma_sync_single(dev, dma_handle, size, dir); 160 dma_sync_single(dev, dma_handle, size, dir);
161} 161}
162 162
163static inline void dma_sync_single_range_for_cpu(struct device *dev,
164 dma_addr_t dma_handle,
165 unsigned long offset,
166 size_t size,
167 enum dma_data_direction direction)
168{
169 dma_sync_single_for_cpu(dev, dma_handle+offset, size, direction);
170}
171
172static inline void dma_sync_single_range_for_device(struct device *dev,
173 dma_addr_t dma_handle,
174 unsigned long offset,
175 size_t size,
176 enum dma_data_direction direction)
177{
178 dma_sync_single_for_device(dev, dma_handle+offset, size, direction);
179}
180
181
163static inline void dma_sync_sg_for_cpu(struct device *dev, 182static inline void dma_sync_sg_for_cpu(struct device *dev,
164 struct scatterlist *sg, int nelems, 183 struct scatterlist *sg, int nelems,
165 enum dma_data_direction dir) 184 enum dma_data_direction dir)