| .. | .. |
|---|
| 338 | 338 | err = select_core_and_segment(dev, &offset); |
|---|
| 339 | 339 | if (likely(!err)) |
|---|
| 340 | 340 | writeb(value, bus->mmio + offset); |
|---|
| 341 | | - mmiowb(); |
|---|
| 342 | 341 | spin_unlock_irqrestore(&bus->bar_lock, flags); |
|---|
| 343 | 342 | } |
|---|
| 344 | 343 | |
|---|
| .. | .. |
|---|
| 352 | 351 | err = select_core_and_segment(dev, &offset); |
|---|
| 353 | 352 | if (likely(!err)) |
|---|
| 354 | 353 | writew(value, bus->mmio + offset); |
|---|
| 355 | | - mmiowb(); |
|---|
| 356 | 354 | spin_unlock_irqrestore(&bus->bar_lock, flags); |
|---|
| 357 | 355 | } |
|---|
| 358 | 356 | |
|---|
| .. | .. |
|---|
| 368 | 366 | writew((value & 0x0000FFFF), bus->mmio + offset); |
|---|
| 369 | 367 | writew(((value & 0xFFFF0000) >> 16), bus->mmio + offset + 2); |
|---|
| 370 | 368 | } |
|---|
| 371 | | - mmiowb(); |
|---|
| 372 | 369 | spin_unlock_irqrestore(&bus->bar_lock, flags); |
|---|
| 373 | 370 | } |
|---|
| 374 | 371 | |
|---|
| .. | .. |
|---|
| 424 | 421 | WARN_ON(1); |
|---|
| 425 | 422 | } |
|---|
| 426 | 423 | unlock: |
|---|
| 427 | | - mmiowb(); |
|---|
| 428 | 424 | spin_unlock_irqrestore(&bus->bar_lock, flags); |
|---|
| 429 | 425 | } |
|---|
| 430 | 426 | #endif /* CONFIG_SSB_BLOCKIO */ |
|---|