aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mtd/map.h
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2013-03-19 04:47:30 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-03-19 04:47:30 -0400
commit0d4a42f6bd298e826620585e766a154ab460617a (patch)
tree406d8f7778691d858dbe3e48e4bbb10e99c0a58a /include/linux/mtd/map.h
parentd62b4892f3d9f7dd2002e5309be10719d6805b0f (diff)
parenta937536b868b8369b98967929045f1df54234323 (diff)
Merge tag 'v3.9-rc3' into drm-intel-next-queued
Backmerge so that I can merge Imre Deak's coalesced sg entries fixes, which depend upon the new for_each_sg_page introduce in commit a321e91b6d73ed011ffceed384c40d2785cf723b Author: Imre Deak <imre.deak@intel.com> Date: Wed Feb 27 17:02:56 2013 -0800 lib/scatterlist: add simple page iterator The merge itself is just two trivial conflicts: Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'include/linux/mtd/map.h')
-rw-r--r--include/linux/mtd/map.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/linux/mtd/map.h b/include/linux/mtd/map.h
index f6eb4332ac92..4b02512e421c 100644
--- a/include/linux/mtd/map.h
+++ b/include/linux/mtd/map.h
@@ -245,6 +245,7 @@ struct map_info {
245 unsigned long pfow_base; 245 unsigned long pfow_base;
246 unsigned long map_priv_1; 246 unsigned long map_priv_1;
247 unsigned long map_priv_2; 247 unsigned long map_priv_2;
248 struct device_node *device_node;
248 void *fldrv_priv; 249 void *fldrv_priv;
249 struct mtd_chip_driver *fldrv; 250 struct mtd_chip_driver *fldrv;
250}; 251};
@@ -328,7 +329,7 @@ static inline int map_word_bitsset(struct map_info *map, map_word val1, map_word
328 329
329static inline map_word map_word_load(struct map_info *map, const void *ptr) 330static inline map_word map_word_load(struct map_info *map, const void *ptr)
330{ 331{
331 map_word r = {{0} }; 332 map_word r;
332 333
333 if (map_bankwidth_is_1(map)) 334 if (map_bankwidth_is_1(map))
334 r.x[0] = *(unsigned char *)ptr; 335 r.x[0] = *(unsigned char *)ptr;
@@ -342,6 +343,8 @@ static inline map_word map_word_load(struct map_info *map, const void *ptr)
342#endif 343#endif
343 else if (map_bankwidth_is_large(map)) 344 else if (map_bankwidth_is_large(map))
344 memcpy(r.x, ptr, map->bankwidth); 345 memcpy(r.x, ptr, map->bankwidth);
346 else
347 BUG();
345 348
346 return r; 349 return r;
347} 350}
@@ -391,7 +394,7 @@ static inline map_word map_word_ff(struct map_info *map)
391 394
392static inline map_word inline_map_read(struct map_info *map, unsigned long ofs) 395static inline map_word inline_map_read(struct map_info *map, unsigned long ofs)
393{ 396{
394 map_word uninitialized_var(r); 397 map_word r;
395 398
396 if (map_bankwidth_is_1(map)) 399 if (map_bankwidth_is_1(map))
397 r.x[0] = __raw_readb(map->virt + ofs); 400 r.x[0] = __raw_readb(map->virt + ofs);
@@ -425,6 +428,8 @@ static inline void inline_map_write(struct map_info *map, const map_word datum,
425#endif 428#endif
426 else if (map_bankwidth_is_large(map)) 429 else if (map_bankwidth_is_large(map))
427 memcpy_toio(map->virt+ofs, datum.x, map->bankwidth); 430 memcpy_toio(map->virt+ofs, datum.x, map->bankwidth);
431 else
432 BUG();
428 mb(); 433 mb();
429} 434}
430 435