static map_word octeon_flash_map_read(struct map_info *map, unsigned long ofs) { map_word r; down(&octeon_bootbus_sem); r = inline_map_read(map, ofs); up(&octeon_bootbus_sem); return r; }
static map_word bcm9XXXX_map_read(struct map_info *map, unsigned long ofs) { /* if it is 7401C0, then we need this workaround */ if(brcm_ebi_war) { map_word r; unsigned long flags; spin_lock_irqsave(&bcm9XXXX_lock, flags); *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; *(volatile unsigned long*)0xb0400b1c = 0xFFFF; r = inline_map_read(map, ofs); spin_unlock_irqrestore(&bcm9XXXX_lock, flags); return r; } else return inline_map_read(map, ofs); }
static map_word lf_read(struct map_info *map, unsigned long ofs) { struct latch_addr_flash_info *info; map_word datum; info = (struct latch_addr_flash_info *)map->map_priv_1; spin_lock(&info->lock); info->set_window(ofs, info->data); datum = inline_map_read(map, info->win_mask & ofs); spin_unlock(&info->lock); return datum; }
static map_word __xipram simple_map_read(struct map_info *map, unsigned long ofs) { return inline_map_read(map, ofs); }