| /linux/drivers/comedi/drivers/ |
| H A D | dt9812.c | 213 struct dt9812_rmw_byte rmw[DT9812_MAX_NUM_MULTI_BYTE_RMWS]; member 353 struct dt9812_rmw_byte *rmw) in dt9812_rmw_multiple_registers() argument 368 cmd->u.rmw_multi_info.rmw[i] = rmw[i]; in dt9812_rmw_multiple_registers() 415 struct dt9812_rmw_byte *rmw, int channel) in dt9812_configure_mux() argument 421 rmw->address = F020_SFR_P1; in dt9812_configure_mux() 422 rmw->and_mask = 0xe0; in dt9812_configure_mux() 423 rmw->or_value = channel << 5; in dt9812_configure_mux() 426 rmw->address = F020_SFR_AMX0SL; in dt9812_configure_mux() 427 rmw->and_mask = 0xff; in dt9812_configure_mux() 428 rmw->or_value = channel & 0x07; in dt9812_configure_mux() [all …]
|
| /linux/tools/memory-model/Documentation/ |
| H A D | herd-representation.txt | 17 # rmw, a Read-Modify-Write link - every rmw link is a po link 23 # lock.cat. For example, the po link between LKR and LKW is upgraded to an rmw 68 | atomic_add | R*[NORETURN] ->rmw W*[NORETURN] | 74 | atomic_add_return | R*[MB] ->rmw W*[MB] | 80 | atomic_add_return_relaxed | R*[ONCE] ->rmw W*[ONCE] | 86 | atomic_add_return_acquire | R*[ACQUIRE] ->rmw W*[ACQUIRE] | 92 | atomic_add_return_release | R*[RELEASE] ->rmw W*[RELEASE] | 101 | atomic_cmpxchg | On success: R*[MB] ->rmw W*[MB] | 105 | atomic_cmpxchg_relaxed | On success: R*[ONCE] ->rmw [all...] |
| H A D | explanation.txt | 25 17. ATOMIC UPDATES: rmw 975 ATOMIC UPDATES: rmw 978 What does it mean to say that a read-modify-write (rmw) update, such 1006 (R ->rmw W) implies (there is no X with R ->fr X and X ->co W), 1008 where the rmw relation links the read and write events making up each 1011 Atomic rmw updates play one more role in the LKMM: They can form "rmw 1012 sequences". An rmw sequence is simply a bunch of atomic updates where 1016 Z0 ->rf Y1 ->rmw Z1 ->rf ... ->rf Yn ->rmw Zn, 1019 degenerate case). We write this relation as: Z0 ->rmw-sequence Zn. 1025 U ->cumul-fence X -> rmw-sequence Y [all …]
|
| /linux/arch/arm/mach-omap2/ |
| H A D | voltagedomains54xx_data.c | 38 .rmw = omap4_prm_vcvp_rmw, 49 .rmw = omap4_prm_vcvp_rmw, 60 .rmw = omap4_prm_vcvp_rmw,
|
| H A D | voltagedomains44xx_data.c | 52 .rmw = omap4_prm_vcvp_rmw, 63 .rmw = omap4_prm_vcvp_rmw, 74 .rmw = omap4_prm_vcvp_rmw,
|
| H A D | voltagedomains3xxx_data.c | 53 .rmw = omap3_prm_vcvp_rmw, 64 .rmw = omap3_prm_vcvp_rmw,
|
| H A D | vc.c | 127 voltdm->rmw(CFG_CHANNEL_MASK << vc->cfg_channel_sa_shift, in omap_vc_config_channel() 765 voltdm->rmw(vc->common->i2c_cfg_clear_mask, in omap_vc_i2c_init() 771 voltdm->rmw(vc->common->i2c_mcode_mask, in omap_vc_i2c_init() 834 voltdm->rmw(vc->smps_sa_mask, in omap_vc_init_channel() 842 voltdm->rmw(vc->smps_volra_mask, in omap_vc_init_channel() 848 voltdm->rmw(vc->smps_cmdra_mask, in omap_vc_init_channel()
|
| H A D | voltage.h | 76 u32 (*rmw)(u32 mask, u32 bits, u8 offset); member
|
| /linux/tools/memory-model/ |
| H A D | lock.cat | 44 let lk-rmw = ([LKR] ; po-loc ; [LKW]) \ (po ; po) 45 let rmw = rmw | lk-rmw 48 flag ~empty LKW \ range(lk-rmw) as unpaired-LKW 49 flag ~empty LKR \ domain(lk-rmw) as unpaired-LKR 149 let rf = rf | ([IW | UL] ; singlestep(co) ; lk-rmw^-1)
|
| H A D | linux-kernel.cat | 83 empty rmw & (fre ; coe) as atomic 99 let rmw-sequence = (rf ; rmw)* 101 po-unlock-lock-po) ; [Marked] ; rmw-sequence 200 let w-post-bounded = fence? ; [Marked] ; rmw-sequence
|
| H A D | linux-kernel.bell | 44 let FailedRMW = RMW \ (domain(rmw) | range(rmw))
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7915/ |
| H A D | mmio.c | 428 dev->bus_ops->rmw(&dev->mt76, l1_remap, in mt7915_reg_map_l1() 445 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2, in mt7915_reg_map_l2() 457 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2_MT7916 + ofs, in mt7915_reg_map_l2() 571 return dev->bus_ops->rmw(mdev, addr, mask, val); in mt7915_rmw() 574 val = dev->bus_ops->rmw(mdev, __mt7915_reg_remap_addr(dev, offset), mask, val); in mt7915_rmw() 783 bus_ops->rmw = mt7915_rmw; in mt7915_mmio_init()
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7996/ |
| H A D | mmio.c | 299 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L1, l1_mask, val); in mt7996_reg_map_l1() 322 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L2, l2_mask, val); in mt7996_reg_map_l2() 334 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_CBTOP, in mt7996_reg_map_cbtop() 442 return dev->bus_ops->rmw(mdev, addr, mask, val); in mt7996_rmw() 445 val = dev->bus_ops->rmw(mdev, __mt7996_reg_remap_addr(dev, offset), mask, val); in mt7996_rmw() 685 bus_ops->rmw = mt7996_rmw; in mt7996_mmio_init()
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7925/ |
| H A D | pci.c | 89 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L1, in mt7925_reg_map_l1() 105 dev->bus_ops->rmw(&dev->mt76, MT_HIF_REMAP_L1, in mt7925_reg_map_l2() 316 return dev->bus_ops->rmw(mdev, addr, mask, val); in mt7925_rmw() 647 bus_ops->rmw = mt7925_rmw; in mt7925_pci_probe()
|
| H A D | usb.c | 178 .rmw = mt792xu_rmw, in mt7925u_probe()
|
| /linux/drivers/video/fbdev/ |
| H A D | vga16fb.c | 110 static inline void rmw(volatile char __iomem *p) in rmw() function 884 rmw(where); in vga_8planes_fillrect() 885 rmw(where+1); in vga_8planes_fillrect() 955 rmw(dst); in vga16fb_fillrect() 1207 rmw(dst); in vga_imageblit_expand() 1212 rmw(dst++); in vga_imageblit_expand()
|
| /linux/drivers/net/wireless/mediatek/mt76/mt7921/ |
| H A D | pci.c | 168 return dev->bus_ops->rmw(mdev, addr, mask, val); in mt7921_rmw() 396 bus_ops->rmw = mt7921_rmw; in mt7921_pci_probe() 628 .rmw = mt791_aer_rmw,
|
| /linux/drivers/net/wireless/mediatek/mt76/ |
| H A D | mmio.c | 114 .rmw = mt76_mmio_rmw, in mt76_mmio_init()
|
| H A D | mt792x_usb.c | 77 .rmw = mt792xu_bus_hung_rmw,
|
| H A D | mt76.h | 98 u32 (*rmw)(struct mt76_dev *dev, u32 offset, u32 mask, u32 val); member 1189 #define __mt76_rmw(dev, ...) (dev)->bus->rmw((dev), __VA_ARGS__) 1198 #define mt76_rmw(dev, ...) (dev)->mt76.bus->rmw(&((dev)->mt76), __VA_ARGS__)
|
| H A D | usb.c | 1188 .rmw = mt76u_rmw, in mt76u_init()
|
| /linux/drivers/net/wireless/ath/ |
| H A D | ath.h | 133 u32 (*rmw)(void *, u32 reg_offset, u32 set, u32 clr); member
|
| /linux/fs/ceph/ |
| H A D | file.c | 1800 bool rmw; in ceph_sync_write() local 1825 rmw = first || last; in ceph_sync_write() 1829 rmw ? "" : "no "); in ceph_sync_write() 1843 if (rmw) { in ceph_sync_write() 2060 rmw ? 1 : 0, rmw ? 2 : 1, in ceph_sync_write() 2072 osd_req_op_extent_osd_data_pages(req, rmw ? 1 : 0, pages, write_len, in ceph_sync_write() 2079 if (rmw) { in ceph_sync_write() 2112 WARN_ON_ONCE(!rmw); in ceph_sync_write()
|
| /linux/drivers/md/ |
| H A D | raid5.c | 4191 int rmw = 0, rcw = 0, i; in handle_stripe_dirtying() local 4208 rcw = 1; rmw = 2; in handle_stripe_dirtying() 4215 rcw = 1; rmw = 2; in handle_stripe_dirtying() 4228 rmw++; in handle_stripe_dirtying() 4230 rmw += 2*disks; /* cannot read it */ in handle_stripe_dirtying() 4246 (unsigned long long)sh->sector, sh->state, rmw, rcw); in handle_stripe_dirtying() 4248 if ((rmw < rcw || (rmw == rcw && conf->rmw_level == PARITY_PREFER_RMW)) && rmw > 0) { in handle_stripe_dirtying() 4251 sh->sector, rmw); in handle_stripe_dirtying() 4304 if ((rcw < rmw || (rcw == rmw && conf->rmw_level != PARITY_PREFER_RMW)) && rcw > 0) { in handle_stripe_dirtying() 4336 if (rcw > disks && rmw > disks && in handle_stripe_dirtying() [all …]
|