arch/alpha/include/asm/err_ev7.h
181
struct ev7_pal_io_subpacket io; /* Type 7 */
arch/alpha/include/asm/err_ev7.h
195
struct ev7_pal_io_subpacket *io; /* Type 7 */
arch/alpha/include/asm/floppy.h
35
#define fd_dma_setup(addr,size,mode,io) alpha_fd_dma_setup(addr,size,mode,io)
arch/alpha/include/asm/floppy.h
38
alpha_fd_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/alpha/include/asm/floppy.h
68
virtual_dma_port = io;
arch/alpha/kernel/core_mcpcia.c
292
struct resource *io, *mem, *hae_mem;
arch/alpha/kernel/core_mcpcia.c
298
io = alloc_resource();
arch/alpha/kernel/core_mcpcia.c
302
hose->io_space = io;
arch/alpha/kernel/core_mcpcia.c
311
io->start = MCPCIA_IO(mid) - MCPCIA_IO_BIAS;
arch/alpha/kernel/core_mcpcia.c
312
io->end = io->start + 0xffff;
arch/alpha/kernel/core_mcpcia.c
313
io->name = pci_io_names[h];
arch/alpha/kernel/core_mcpcia.c
314
io->flags = IORESOURCE_IO;
arch/alpha/kernel/core_mcpcia.c
326
if (request_resource(&ioport_resource, io) < 0)
arch/alpha/kernel/err_ev7.c
93
lf_subpackets->io = (struct ev7_pal_io_subpacket *)
arch/alpha/kernel/err_marvel.c
1000
&io->ports[i]);
arch/alpha/kernel/err_marvel.c
1111
if (!lf_subpackets->io)
arch/alpha/kernel/err_marvel.c
1112
lf_subpackets->io = &scratch_io_packet;
arch/alpha/kernel/err_marvel.c
331
marvel_print_po7_err_sum(struct ev7_pal_io_subpacket *io)
arch/alpha/kernel/err_marvel.c
371
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_SBE) {
arch/alpha/kernel/err_marvel.c
374
(io->po7_error_sum & IO7__PO7_ERRSUM__CR_SBE2)
arch/alpha/kernel/err_marvel.c
376
marvel_print_po7_crrct_sym(io->po7_crrct_sym);
arch/alpha/kernel/err_marvel.c
382
if (io->po7_error_sum & IO7__PO7_ERRSUM__HLT_INT)
arch/alpha/kernel/err_marvel.c
384
if (io->po7_error_sum & IO7__PO7_ERRSUM__HP_INT) {
arch/alpha/kernel/err_marvel.c
389
if (io->po7_error_sum & IO7__PO7_ERRSUM__CRD_INT)
arch/alpha/kernel/err_marvel.c
392
if (io->po7_error_sum & IO7__PO7_ERRSUM__STV_INT) {
arch/alpha/kernel/err_marvel.c
396
if (io->po7_error_sum & IO7__PO7_ERRSUM__HRD_INT) {
arch/alpha/kernel/err_marvel.c
405
if (!(io->po7_error_sum & IO7__PO7_ERRSUM__ERR_VALID))
arch/alpha/kernel/err_marvel.c
416
if (!(io->po7_error_sum & (IO7__PO7_ERRSUM__CR_PIO_WBYTE |
arch/alpha/kernel/err_marvel.c
423
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_PIO_WBYTE)
arch/alpha/kernel/err_marvel.c
425
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_CSR_NXM)
arch/alpha/kernel/err_marvel.c
427
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_RPID_ACV)
arch/alpha/kernel/err_marvel.c
430
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_RSP_NXM)
arch/alpha/kernel/err_marvel.c
433
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_ERR_RESP)
arch/alpha/kernel/err_marvel.c
435
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_CLK_DERR)
arch/alpha/kernel/err_marvel.c
437
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_DAT_DBE)
arch/alpha/kernel/err_marvel.c
440
if (io->po7_error_sum & IO7__PO7_ERRSUM__CR_DAT_GRBG)
arch/alpha/kernel/err_marvel.c
443
if (io->po7_error_sum & IO7__PO7_ERRSUM__UGBGE) {
arch/alpha/kernel/err_marvel.c
446
marvel_print_po7_ugbge_sym(io->po7_ugbge_sym);
arch/alpha/kernel/err_marvel.c
448
if (io->po7_error_sum & IO7__PO7_ERRSUM__UN_MAF_LOST)
arch/alpha/kernel/err_marvel.c
451
if (io->po7_error_sum & IO7__PO7_ERRSUM__UN_PKT_OVF)
arch/alpha/kernel/err_marvel.c
453
if (io->po7_error_sum & IO7__PO7_ERRSUM__UN_CDT_OVF)
arch/alpha/kernel/err_marvel.c
455
if (io->po7_error_sum & IO7__PO7_ERRSUM__UN_DEALLOC)
arch/alpha/kernel/err_marvel.c
462
if (io->po7_error_sum & IO7__PO7_ERRSUM__MAF_TO)
arch/alpha/kernel/err_marvel.c
465
if (io->po7_error_sum & IO7__PO7_ERRSUM__BH_CDT_TO)
arch/alpha/kernel/err_marvel.c
467
if (io->po7_error_sum & IO7__PO7_ERRSUM__BH_CLK_HDR)
arch/alpha/kernel/err_marvel.c
470
if (io->po7_error_sum & IO7__PO7_ERRSUM__BH_DBE_HDR)
arch/alpha/kernel/err_marvel.c
473
if (io->po7_error_sum & IO7__PO7_ERRSUM__BH_GBG_HDR)
arch/alpha/kernel/err_marvel.c
476
if (io->po7_error_sum & IO7__PO7_ERRSUM__BH_BAD_CMD)
arch/alpha/kernel/err_marvel.c
480
if (io->po7_error_sum & IO7__PO7_ERRSUM__ERR_LST)
arch/alpha/kernel/err_marvel.c
487
err_print_prefix, io->po7_err_pkt0,
arch/alpha/kernel/err_marvel.c
488
err_print_prefix, io->po7_err_pkt1);
arch/alpha/kernel/err_marvel.c
495
marvel_print_po7_uncrr_sym(io->po7_uncrr_sym, uncrr_sym_valid);
arch/alpha/kernel/err_marvel.c
800
struct ev7_pal_io_subpacket *io = lf_subpackets->io;
arch/alpha/kernel/err_marvel.c
807
if (!io)
arch/alpha/kernel/err_marvel.c
813
memset(io, 0x55, sizeof(*io));
arch/alpha/kernel/err_marvel.c
843
io->io_asic_rev = io7->csrs->IO_ASIC_REV.csr;
arch/alpha/kernel/err_marvel.c
844
io->io_sys_rev = io7->csrs->IO_SYS_REV.csr;
arch/alpha/kernel/err_marvel.c
845
io->io7_uph = io7->csrs->IO7_UPH.csr;
arch/alpha/kernel/err_marvel.c
846
io->hpi_ctl = io7->csrs->HPI_CTL.csr;
arch/alpha/kernel/err_marvel.c
847
io->crd_ctl = io7->csrs->CRD_CTL.csr;
arch/alpha/kernel/err_marvel.c
848
io->hei_ctl = io7->csrs->HEI_CTL.csr;
arch/alpha/kernel/err_marvel.c
849
io->po7_error_sum = io7->csrs->PO7_ERROR_SUM.csr;
arch/alpha/kernel/err_marvel.c
850
io->po7_uncrr_sym = io7->csrs->PO7_UNCRR_SYM.csr;
arch/alpha/kernel/err_marvel.c
851
io->po7_crrct_sym = io7->csrs->PO7_CRRCT_SYM.csr;
arch/alpha/kernel/err_marvel.c
852
io->po7_ugbge_sym = io7->csrs->PO7_UGBGE_SYM.csr;
arch/alpha/kernel/err_marvel.c
853
io->po7_err_pkt0 = io7->csrs->PO7_ERR_PKT[0].csr;
arch/alpha/kernel/err_marvel.c
854
io->po7_err_pkt1 = io7->csrs->PO7_ERR_PKT[1].csr;
arch/alpha/kernel/err_marvel.c
862
io->ports[i].pox_err_sum = csrs->POx_ERR_SUM.csr;
arch/alpha/kernel/err_marvel.c
863
io->ports[i].pox_tlb_err = csrs->POx_TLB_ERR.csr;
arch/alpha/kernel/err_marvel.c
864
io->ports[i].pox_spl_cmplt = csrs->POx_SPL_COMPLT.csr;
arch/alpha/kernel/err_marvel.c
865
io->ports[i].pox_trans_sum = csrs->POx_TRANS_SUM.csr;
arch/alpha/kernel/err_marvel.c
866
io->ports[i].pox_first_err = csrs->POx_FIRST_ERR.csr;
arch/alpha/kernel/err_marvel.c
867
io->ports[i].pox_mult_err = csrs->POx_MULT_ERR.csr;
arch/alpha/kernel/err_marvel.c
868
io->ports[i].pox_dm_source = csrs->POx_DM_SOURCE.csr;
arch/alpha/kernel/err_marvel.c
869
io->ports[i].pox_dm_dest = csrs->POx_DM_DEST.csr;
arch/alpha/kernel/err_marvel.c
870
io->ports[i].pox_dm_size = csrs->POx_DM_SIZE.csr;
arch/alpha/kernel/err_marvel.c
871
io->ports[i].pox_dm_ctrl = csrs->POx_DM_CTRL.csr;
arch/alpha/kernel/err_marvel.c
881
csrs->POx_TLB_ERR.csr = io->ports[i].pox_tlb_err;
arch/alpha/kernel/err_marvel.c
882
csrs->POx_ERR_SUM.csr = io->ports[i].pox_err_sum;
arch/alpha/kernel/err_marvel.c
890
io7->csrs->PO7_ERROR_SUM.csr = io->po7_error_sum;
arch/alpha/kernel/err_marvel.c
899
return io;
arch/alpha/kernel/err_marvel.c
908
struct ev7_pal_io_subpacket *io = lf_subpackets->io;
arch/alpha/kernel/err_marvel.c
914
if (!lf_subpackets->logout || !lf_subpackets->io)
arch/alpha/kernel/err_marvel.c
933
if ((lf_subpackets->io->po7_error_sum & (1UL << 32)) ||
arch/alpha/kernel/err_marvel.c
934
((lf_subpackets->io->po7_error_sum |
arch/alpha/kernel/err_marvel.c
935
lf_subpackets->io->ports[0].pox_err_sum |
arch/alpha/kernel/err_marvel.c
936
lf_subpackets->io->ports[1].pox_err_sum |
arch/alpha/kernel/err_marvel.c
937
lf_subpackets->io->ports[2].pox_err_sum |
arch/alpha/kernel/err_marvel.c
938
lf_subpackets->io->ports[3].pox_err_sum) & (1UL << 63))) {
arch/alpha/kernel/err_marvel.c
964
if (lf_subpackets->io->po7_error_sum & IO7__PO7_ERRSUM__ERR_MASK) {
arch/alpha/kernel/err_marvel.c
965
marvel_print_po7_err_sum(io);
arch/alpha/kernel/err_marvel.c
976
err_print_prefix, io->po7_error_sum,
arch/alpha/kernel/err_marvel.c
977
err_print_prefix, io->po7_uncrr_sym,
arch/alpha/kernel/err_marvel.c
978
err_print_prefix, io->po7_crrct_sym,
arch/alpha/kernel/err_marvel.c
979
err_print_prefix, io->po7_ugbge_sym,
arch/alpha/kernel/err_marvel.c
980
err_print_prefix, io->po7_err_pkt0,
arch/alpha/kernel/err_marvel.c
981
err_print_prefix, io->po7_err_pkt1);
arch/alpha/kernel/err_marvel.c
989
if (!MARVEL_IO_ERR_VALID(io->ports[i].pox_err_sum))
arch/alpha/kernel/err_marvel.c
994
lf_subpackets->io_pid, i, io->ports[i].pox_err_sum);
arch/alpha/kernel/err_marvel.c
995
marvel_print_pox_err(io->ports[i].pox_err_sum, &io->ports[i]);
arch/alpha/kernel/err_marvel.c
998
err_print_prefix, io->ports[i].pox_first_err);
arch/alpha/kernel/err_marvel.c
999
marvel_print_pox_err(io->ports[i].pox_first_err,
arch/alpha/kernel/setup.c
223
struct resource *io = &ioport_resource;
arch/alpha/kernel/setup.c
230
io = hose->io_space;
arch/alpha/kernel/setup.c
236
request_resource(io, standard_io_resources+i);
arch/arm/include/asm/io.h
436
extern void register_isa_ports(unsigned int mmio, unsigned int io,
arch/arm/mach-mvebu/kirkwood.c
102
io = of_iomap(pnp, 0);
arch/arm/mach-mvebu/kirkwood.c
103
if (!io)
arch/arm/mach-mvebu/kirkwood.c
123
reg = readl(io + MV643XX_ETH_MAC_ADDR_HIGH);
arch/arm/mach-mvebu/kirkwood.c
129
reg = readl(io + MV643XX_ETH_MAC_ADDR_LOW);
arch/arm/mach-mvebu/kirkwood.c
136
iounmap(io);
arch/arm/mach-mvebu/kirkwood.c
86
void __iomem *io;
arch/arm/mm/pmsa-v8.c
252
add_range(io, ARRAY_SIZE(io), 0, 0, 0xffffffff);
arch/arm/mm/pmsa-v8.c
256
subtract_range(io, ARRAY_SIZE(io), __pa(KERNEL_START), __pa(KERNEL_END));
arch/arm/mm/pmsa-v8.c
261
subtract_range(io, ARRAY_SIZE(io), CONFIG_XIP_PHYS_ADDR, __pa(_exiprom));
arch/arm/mm/pmsa-v8.c
267
subtract_range(io, ARRAY_SIZE(io), vectors_base, vectors_base + 2 * PAGE_SIZE);
arch/arm/mm/pmsa-v8.c
271
subtract_range(io, ARRAY_SIZE(io), mem[i].start, mem[i].end);
arch/arm/mm/pmsa-v8.c
284
for (i = 0; i < ARRAY_SIZE(io); i++) {
arch/arm/mm/pmsa-v8.c
285
if (!io[i].end)
arch/arm/mm/pmsa-v8.c
288
err |= pmsav8_setup_io(region++, io[i].start, io[i].end);
arch/arm/mm/pmsa-v8.c
78
static struct range __initdata io[MPU_MAX_REGIONS];
arch/m68k/include/asm/floppy.h
103
#define fd_dma_setup(addr, size, mode, io) vdma_dma_setup(addr, size, mode, io)
arch/m68k/include/asm/floppy.h
155
static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/m68k/include/asm/floppy.h
158
virtual_dma_port = (MACH_IS_Q40 ? io : 0);
arch/mips/alchemy/common/dma.c
184
chan->io = (void __iomem *)(KSEG1ADDR(AU1000_DMA_PHYS_ADDR) +
arch/mips/include/asm/mach-au1x00/au1000_dma.h
109
void __iomem *io;
arch/mips/include/asm/mach-au1x00/au1000_dma.h
159
__raw_writel(DMA_BE0, chan->io + DMA_MODE_SET);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
168
__raw_writel(DMA_BE1, chan->io + DMA_MODE_SET);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
176
__raw_writel(DMA_BE0 | DMA_BE1, chan->io + DMA_MODE_SET);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
185
__raw_writel(DMA_GO, chan->io + DMA_MODE_SET);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
197
__raw_writel(DMA_GO, chan->io + DMA_MODE_CLEAR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
201
if (__raw_readl(chan->io + DMA_MODE_READ) & DMA_HALT)
arch/mips/include/asm/mach-au1x00/au1000_dma.h
217
__raw_writel(~DMA_GO, chan->io + DMA_MODE_CLEAR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
226
return (__raw_readl(chan->io + DMA_MODE_READ) & DMA_HALT) ? 1 : 0;
arch/mips/include/asm/mach-au1x00/au1000_dma.h
241
__raw_writel(CPHYSADDR(chan->fifo_addr), chan->io + DMA_PERIPHERAL_ADDR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
247
__raw_writel(~mode, chan->io + DMA_MODE_CLEAR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
248
__raw_writel(mode, chan->io + DMA_MODE_SET);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
285
return (__raw_readl(chan->io + DMA_MODE_READ) & DMA_AB) ? 1 : 0;
arch/mips/include/asm/mach-au1x00/au1000_dma.h
306
__raw_writel(CPHYSADDR(a), chan->io + DMA_PERIPHERAL_ADDR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
318
__raw_writel(DMA_D0, chan->io + DMA_MODE_CLEAR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
327
__raw_writel(DMA_D1, chan->io + DMA_MODE_CLEAR);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
346
__raw_writel(a, chan->io + DMA_BUFFER0_START);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
358
__raw_writel(a, chan->io + DMA_BUFFER1_START);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
372
__raw_writel(count, chan->io + DMA_BUFFER0_COUNT);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
385
__raw_writel(count, chan->io + DMA_BUFFER1_COUNT);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
398
__raw_writel(count, chan->io + DMA_BUFFER0_COUNT);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
399
__raw_writel(count, chan->io + DMA_BUFFER1_COUNT);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
412
return __raw_readl(chan->io + DMA_MODE_READ) & (DMA_D0 | DMA_D1);
arch/mips/include/asm/mach-au1x00/au1000_dma.h
439
curBufCntReg = (__raw_readl(chan->io + DMA_MODE_READ) & DMA_AB) ?
arch/mips/include/asm/mach-au1x00/au1000_dma.h
442
count = __raw_readl(chan->io + curBufCntReg) & DMA_COUNT_MASK;
arch/mips/include/asm/octeon/cvmx-ciu3-defs.h
170
uint64_t io : 5;
arch/mips/include/asm/octeon/cvmx-ciu3-defs.h
172
uint64_t io : 5;
arch/mips/lantiq/clk.c
30
unsigned long io, unsigned long ppe)
arch/mips/lantiq/clk.c
34
cpu_clk_generic[2].rate = io;
arch/mips/lantiq/clk.h
73
unsigned long io, unsigned long ppe);
arch/mips/pci/pci-octeon.c
264
pci_addr.s.io = 1;
arch/mips/pci/pci-octeon.c
298
pci_addr.s.io = 1;
arch/mips/pci/pci-octeon.c
47
uint64_t io:1;
arch/mips/pci/pci-xtalk-bridge.c
654
pci_add_resource_offset(&host->windows, &bd->io, bd->io_offset);
arch/mips/pci/pcie-octeon.c
109
pcie_addr.io.upper = 0;
arch/mips/pci/pcie-octeon.c
110
pcie_addr.io.io = 1;
arch/mips/pci/pcie-octeon.c
111
pcie_addr.io.did = 3;
arch/mips/pci/pcie-octeon.c
112
pcie_addr.io.subdid = 2;
arch/mips/pci/pcie-octeon.c
113
pcie_addr.io.es = 1;
arch/mips/pci/pcie-octeon.c
114
pcie_addr.io.port = pcie_port;
arch/mips/pci/pcie-octeon.c
144
pcie_addr.mem.io = 1;
arch/mips/pci/pcie-octeon.c
247
pcie_addr.config.io = 1;
arch/mips/pci/pcie-octeon.c
45
uint64_t io:1; /* 1 for IO space access */
arch/mips/pci/pcie-octeon.c
76
uint64_t io:1; /* 1 for IO space access */
arch/mips/pci/pcie-octeon.c
83
} io;
arch/mips/pci/pcie-octeon.c
87
uint64_t io:1; /* 1 for IO space access */
arch/mips/sgi-ip27/ip27-xtalk.c
95
bd->io.name = "Bridge PCI IO";
arch/mips/sgi-ip27/ip27-xtalk.c
96
bd->io.start = offset + (widget << SWIN_SIZE_BITS) + BRIDGE_DEVIO0;
arch/mips/sgi-ip27/ip27-xtalk.c
97
bd->io.end = offset + (widget << SWIN_SIZE_BITS) + SWIN_SIZE - 1;
arch/mips/sgi-ip27/ip27-xtalk.c
98
bd->io.flags = IORESOURCE_IO;
arch/mips/sgi-ip30/ip30-xtalk.c
104
bd->io.name = "Bridge PCI IO";
arch/mips/sgi-ip30/ip30-xtalk.c
105
bd->io.start = IP30_SWIN_BASE(widget) + BRIDGE_DEVIO0;
arch/mips/sgi-ip30/ip30-xtalk.c
106
bd->io.end = IP30_SWIN_BASE(widget) + IP30_SWIN_SIZE - 1;
arch/mips/sgi-ip30/ip30-xtalk.c
107
bd->io.flags = IORESOURCE_IO;
arch/parisc/include/asm/floppy.h
192
static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/parisc/include/asm/floppy.h
195
virtual_dma_port = io;
arch/parisc/include/asm/floppy.h
203
static int hard_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/parisc/include/asm/floppy.h
226
int (*_dma_setup)(char *addr, unsigned long size, int mode, int io);
arch/parisc/include/asm/floppy.h
39
#define fd_dma_setup(addr, size, mode, io) SW._dma_setup(addr, size, mode, io)
arch/powerpc/boot/cuboot-pq2.c
123
*io = NULL, *mem_base = NULL;
arch/powerpc/boot/cuboot-pq2.c
166
io = &pci_ranges_buf[i];
arch/powerpc/boot/cuboot-pq2.c
169
if (!mem || !mmio || !io)
arch/powerpc/boot/cuboot-pq2.c
175
if (io->size[1] & (io->size[1] - 1))
arch/powerpc/boot/cuboot-pq2.c
188
out_be32(&pci_regs[1][1], io->phys_addr | 1);
arch/powerpc/boot/cuboot-pq2.c
189
out_be32(&pci_regs[2][1], ~(io->size[1] - 1));
arch/powerpc/boot/cuboot-pq2.c
199
out_le32(&pci_regs[0][12], io->pci_addr[1] >> 12);
arch/powerpc/boot/cuboot-pq2.c
200
out_le32(&pci_regs[0][14], io->phys_addr >> 12);
arch/powerpc/boot/cuboot-pq2.c
201
out_le32(&pci_regs[0][16], (~(io->size[1] - 1) >> 12) | 0xc0000000);
arch/powerpc/include/asm/floppy.h
117
static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/powerpc/include/asm/floppy.h
120
virtual_dma_port = io;
arch/powerpc/include/asm/floppy.h
128
static int hard_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/powerpc/include/asm/floppy.h
163
virtual_dma_port = io;
arch/powerpc/include/asm/floppy.h
33
#define fd_dma_setup(addr,size,mode,io) fd_ops->_dma_setup(addr,size,mode,io)
arch/powerpc/include/asm/floppy.h
41
int (*_dma_setup)(char *addr, unsigned long size, int mode, int io);
arch/powerpc/include/asm/kvm_book3s_64.h
680
int kvmhv_nestedv2_vcpu_create(struct kvm_vcpu *vcpu, struct kvmhv_nestedv2_io *io);
arch/powerpc/include/asm/kvm_book3s_64.h
681
void kvmhv_nestedv2_vcpu_free(struct kvm_vcpu *vcpu, struct kvmhv_nestedv2_io *io);
arch/powerpc/kvm/book3s_hv.c
4251
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv.c
4261
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv.c
4272
kvmppc_gse_put_u64(io->vcpu_run_input, KVMPPC_GSID_LPCR, lpcr);
arch/powerpc/kvm/book3s_hv.c
4291
kvmppc_gsm_reset(io->vcpu_message);
arch/powerpc/kvm/book3s_hv.c
4292
kvmppc_gsm_reset(io->vcore_message);
arch/powerpc/kvm/book3s_hv.c
4293
kvmppc_gsbm_zero(&io->valids);
arch/powerpc/kvm/book3s_hv_nestedv2.c
1037
struct kvmhv_nestedv2_io *io)
arch/powerpc/kvm/book3s_hv_nestedv2.c
1056
rc = kvmhv_nestedv2_host_create(vcpu, io);
arch/powerpc/kvm/book3s_hv_nestedv2.c
1068
struct kvmhv_nestedv2_io *io)
arch/powerpc/kvm/book3s_hv_nestedv2.c
1070
kvmhv_nestedv2_host_free(vcpu, io);
arch/powerpc/kvm/book3s_hv_nestedv2.c
403
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
417
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
418
valids = &io->valids;
arch/powerpc/kvm/book3s_hv_nestedv2.c
642
struct kvmhv_nestedv2_io *io)
arch/powerpc/kvm/book3s_hv_nestedv2.c
650
cfg = &io->cfg;
arch/powerpc/kvm/book3s_hv_nestedv2.c
684
io->vcpu_run_output = vcpu_run_output;
arch/powerpc/kvm/book3s_hv_nestedv2.c
700
io->vcpu_message = vcpu_message;
arch/powerpc/kvm/book3s_hv_nestedv2.c
709
io->vcpu_run_input = vcpu_run_input;
arch/powerpc/kvm/book3s_hv_nestedv2.c
727
io->vcore_message = vcore_message;
arch/powerpc/kvm/book3s_hv_nestedv2.c
729
kvmppc_gsbm_fill(&io->valids);
arch/powerpc/kvm/book3s_hv_nestedv2.c
758
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
765
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
766
valids = &io->valids;
arch/powerpc/kvm/book3s_hv_nestedv2.c
767
gsm = io->vcpu_message;
arch/powerpc/kvm/book3s_hv_nestedv2.c
769
gsm = io->vcore_message;
arch/powerpc/kvm/book3s_hv_nestedv2.c
786
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
795
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
796
valids = &io->valids;
arch/powerpc/kvm/book3s_hv_nestedv2.c
800
gsb = io->vcpu_run_input;
arch/powerpc/kvm/book3s_hv_nestedv2.c
824
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
829
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
830
gsb = io->vcpu_run_input;
arch/powerpc/kvm/book3s_hv_nestedv2.c
831
gsm = io->vcore_message;
arch/powerpc/kvm/book3s_hv_nestedv2.c
838
gsm = io->vcpu_message;
arch/powerpc/kvm/book3s_hv_nestedv2.c
914
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
918
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
919
gsb = io->vcpu_run_input;
arch/powerpc/kvm/book3s_hv_nestedv2.c
944
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
948
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
949
gsb = io->vcpu_run_output;
arch/powerpc/kvm/book3s_hv_nestedv2.c
962
struct kvmhv_nestedv2_io *io)
arch/powerpc/kvm/book3s_hv_nestedv2.c
964
kvmppc_gsm_free(io->vcpu_message);
arch/powerpc/kvm/book3s_hv_nestedv2.c
965
kvmppc_gsm_free(io->vcore_message);
arch/powerpc/kvm/book3s_hv_nestedv2.c
966
kvmppc_gsb_free(io->vcpu_run_input);
arch/powerpc/kvm/book3s_hv_nestedv2.c
967
kvmppc_gsb_free(io->vcpu_run_output);
arch/powerpc/kvm/book3s_hv_nestedv2.c
972
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
979
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv_nestedv2.c
980
valids = &io->valids;
arch/powerpc/kvm/book3s_hv_nestedv2.c
982
gsb = io->vcpu_run_input;
arch/riscv/include/asm/io.h
54
#define __io_pbr() RISCV_FENCE(io, i)
arch/riscv/include/asm/io.h
57
#define __io_paw() RISCV_FENCE(o, io)
arch/s390/boot/pgm_check.c
79
psw->per, psw->dat, psw->io, psw->ext, psw->key, psw->mcheck,
arch/s390/boot/pgm_check.c
89
psw->io = 0;
arch/s390/include/asm/kvm_host.h
301
struct kvm_s390_io_info io;
arch/s390/include/asm/kvm_host.h
313
struct kvm_s390_io_info io;
arch/s390/include/asm/ptrace.h
67
unsigned long io : 1; /* Input/Output Mask */
arch/s390/include/uapi/asm/kvm.h
195
struct kvm_s390_io_info io;
arch/s390/kernel/dumpstack.c
170
"P:%x AS:%x CC:%x PM:%x", psw->per, psw->dat, psw->io, psw->ext,
arch/s390/kernel/nmi.c
206
psw_bits(lc->mcck_new_psw).io = 0;
arch/s390/kvm/interrupt.c
1088
static int __do_deliver_io(struct kvm_vcpu *vcpu, struct kvm_s390_io_info *io)
arch/s390/kvm/interrupt.c
1094
vcpu->arch.sie_block->subchannel_id = io->subchannel_id;
arch/s390/kvm/interrupt.c
1095
vcpu->arch.sie_block->subchannel_nr = io->subchannel_nr;
arch/s390/kvm/interrupt.c
1096
vcpu->arch.sie_block->io_int_parm = io->io_int_parm;
arch/s390/kvm/interrupt.c
1097
vcpu->arch.sie_block->io_int_word = io->io_int_word;
arch/s390/kvm/interrupt.c
1101
rc = put_guest_lc(vcpu, io->subchannel_id, (u16 *)__LC_SUBCHANNEL_ID);
arch/s390/kvm/interrupt.c
1102
rc |= put_guest_lc(vcpu, io->subchannel_nr, (u16 *)__LC_SUBCHANNEL_NR);
arch/s390/kvm/interrupt.c
1103
rc |= put_guest_lc(vcpu, io->io_int_parm, (u32 *)__LC_IO_INT_PARM);
arch/s390/kvm/interrupt.c
1104
rc |= put_guest_lc(vcpu, io->io_int_word, (u32 *)__LC_IO_INT_WORD);
arch/s390/kvm/interrupt.c
1121
struct kvm_s390_io_info io;
arch/s390/kvm/interrupt.c
1139
inti->io.subchannel_id >> 8,
arch/s390/kvm/interrupt.c
1140
inti->io.subchannel_id >> 1 & 0x3,
arch/s390/kvm/interrupt.c
1141
inti->io.subchannel_nr);
arch/s390/kvm/interrupt.c
1146
((__u32)inti->io.subchannel_id << 16) |
arch/s390/kvm/interrupt.c
1147
inti->io.subchannel_nr,
arch/s390/kvm/interrupt.c
1148
((__u64)inti->io.io_int_parm << 32) |
arch/s390/kvm/interrupt.c
1149
inti->io.io_int_word);
arch/s390/kvm/interrupt.c
1158
rc = __do_deliver_io(vcpu, &(inti->io));
arch/s390/kvm/interrupt.c
1169
memset(&io, 0, sizeof(io));
arch/s390/kvm/interrupt.c
1170
io.io_int_word = isc_to_int_word(isc);
arch/s390/kvm/interrupt.c
1174
((__u32)io.subchannel_id << 16) |
arch/s390/kvm/interrupt.c
1175
io.subchannel_nr,
arch/s390/kvm/interrupt.c
1176
((__u64)io.io_int_parm << 32) |
arch/s390/kvm/interrupt.c
1177
io.io_int_word);
arch/s390/kvm/interrupt.c
1178
rc = __do_deliver_io(vcpu, &io);
arch/s390/kvm/interrupt.c
1675
if (schid && (id != iter->io.subchannel_id ||
arch/s390/kvm/interrupt.c
1676
nr != iter->io.subchannel_nr))
arch/s390/kvm/interrupt.c
1756
if (int_word_to_isc(inti->io.io_int_word) <= isc) {
arch/s390/kvm/interrupt.c
1765
tmp_inti->io.io_int_word = isc_to_int_word(isc);
arch/s390/kvm/interrupt.c
1872
isc = int_word_to_isc(inti->io.io_int_word);
arch/s390/kvm/interrupt.c
1899
inti->io.subchannel_id >> 8,
arch/s390/kvm/interrupt.c
1900
inti->io.subchannel_id >> 1 & 0x3,
arch/s390/kvm/interrupt.c
1901
inti->io.subchannel_nr);
arch/s390/kvm/interrupt.c
2007
inti->io.subchannel_id = s390int->parm >> 16;
arch/s390/kvm/interrupt.c
2008
inti->io.subchannel_nr = s390int->parm & 0x0000ffffu;
arch/s390/kvm/interrupt.c
2009
inti->io.io_int_parm = s390int->parm64 >> 32;
arch/s390/kvm/interrupt.c
2010
inti->io.io_int_word = s390int->parm64 & 0x00000000ffffffffull;
arch/s390/kvm/interrupt.c
2175
irq->u.io = inti->io;
arch/s390/kvm/interrupt.c
2239
irq->u.io.io_int_word = isc_to_int_word(i);
arch/s390/kvm/interrupt.c
2356
target = (void *) &inti->io;
arch/s390/kvm/interrupt.c
2357
source = &uptr->u.io;
arch/s390/kvm/interrupt.c
2358
size = sizeof(inti->io);
arch/s390/kvm/priv.c
462
tpi_data[0] = inti->io.subchannel_id << 16 | inti->io.subchannel_nr;
arch/s390/kvm/priv.c
463
tpi_data[1] = inti->io.io_int_parm;
arch/s390/kvm/priv.c
464
tpi_data[2] = inti->io.io_int_word;
arch/s390/kvm/priv.c
530
vcpu->run->s390_tsch.subchannel_id = inti->io.subchannel_id;
arch/s390/kvm/priv.c
531
vcpu->run->s390_tsch.subchannel_nr = inti->io.subchannel_nr;
arch/s390/kvm/priv.c
532
vcpu->run->s390_tsch.io_int_parm = inti->io.io_int_parm;
arch/s390/kvm/priv.c
533
vcpu->run->s390_tsch.io_int_word = inti->io.io_int_word;
arch/x86/include/asm/floppy.h
210
static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/x86/include/asm/floppy.h
213
virtual_dma_port = io;
arch/x86/include/asm/floppy.h
221
static int hard_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/x86/include/asm/floppy.h
244
int (*_dma_setup)(char *addr, unsigned long size, int mode, int io);
arch/x86/include/asm/floppy.h
39
#define fd_dma_setup(addr, size, mode, io) SW._dma_setup(addr, size, mode, io)
arch/x86/kvm/x86.c
8433
vcpu->run->io.direction = in ? KVM_EXIT_IO_IN : KVM_EXIT_IO_OUT;
arch/x86/kvm/x86.c
8434
vcpu->run->io.size = size;
arch/x86/kvm/x86.c
8435
vcpu->run->io.data_offset = KVM_PIO_PAGE_OFFSET * PAGE_SIZE;
arch/x86/kvm/x86.c
8436
vcpu->run->io.count = count;
arch/x86/kvm/x86.c
8437
vcpu->run->io.port = port;
arch/xtensa/platforms/iss/simdisk.c
85
unsigned long io;
arch/xtensa/platforms/iss/simdisk.c
90
io = simc_write(dev->fd, buffer, nbytes);
arch/xtensa/platforms/iss/simdisk.c
92
io = simc_read(dev->fd, buffer, nbytes);
arch/xtensa/platforms/iss/simdisk.c
93
if (io == -1) {
arch/xtensa/platforms/iss/simdisk.c
97
buffer += io;
arch/xtensa/platforms/iss/simdisk.c
98
offset += io;
arch/xtensa/platforms/iss/simdisk.c
99
nbytes -= io;
block/genhd.c
1202
__ATTR(io-timeout-fail, 0644, part_timeout_show, part_timeout_store);
crypto/camellia_generic.c
843
static void camellia_do_encrypt(const u32 *subkey, u32 *io, unsigned max)
crypto/camellia_generic.c
848
io[0] ^= SUBKEY_L(0);
crypto/camellia_generic.c
849
io[1] ^= SUBKEY_R(0);
crypto/camellia_generic.c
853
CAMELLIA_ROUNDSM(io[0], io[1], \
crypto/camellia_generic.c
855
io[2], io[3], il, ir); \
crypto/camellia_generic.c
856
CAMELLIA_ROUNDSM(io[2], io[3], \
crypto/camellia_generic.c
858
io[0], io[1], il, ir); \
crypto/camellia_generic.c
859
CAMELLIA_ROUNDSM(io[0], io[1], \
crypto/camellia_generic.c
861
io[2], io[3], il, ir); \
crypto/camellia_generic.c
862
CAMELLIA_ROUNDSM(io[2], io[3], \
crypto/camellia_generic.c
864
io[0], io[1], il, ir); \
crypto/camellia_generic.c
865
CAMELLIA_ROUNDSM(io[0], io[1], \
crypto/camellia_generic.c
867
io[2], io[3], il, ir); \
crypto/camellia_generic.c
868
CAMELLIA_ROUNDSM(io[2], io[3], \
crypto/camellia_generic.c
870
io[0], io[1], il, ir); \
crypto/camellia_generic.c
873
CAMELLIA_FLS(io[0], io[1], io[2], io[3], \
crypto/camellia_generic.c
893
io[2] ^= SUBKEY_L(max);
crypto/camellia_generic.c
894
io[3] ^= SUBKEY_R(max);
crypto/camellia_generic.c
898
static void camellia_do_decrypt(const u32 *subkey, u32 *io, unsigned i)
crypto/camellia_generic.c
903
io[0] ^= SUBKEY_L(i);
crypto/camellia_generic.c
904
io[1] ^= SUBKEY_R(i);
crypto/camellia_generic.c
908
CAMELLIA_ROUNDSM(io[0], io[1], \
crypto/camellia_generic.c
910
io[2], io[3], il, ir); \
crypto/camellia_generic.c
911
CAMELLIA_ROUNDSM(io[2], io[3], \
crypto/camellia_generic.c
913
io[0], io[1], il, ir); \
crypto/camellia_generic.c
914
CAMELLIA_ROUNDSM(io[0], io[1], \
crypto/camellia_generic.c
916
io[2], io[3], il, ir); \
crypto/camellia_generic.c
917
CAMELLIA_ROUNDSM(io[2], io[3], \
crypto/camellia_generic.c
919
io[0], io[1], il, ir); \
crypto/camellia_generic.c
920
CAMELLIA_ROUNDSM(io[0], io[1], \
crypto/camellia_generic.c
922
io[2], io[3], il, ir); \
crypto/camellia_generic.c
923
CAMELLIA_ROUNDSM(io[2], io[3], \
crypto/camellia_generic.c
925
io[0], io[1], il, ir); \
crypto/camellia_generic.c
928
CAMELLIA_FLS(io[0], io[1], io[2], io[3], \
crypto/camellia_generic.c
948
io[2] ^= SUBKEY_L(0);
crypto/camellia_generic.c
949
io[3] ^= SUBKEY_R(0);
drivers/accel/habanalabs/common/hldio.c
183
static bool hl_dio_validate_io(struct hl_device *hdev, struct hl_direct_io *io)
drivers/accel/habanalabs/common/hldio.c
185
if ((u64)io->device_va & ~PAGE_MASK) {
drivers/accel/habanalabs/common/hldio.c
190
if (io->len_bytes & ~PAGE_MASK) {
drivers/accel/habanalabs/common/hldio.c
195
if (io->off_bytes & ~PAGE_MASK) {
drivers/accel/habanalabs/common/hldio.c
226
static ssize_t hl_direct_io(struct hl_device *hdev, struct hl_direct_io *io)
drivers/accel/habanalabs/common/hldio.c
232
if (!hl_dio_validate_io(hdev, io))
drivers/accel/habanalabs/common/hldio.c
235
if (!hl_dio_get_iopath(io->f.ctx)) {
drivers/accel/habanalabs/common/hldio.c
240
init_sync_kiocb(&io->kio, io->f.filp);
drivers/accel/habanalabs/common/hldio.c
241
io->kio.ki_pos = io->off_bytes;
drivers/accel/habanalabs/common/hldio.c
243
npages = (io->len_bytes >> PAGE_SHIFT);
drivers/accel/habanalabs/common/hldio.c
250
io->bv = vzalloc(npages * sizeof(struct bio_vec));
drivers/accel/habanalabs/common/hldio.c
251
if (!io->bv)
drivers/accel/habanalabs/common/hldio.c
254
for (i = 0, device_va = io->device_va; i < npages ; ++i, device_va += PAGE_SIZE) {
drivers/accel/habanalabs/common/hldio.c
255
io->bv[i].bv_page = hl_dio_va2page(hdev, io->f.ctx, device_va);
drivers/accel/habanalabs/common/hldio.c
256
if (!io->bv[i].bv_page) {
drivers/accel/habanalabs/common/hldio.c
262
io->bv[i].bv_offset = 0;
drivers/accel/habanalabs/common/hldio.c
263
io->bv[i].bv_len = PAGE_SIZE;
drivers/accel/habanalabs/common/hldio.c
266
iov_iter_bvec(&io->iter, io->type, io->bv, 1, io->len_bytes);
drivers/accel/habanalabs/common/hldio.c
267
if (io->f.filp->f_op && io->f.filp->f_op->read_iter)
drivers/accel/habanalabs/common/hldio.c
268
rc = io->f.filp->f_op->read_iter(&io->kio, &io->iter);
drivers/accel/habanalabs/common/hldio.c
273
vfree(io->bv);
drivers/accel/habanalabs/common/hldio.c
274
hl_dio_put_iopath(io->f.ctx);
drivers/accel/habanalabs/common/hldio.c
288
struct hl_direct_io *io = container_of(kio, struct hl_direct_io, kio);
drivers/accel/habanalabs/common/hldio.c
290
dev_dbg(io->f.ctx->hdev->dev, "IO completed with %ld\n", ret);
drivers/accel/habanalabs/common/hldio.c
294
hl_dio_put_iopath(io->f.ctx);
drivers/accel/habanalabs/common/hldio.c
296
hl_dio_fd_unregister(&io->f);
drivers/accel/habanalabs/common/hldio.c
306
struct hl_direct_io *io;
drivers/accel/habanalabs/common/hldio.c
311
io = kzalloc_obj(*io);
drivers/accel/habanalabs/common/hldio.c
312
if (!io) {
drivers/accel/habanalabs/common/hldio.c
317
*io = (struct hl_direct_io){
drivers/accel/habanalabs/common/hldio.c
324
rc = hl_dio_fd_register(ctx, fd, &io->f);
drivers/accel/habanalabs/common/hldio.c
328
rc = hl_direct_io(hdev, io);
drivers/accel/habanalabs/common/hldio.c
335
hl_dio_fd_unregister(&io->f);
drivers/accel/habanalabs/common/hldio.c
337
kfree(io);
drivers/acpi/acpica/amlresrc.h
522
struct aml_resource_io io;
drivers/acpi/acpica/rsaddr.c
243
{ACPI_RSC_2BITFLAG, ACPI_RS_OFFSET(data.address.info.io.range_type),
drivers/acpi/acpica/rsaddr.c
247
{ACPI_RSC_1BITFLAG, ACPI_RS_OFFSET(data.address.info.io.translation),
drivers/acpi/acpica/rsaddr.c
252
ACPI_RS_OFFSET(data.address.info.io.translation_type),
drivers/acpi/acpica/rsdumpinfo.c
558
{ACPI_RSD_2BITFLAG, ACPI_RSD_OFFSET(address.info.io.range_type),
drivers/acpi/acpica/rsdumpinfo.c
560
{ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET(address.info.io.translation),
drivers/acpi/acpica/rsdumpinfo.c
562
{ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET(address.info.io.translation_type),
drivers/acpi/acpica/rsdumpinfo.c
75
{ACPI_RSD_1BITFLAG, ACPI_RSD_OFFSET(io.io_decode), "Address Decoding",
drivers/acpi/acpica/rsdumpinfo.c
77
{ACPI_RSD_UINT16, ACPI_RSD_OFFSET(io.minimum), "Address Minimum", NULL},
drivers/acpi/acpica/rsdumpinfo.c
78
{ACPI_RSD_UINT16, ACPI_RSD_OFFSET(io.maximum), "Address Maximum", NULL},
drivers/acpi/acpica/rsdumpinfo.c
79
{ACPI_RSD_UINT8, ACPI_RSD_OFFSET(io.alignment), "Alignment", NULL},
drivers/acpi/acpica/rsdumpinfo.c
80
{ACPI_RSD_UINT8, ACPI_RSD_OFFSET(io.address_length), "Address Length",
drivers/acpi/acpica/rsio.c
31
{ACPI_RSC_1BITFLAG, ACPI_RS_OFFSET(data.io.io_decode),
drivers/acpi/acpica/rsio.c
32
AML_OFFSET(io.flags),
drivers/acpi/acpica/rsio.c
41
{ACPI_RSC_MOVE8, ACPI_RS_OFFSET(data.io.alignment),
drivers/acpi/acpica/rsio.c
42
AML_OFFSET(io.alignment),
drivers/acpi/acpica/rsio.c
45
{ACPI_RSC_MOVE16, ACPI_RS_OFFSET(data.io.minimum),
drivers/acpi/acpica/rsio.c
46
AML_OFFSET(io.minimum),
drivers/acpi/ec.c
1787
ec->data_addr = resource->data.io.minimum;
drivers/acpi/ec.c
1789
ec->command_addr = resource->data.io.minimum;
drivers/acpi/resource.c
182
struct acpi_resource_io *io;
drivers/acpi/resource.c
187
io = &ares->data.io;
drivers/acpi/resource.c
188
acpi_dev_get_ioresource(res, io->minimum,
drivers/acpi/resource.c
189
io->address_length,
drivers/acpi/resource.c
190
io->io_decode);
drivers/acpi/resource.c
260
addr->info.io.translation_type);
drivers/acpi/resource.c
53
static bool acpi_dev_resource_len_valid(u64 start, u64 end, u64 len, bool io)
drivers/acpi/resource.c
68
io ? "io" : "mem", start, end, len);
drivers/ata/pata_legacy.c
237
unsigned long io = probe->port;
drivers/ata/pata_legacy.c
256
if (devm_request_region(&pdev->dev, io, 8, "pata_legacy") == NULL ||
drivers/ata/pata_legacy.c
257
devm_request_region(&pdev->dev, io + 0x0206, 1,
drivers/ata/pata_legacy.c
262
io_addr = devm_ioport_map(&pdev->dev, io, 8);
drivers/ata/pata_legacy.c
263
ctrl_addr = devm_ioport_map(&pdev->dev, io + 0x0206, 1);
drivers/ata/pata_legacy.c
285
ata_port_desc(ap, "cmd 0x%lx ctl 0x%lx", io, io + 0x0206);
drivers/block/ublk_drv.c
1181
struct ublk_io *io)
drivers/block/ublk_drv.c
1184
refcount_set(&io->ref, UBLK_REFCOUNT_INIT);
drivers/block/ublk_drv.c
1187
static inline bool ublk_get_req_ref(struct ublk_io *io)
drivers/block/ublk_drv.c
1189
return refcount_inc_not_zero(&io->ref);
drivers/block/ublk_drv.c
1192
static inline void ublk_put_req_ref(struct ublk_io *io, struct request *req)
drivers/block/ublk_drv.c
1194
if (!refcount_dec_and_test(&io->ref))
drivers/block/ublk_drv.c
1198
__ublk_complete_rq(req, io, false, NULL);
drivers/block/ublk_drv.c
1201
static inline bool ublk_sub_req_ref(struct ublk_io *io)
drivers/block/ublk_drv.c
1203
unsigned sub_refs = UBLK_REFCOUNT_INIT - io->task_registered_buffers;
drivers/block/ublk_drv.c
1205
io->task_registered_buffers = 0;
drivers/block/ublk_drv.c
1206
return refcount_sub_and_test(sub_refs, &io->ref);
drivers/block/ublk_drv.c
1462
const struct ublk_io *io)
drivers/block/ublk_drv.c
1478
import_ubuf(dir, u64_to_user_ptr(io->buf.addr), rq_bytes, &iter);
drivers/block/ublk_drv.c
1486
const struct ublk_io *io)
drivers/block/ublk_drv.c
1497
WARN_ON_ONCE(io->res > rq_bytes);
drivers/block/ublk_drv.c
1499
import_ubuf(dir, u64_to_user_ptr(io->buf.addr), io->res, &iter);
drivers/block/ublk_drv.c
1549
static inline void __ublk_complete_rq(struct request *req, struct ublk_io *io,
drivers/block/ublk_drv.c
1557
if (!io->res && req_op(req) == REQ_OP_READ)
drivers/block/ublk_drv.c
1558
io->res = -EIO;
drivers/block/ublk_drv.c
1560
if (io->res < 0) {
drivers/block/ublk_drv.c
1561
res = errno_to_blk_status(io->res);
drivers/block/ublk_drv.c
1580
unmapped_bytes = ublk_unmap_io(need_map, req, io);
drivers/block/ublk_drv.c
1587
if (unlikely(unmapped_bytes < io->res))
drivers/block/ublk_drv.c
1588
io->res = unmapped_bytes;
drivers/block/ublk_drv.c
1604
requeue = blk_update_request(req, BLK_STS_OK, io->res);
drivers/block/ublk_drv.c
1619
static struct io_uring_cmd *__ublk_prep_compl_io_cmd(struct ublk_io *io,
drivers/block/ublk_drv.c
1623
struct io_uring_cmd *cmd = io->cmd;
drivers/block/ublk_drv.c
1626
io->flags |= UBLK_IO_FLAG_OWNED_BY_SRV;
drivers/block/ublk_drv.c
1632
io->flags &= ~UBLK_IO_FLAG_ACTIVE;
drivers/block/ublk_drv.c
1634
io->req = req;
drivers/block/ublk_drv.c
1638
static void ublk_complete_io_cmd(struct ublk_io *io, struct request *req,
drivers/block/ublk_drv.c
1641
struct io_uring_cmd *cmd = __ublk_prep_compl_io_cmd(io, req);
drivers/block/ublk_drv.c
1680
struct request *req, struct ublk_io *io,
drivers/block/ublk_drv.c
1685
io->task_registered_buffers = 1;
drivers/block/ublk_drv.c
1686
io->buf_ctx_handle = io_uring_cmd_ctx_handle(cmd);
drivers/block/ublk_drv.c
1687
io->flags |= UBLK_IO_FLAG_AUTO_BUF_REG;
drivers/block/ublk_drv.c
1689
ublk_init_req_ref(ubq, io);
drivers/block/ublk_drv.c
1690
__ublk_prep_compl_io_cmd(io, req);
drivers/block/ublk_drv.c
1696
struct ublk_io *io, struct io_uring_cmd *cmd,
drivers/block/ublk_drv.c
1702
io->buf.auto_reg.index, issue_flags);
drivers/block/ublk_drv.c
1704
if (io->buf.auto_reg.flags & UBLK_AUTO_BUF_REG_FALLBACK) {
drivers/block/ublk_drv.c
1721
struct request *req, struct ublk_io *io,
drivers/block/ublk_drv.c
1725
enum auto_buf_reg_res res = ublk_auto_buf_register(ubq, req, io, cmd,
drivers/block/ublk_drv.c
1729
ublk_auto_buf_io_setup(ubq, req, io, cmd, res);
drivers/block/ublk_drv.c
1735
struct ublk_io *io)
drivers/block/ublk_drv.c
1743
mapped_bytes = ublk_map_io(ubq, req, io);
drivers/block/ublk_drv.c
1772
struct ublk_io *io = &ubq->ios[tag];
drivers/block/ublk_drv.c
1775
__func__, ubq->q_id, req->tag, io->flags,
drivers/block/ublk_drv.c
1787
if (unlikely(current != io->task || current->flags & PF_EXITING)) {
drivers/block/ublk_drv.c
1798
io->flags |= UBLK_IO_FLAG_NEED_GET_DATA;
drivers/block/ublk_drv.c
1800
__func__, ubq->q_id, req->tag, io->flags);
drivers/block/ublk_drv.c
1801
ublk_complete_io_cmd(io, req, UBLK_IO_RES_NEED_GET_DATA,
drivers/block/ublk_drv.c
1806
if (!ublk_start_io(ubq, req, io))
drivers/block/ublk_drv.c
1810
ublk_auto_buf_dispatch(ubq, req, io, io->cmd, issue_flags);
drivers/block/ublk_drv.c
1812
ublk_init_req_ref(ubq, io);
drivers/block/ublk_drv.c
1813
ublk_complete_io_cmd(io, req, UBLK_IO_RES_OK, issue_flags);
drivers/block/ublk_drv.c
1822
struct ublk_io *io = &ubq->ios[tag];
drivers/block/ublk_drv.c
1827
if (!ublk_start_io(ubq, req, io))
drivers/block/ublk_drv.c
1831
res = ublk_auto_buf_register(ubq, req, io, cmd,
drivers/block/ublk_drv.c
1838
ublk_io_lock(io);
drivers/block/ublk_drv.c
1839
ublk_auto_buf_io_setup(ubq, req, io, cmd, res);
drivers/block/ublk_drv.c
1840
ublk_io_unlock(io);
drivers/block/ublk_drv.c
1897
struct ublk_io *io = &ubq->ios[tag_buf[i]];
drivers/block/ublk_drv.c
1900
ublk_io_lock(io);
drivers/block/ublk_drv.c
1901
if (io->flags & UBLK_IO_FLAG_AUTO_BUF_REG)
drivers/block/ublk_drv.c
1902
index = io->buf.auto_reg.index;
drivers/block/ublk_drv.c
1903
io->flags &= ~(UBLK_IO_FLAG_OWNED_BY_SRV | UBLK_IO_FLAG_AUTO_BUF_REG);
drivers/block/ublk_drv.c
1904
io->flags |= UBLK_IO_FLAG_ACTIVE;
drivers/block/ublk_drv.c
1905
ublk_io_unlock(io);
drivers/block/ublk_drv.c
2105
static void ublk_queue_cmd_list(struct ublk_io *io, struct rq_list *l)
drivers/block/ublk_drv.c
2107
struct io_uring_cmd *cmd = io->cmd;
drivers/block/ublk_drv.c
2234
static inline bool ublk_belong_to_same_batch(const struct ublk_io *io,
drivers/block/ublk_drv.c
2237
return (io_uring_cmd_ctx_handle(io->cmd) ==
drivers/block/ublk_drv.c
2239
(io->task == io2->task);
drivers/block/ublk_drv.c
2259
struct ublk_io *io = NULL;
drivers/block/ublk_drv.c
2271
if (io && !ublk_belong_to_same_batch(io, this_io) &&
drivers/block/ublk_drv.c
2273
ublk_queue_cmd_list(io, &submit_list);
drivers/block/ublk_drv.c
2274
io = this_io;
drivers/block/ublk_drv.c
2279
ublk_queue_cmd_list(io, &submit_list);
drivers/block/ublk_drv.c
2366
struct ublk_io *io = &ubq->ios[i];
drivers/block/ublk_drv.c
2372
io->flags &= UBLK_IO_FLAG_CANCELED;
drivers/block/ublk_drv.c
2373
io->cmd = NULL;
drivers/block/ublk_drv.c
2374
io->buf.addr = 0;
drivers/block/ublk_drv.c
2382
if (io->task) {
drivers/block/ublk_drv.c
2383
put_task_struct(io->task);
drivers/block/ublk_drv.c
2384
io->task = NULL;
drivers/block/ublk_drv.c
2387
WARN_ON_ONCE(refcount_read(&io->ref));
drivers/block/ublk_drv.c
2388
WARN_ON_ONCE(io->task_registered_buffers);
drivers/block/ublk_drv.c
2496
struct ublk_io *io = &ubq->ios[j];
drivers/block/ublk_drv.c
2497
unsigned int refs = refcount_read(&io->ref) +
drivers/block/ublk_drv.c
2498
io->task_registered_buffers;
drivers/block/ublk_drv.c
2508
refcount_set(&io->ref, 0);
drivers/block/ublk_drv.c
2509
io->task_registered_buffers = 0;
drivers/block/ublk_drv.c
2670
static void __ublk_fail_req(struct ublk_device *ub, struct ublk_io *io,
drivers/block/ublk_drv.c
2674
io->flags & UBLK_IO_FLAG_ACTIVE);
drivers/block/ublk_drv.c
2679
io->res = -EIO;
drivers/block/ublk_drv.c
2680
__ublk_complete_rq(req, io, ublk_dev_need_map_io(ub), NULL);
drivers/block/ublk_drv.c
2715
struct ublk_io *io = &ubq->ios[i];
drivers/block/ublk_drv.c
2717
if (io->flags & UBLK_IO_FLAG_OWNED_BY_SRV)
drivers/block/ublk_drv.c
2718
__ublk_fail_req(ub, io, io->req);
drivers/block/ublk_drv.c
2758
struct ublk_io *io = &ubq->ios[tag];
drivers/block/ublk_drv.c
2764
if (!(io->flags & UBLK_IO_FLAG_ACTIVE))
drivers/block/ublk_drv.c
2782
done = !!(io->flags & UBLK_IO_FLAG_CANCELED);
drivers/block/ublk_drv.c
2784
io->flags |= UBLK_IO_FLAG_CANCELED;
drivers/block/ublk_drv.c
2785
cmd = io->cmd;
drivers/block/ublk_drv.c
2786
io->cmd = NULL;
drivers/block/ublk_drv.c
2875
struct ublk_io *io;
drivers/block/ublk_drv.c
2884
io = &ubq->ios[pdu->tag];
drivers/block/ublk_drv.c
2885
if (WARN_ON_ONCE(task && task != io->task))
drivers/block/ublk_drv.c
2890
WARN_ON_ONCE(io->cmd != cmd);
drivers/block/ublk_drv.c
3010
static void ublk_reset_io_flags(struct ublk_queue *ubq, struct ublk_io *io)
drivers/block/ublk_drv.c
3014
io->flags &= ~UBLK_IO_FLAG_CANCELED;
drivers/block/ublk_drv.c
3029
struct ublk_io *io)
drivers/block/ublk_drv.c
3038
ublk_reset_io_flags(ubq, io);
drivers/block/ublk_drv.c
3078
static inline int ublk_set_auto_buf_reg(struct ublk_io *io, struct io_uring_cmd *cmd)
drivers/block/ublk_drv.c
3089
io->buf.auto_reg = buf;
drivers/block/ublk_drv.c
3093
static void ublk_clear_auto_buf_reg(struct ublk_io *io,
drivers/block/ublk_drv.c
3097
if (io->flags & UBLK_IO_FLAG_AUTO_BUF_REG) {
drivers/block/ublk_drv.c
3098
io->flags &= ~UBLK_IO_FLAG_AUTO_BUF_REG;
drivers/block/ublk_drv.c
3110
if (io->buf_ctx_handle == io_uring_cmd_ctx_handle(cmd))
drivers/block/ublk_drv.c
3111
*buf_idx = io->buf.auto_reg.index;
drivers/block/ublk_drv.c
3115
static int ublk_handle_auto_buf_reg(struct ublk_io *io,
drivers/block/ublk_drv.c
3119
ublk_clear_auto_buf_reg(io, cmd, buf_idx);
drivers/block/ublk_drv.c
3120
return ublk_set_auto_buf_reg(io, cmd);
drivers/block/ublk_drv.c
3125
ublk_fill_io_cmd(struct ublk_io *io, struct io_uring_cmd *cmd)
drivers/block/ublk_drv.c
3127
struct request *req = io->req;
drivers/block/ublk_drv.c
3129
io->cmd = cmd;
drivers/block/ublk_drv.c
3130
io->flags |= UBLK_IO_FLAG_ACTIVE;
drivers/block/ublk_drv.c
3132
io->flags &= ~UBLK_IO_FLAG_OWNED_BY_SRV;
drivers/block/ublk_drv.c
3138
ublk_config_io_buf(const struct ublk_device *ub, struct ublk_io *io,
drivers/block/ublk_drv.c
3143
return ublk_handle_auto_buf_reg(io, cmd, buf_idx);
drivers/block/ublk_drv.c
3145
io->buf.addr = buf_addr;
drivers/block/ublk_drv.c
3168
struct ublk_io *io = &ubq->ios[rq->tag];
drivers/block/ublk_drv.c
3174
if (current == io->task && io->task_registered_buffers)
drivers/block/ublk_drv.c
3175
io->task_registered_buffers--;
drivers/block/ublk_drv.c
3177
ublk_put_req_ref(io, rq);
drivers/block/ublk_drv.c
3183
struct ublk_io *io,
drivers/block/ublk_drv.c
3192
req = __ublk_check_and_get_req(ub, q_id, tag, io);
drivers/block/ublk_drv.c
3199
ublk_put_req_ref(io, req);
drivers/block/ublk_drv.c
3209
u16 q_id, u16 tag, struct ublk_io *io,
drivers/block/ublk_drv.c
3213
struct request *req = io->req;
drivers/block/ublk_drv.c
3220
new_registered_buffers = io->task_registered_buffers + 1;
drivers/block/ublk_drv.c
3222
return ublk_register_io_buf(cmd, ub, q_id, tag, io, index,
drivers/block/ublk_drv.c
3233
io->task_registered_buffers = new_registered_buffers;
drivers/block/ublk_drv.c
3264
struct ublk_io *io, u16 q_id)
drivers/block/ublk_drv.c
3271
if (io->flags & UBLK_IO_FLAG_ACTIVE)
drivers/block/ublk_drv.c
3274
WARN_ON_ONCE(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV);
drivers/block/ublk_drv.c
3276
ublk_fill_io_cmd(io, cmd);
drivers/block/ublk_drv.c
3279
WRITE_ONCE(io->task, NULL);
drivers/block/ublk_drv.c
3281
WRITE_ONCE(io->task, get_task_struct(current));
drivers/block/ublk_drv.c
3287
struct ublk_io *io, __u64 buf_addr, u16 q_id)
drivers/block/ublk_drv.c
3297
ret = __ublk_fetch(cmd, ub, io, q_id);
drivers/block/ublk_drv.c
3299
ret = ublk_config_io_buf(ub, io, cmd, buf_addr, NULL);
drivers/block/ublk_drv.c
3301
ublk_mark_io_ready(ub, q_id, io);
drivers/block/ublk_drv.c
3307
struct ublk_io *io, __u64 buf_addr)
drivers/block/ublk_drv.c
3309
struct request *req = io->req;
drivers/block/ublk_drv.c
3331
struct ublk_io *io)
drivers/block/ublk_drv.c
3334
return ublk_sub_req_ref(io);
drivers/block/ublk_drv.c
3338
static bool ublk_get_data(const struct ublk_queue *ubq, struct ublk_io *io,
drivers/block/ublk_drv.c
3346
io->flags &= ~UBLK_IO_FLAG_NEED_GET_DATA;
drivers/block/ublk_drv.c
3348
ublk_get_iod(ubq, req->tag)->addr = io->buf.addr;
drivers/block/ublk_drv.c
3350
__func__, ubq->q_id, req->tag, io->flags,
drivers/block/ublk_drv.c
3353
return ublk_start_io(ubq, req, io);
drivers/block/ublk_drv.c
3365
struct ublk_io *io = NULL;
drivers/block/ublk_drv.c
3400
io = &ubq->ios[tag];
drivers/block/ublk_drv.c
3406
ret = ublk_fetch(cmd, ub, io, addr, q_id);
drivers/block/ublk_drv.c
3414
if (READ_ONCE(io->task) != current) {
drivers/block/ublk_drv.c
3420
return ublk_register_io_buf(cmd, ub, q_id, tag, io,
drivers/block/ublk_drv.c
3427
if (!(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV)) {
drivers/block/ublk_drv.c
3436
if ((!!(io->flags & UBLK_IO_FLAG_NEED_GET_DATA))
drivers/block/ublk_drv.c
3442
return ublk_daemon_register_io_buf(cmd, ub, q_id, tag, io, addr,
drivers/block/ublk_drv.c
3445
ret = ublk_check_commit_and_fetch(ub, io, addr);
drivers/block/ublk_drv.c
3448
io->res = result;
drivers/block/ublk_drv.c
3449
req = ublk_fill_io_cmd(io, cmd);
drivers/block/ublk_drv.c
3450
ret = ublk_config_io_buf(ub, io, cmd, addr, &buf_idx);
drivers/block/ublk_drv.c
3453
compl = ublk_need_complete_req(ub, io);
drivers/block/ublk_drv.c
3458
__ublk_complete_rq(req, io, ublk_dev_need_map_io(ub), NULL);
drivers/block/ublk_drv.c
3469
req = ublk_fill_io_cmd(io, cmd);
drivers/block/ublk_drv.c
3470
ret = ublk_config_io_buf(ub, io, cmd, addr, NULL);
drivers/block/ublk_drv.c
3472
if (likely(ublk_get_data(ubq, io, req))) {
drivers/block/ublk_drv.c
3473
__ublk_prep_compl_io_cmd(io, req);
drivers/block/ublk_drv.c
3485
__func__, cmd_op, tag, ret, io ? io->flags : 0);
drivers/block/ublk_drv.c
3490
u16 q_id, u16 tag, struct ublk_io *io)
drivers/block/ublk_drv.c
3502
if (!ublk_get_req_ref(io))
drivers/block/ublk_drv.c
3513
ublk_put_req_ref(io, req);
drivers/block/ublk_drv.c
360
u16 q_id, u16 tag, struct ublk_io *io);
drivers/block/ublk_drv.c
3655
struct ublk_io *io = &ubq->ios[elem->tag];
drivers/block/ublk_drv.c
3670
ublk_io_lock(io);
drivers/block/ublk_drv.c
3671
io->flags = 0;
drivers/block/ublk_drv.c
3672
ublk_io_unlock(io);
drivers/block/ublk_drv.c
3693
struct ublk_io *io = &ubq->ios[elem->tag];
drivers/block/ublk_drv.c
3708
ublk_io_lock(io);
drivers/block/ublk_drv.c
3709
ret = __ublk_fetch(data->cmd, data->ub, io, ubq->q_id);
drivers/block/ublk_drv.c
3711
io->buf = buf;
drivers/block/ublk_drv.c
3712
ublk_io_unlock(io);
drivers/block/ublk_drv.c
3715
ublk_mark_io_ready(data->ub, ubq->q_id, io);
drivers/block/ublk_drv.c
3748
struct ublk_io *io,
drivers/block/ublk_drv.c
375
static inline void ublk_io_lock(struct ublk_io *io)
drivers/block/ublk_drv.c
3751
if (!(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV))
drivers/block/ublk_drv.c
3764
struct ublk_io *io = &ubq->ios[elem->tag];
drivers/block/ublk_drv.c
377
spin_lock(&io->lock);
drivers/block/ublk_drv.c
3779
ublk_io_lock(io);
drivers/block/ublk_drv.c
3780
ret = ublk_batch_commit_io_check(ubq, io, &buf);
drivers/block/ublk_drv.c
3782
io->res = elem->result;
drivers/block/ublk_drv.c
3783
io->buf = buf;
drivers/block/ublk_drv.c
3784
req = ublk_fill_io_cmd(io, data->cmd);
drivers/block/ublk_drv.c
3787
ublk_clear_auto_buf_reg(io, data->cmd, &buf_idx);
drivers/block/ublk_drv.c
3788
compl = ublk_need_complete_req(data->ub, io);
drivers/block/ublk_drv.c
3790
ublk_io_unlock(io);
drivers/block/ublk_drv.c
380
static inline void ublk_io_unlock(struct ublk_io *io)
drivers/block/ublk_drv.c
3804
__ublk_complete_rq(req, io, ublk_dev_need_map_io(data->ub), data->iob);
drivers/block/ublk_drv.c
382
spin_unlock(&io->lock);
drivers/block/ublk_drv.c
3959
struct ublk_io *io;
drivers/block/ublk_drv.c
3974
io = &ubq->ios[tag];
drivers/block/ublk_drv.c
3975
return ublk_register_io_buf(cmd, ub, q_id, tag, io, index,
drivers/block/ublk_drv.c
4054
struct ublk_io *io;
drivers/block/ublk_drv.c
4086
io = &ubq->ios[tag];
drivers/block/ublk_drv.c
4087
on_daemon = current == READ_ONCE(io->task);
drivers/block/ublk_drv.c
4090
if (!(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV))
drivers/block/ublk_drv.c
4093
req = io->req;
drivers/block/ublk_drv.c
4097
req = __ublk_check_and_get_req(ub, q_id, tag, io);
drivers/block/ublk_drv.c
4126
ublk_put_req_ref(io, req);
drivers/block/ublk_drv.c
4167
struct ublk_io *io = &ubq->ios[i];
drivers/block/ublk_drv.c
4168
if (io->task)
drivers/block/ublk_drv.c
4169
put_task_struct(io->task);
drivers/block/ublk_drv.c
4170
WARN_ON_ONCE(refcount_read(&io->ref));
drivers/block/ublk_drv.c
4171
WARN_ON_ONCE(io->task_registered_buffers);
drivers/block/ublk_drv.c
508
struct ublk_io *io = &ubq->ios[req->tag];
drivers/block/ublk_drv.c
525
iod->addr = io->buf.addr;
drivers/block/ublk_drv.c
781
static inline void __ublk_complete_rq(struct request *req, struct ublk_io *io,
drivers/bus/mvebu-mbus.c
1220
struct resource *io)
drivers/bus/mvebu-mbus.c
1231
memset(io, 0, sizeof(struct resource));
drivers/bus/mvebu-mbus.c
1232
io->end = -1;
drivers/bus/mvebu-mbus.c
1243
io->start = reg[0];
drivers/bus/mvebu-mbus.c
1244
io->end = io->start + reg[1] - 1;
drivers/bus/mvebu-mbus.c
1245
io->flags = IORESOURCE_IO;
drivers/char/ipmi/ipmi_bt_sm.c
110
#define BT_STATUS bt->io->inputb(bt->io, 0)
drivers/char/ipmi/ipmi_bt_sm.c
111
#define BT_CONTROL(x) bt->io->outputb(bt->io, 0, x)
drivers/char/ipmi/ipmi_bt_sm.c
113
#define BMC2HOST bt->io->inputb(bt->io, 1)
drivers/char/ipmi/ipmi_bt_sm.c
114
#define HOST2BMC(x) bt->io->outputb(bt->io, 1, x)
drivers/char/ipmi/ipmi_bt_sm.c
116
#define BT_INTMASK_R bt->io->inputb(bt->io, 2)
drivers/char/ipmi/ipmi_bt_sm.c
117
#define BT_INTMASK_W(x) bt->io->outputb(bt->io, 2, x)
drivers/char/ipmi/ipmi_bt_sm.c
173
static unsigned int bt_init_data(struct si_sm_data *bt, struct si_sm_io *io)
drivers/char/ipmi/ipmi_bt_sm.c
176
if (bt->io != io) {
drivers/char/ipmi/ipmi_bt_sm.c
178
bt->io = io;
drivers/char/ipmi/ipmi_bt_sm.c
217
dev_warn(bt->io->dev, "BT in invalid state %d\n", bt->state);
drivers/char/ipmi/ipmi_bt_sm.c
222
dev_dbg(bt->io->dev, "+++++++++++++++++ New command\n");
drivers/char/ipmi/ipmi_bt_sm.c
223
dev_dbg(bt->io->dev, "NetFn/LUN CMD [%d data]:", size - 2);
drivers/char/ipmi/ipmi_bt_sm.c
267
dev_dbg(bt->io->dev, "result %d bytes:", msg_len);
drivers/char/ipmi/ipmi_bt_sm.c
281
dev_dbg(bt->io->dev, "flag reset %s\n", status2txt(BT_STATUS));
drivers/char/ipmi/ipmi_bt_sm.c
307
dev_dbg(bt->io->dev, "stale response %s; ",
drivers/char/ipmi/ipmi_bt_sm.c
322
dev_dbg(bt->io->dev, "write %d bytes seq=0x%02X",
drivers/char/ipmi/ipmi_bt_sm.c
346
dev_dbg(bt->io->dev,
drivers/char/ipmi/ipmi_bt_sm.c
358
dev_dbg(bt->io->dev,
drivers/char/ipmi/ipmi_bt_sm.c
374
dev_dbg(bt->io->dev,
drivers/char/ipmi/ipmi_bt_sm.c
401
dev_warn(bt->io->dev, "IPMI BT: %s in %s %s ", /* open-ended line */
drivers/char/ipmi/ipmi_bt_sm.c
416
dev_warn(bt->io->dev, "failed %d retries, sending error response\n",
drivers/char/ipmi/ipmi_bt_sm.c
419
dev_err(bt->io->dev, "stuck, try power cycle\n");
drivers/char/ipmi/ipmi_bt_sm.c
423
dev_warn(bt->io->dev, "BT reset (takes 5 secs)\n");
drivers/char/ipmi/ipmi_bt_sm.c
459
dev_dbg(bt->io->dev, "BT: %s %s TO=%ld - %ld\n",
drivers/char/ipmi/ipmi_bt_sm.c
574
bt_init_data(bt, bt->io);
drivers/char/ipmi/ipmi_bt_sm.c
640
dev_warn(bt->io->dev,
drivers/char/ipmi/ipmi_bt_sm.c
658
bt_init_data(bt, bt->io);
drivers/char/ipmi/ipmi_bt_sm.c
660
dev_warn(bt->io->dev, "bt cap response too short: %d\n", rv);
drivers/char/ipmi/ipmi_bt_sm.c
665
dev_warn(bt->io->dev, "Error fetching bt cap: %x\n", BT_CAP[2]);
drivers/char/ipmi/ipmi_bt_sm.c
667
dev_warn(bt->io->dev, "using default values\n");
drivers/char/ipmi/ipmi_bt_sm.c
673
dev_info(bt->io->dev, "req2rsp=%ld secs retries=%d\n",
drivers/char/ipmi/ipmi_bt_sm.c
79
struct si_sm_io *io;
drivers/char/ipmi/ipmi_kcs_sm.c
110
struct si_sm_io *io;
drivers/char/ipmi/ipmi_kcs_sm.c
126
struct si_sm_io *io)
drivers/char/ipmi/ipmi_kcs_sm.c
129
kcs->io = io;
drivers/char/ipmi/ipmi_kcs_sm.c
145
return kcs->io->inputb(kcs->io, 1);
drivers/char/ipmi/ipmi_kcs_sm.c
150
return kcs->io->inputb(kcs->io, 0);
drivers/char/ipmi/ipmi_kcs_sm.c
155
kcs->io->outputb(kcs->io, 1, data);
drivers/char/ipmi/ipmi_kcs_sm.c
160
kcs->io->outputb(kcs->io, 0, data);
drivers/char/ipmi/ipmi_kcs_sm.c
192
dev_dbg(kcs->io->dev, "ipmi_kcs_sm: kcs hosed: %s\n",
drivers/char/ipmi/ipmi_kcs_sm.c
274
dev_warn(kcs->io->dev, "KCS in invalid state %d\n", kcs->state);
drivers/char/ipmi/ipmi_kcs_sm.c
279
dev_dbg(kcs->io->dev, "%s -", __func__);
drivers/char/ipmi/ipmi_kcs_sm.c
338
dev_dbg(kcs->io->dev,
drivers/char/ipmi/ipmi_kcs_sm.c
498
init_kcs_data(kcs, kcs->io);
drivers/char/ipmi/ipmi_si.h
119
int ipmi_si_port_setup(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
120
int ipmi_si_mem_setup(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
47
unsigned char (*inputb)(const struct si_sm_io *io, unsigned int offset);
drivers/char/ipmi/ipmi_si.h
48
void (*outputb)(const struct si_sm_io *io,
drivers/char/ipmi/ipmi_si.h
70
int (*irq_setup)(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
72
void (*irq_cleanup)(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
79
int ipmi_si_add_smi(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
81
void ipmi_irq_start_cleanup(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
82
int ipmi_std_irq_setup(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si.h
83
void ipmi_irq_finish_setup(struct si_sm_io *io);
drivers/char/ipmi/ipmi_si_intf.c
1168
} else if ((smi_info->io.irq) && (!smi_info->interrupt_disabled)) {
drivers/char/ipmi/ipmi_si_intf.c
1196
if (smi_info->io.si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1198
smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG,
drivers/char/ipmi/ipmi_si_intf.c
1227
if (new_smi->io.irq_setup) {
drivers/char/ipmi/ipmi_si_intf.c
1228
new_smi->io.irq_handler_data = new_smi;
drivers/char/ipmi/ipmi_si_intf.c
1229
new_smi->io.irq_setup(&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
1241
else if (new_smi->io.si_info->type != SI_BT && !new_smi->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
1248
dev_notice(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1262
data->addr_src = smi->io.addr_source;
drivers/char/ipmi/ipmi_si_intf.c
1263
data->dev = smi->io.dev;
drivers/char/ipmi/ipmi_si_intf.c
1264
data->addr_info = smi->io.addr_info;
drivers/char/ipmi/ipmi_si_intf.c
1265
get_device(smi->io.dev);
drivers/char/ipmi/ipmi_si_intf.c
1310
void ipmi_irq_finish_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1312
if (io->si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1314
io->outputb(io, IPMI_BT_INTMASK_REG,
drivers/char/ipmi/ipmi_si_intf.c
1318
void ipmi_irq_start_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1320
if (io->si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1322
io->outputb(io, IPMI_BT_INTMASK_REG, 0);
drivers/char/ipmi/ipmi_si_intf.c
1325
static void std_irq_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1327
ipmi_irq_start_cleanup(io);
drivers/char/ipmi/ipmi_si_intf.c
1328
free_irq(io->irq, io->irq_handler_data);
drivers/char/ipmi/ipmi_si_intf.c
1331
int ipmi_std_irq_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1335
if (!io->irq)
drivers/char/ipmi/ipmi_si_intf.c
1338
rv = request_irq(io->irq,
drivers/char/ipmi/ipmi_si_intf.c
1342
io->irq_handler_data);
drivers/char/ipmi/ipmi_si_intf.c
1344
dev_warn(io->dev, "%s unable to claim interrupt %d, running polled\n",
drivers/char/ipmi/ipmi_si_intf.c
1345
SI_DEVICE_NAME, io->irq);
drivers/char/ipmi/ipmi_si_intf.c
1346
io->irq = 0;
drivers/char/ipmi/ipmi_si_intf.c
1348
io->irq_cleanup = std_irq_cleanup;
drivers/char/ipmi/ipmi_si_intf.c
1349
ipmi_irq_finish_setup(io);
drivers/char/ipmi/ipmi_si_intf.c
1350
dev_info(io->dev, "Using irq %d\n", io->irq);
drivers/char/ipmi/ipmi_si_intf.c
1421
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1450
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
146
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_intf.c
1463
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1498
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1510
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1546
dev_err(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1556
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1572
if (!smi_info->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
1582
dev_err(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1592
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1691
return sysfs_emit(buf, "%s\n", si_to_str[smi_info->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1700
int enabled = smi_info->io.irq && !smi_info->interrupt_disabled;
drivers/char/ipmi/ipmi_si_intf.c
1726
si_to_str[smi_info->io.si_info->type],
drivers/char/ipmi/ipmi_si_intf.c
1727
addr_space_to_str[smi_info->io.addr_space],
drivers/char/ipmi/ipmi_si_intf.c
1728
smi_info->io.addr_data,
drivers/char/ipmi/ipmi_si_intf.c
1729
smi_info->io.regspacing,
drivers/char/ipmi/ipmi_si_intf.c
1730
smi_info->io.regsize,
drivers/char/ipmi/ipmi_si_intf.c
1731
smi_info->io.regshift,
drivers/char/ipmi/ipmi_si_intf.c
1732
smi_info->io.irq,
drivers/char/ipmi/ipmi_si_intf.c
1733
smi_info->io.slave_addr);
drivers/char/ipmi/ipmi_si_intf.c
1880
smi_info->io.si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1924
if (e->io.addr_space != info->io.addr_space)
drivers/char/ipmi/ipmi_si_intf.c
1926
if (e->io.addr_data == info->io.addr_data) {
drivers/char/ipmi/ipmi_si_intf.c
1932
if (info->io.slave_addr && !e->io.slave_addr)
drivers/char/ipmi/ipmi_si_intf.c
1933
e->io.slave_addr = info->io.slave_addr;
drivers/char/ipmi/ipmi_si_intf.c
1941
int ipmi_si_add_smi(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1951
if (io->addr_source != SI_HARDCODED && io->addr_source != SI_HOTMOD &&
drivers/char/ipmi/ipmi_si_intf.c
1952
ipmi_si_hardcode_match(io->addr_space, io->addr_data)) {
drivers/char/ipmi/ipmi_si_intf.c
1953
dev_info(io->dev,
drivers/char/ipmi/ipmi_si_intf.c
1958
if (!io->io_setup) {
drivers/char/ipmi/ipmi_si_intf.c
1960
io->addr_space == IPMI_IO_ADDR_SPACE) {
drivers/char/ipmi/ipmi_si_intf.c
1961
io->io_setup = ipmi_si_port_setup;
drivers/char/ipmi/ipmi_si_intf.c
1962
} else if (io->addr_space == IPMI_MEM_ADDR_SPACE) {
drivers/char/ipmi/ipmi_si_intf.c
1963
io->io_setup = ipmi_si_mem_setup;
drivers/char/ipmi/ipmi_si_intf.c
1974
new_smi->io = *io;
drivers/char/ipmi/ipmi_si_intf.c
1979
if (new_smi->io.addr_source == SI_ACPI &&
drivers/char/ipmi/ipmi_si_intf.c
1980
dup->io.addr_source == SI_SMBIOS) {
drivers/char/ipmi/ipmi_si_intf.c
1982
dev_info(dup->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1984
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1987
dev_info(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1989
ipmi_addr_src_to_str(new_smi->io.addr_source),
drivers/char/ipmi/ipmi_si_intf.c
1990
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1998
ipmi_addr_src_to_str(new_smi->io.addr_source),
drivers/char/ipmi/ipmi_si_intf.c
1999
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
2021
ipmi_addr_src_to_str(new_smi->io.addr_source),
drivers/char/ipmi/ipmi_si_intf.c
2022
si_to_str[new_smi->io.si_info->type],
drivers/char/ipmi/ipmi_si_intf.c
2023
addr_space_to_str[new_smi->io.addr_space],
drivers/char/ipmi/ipmi_si_intf.c
2024
new_smi->io.addr_data,
drivers/char/ipmi/ipmi_si_intf.c
2025
new_smi->io.slave_addr, new_smi->io.irq);
drivers/char/ipmi/ipmi_si_intf.c
2027
switch (new_smi->io.si_info->type) {
drivers/char/ipmi/ipmi_si_intf.c
2049
if (!new_smi->io.dev) {
drivers/char/ipmi/ipmi_si_intf.c
2061
new_smi->io.io_size = new_smi->handlers->init_data(new_smi->si_sm,
drivers/char/ipmi/ipmi_si_intf.c
2062
&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
2065
rv = new_smi->io.io_setup(&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
2067
dev_err(new_smi->io.dev, "Could not set up I/O space\n");
drivers/char/ipmi/ipmi_si_intf.c
2073
if (new_smi->io.addr_source)
drivers/char/ipmi/ipmi_si_intf.c
2074
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2086
if (new_smi->io.addr_source)
drivers/char/ipmi/ipmi_si_intf.c
2087
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2120
if (new_smi->io.irq) {
drivers/char/ipmi/ipmi_si_intf.c
2125
dev_set_drvdata(new_smi->io.dev, new_smi);
drivers/char/ipmi/ipmi_si_intf.c
2126
rv = device_add_group(new_smi->io.dev, &ipmi_si_dev_attr_group);
drivers/char/ipmi/ipmi_si_intf.c
2128
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2137
new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2138
new_smi->io.slave_addr);
drivers/char/ipmi/ipmi_si_intf.c
2140
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2149
dev_info(new_smi->io.dev, "IPMI %s interface initialized\n",
drivers/char/ipmi/ipmi_si_intf.c
2150
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
2152
WARN_ON(new_smi->io.dev->init_name != NULL);
drivers/char/ipmi/ipmi_si_intf.c
2155
if (rv && new_smi->io.io_cleanup) {
drivers/char/ipmi/ipmi_si_intf.c
2156
new_smi->io.io_cleanup(&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
2157
new_smi->io.io_cleanup = NULL;
drivers/char/ipmi/ipmi_si_intf.c
2173
return (e1->io.addr_space == e2->io.addr_space &&
drivers/char/ipmi/ipmi_si_intf.c
2174
e1->io.addr_data == e2->io.addr_data);
drivers/char/ipmi/ipmi_si_intf.c
2207
if (!e->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
2217
if (e2->io.irq && ipmi_smi_info_same(e, e2)) {
drivers/char/ipmi/ipmi_si_intf.c
2232
if (e->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
2241
if (!e2->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
2296
device_remove_group(smi_info->io.dev, &ipmi_si_dev_attr_group);
drivers/char/ipmi/ipmi_si_intf.c
2299
if (smi_info->io.dev)
drivers/char/ipmi/ipmi_si_intf.c
2300
dev_set_drvdata(smi_info->io.dev, NULL);
drivers/char/ipmi/ipmi_si_intf.c
2307
if (smi_info->io.irq_cleanup) {
drivers/char/ipmi/ipmi_si_intf.c
2308
smi_info->io.irq_cleanup(&smi_info->io);
drivers/char/ipmi/ipmi_si_intf.c
2309
smi_info->io.irq_cleanup = NULL;
drivers/char/ipmi/ipmi_si_intf.c
2335
if (smi_info->io.io_cleanup) {
drivers/char/ipmi/ipmi_si_intf.c
2336
smi_info->io.io_cleanup(&smi_info->io);
drivers/char/ipmi/ipmi_si_intf.c
2337
smi_info->io.io_cleanup = NULL;
drivers/char/ipmi/ipmi_si_intf.c
2366
if (e->io.dev == dev) {
drivers/char/ipmi/ipmi_si_intf.c
2383
if (e->io.addr_space != addr_space)
drivers/char/ipmi/ipmi_si_intf.c
2385
if (e->io.si_info->type != si_type)
drivers/char/ipmi/ipmi_si_intf.c
2387
if (e->io.addr_data == addr) {
drivers/char/ipmi/ipmi_si_intf.c
2388
dev = get_device(e->io.dev);
drivers/char/ipmi/ipmi_si_intf.c
282
dev_dbg(smi_info->io.dev, "**%s: %ptSp\n", msg, &t);
drivers/char/ipmi/ipmi_si_intf.c
448
if ((smi_info->io.irq) && (!smi_info->interrupt_disabled)) {
drivers/char/ipmi/ipmi_si_intf.c
458
if ((smi_info->io.irq) && (smi_info->interrupt_disabled)) {
drivers/char/ipmi/ipmi_si_intf.c
537
if (((smi_info->io.irq && !smi_info->interrupt_disabled) ||
drivers/char/ipmi/ipmi_si_intf.c
543
smi_info->io.irq && !smi_info->interrupt_disabled &&
drivers/char/ipmi/ipmi_si_intf.c
554
u8 irqstate = smi_info->io.inputb(&smi_info->io, IPMI_BT_INTMASK_REG);
drivers/char/ipmi/ipmi_si_intf.c
562
smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG,
drivers/char/ipmi/ipmi_si_intf.c
565
smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG, 0);
drivers/char/ipmi/ipmi_si_intf.c
626
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
734
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
742
if (smi_info->io.si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
772
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
914
if (smi_info->supports_event_msg_buff || smi_info->io.irq) {
drivers/char/ipmi/ipmi_si_ls2k.c
105
static void ls2k_mem_outb_v1(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_ls2k.c
108
void __iomem *addr = io->addr;
drivers/char/ipmi/ipmi_si_ls2k.c
126
static void ls2k_mem_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_ls2k.c
128
if (io->addr)
drivers/char/ipmi/ipmi_si_ls2k.c
129
iounmap(io->addr);
drivers/char/ipmi/ipmi_si_ls2k.c
132
static int ipmi_ls2k_mem_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_ls2k.c
136
io->addr = ioremap(io->addr_data, io->regspacing);
drivers/char/ipmi/ipmi_si_ls2k.c
137
if (!io->addr)
drivers/char/ipmi/ipmi_si_ls2k.c
140
version = readb(io->addr + LS2K_KCS_VERSION);
drivers/char/ipmi/ipmi_si_ls2k.c
142
io->inputb = version ? ls2k_mem_inb_v1 : ls2k_mem_inb_v0;
drivers/char/ipmi/ipmi_si_ls2k.c
143
io->outputb = version ? ls2k_mem_outb_v1 : ls2k_mem_outb_v0;
drivers/char/ipmi/ipmi_si_ls2k.c
144
io->io_cleanup = ls2k_mem_cleanup;
drivers/char/ipmi/ipmi_si_ls2k.c
151
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_ls2k.c
153
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_ls2k.c
155
io.si_info = &ipmi_kcs_si_info;
drivers/char/ipmi/ipmi_si_ls2k.c
156
io.io_setup = ipmi_ls2k_mem_setup;
drivers/char/ipmi/ipmi_si_ls2k.c
157
io.addr_data = pdev->resource[0].start;
drivers/char/ipmi/ipmi_si_ls2k.c
158
io.regspacing = resource_size(&pdev->resource[0]);
drivers/char/ipmi/ipmi_si_ls2k.c
159
io.dev = &pdev->dev;
drivers/char/ipmi/ipmi_si_ls2k.c
161
dev_dbg(&pdev->dev, "addr 0x%lx, spacing %d.\n", io.addr_data, io.regspacing);
drivers/char/ipmi/ipmi_si_ls2k.c
163
return ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_ls2k.c
44
static unsigned char ls2k_mem_inb_v0(const struct si_sm_io *io, unsigned int offset)
drivers/char/ipmi/ipmi_si_ls2k.c
46
void __iomem *addr = io->addr;
drivers/char/ipmi/ipmi_si_ls2k.c
59
static unsigned char ls2k_mem_inb_v1(const struct si_sm_io *io, unsigned int offset)
drivers/char/ipmi/ipmi_si_ls2k.c
61
void __iomem *addr = io->addr;
drivers/char/ipmi/ipmi_si_ls2k.c
82
static void ls2k_mem_outb_v0(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_ls2k.c
85
void __iomem *addr = io->addr;
drivers/char/ipmi/ipmi_si_mem_io.c
103
io->inputb = mem_inq;
drivers/char/ipmi/ipmi_si_mem_io.c
104
io->outputb = mem_outq;
drivers/char/ipmi/ipmi_si_mem_io.c
108
dev_warn(io->dev, "Invalid register size: %d\n",
drivers/char/ipmi/ipmi_si_mem_io.c
109
io->regsize);
drivers/char/ipmi/ipmi_si_mem_io.c
119
for (idx = 0; idx < io->io_size; idx++) {
drivers/char/ipmi/ipmi_si_mem_io.c
12
static void intf_mem_outb(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_mem_io.c
120
if (request_mem_region(addr + idx * io->regspacing,
drivers/char/ipmi/ipmi_si_mem_io.c
121
io->regsize, SI_DEVICE_NAME) == NULL) {
drivers/char/ipmi/ipmi_si_mem_io.c
123
mem_region_cleanup(io, idx);
drivers/char/ipmi/ipmi_si_mem_io.c
135
mapsize = ((io->io_size * io->regspacing)
drivers/char/ipmi/ipmi_si_mem_io.c
136
- (io->regspacing - io->regsize));
drivers/char/ipmi/ipmi_si_mem_io.c
137
io->addr = ioremap(addr, mapsize);
drivers/char/ipmi/ipmi_si_mem_io.c
138
if (io->addr == NULL) {
drivers/char/ipmi/ipmi_si_mem_io.c
139
mem_region_cleanup(io, io->io_size);
drivers/char/ipmi/ipmi_si_mem_io.c
143
io->io_cleanup = mem_cleanup;
drivers/char/ipmi/ipmi_si_mem_io.c
15
writeb(b, (io->addr)+(offset * io->regspacing));
drivers/char/ipmi/ipmi_si_mem_io.c
18
static unsigned char intf_mem_inw(const struct si_sm_io *io,
drivers/char/ipmi/ipmi_si_mem_io.c
21
return (readw((io->addr)+(offset * io->regspacing)) >> io->regshift)
drivers/char/ipmi/ipmi_si_mem_io.c
25
static void intf_mem_outw(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_mem_io.c
28
writeb(b << io->regshift, (io->addr)+(offset * io->regspacing));
drivers/char/ipmi/ipmi_si_mem_io.c
31
static unsigned char intf_mem_inl(const struct si_sm_io *io,
drivers/char/ipmi/ipmi_si_mem_io.c
34
return (readl((io->addr)+(offset * io->regspacing)) >> io->regshift)
drivers/char/ipmi/ipmi_si_mem_io.c
38
static void intf_mem_outl(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_mem_io.c
41
writel(b << io->regshift, (io->addr)+(offset * io->regspacing));
drivers/char/ipmi/ipmi_si_mem_io.c
45
static unsigned char mem_inq(const struct si_sm_io *io, unsigned int offset)
drivers/char/ipmi/ipmi_si_mem_io.c
47
return (readq((io->addr)+(offset * io->regspacing)) >> io->regshift)
drivers/char/ipmi/ipmi_si_mem_io.c
51
static void mem_outq(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_mem_io.c
54
writeq((u64)b << io->regshift, (io->addr)+(offset * io->regspacing));
drivers/char/ipmi/ipmi_si_mem_io.c
58
static void mem_region_cleanup(struct si_sm_io *io, int num)
drivers/char/ipmi/ipmi_si_mem_io.c
6
static unsigned char intf_mem_inb(const struct si_sm_io *io,
drivers/char/ipmi/ipmi_si_mem_io.c
60
unsigned long addr = io->addr_data;
drivers/char/ipmi/ipmi_si_mem_io.c
64
release_mem_region(addr + idx * io->regspacing,
drivers/char/ipmi/ipmi_si_mem_io.c
65
io->regsize);
drivers/char/ipmi/ipmi_si_mem_io.c
68
static void mem_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_mem_io.c
70
if (io->addr) {
drivers/char/ipmi/ipmi_si_mem_io.c
71
iounmap(io->addr);
drivers/char/ipmi/ipmi_si_mem_io.c
72
mem_region_cleanup(io, io->io_size);
drivers/char/ipmi/ipmi_si_mem_io.c
76
int ipmi_si_mem_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_mem_io.c
78
unsigned long addr = io->addr_data;
drivers/char/ipmi/ipmi_si_mem_io.c
88
switch (io->regsize) {
drivers/char/ipmi/ipmi_si_mem_io.c
9
return readb((io->addr)+(offset * io->regspacing));
drivers/char/ipmi/ipmi_si_mem_io.c
90
io->inputb = intf_mem_inb;
drivers/char/ipmi/ipmi_si_mem_io.c
91
io->outputb = intf_mem_outb;
drivers/char/ipmi/ipmi_si_mem_io.c
94
io->inputb = intf_mem_inw;
drivers/char/ipmi/ipmi_si_mem_io.c
95
io->outputb = intf_mem_outw;
drivers/char/ipmi/ipmi_si_mem_io.c
98
io->inputb = intf_mem_inl;
drivers/char/ipmi/ipmi_si_mem_io.c
99
io->outputb = intf_mem_outl;
drivers/char/ipmi/ipmi_si_parisc.c
12
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_parisc.c
14
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_parisc.c
16
io.si_info = &ipmi_kcs_si_info;
drivers/char/ipmi/ipmi_si_parisc.c
17
io.addr_source = SI_DEVICETREE;
drivers/char/ipmi/ipmi_si_parisc.c
18
io.addr_space = IPMI_MEM_ADDR_SPACE;
drivers/char/ipmi/ipmi_si_parisc.c
19
io.addr_data = dev->hpa.start;
drivers/char/ipmi/ipmi_si_parisc.c
20
io.regsize = 1;
drivers/char/ipmi/ipmi_si_parisc.c
21
io.regspacing = 1;
drivers/char/ipmi/ipmi_si_parisc.c
22
io.regshift = 0;
drivers/char/ipmi/ipmi_si_parisc.c
23
io.irq = 0; /* no interrupt */
drivers/char/ipmi/ipmi_si_parisc.c
24
io.irq_setup = NULL;
drivers/char/ipmi/ipmi_si_parisc.c
25
io.dev = &dev->dev;
drivers/char/ipmi/ipmi_si_parisc.c
27
dev_dbg(&dev->dev, "addr 0x%lx\n", io.addr_data);
drivers/char/ipmi/ipmi_si_parisc.c
29
return ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_pci.c
105
io.addr_space = IPMI_IO_ADDR_SPACE;
drivers/char/ipmi/ipmi_si_pci.c
106
io.io_setup = ipmi_si_port_setup;
drivers/char/ipmi/ipmi_si_pci.c
108
io.addr_space = IPMI_MEM_ADDR_SPACE;
drivers/char/ipmi/ipmi_si_pci.c
109
io.io_setup = ipmi_si_mem_setup;
drivers/char/ipmi/ipmi_si_pci.c
111
io.addr_data = pci_resource_start(pdev, 0);
drivers/char/ipmi/ipmi_si_pci.c
113
io.dev = &pdev->dev;
drivers/char/ipmi/ipmi_si_pci.c
115
io.regspacing = ipmi_pci_probe_regspacing(&io);
drivers/char/ipmi/ipmi_si_pci.c
116
io.regsize = DEFAULT_REGSIZE;
drivers/char/ipmi/ipmi_si_pci.c
117
io.regshift = 0;
drivers/char/ipmi/ipmi_si_pci.c
119
io.irq = pdev->irq;
drivers/char/ipmi/ipmi_si_pci.c
120
if (io.irq)
drivers/char/ipmi/ipmi_si_pci.c
121
io.irq_setup = ipmi_std_irq_setup;
drivers/char/ipmi/ipmi_si_pci.c
124
&pdev->resource[0], io.regsize, io.regspacing, io.irq);
drivers/char/ipmi/ipmi_si_pci.c
126
return ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_pci.c
24
static int ipmi_pci_probe_regspacing(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_pci.c
29
if (io->si_info->type != SI_KCS)
drivers/char/ipmi/ipmi_si_pci.c
32
io->regsize = DEFAULT_REGSIZE;
drivers/char/ipmi/ipmi_si_pci.c
33
io->regshift = 0;
drivers/char/ipmi/ipmi_si_pci.c
37
io->regspacing = regspacing;
drivers/char/ipmi/ipmi_si_pci.c
38
if (io->io_setup(io)) {
drivers/char/ipmi/ipmi_si_pci.c
39
dev_err(io->dev, "Could not setup I/O space\n");
drivers/char/ipmi/ipmi_si_pci.c
43
io->outputb(io, 1, 0x10);
drivers/char/ipmi/ipmi_si_pci.c
45
status = io->inputb(io, 1);
drivers/char/ipmi/ipmi_si_pci.c
46
io->io_cleanup(io);
drivers/char/ipmi/ipmi_si_pci.c
68
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_pci.c
73
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_pci.c
74
io.addr_source = SI_PCI;
drivers/char/ipmi/ipmi_si_pci.c
79
io.si_info = &ipmi_smic_si_info;
drivers/char/ipmi/ipmi_si_pci.c
83
io.si_info = &ipmi_kcs_si_info;
drivers/char/ipmi/ipmi_si_pci.c
87
io.si_info = &ipmi_bt_si_info;
drivers/char/ipmi/ipmi_si_platform.c
103
static void ipmi_set_addr_data_and_space(struct resource *r, struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_platform.c
106
io->addr_space = IPMI_IO_ADDR_SPACE;
drivers/char/ipmi/ipmi_si_platform.c
108
io->addr_space = IPMI_MEM_ADDR_SPACE;
drivers/char/ipmi/ipmi_si_platform.c
109
io->addr_data = r->start;
drivers/char/ipmi/ipmi_si_platform.c
114
struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_platform.c
123
ipmi_set_addr_data_and_space(res, io);
drivers/char/ipmi/ipmi_si_platform.c
125
io->regspacing = DEFAULT_REGSPACING;
drivers/char/ipmi/ipmi_si_platform.c
128
if (res_second->start > io->addr_data)
drivers/char/ipmi/ipmi_si_platform.c
129
io->regspacing = res_second->start - io->addr_data;
drivers/char/ipmi/ipmi_si_platform.c
137
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_platform.c
159
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_platform.c
160
io.addr_source = addr_source;
drivers/char/ipmi/ipmi_si_platform.c
166
io.si_info = &ipmi_kcs_si_info;
drivers/char/ipmi/ipmi_si_platform.c
169
io.si_info = &ipmi_smic_si_info;
drivers/char/ipmi/ipmi_si_platform.c
172
io.si_info = &ipmi_bt_si_info;
drivers/char/ipmi/ipmi_si_platform.c
181
io.regsize = DEFAULT_REGSIZE;
drivers/char/ipmi/ipmi_si_platform.c
184
io.regsize = regsize;
drivers/char/ipmi/ipmi_si_platform.c
186
io.regshift = 0;
drivers/char/ipmi/ipmi_si_platform.c
189
io.regshift = regshift;
drivers/char/ipmi/ipmi_si_platform.c
191
if (!ipmi_get_info_from_resources(pdev, &io))
drivers/char/ipmi/ipmi_si_platform.c
196
io.slave_addr = 0x20;
drivers/char/ipmi/ipmi_si_platform.c
198
io.slave_addr = slave_addr;
drivers/char/ipmi/ipmi_si_platform.c
200
io.irq = platform_get_irq_optional(pdev, 0);
drivers/char/ipmi/ipmi_si_platform.c
201
if (io.irq > 0)
drivers/char/ipmi/ipmi_si_platform.c
202
io.irq_setup = ipmi_std_irq_setup;
drivers/char/ipmi/ipmi_si_platform.c
204
io.irq = 0;
drivers/char/ipmi/ipmi_si_platform.c
206
io.dev = &pdev->dev;
drivers/char/ipmi/ipmi_si_platform.c
210
(io.addr_space == IPMI_IO_ADDR_SPACE) ? "io" : "mem",
drivers/char/ipmi/ipmi_si_platform.c
211
io.addr_data, io.regsize, io.regspacing, io.irq);
drivers/char/ipmi/ipmi_si_platform.c
213
ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_platform.c
229
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_platform.c
268
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_platform.c
269
io.si_info = device_get_match_data(&pdev->dev);
drivers/char/ipmi/ipmi_si_platform.c
270
io.addr_source = SI_DEVICETREE;
drivers/char/ipmi/ipmi_si_platform.c
271
io.irq_setup = ipmi_std_irq_setup;
drivers/char/ipmi/ipmi_si_platform.c
273
ipmi_set_addr_data_and_space(&resource, &io);
drivers/char/ipmi/ipmi_si_platform.c
275
io.regsize = regsize ? be32_to_cpup(regsize) : DEFAULT_REGSIZE;
drivers/char/ipmi/ipmi_si_platform.c
276
io.regspacing = regspacing ? be32_to_cpup(regspacing) : DEFAULT_REGSPACING;
drivers/char/ipmi/ipmi_si_platform.c
277
io.regshift = regshift ? be32_to_cpup(regshift) : 0;
drivers/char/ipmi/ipmi_si_platform.c
279
io.irq = platform_get_irq_optional(pdev, 0);
drivers/char/ipmi/ipmi_si_platform.c
280
if (io.irq < 0)
drivers/char/ipmi/ipmi_si_platform.c
281
io.irq = 0;
drivers/char/ipmi/ipmi_si_platform.c
283
io.dev = &pdev->dev;
drivers/char/ipmi/ipmi_si_platform.c
286
io.addr_data, io.regsize, io.regspacing, io.irq);
drivers/char/ipmi/ipmi_si_platform.c
288
return ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_platform.c
299
static int find_slave_address(struct si_sm_io *io, int slave_addr)
drivers/char/ipmi/ipmi_si_platform.c
303
slave_addr = ipmi_dmi_get_slave_addr(io->si_info->type,
drivers/char/ipmi/ipmi_si_platform.c
304
io->addr_space,
drivers/char/ipmi/ipmi_si_platform.c
305
io->addr_data);
drivers/char/ipmi/ipmi_si_platform.c
314
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_platform.c
327
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_platform.c
328
io.addr_source = SI_ACPI;
drivers/char/ipmi/ipmi_si_platform.c
331
io.addr_info.acpi_info.acpi_handle = handle;
drivers/char/ipmi/ipmi_si_platform.c
342
io.si_info = &ipmi_kcs_si_info;
drivers/char/ipmi/ipmi_si_platform.c
345
io.si_info = &ipmi_smic_si_info;
drivers/char/ipmi/ipmi_si_platform.c
348
io.si_info = &ipmi_bt_si_info;
drivers/char/ipmi/ipmi_si_platform.c
357
io.dev = dev;
drivers/char/ipmi/ipmi_si_platform.c
358
io.regsize = DEFAULT_REGSIZE;
drivers/char/ipmi/ipmi_si_platform.c
359
io.regshift = 0;
drivers/char/ipmi/ipmi_si_platform.c
361
res = ipmi_get_info_from_resources(pdev, &io);
drivers/char/ipmi/ipmi_si_platform.c
368
io.irq = tmp;
drivers/char/ipmi/ipmi_si_platform.c
369
io.irq_setup = acpi_gpe_irq_setup;
drivers/char/ipmi/ipmi_si_platform.c
374
io.irq = irq;
drivers/char/ipmi/ipmi_si_platform.c
375
io.irq_setup = ipmi_std_irq_setup;
drivers/char/ipmi/ipmi_si_platform.c
379
io.slave_addr = find_slave_address(&io, io.slave_addr);
drivers/char/ipmi/ipmi_si_platform.c
382
res, io.regsize, io.regspacing, io.irq);
drivers/char/ipmi/ipmi_si_platform.c
386
return ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_platform.c
61
struct si_sm_io *io = context;
drivers/char/ipmi/ipmi_si_platform.c
63
ipmi_si_irq_handler(io->irq, io->irq_handler_data);
drivers/char/ipmi/ipmi_si_platform.c
67
static void acpi_gpe_irq_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_platform.c
69
if (!io->irq)
drivers/char/ipmi/ipmi_si_platform.c
72
ipmi_irq_start_cleanup(io);
drivers/char/ipmi/ipmi_si_platform.c
73
acpi_remove_gpe_handler(NULL, io->irq, &ipmi_acpi_gpe);
drivers/char/ipmi/ipmi_si_platform.c
76
static int acpi_gpe_irq_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_platform.c
80
if (!io->irq)
drivers/char/ipmi/ipmi_si_platform.c
84
io->irq,
drivers/char/ipmi/ipmi_si_platform.c
87
io);
drivers/char/ipmi/ipmi_si_platform.c
89
dev_warn(io->dev,
drivers/char/ipmi/ipmi_si_platform.c
91
io->irq);
drivers/char/ipmi/ipmi_si_platform.c
92
io->irq = 0;
drivers/char/ipmi/ipmi_si_platform.c
96
io->irq_cleanup = acpi_gpe_irq_cleanup;
drivers/char/ipmi/ipmi_si_platform.c
97
ipmi_irq_finish_setup(io);
drivers/char/ipmi/ipmi_si_platform.c
98
dev_info(io->dev, "Using ACPI GPE %d\n", io->irq);
drivers/char/ipmi/ipmi_si_port_io.c
10
return inb(addr + (offset * io->regspacing));
drivers/char/ipmi/ipmi_si_port_io.c
100
for (idx = 0; idx < io->io_size; idx++) {
drivers/char/ipmi/ipmi_si_port_io.c
101
if (request_region(addr + idx * io->regspacing,
drivers/char/ipmi/ipmi_si_port_io.c
102
io->regsize, SI_DEVICE_NAME) == NULL) {
drivers/char/ipmi/ipmi_si_port_io.c
105
release_region(addr + idx * io->regspacing,
drivers/char/ipmi/ipmi_si_port_io.c
106
io->regsize);
drivers/char/ipmi/ipmi_si_port_io.c
111
io->io_cleanup = port_cleanup;
drivers/char/ipmi/ipmi_si_port_io.c
13
static void port_outb(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_port_io.c
16
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
18
outb(b, addr + (offset * io->regspacing));
drivers/char/ipmi/ipmi_si_port_io.c
21
static unsigned char port_inw(const struct si_sm_io *io, unsigned int offset)
drivers/char/ipmi/ipmi_si_port_io.c
23
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
25
return (inw(addr + (offset * io->regspacing)) >> io->regshift) & 0xff;
drivers/char/ipmi/ipmi_si_port_io.c
28
static void port_outw(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_port_io.c
31
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
33
outw(b << io->regshift, addr + (offset * io->regspacing));
drivers/char/ipmi/ipmi_si_port_io.c
36
static unsigned char port_inl(const struct si_sm_io *io, unsigned int offset)
drivers/char/ipmi/ipmi_si_port_io.c
38
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
40
return (inl(addr + (offset * io->regspacing)) >> io->regshift) & 0xff;
drivers/char/ipmi/ipmi_si_port_io.c
43
static void port_outl(const struct si_sm_io *io, unsigned int offset,
drivers/char/ipmi/ipmi_si_port_io.c
46
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
48
outl(b << io->regshift, addr+(offset * io->regspacing));
drivers/char/ipmi/ipmi_si_port_io.c
51
static void port_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_port_io.c
53
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
57
for (idx = 0; idx < io->io_size; idx++)
drivers/char/ipmi/ipmi_si_port_io.c
58
release_region(addr + idx * io->regspacing,
drivers/char/ipmi/ipmi_si_port_io.c
59
io->regsize);
drivers/char/ipmi/ipmi_si_port_io.c
6
static unsigned char port_inb(const struct si_sm_io *io, unsigned int offset)
drivers/char/ipmi/ipmi_si_port_io.c
63
int ipmi_si_port_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_port_io.c
65
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
75
switch (io->regsize) {
drivers/char/ipmi/ipmi_si_port_io.c
77
io->inputb = port_inb;
drivers/char/ipmi/ipmi_si_port_io.c
78
io->outputb = port_outb;
drivers/char/ipmi/ipmi_si_port_io.c
8
unsigned int addr = io->addr_data;
drivers/char/ipmi/ipmi_si_port_io.c
81
io->inputb = port_inw;
drivers/char/ipmi/ipmi_si_port_io.c
82
io->outputb = port_outw;
drivers/char/ipmi/ipmi_si_port_io.c
85
io->inputb = port_inl;
drivers/char/ipmi/ipmi_si_port_io.c
86
io->outputb = port_outl;
drivers/char/ipmi/ipmi_si_port_io.c
89
dev_warn(io->dev, "Invalid register size: %d\n",
drivers/char/ipmi/ipmi_si_port_io.c
90
io->regsize);
drivers/char/ipmi/ipmi_si_sm.h
57
struct si_sm_io *io);
drivers/char/ipmi/ipmi_smic_sm.c
105
struct si_sm_io *io)
drivers/char/ipmi/ipmi_smic_sm.c
108
smic->io = io;
drivers/char/ipmi/ipmi_smic_sm.c
132
dev_warn(smic->io->dev,
drivers/char/ipmi/ipmi_smic_sm.c
138
dev_dbg(smic->io->dev, "%s -", __func__);
drivers/char/ipmi/ipmi_smic_sm.c
160
dev_dbg(smic->io->dev, "smic_get result -");
drivers/char/ipmi/ipmi_smic_sm.c
184
return smic->io->inputb(smic->io, 2);
drivers/char/ipmi/ipmi_smic_sm.c
189
return smic->io->inputb(smic->io, 1);
drivers/char/ipmi/ipmi_smic_sm.c
194
return smic->io->inputb(smic->io, 0);
drivers/char/ipmi/ipmi_smic_sm.c
200
smic->io->outputb(smic->io, 2, flags);
drivers/char/ipmi/ipmi_smic_sm.c
206
smic->io->outputb(smic->io, 1, control);
drivers/char/ipmi/ipmi_smic_sm.c
212
smic->io->outputb(smic->io, 0, data);
drivers/char/ipmi/ipmi_smic_sm.c
327
init_smic_data(smic, smic->io);
drivers/char/ipmi/ipmi_smic_sm.c
332
dev_dbg(smic->io->dev,
drivers/char/ipmi/ipmi_smic_sm.c
353
dev_dbg(smic->io->dev,
drivers/char/ipmi/ipmi_smic_sm.c
445
dev_dbg(smic->io->dev,
drivers/char/ipmi/ipmi_smic_sm.c
526
dev_dbg(smic->io->dev,
drivers/char/ipmi/ipmi_smic_sm.c
539
init_smic_data(smic, smic->io);
drivers/char/ipmi/ipmi_smic_sm.c
544
dev_dbg(smic->io->dev,
drivers/char/ipmi/ipmi_smic_sm.c
92
struct si_sm_io *io;
drivers/clk/clk-nspire.c
109
void __iomem *io;
drivers/clk/clk-nspire.c
114
io = of_iomap(node, 0);
drivers/clk/clk-nspire.c
115
if (!io)
drivers/clk/clk-nspire.c
117
val = readl(io);
drivers/clk/clk-nspire.c
118
iounmap(io);
drivers/clk/clk-nspire.c
67
void __iomem *io;
drivers/clk/clk-nspire.c
73
io = of_iomap(node, 0);
drivers/clk/clk-nspire.c
74
if (!io)
drivers/clk/clk-nspire.c
76
val = readl(io);
drivers/clk/clk-nspire.c
77
iounmap(io);
drivers/clk/rockchip/clk.h
1192
#define INVERTER(_id, cname, pname, io, is, if) \
drivers/clk/rockchip/clk.h
1199
.muxdiv_offset = io, \
drivers/clk/ti/clk.c
402
struct clk_iomap *io;
drivers/clk/ti/clk.c
414
io = kzalloc_obj(*io);
drivers/clk/ti/clk.c
415
if (!io)
drivers/clk/ti/clk.c
418
io->regmap = syscon;
drivers/clk/ti/clk.c
419
io->mem = mem;
drivers/clk/ti/clk.c
421
clk_memmaps[index] = io;
drivers/clk/ti/clk.c
435
struct clk_iomap *io;
drivers/clk/ti/clk.c
437
io = memblock_alloc_or_panic(sizeof(*io), SMP_CACHE_BYTES);
drivers/clk/ti/clk.c
439
io->mem = mem;
drivers/clk/ti/clk.c
441
clk_memmaps[index] = io;
drivers/clk/ti/clk.c
45
struct clk_iomap *io = clk_memmaps[reg->index];
drivers/clk/ti/clk.c
49
else if (io->regmap)
drivers/clk/ti/clk.c
50
regmap_write(io->regmap, reg->offset, val);
drivers/clk/ti/clk.c
52
writel_relaxed(val, io->mem + reg->offset);
drivers/clk/ti/clk.c
67
struct clk_iomap *io = clk_memmaps[reg->index];
drivers/clk/ti/clk.c
71
} else if (io->regmap) {
drivers/clk/ti/clk.c
72
regmap_update_bits(io->regmap, reg->offset, mask, val);
drivers/clk/ti/clk.c
74
_clk_rmw(val, mask, io->mem + reg->offset);
drivers/clk/ti/clk.c
81
struct clk_iomap *io = clk_memmaps[reg->index];
drivers/clk/ti/clk.c
85
else if (io->regmap)
drivers/clk/ti/clk.c
86
regmap_read(io->regmap, reg->offset, &val);
drivers/clk/ti/clk.c
88
val = readl_relaxed(io->mem + reg->offset);
drivers/comedi/drivers/comedi_8255.c
115
spriv->io(dev, 1, I8255_CTRL_REG, config, context);
drivers/comedi/drivers/comedi_8255.c
147
int (*io)(struct comedi_device *dev,
drivers/comedi/drivers/comedi_8255.c
154
if (!io)
drivers/comedi/drivers/comedi_8255.c
162
spriv->io = io;
drivers/comedi/drivers/comedi_8255.c
238
int (*io)(struct comedi_device *dev, int dir, int port,
drivers/comedi/drivers/comedi_8255.c
242
return __subdev_8255_init(dev, s, io, context);
drivers/comedi/drivers/comedi_8255.c
37
int (*io)(struct comedi_device *dev, int dir, int port, int data,
drivers/comedi/drivers/comedi_8255.c
78
spriv->io(dev, 1, I8255_DATA_A_REG,
drivers/comedi/drivers/comedi_8255.c
81
spriv->io(dev, 1, I8255_DATA_B_REG,
drivers/comedi/drivers/comedi_8255.c
84
spriv->io(dev, 1, I8255_DATA_C_REG,
drivers/comedi/drivers/comedi_8255.c
88
v = spriv->io(dev, 0, I8255_DATA_A_REG, 0, context);
drivers/comedi/drivers/comedi_8255.c
89
v |= (spriv->io(dev, 0, I8255_DATA_B_REG, 0, context) << 8);
drivers/comedi/drivers/comedi_8255.c
90
v |= (spriv->io(dev, 0, I8255_DATA_C_REG, 0, context) << 16);
drivers/comedi/drivers/pcl726.c
292
unsigned long io = dev->iobase;
drivers/comedi/drivers/pcl726.c
299
outb(s->state & 0xff, io + PCL727_DO_LSB_REG);
drivers/comedi/drivers/pcl726.c
301
outb((s->state >> 8), io + PCL727_DO_MSB_REG);
drivers/comedi/drivers/pcl726.c
304
outb(s->state & 0xff, io + PCL726_DO_LSB_REG);
drivers/comedi/drivers/pcl726.c
306
outb((s->state >> 8), io + PCL726_DO_MSB_REG);
drivers/comedi/kcomedilib/kcomedilib_main.c
240
unsigned int chan, unsigned int *io)
drivers/comedi/kcomedilib/kcomedilib_main.c
255
*io = data[1];
drivers/comedi/kcomedilib/kcomedilib_main.c
261
unsigned int chan, unsigned int io)
drivers/comedi/kcomedilib/kcomedilib_main.c
271
return comedi_do_insn(dev, &insn, &io);
drivers/counter/ftm-quaddec.c
265
struct resource *io;
drivers/counter/ftm-quaddec.c
273
io = platform_get_resource(pdev, IORESOURCE_MEM, 0);
drivers/counter/ftm-quaddec.c
274
if (!io) {
drivers/counter/ftm-quaddec.c
281
ftm->ftm_base = devm_ioremap(&pdev->dev, io->start, resource_size(io));
drivers/dma/dw-edma/dw-edma-pcie.c
439
ll_region->vaddr.io = pcim_iomap_table(pdev)[ll_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
440
if (!ll_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
443
ll_region->vaddr.io += ll_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
449
dt_region->vaddr.io = pcim_iomap_table(pdev)[dt_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
450
if (!dt_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
453
dt_region->vaddr.io += dt_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
466
ll_region->vaddr.io = pcim_iomap_table(pdev)[ll_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
467
if (!ll_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
470
ll_region->vaddr.io += ll_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
476
dt_region->vaddr.io = pcim_iomap_table(pdev)[dt_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
477
if (!dt_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
480
dt_region->vaddr.io += dt_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
508
chip->ll_region_wr[i].vaddr.io, &chip->ll_region_wr[i].paddr);
drivers/dma/dw-edma/dw-edma-pcie.c
513
chip->dt_region_wr[i].vaddr.io, &chip->dt_region_wr[i].paddr);
drivers/dma/dw-edma/dw-edma-pcie.c
520
chip->ll_region_rd[i].vaddr.io, &chip->ll_region_rd[i].paddr);
drivers/dma/dw-edma/dw-edma-pcie.c
525
chip->dt_region_rd[i].vaddr.io, &chip->dt_region_rd[i].paddr);
drivers/dma/dw-edma/dw-edma-v0-core.c
292
struct dw_edma_v0_lli __iomem *lli = chunk->ll_region.vaddr.io + ofs;
drivers/dma/dw-edma/dw-edma-v0-core.c
312
struct dw_edma_v0_llp __iomem *llp = chunk->ll_region.vaddr.io + ofs;
drivers/dma/dw-edma/dw-edma-v0-core.c
360
readl(chunk->ll_region.vaddr.io);
drivers/dma/dw-edma/dw-hdma-v0-core.c
168
struct dw_hdma_v0_lli __iomem *lli = chunk->ll_region.vaddr.io + ofs;
drivers/dma/dw-edma/dw-hdma-v0-core.c
188
struct dw_hdma_v0_llp __iomem *llp = chunk->ll_region.vaddr.io + ofs;
drivers/dma/dw-edma/dw-hdma-v0-core.c
225
readl(chunk->ll_region.vaddr.io);
drivers/dma/txx9dmac.c
1170
struct resource *io;
drivers/dma/txx9dmac.c
1175
io = platform_get_resource(pdev, IORESOURCE_MEM, 0);
drivers/dma/txx9dmac.c
1176
if (!io)
drivers/dma/txx9dmac.c
1183
if (!devm_request_mem_region(&pdev->dev, io->start, resource_size(io),
drivers/dma/txx9dmac.c
1187
ddev->regs = devm_ioremap(&pdev->dev, io->start, resource_size(io));
drivers/firmware/dmi-sysfs.c
257
} io;
drivers/firmware/dmi-sysfs.c
325
outb((u8)offset, sel->io.index_addr);
drivers/firmware/dmi-sysfs.c
326
ret = inb(sel->io.data_addr);
drivers/firmware/dmi-sysfs.c
337
outb((u8)offset, sel->io.index_addr);
drivers/firmware/dmi-sysfs.c
338
outb((u8)(offset >> 8), sel->io.index_addr + 1);
drivers/firmware/dmi-sysfs.c
339
ret = inb(sel->io.data_addr);
drivers/firmware/dmi-sysfs.c
350
outw((u16)offset, sel->io.index_addr);
drivers/firmware/dmi-sysfs.c
351
ret = inb(sel->io.data_addr);
drivers/firmware/efi/libstub/efistub.h
772
efi_pci_io_protocol_access_t io;
drivers/firmware/efi/libstub/efistub.h
795
efi_pci_io_protocol_access_32_t io;
drivers/firmware/efi/libstub/file.c
135
efi_simple_file_system_protocol_t *io;
drivers/firmware/efi/libstub/file.c
153
efi_bs_call(handle_protocol, handle, &fs_proto, (void **)&io))
drivers/firmware/efi/libstub/file.c
171
status = efi_call_proto(io, open_volume, volume);
drivers/firmware/efi/libstub/file.c
78
efi_simple_file_system_protocol_t *io;
drivers/firmware/efi/libstub/file.c
82
&fs_proto, (void **)&io);
drivers/firmware/efi/libstub/file.c
88
status = efi_call_proto(io, open_volume, fh);
drivers/gpio/gpio-mlxbf2.c
106
if (yu_arm_gpio_lock_param.io)
drivers/gpio/gpio-mlxbf2.c
117
yu_arm_gpio_lock_param.io = devm_ioremap(dev, res->start, size);
drivers/gpio/gpio-mlxbf2.c
118
if (!yu_arm_gpio_lock_param.io)
drivers/gpio/gpio-mlxbf2.c
138
arm_gpio_lock_val = readl(yu_arm_gpio_lock_param.io);
drivers/gpio/gpio-mlxbf2.c
149
writel(YU_ARM_GPIO_LOCK_ACQUIRE, yu_arm_gpio_lock_param.io);
drivers/gpio/gpio-mlxbf2.c
161
writel(YU_ARM_GPIO_LOCK_RELEASE, yu_arm_gpio_lock_param.io);
drivers/gpio/gpio-mlxbf2.c
80
void __iomem *io;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
14147
struct dmub_rb_cmd_fused_io *io = &command.fused_io;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
14149
io->header.type = DMUB_CMD__FUSED_IO;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
14150
io->header.sub_type = DMUB_CMD__FUSED_IO_ABORT;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
14151
io->header.payload_bytes = sizeof(*io) - sizeof(io->header);
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
14152
io->request = *request;
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
75
struct dmub_rb_cmd_fused_io *io = &commands[i].fused_io;
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
77
io->header.type = DMUB_CMD__FUSED_IO;
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
78
io->header.sub_type = DMUB_CMD__FUSED_IO_EXECUTE;
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
79
io->header.multi_cmd_pending = i != count - 1;
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
80
io->header.payload_bytes = sizeof(commands[i].fused_io) - sizeof(io->header);
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
82
timeout_us += timeout_per_request_us + io->request.timeout_us;
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
83
if (!io->request.timeout_us && io->request.u.aux.is_aux)
drivers/gpu/drm/amd/display/dc/dc_fused_io.c
84
timeout_us += timeout_per_aux_transaction_us * (io->request.u.aux.length / 16);
drivers/gpu/drm/i915/gem/i915_gem_region.c
132
offset + size > resource_size(&mem->io) &&
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
569
mem->io = DEFINE_RES_MEM(mem->io.start,
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
570
min(resource_size(&mem->io),
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
782
if (mem->type == INTEL_MEMORY_STOLEN_LOCAL && !resource_size(&mem->io) &&
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
867
if (resource_size(&mem->io) &&
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
868
!io_mapping_init_wc(&mem->iomap, mem->io.start, resource_size(&mem->io)))
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
880
if (resource_size(&mem->io))
drivers/gpu/drm/i915/gem/i915_gem_ttm.c
1094
if (!resource_size(&mr->io) && mr->type != INTEL_MEMORY_SYSTEM)
drivers/gpu/drm/i915/gem/i915_gem_ttm.c
147
} else if (resource_size(&mr->io) && resource_size(&mr->io) < mr->total) {
drivers/gpu/drm/i915/gem/i915_gem_ttm.c
152
WARN_ON(overflows_type(resource_size(&mr->io) >> PAGE_SHIFT, place->lpfn));
drivers/gpu/drm/i915/gem/i915_gem_ttm.c
153
place->lpfn = resource_size(&mr->io) >> PAGE_SHIFT;
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c
266
struct ttm_kmap_iter_iomap io;
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c
326
ttm_kmap_iter_iomap_init(&arg->_dst_iter.io, &dst_reg->iomap,
drivers/gpu/drm/i915/gem/i915_gem_ttm_move.c
331
ttm_kmap_iter_iomap_init(&arg->_src_iter.io, &src_reg->iomap,
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
104
u32 __iomem *io;
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1059
size = resource_size(&mr->io);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1333
if (!resource_size(&mr->io))
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1340
saved_io = mr->io;
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1341
if (resource_size(&mr->io) == mr->total) {
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1342
resource_size_t io_size = resource_size(&mr->io);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1348
mr->io = DEFINE_RES_MEM(mr->io.start, io_size);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1408
mr->io = saved_io;
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
141
io = i915_vma_pin_iomap(vma);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1410
resource_size(&mr->io) >> PAGE_SHIFT);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
143
if (IS_ERR(io)) {
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
145
page, (int)PTR_ERR(io));
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
146
err = PTR_ERR(io);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
150
iowrite32(page, io + n * PAGE_SIZE / sizeof(*io));
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
220
u32 __iomem *io;
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
238
io = i915_vma_pin_iomap(vma);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
240
if (IS_ERR(io)) {
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
242
page, (int)PTR_ERR(io));
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
243
return PTR_ERR(io);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
246
iowrite32(page, io + n * PAGE_SIZE / sizeof(*io));
drivers/gpu/drm/i915/gt/intel_region_lmem.c
133
mem->io.start,
drivers/gpu/drm/i915/gt/intel_region_lmem.c
134
resource_size(&mem->io)))
drivers/gpu/drm/i915/gt/selftest_tlb.c
209
if (mr && size > resource_size(&mr->io) / 4)
drivers/gpu/drm/i915/gt/selftest_tlb.c
210
size = resource_size(&mr->io) / 4;
drivers/gpu/drm/i915/i915_bo.c
214
(unsigned long)(mem->io.start +
drivers/gpu/drm/i915/i915_gpu_error.c
1212
if (offset + PAGE_SIZE > resource_size(&mem->io)) {
drivers/gpu/drm/i915/i915_mm.c
41
#define use_dma(io) ((io) != -1)
drivers/gpu/drm/i915/i915_query.c
507
info.probed_cpu_visible_size = resource_size(&mr->io);
drivers/gpu/drm/i915/intel_memory_region.c
106
if (resource_size(&mem->io) < PAGE_SIZE)
drivers/gpu/drm/i915/intel_memory_region.c
109
last = resource_size(&mem->io) - PAGE_SIZE;
drivers/gpu/drm/i915/intel_memory_region.c
222
if (!mem->io.start)
drivers/gpu/drm/i915/intel_memory_region.c
267
mem->io = DEFINE_RES_MEM(io_start, io_size);
drivers/gpu/drm/i915/intel_memory_region.c
397
io_size = resource_size(&mem->io) >> 20;
drivers/gpu/drm/i915/intel_memory_region.c
399
if (resource_size(&mem->io))
drivers/gpu/drm/i915/intel_memory_region.c
401
mem->id, mem->name, region_size, &mem->region, io_size, &mem->io);
drivers/gpu/drm/i915/intel_memory_region.c
54
&mem->region, &mem->io.start, &offset, caller,
drivers/gpu/drm/i915/intel_memory_region.c
71
va = ioremap_wc(mem->io.start + offset, PAGE_SIZE);
drivers/gpu/drm/i915/intel_memory_region.c
75
&mem->io.start, &offset, caller);
drivers/gpu/drm/i915/intel_memory_region.h
67
struct resource io;
drivers/gpu/drm/i915/intel_region_ttm.c
222
} else if (resource_size(&mem->io) && resource_size(&mem->io) < mem->total) {
drivers/gpu/drm/i915/intel_region_ttm.c
227
if (WARN_ON(overflows_type(resource_size(&mem->io) >> PAGE_SHIFT, place.lpfn))) {
drivers/gpu/drm/i915/intel_region_ttm.c
231
place.lpfn = resource_size(&mem->io) >> PAGE_SHIFT;
drivers/gpu/drm/i915/intel_region_ttm.c
90
resource_size(&mem->io),
drivers/gpu/drm/i915/selftests/intel_memory_region.c
539
if (start < resource_size(&mr->io))
drivers/gpu/drm/i915/selftests/intel_memory_region.c
540
total += min_t(u64, end, resource_size(&mr->io)) - start;
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.c
119
umem->io = (*type == NVKM_OBJECT_MAP_IO);
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.c
70
if (umem->io) {
drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.h
12
bool io:1;
drivers/gpu/drm/ttm/ttm_bo_util.c
158
struct ttm_kmap_iter_linear_io io;
drivers/gpu/drm/ttm/ttm_bo_util.c
175
dst_iter = ttm_kmap_iter_linear_io_init(&_dst_iter.io, bdev, dst_mem);
drivers/gpu/drm/ttm/ttm_bo_util.c
181
src_iter = ttm_kmap_iter_linear_io_init(&_src_iter.io, bdev, src_mem);
drivers/gpu/drm/ttm/ttm_bo_util.c
194
ttm_kmap_iter_linear_io_fini(&_src_iter.io, bdev, src_mem);
drivers/gpu/drm/ttm/ttm_bo_util.c
199
ttm_kmap_iter_linear_io_fini(&_dst_iter.io, bdev, dst_mem);
drivers/hwmon/kbatt.c
121
kbatt->base = devm_ioremap_resource(dev, &kbatt_auxdev->io);
drivers/hwmon/kfan.c
199
kfan->base = devm_ioremap_resource(dev, &kfan_auxdev->io);
drivers/i2c/busses/i2c-keba.c
526
ki2c->base = devm_ioremap_resource(dev, &ki2c->auxdev->io);
drivers/i2c/busses/i2c-mlxbf.c
1052
tmp_res->io = devm_platform_get_and_ioremap_resource(pdev, type, &tmp_res->params);
drivers/i2c/busses/i2c-mlxbf.c
1053
if (IS_ERR(tmp_res->io)) {
drivers/i2c/busses/i2c-mlxbf.c
1054
int ret = PTR_ERR(tmp_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1111
writel(timer, priv->timer->io +
drivers/i2c/busses/i2c-mlxbf.c
1122
writel(timer, priv->timer->io +
drivers/i2c/busses/i2c-mlxbf.c
1129
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_TIMER_THOLD);
drivers/i2c/busses/i2c-mlxbf.c
1135
writel(timer, priv->timer->io +
drivers/i2c/busses/i2c-mlxbf.c
1140
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_TIMER_TSETUP_DATA);
drivers/i2c/busses/i2c-mlxbf.c
1146
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_THIGH_MAX_TBUF);
drivers/i2c/busses/i2c-mlxbf.c
1150
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_SCL_LOW_TIMEOUT);
drivers/i2c/busses/i2c-mlxbf.c
1268
if (gpio_res->io)
drivers/i2c/busses/i2c-mlxbf.c
1277
gpio_res->io = devm_ioremap(dev, params->start, size);
drivers/i2c/busses/i2c-mlxbf.c
1278
if (!gpio_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1299
if (gpio_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1302
devm_iounmap(dev, gpio_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1333
if (corepll_res->io)
drivers/i2c/busses/i2c-mlxbf.c
1342
corepll_res->io = devm_ioremap(dev, params->start, size);
drivers/i2c/busses/i2c-mlxbf.c
1343
if (!corepll_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1363
if (corepll_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1366
devm_iounmap(dev, corepll_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1418
config_reg = readl(gpio_res->io + MLXBF_I2C_GPIO_0_FUNC_EN_0);
drivers/i2c/busses/i2c-mlxbf.c
1421
writel(config_reg, gpio_res->io + MLXBF_I2C_GPIO_0_FUNC_EN_0);
drivers/i2c/busses/i2c-mlxbf.c
1423
config_reg = readl(gpio_res->io + MLXBF_I2C_GPIO_0_FORCE_OE_EN);
drivers/i2c/busses/i2c-mlxbf.c
1426
writel(config_reg, gpio_res->io + MLXBF_I2C_GPIO_0_FORCE_OE_EN);
drivers/i2c/busses/i2c-mlxbf.c
1440
corepll_val = readl(corepll_res->io + MLXBF_I2C_CORE_PLL_REG1);
drivers/i2c/busses/i2c-mlxbf.c
1469
corepll_reg1_val = readl(corepll_res->io + MLXBF_I2C_CORE_PLL_REG1);
drivers/i2c/busses/i2c-mlxbf.c
1470
corepll_reg2_val = readl(corepll_res->io + MLXBF_I2C_CORE_PLL_REG2);
drivers/i2c/busses/i2c-mlxbf.c
1556
slave_reg = readl(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1578
writel(slave_reg, priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1613
slave_reg = readl(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1634
writel(slave_reg, priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1677
if (coalesce_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1688
coalesce_res->io = ioremap(params->start, size);
drivers/i2c/busses/i2c-mlxbf.c
1689
if (!coalesce_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1714
if (coalesce_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1719
iounmap(coalesce_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1738
writel(0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_FSM);
drivers/i2c/busses/i2c-mlxbf.c
1747
writel(~0, priv->slv_cause->io + MLXBF_I2C_CAUSE_OR_CLEAR);
drivers/i2c/busses/i2c-mlxbf.c
1750
writel(int_reg, priv->slv_cause->io + MLXBF_I2C_CAUSE_OR_EVTEN0);
drivers/i2c/busses/i2c-mlxbf.c
1753
writel(0x1, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_READY);
drivers/i2c/busses/i2c-mlxbf.c
1779
coalesce0_reg = readl(priv->coalesce->io + MLXBF_I2C_CAUSE_COALESCE_0);
drivers/i2c/busses/i2c-mlxbf.c
1786
cause_reg = readl(priv->slv_cause->io + MLXBF_I2C_CAUSE_ARBITER);
drivers/i2c/busses/i2c-mlxbf.c
1793
writel(~0x0, priv->slv_cause->io + MLXBF_I2C_CAUSE_OR_CLEAR);
drivers/i2c/busses/i2c-mlxbf.c
1831
data32 = ioread32be(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1894
writel(control32, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_GW);
drivers/i2c/busses/i2c-mlxbf.c
1900
readl_poll_timeout_atomic(priv->slv_cause->io + MLXBF_I2C_CAUSE_ARBITER,
drivers/i2c/busses/i2c-mlxbf.c
1906
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_RS_MASTER_BYTES);
drivers/i2c/busses/i2c-mlxbf.c
1907
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_PEC);
drivers/i2c/busses/i2c-mlxbf.c
1908
writel(0x1, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_READY);
drivers/i2c/busses/i2c-mlxbf.c
1962
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_RS_MASTER_BYTES);
drivers/i2c/busses/i2c-mlxbf.c
1963
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_PEC);
drivers/i2c/busses/i2c-mlxbf.c
1964
writel(0x1, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_READY);
drivers/i2c/busses/i2c-mlxbf.c
1999
rw_bytes_reg = readl(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
2279
priv->timer->io = priv->smbus->io;
drivers/i2c/busses/i2c-mlxbf.c
2280
priv->mst->io = priv->smbus->io + MLXBF_I2C_MST_ADDR_OFFSET;
drivers/i2c/busses/i2c-mlxbf.c
2281
priv->slv->io = priv->smbus->io + MLXBF_I2C_SLV_ADDR_OFFSET;
drivers/i2c/busses/i2c-mlxbf.c
391
void __iomem *io;
drivers/i2c/busses/i2c-mlxbf.c
533
readl_poll_timeout_atomic(priv->mst->io + MLXBF_I2C_SMBUS_MASTER_GW,
drivers/i2c/busses/i2c-mlxbf.c
538
cause_status_bits = readl(priv->mst_cause->io +
drivers/i2c/busses/i2c-mlxbf.c
546
master_status_bits = readl(priv->mst->io +
drivers/i2c/busses/i2c-mlxbf.c
590
iowrite32be(data32, priv->mst->io + addr + offset);
drivers/i2c/busses/i2c-mlxbf.c
592
iowrite32be(data32, priv->slv->io + addr + offset);
drivers/i2c/busses/i2c-mlxbf.c
615
data32 = ioread32be(priv->mst->io + addr + offset);
drivers/i2c/busses/i2c-mlxbf.c
617
data32 = ioread32be(priv->slv->io + addr + offset);
drivers/i2c/busses/i2c-mlxbf.c
625
data32 = ioread32be(priv->mst->io + addr + offset);
drivers/i2c/busses/i2c-mlxbf.c
627
data32 = ioread32be(priv->slv->io + addr + offset);
drivers/i2c/busses/i2c-mlxbf.c
656
writel(0x0, priv->mst->io + MLXBF_I2C_SMBUS_MASTER_STATUS);
drivers/i2c/busses/i2c-mlxbf.c
658
writel(~0x0, priv->mst_cause->io + MLXBF_I2C_CAUSE_OR_CLEAR);
drivers/i2c/busses/i2c-mlxbf.c
660
writel(0x0, priv->mst->io + MLXBF_I2C_SMBUS_MASTER_PEC);
drivers/i2c/busses/i2c-mlxbf.c
662
writel(0x0, priv->mst->io + priv->chip->smbus_master_rs_bytes_off);
drivers/i2c/busses/i2c-mlxbf.c
665
writel(command, priv->mst->io + MLXBF_I2C_SMBUS_MASTER_GW);
drivers/i2c/busses/i2c-mlxbf.c
708
ret = readl_poll_timeout_atomic(priv->mst->io + MLXBF_I2C_SMBUS_MASTER_GW,
drivers/i2c/busses/i2c-mlxbf.c
720
ret = readl_poll_timeout_atomic(priv->mst->io + priv->chip->smbus_master_fsm_off,
drivers/i2c/busses/i2c-mlxbf.c
819
priv->mst->io + priv->chip->smbus_master_fsm_off);
drivers/i2c/busses/i2c-mlxbf.c
824
writel(0, priv->mst->io + MLXBF_I2C_SMBUS_MASTER_GW);
drivers/i2c/busses/i2c-rcar.c
1140
priv->io = devm_platform_get_and_ioremap_resource(pdev, 0, &priv->res);
drivers/i2c/busses/i2c-rcar.c
1141
if (IS_ERR(priv->io))
drivers/i2c/busses/i2c-rcar.c
1142
return PTR_ERR(priv->io);
drivers/i2c/busses/i2c-rcar.c
144
void __iomem *io;
drivers/i2c/busses/i2c-rcar.c
179
writel(val, priv->io + reg);
drivers/i2c/busses/i2c-rcar.c
184
return readl(priv->io + reg);
drivers/i2c/busses/i2c-rcar.c
189
writel(~val & 0x7f, priv->io + ICMSR);
drivers/i2c/busses/i2c-rcar.c
275
ret = readl_poll_timeout(priv->io + ICMCR, val, !(val & FSDA), 10,
drivers/i3c/master/mipi-i3c-hci/core.c
154
ret = hci->io->init(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
236
hci->io->cleanup(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
292
ret = hci->io->queue_xfer(hci, xfer, n);
drivers/i3c/master/mipi-i3c-hci/core.c
309
if (hci->io->dequeue_xfer(hci, xfer, n)) {
drivers/i3c/master/mipi-i3c-hci/core.c
316
if (hci->io->handle_error) {
drivers/i3c/master/mipi-i3c-hci/core.c
322
return hci->io->handle_error(hci, xfer, n);
drivers/i3c/master/mipi-i3c-hci/core.c
646
return hci->io->request_ibi(hci, dev, req);
drivers/i3c/master/mipi-i3c-hci/core.c
665
hci->io->free_ibi(hci, dev);
drivers/i3c/master/mipi-i3c-hci/core.c
716
hci->io->recycle_ibi_slot(hci, dev, slot);
drivers/i3c/master/mipi-i3c-hci/core.c
778
if (hci->io->irq_handler(hci))
drivers/i3c/master/mipi-i3c-hci/core.c
852
if (hci->io) {
drivers/i3c/master/mipi-i3c-hci/core.c
853
ret = i3c_hci_set_io_mode(hci, hci->io == &mipi_i3c_hci_dma);
drivers/i3c/master/mipi-i3c-hci/core.c
859
hci->io = &mipi_i3c_hci_dma;
drivers/i3c/master/mipi-i3c-hci/core.c
865
if (!hci->io && hci->PIO_regs) {
drivers/i3c/master/mipi-i3c-hci/core.c
868
hci->io = &mipi_i3c_hci_pio;
drivers/i3c/master/mipi-i3c-hci/core.c
873
if (!hci->io) {
drivers/i3c/master/mipi-i3c-hci/core.c
896
hci->io->suspend(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
914
hci->io->resume(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
930
hci->io->suspend(hci);
drivers/i3c/master/mipi-i3c-hci/hci.h
51
const struct hci_io_ops *io;
drivers/input/gameport/emu10k1-gp.c
25
int io;
drivers/input/gameport/emu10k1-gp.c
58
emu->io = pci_resource_start(pdev, 0);
drivers/input/gameport/emu10k1-gp.c
67
port->io = emu->io;
drivers/input/gameport/emu10k1-gp.c
69
if (!request_region(emu->io, emu->size, "emu10k1-gp")) {
drivers/input/gameport/emu10k1-gp.c
71
emu->io, emu->io + emu->size - 1);
drivers/input/gameport/emu10k1-gp.c
95
release_region(emu->io, emu->size);
drivers/input/gameport/fm801-gp.c
103
outb(0x60, port->io + 0x0d); /* enable joystick 1 and 2 */
drivers/input/gameport/fm801-gp.c
33
w = inw(gameport->io + 2);
drivers/input/gameport/fm801-gp.c
36
w = inw(gameport->io + 4);
drivers/input/gameport/fm801-gp.c
38
w = inw(gameport->io + 6);
drivers/input/gameport/fm801-gp.c
41
w = inw(gameport->io + 8);
drivers/input/gameport/fm801-gp.c
43
outw(0xff, gameport->io); /* reset */
drivers/input/gameport/fm801-gp.c
90
port->io = pci_resource_start(pci, 0);
drivers/input/gameport/fm801-gp.c
93
gp->res_port = request_region(port->io, 0x10, "FM801 GP");
drivers/input/gameport/fm801-gp.c
96
port->io, port->io + 0x0f);
drivers/input/gameport/gameport.c
525
outb(0xff, gameport->io);
drivers/input/gameport/gameport.c
532
return inb(gameport->io);
drivers/input/gameport/gameport.c
593
if (gameport->io)
drivers/input/gameport/gameport.c
595
gameport->name, gameport->phys, gameport->io, gameport->speed);
drivers/input/gameport/lightning.c
230
port->io = L4_PORT;
drivers/input/gameport/ns558.c
100
release_region(io & (-1 << (i - 1)), (1 << (i - 1)));
drivers/input/gameport/ns558.c
102
if (!request_region(io & (-1 << i), (1 << i), "ns558-isa"))
drivers/input/gameport/ns558.c
105
outb(0xff, io & (-1 << i));
drivers/input/gameport/ns558.c
107
if (inb(io & (-1 << i)) != inb((io & (-1 << i)) + (1 << i) - 1)) b++;
drivers/input/gameport/ns558.c
111
release_region(io & (-1 << i), (1 << i));
drivers/input/gameport/ns558.c
119
if (!request_region(io & (-1 << i), (1 << i), "ns558-isa"))
drivers/input/gameport/ns558.c
127
release_region(io & (-1 << i), (1 << i));
drivers/input/gameport/ns558.c
133
ns558->io = io;
drivers/input/gameport/ns558.c
137
port->io = io;
drivers/input/gameport/ns558.c
139
gameport_set_phys(port, "isa%04x/gameport0", io & (-1 << i));
drivers/input/gameport/ns558.c
204
ns558->io = ioport;
drivers/input/gameport/ns558.c
212
port->io = ioport;
drivers/input/gameport/ns558.c
259
release_region(ns558->io & ~(ns558->size - 1), ns558->size);
drivers/input/gameport/ns558.c
30
int io;
drivers/input/gameport/ns558.c
45
static int ns558_isa_probe(int io)
drivers/input/gameport/ns558.c
56
if (!request_region(io, 1, "ns558-isa"))
drivers/input/gameport/ns558.c
64
c = inb(io);
drivers/input/gameport/ns558.c
65
outb(~c & ~3, io);
drivers/input/gameport/ns558.c
66
if (~(u = v = inb(io)) & 3) {
drivers/input/gameport/ns558.c
67
outb(c, io);
drivers/input/gameport/ns558.c
68
release_region(io, 1);
drivers/input/gameport/ns558.c
75
for (i = 0; i < 1000; i++) v &= inb(io);
drivers/input/gameport/ns558.c
78
outb(c, io);
drivers/input/gameport/ns558.c
79
release_region(io, 1);
drivers/input/gameport/ns558.c
87
u = inb(io);
drivers/input/gameport/ns558.c
89
if ((u ^ inb(io)) & 0xf) {
drivers/input/gameport/ns558.c
90
outb(c, io);
drivers/input/gameport/ns558.c
91
release_region(io, 1);
drivers/input/joystick/sidewinder.c
598
gameport->phys, gameport->io, gameport->speed);
drivers/input/serio/altera_ps2.c
115
ps2if->io = serio;
drivers/input/serio/altera_ps2.c
119
serio_register_port(ps2if->io);
drivers/input/serio/altera_ps2.c
132
serio_unregister_port(ps2if->io);
drivers/input/serio/altera_ps2.c
23
struct serio *io;
drivers/input/serio/altera_ps2.c
38
serio_interrupt(ps2if->io, status & 0xff, 0);
drivers/input/serio/altera_ps2.c
48
static int altera_ps2_write(struct serio *io, unsigned char val)
drivers/input/serio/altera_ps2.c
50
struct ps2if *ps2if = io->port_data;
drivers/input/serio/altera_ps2.c
56
static int altera_ps2_open(struct serio *io)
drivers/input/serio/altera_ps2.c
58
struct ps2if *ps2if = io->port_data;
drivers/input/serio/altera_ps2.c
68
static void altera_ps2_close(struct serio *io)
drivers/input/serio/altera_ps2.c
70
struct ps2if *ps2if = io->port_data;
drivers/input/serio/ambakmi.c
110
struct serio *io;
drivers/input/serio/ambakmi.c
118
io = kzalloc_obj(*io);
drivers/input/serio/ambakmi.c
119
if (!kmi || !io) {
drivers/input/serio/ambakmi.c
125
io->id.type = SERIO_8042;
drivers/input/serio/ambakmi.c
126
io->write = amba_kmi_write;
drivers/input/serio/ambakmi.c
127
io->open = amba_kmi_open;
drivers/input/serio/ambakmi.c
128
io->close = amba_kmi_close;
drivers/input/serio/ambakmi.c
129
strscpy(io->name, dev_name(&dev->dev), sizeof(io->name));
drivers/input/serio/ambakmi.c
130
strscpy(io->phys, dev_name(&dev->dev), sizeof(io->phys));
drivers/input/serio/ambakmi.c
131
io->port_data = kmi;
drivers/input/serio/ambakmi.c
132
io->dev.parent = &dev->dev;
drivers/input/serio/ambakmi.c
134
kmi->io = io;
drivers/input/serio/ambakmi.c
150
serio_register_port(kmi->io);
drivers/input/serio/ambakmi.c
157
kfree(io);
drivers/input/serio/ambakmi.c
166
serio_unregister_port(kmi->io);
drivers/input/serio/ambakmi.c
178
serio_reconnect(kmi->io);
drivers/input/serio/ambakmi.c
27
struct serio *io;
drivers/input/serio/ambakmi.c
42
serio_interrupt(kmi->io, readb(KMIDATA), 0);
drivers/input/serio/ambakmi.c
50
static int amba_kmi_write(struct serio *io, unsigned char val)
drivers/input/serio/ambakmi.c
52
struct amba_kmi_port *kmi = io->port_data;
drivers/input/serio/ambakmi.c
64
static int amba_kmi_open(struct serio *io)
drivers/input/serio/ambakmi.c
66
struct amba_kmi_port *kmi = io->port_data;
drivers/input/serio/ambakmi.c
96
static void amba_kmi_close(struct serio *io)
drivers/input/serio/ambakmi.c
98
struct amba_kmi_port *kmi = io->port_data;
drivers/input/serio/apbps2.c
102
static int apbps2_open(struct serio *io)
drivers/input/serio/apbps2.c
104
struct apbps2_priv *priv = io->port_data;
drivers/input/serio/apbps2.c
121
static void apbps2_close(struct serio *io)
drivers/input/serio/apbps2.c
123
struct apbps2_priv *priv = io->port_data;
drivers/input/serio/apbps2.c
171
priv->io = kzalloc_obj(*priv->io);
drivers/input/serio/apbps2.c
172
if (!priv->io)
drivers/input/serio/apbps2.c
175
priv->io->id.type = SERIO_8042;
drivers/input/serio/apbps2.c
176
priv->io->open = apbps2_open;
drivers/input/serio/apbps2.c
177
priv->io->close = apbps2_close;
drivers/input/serio/apbps2.c
178
priv->io->write = apbps2_write;
drivers/input/serio/apbps2.c
179
priv->io->port_data = priv;
drivers/input/serio/apbps2.c
180
strscpy(priv->io->name, "APBPS2 PS/2", sizeof(priv->io->name));
drivers/input/serio/apbps2.c
181
snprintf(priv->io->phys, sizeof(priv->io->phys),
drivers/input/serio/apbps2.c
186
serio_register_port(priv->io);
drivers/input/serio/apbps2.c
197
serio_unregister_port(priv->io);
drivers/input/serio/apbps2.c
53
struct serio *io;
drivers/input/serio/apbps2.c
74
serio_interrupt(priv->io, data, rxflags);
drivers/input/serio/apbps2.c
82
static int apbps2_write(struct serio *io, unsigned char val)
drivers/input/serio/apbps2.c
84
struct apbps2_priv *priv = io->port_data;
drivers/input/serio/arc_ps2.c
104
dev_err(&io->dev, "write timeout\n");
drivers/input/serio/arc_ps2.c
108
static int arc_ps2_open(struct serio *io)
drivers/input/serio/arc_ps2.c
110
struct arc_ps2_port *port = io->port_data;
drivers/input/serio/arc_ps2.c
117
static void arc_ps2_close(struct serio *io)
drivers/input/serio/arc_ps2.c
119
struct arc_ps2_port *port = io->port_data;
drivers/input/serio/arc_ps2.c
156
struct serio *io;
drivers/input/serio/arc_ps2.c
158
io = kzalloc_obj(*io);
drivers/input/serio/arc_ps2.c
159
if (!io)
drivers/input/serio/arc_ps2.c
162
io->id.type = SERIO_8042;
drivers/input/serio/arc_ps2.c
163
io->write = arc_ps2_write;
drivers/input/serio/arc_ps2.c
164
io->open = arc_ps2_open;
drivers/input/serio/arc_ps2.c
165
io->close = arc_ps2_close;
drivers/input/serio/arc_ps2.c
166
snprintf(io->name, sizeof(io->name), "ARC PS/2 port%d", index);
drivers/input/serio/arc_ps2.c
167
snprintf(io->phys, sizeof(io->phys), "arc/serio%d", index);
drivers/input/serio/arc_ps2.c
168
io->port_data = port;
drivers/input/serio/arc_ps2.c
170
port->io = io;
drivers/input/serio/arc_ps2.c
178
serio_register_port(port->io);
drivers/input/serio/arc_ps2.c
224
serio_unregister_port(arc_ps2->port[i].io);
drivers/input/serio/arc_ps2.c
240
serio_unregister_port(arc_ps2->port[i].io);
drivers/input/serio/arc_ps2.c
35
struct serio *io;
drivers/input/serio/arc_ps2.c
70
serio_interrupt(port->io, data, flag);
drivers/input/serio/arc_ps2.c
73
dev_err(&port->io->dev, "PS/2 hardware stuck\n");
drivers/input/serio/arc_ps2.c
87
static int arc_ps2_write(struct serio *io, unsigned char val)
drivers/input/serio/arc_ps2.c
90
struct arc_ps2_port *port = io->port_data;
drivers/input/serio/pcips2.c
101
struct pcips2_data *ps2if = io->port_data;
drivers/input/serio/pcips2.c
117
static void pcips2_close(struct serio *io)
drivers/input/serio/pcips2.c
119
struct pcips2_data *ps2if = io->port_data;
drivers/input/serio/pcips2.c
156
ps2if->io = serio;
drivers/input/serio/pcips2.c
162
serio_register_port(ps2if->io);
drivers/input/serio/pcips2.c
179
serio_unregister_port(ps2if->io);
drivers/input/serio/pcips2.c
38
struct serio *io;
drivers/input/serio/pcips2.c
43
static int pcips2_write(struct serio *io, unsigned char val)
drivers/input/serio/pcips2.c
45
struct pcips2_data *ps2if = io->port_data;
drivers/input/serio/pcips2.c
80
serio_interrupt(ps2if->io, scancode, flag);
drivers/input/serio/pcips2.c
99
static int pcips2_open(struct serio *io)
drivers/input/serio/sa1111ps2.c
113
static int ps2_write(struct serio *io, unsigned char val)
drivers/input/serio/sa1111ps2.c
115
struct ps2if *ps2if = io->port_data;
drivers/input/serio/sa1111ps2.c
138
static int ps2_open(struct serio *io)
drivers/input/serio/sa1111ps2.c
140
struct ps2if *ps2if = io->port_data;
drivers/input/serio/sa1111ps2.c
174
static void ps2_close(struct serio *io)
drivers/input/serio/sa1111ps2.c
176
struct ps2if *ps2if = io->port_data;
drivers/input/serio/sa1111ps2.c
272
ps2if->io = serio;
drivers/input/serio/sa1111ps2.c
329
serio_register_port(ps2if->io);
drivers/input/serio/sa1111ps2.c
349
serio_unregister_port(ps2if->io);
drivers/input/serio/sa1111ps2.c
44
struct serio *io;
drivers/input/serio/sa1111ps2.c
79
serio_interrupt(ps2if->io, scancode, flag);
drivers/irqchip/irq-renesas-intc-irqpin.c
376
struct resource *io[INTC_IRQPIN_REG_NR];
drivers/irqchip/irq-renesas-intc-irqpin.c
407
memset(io, 0, sizeof(io));
drivers/irqchip/irq-renesas-intc-irqpin.c
409
io[k] = platform_get_resource(pdev, IORESOURCE_MEM, k);
drivers/irqchip/irq-renesas-intc-irqpin.c
410
if (!io[k] && k < INTC_IRQPIN_REG_NR_MANDATORY) {
drivers/irqchip/irq-renesas-intc-irqpin.c
441
if (!io[k])
drivers/irqchip/irq-renesas-intc-irqpin.c
444
switch (resource_size(io[k])) {
drivers/irqchip/irq-renesas-intc-irqpin.c
461
i->iomem = devm_ioremap(dev, io[k]->start,
drivers/irqchip/irq-renesas-intc-irqpin.c
462
resource_size(io[k]));
drivers/irqchip/irq-renesas-intc-irqpin.c
472
if (io[INTC_IRQPIN_REG_IRLM])
drivers/md/bcache/bcache.h
363
struct io io[RECENT_IO];
drivers/md/bcache/btree.c
298
closure_type(b, struct btree, io);
drivers/md/bcache/btree.c
305
closure_type(b, struct btree, io);
drivers/md/bcache/btree.c
320
closure_type(b, struct btree, io);
drivers/md/bcache/btree.c
329
struct btree *b = container_of(cl, struct btree, io);
drivers/md/bcache/btree.c
340
struct closure *cl = &b->io;
drivers/md/bcache/btree.c
421
closure_init(&b->io, parent ?: &b->c->cl);
drivers/md/bcache/btree.h
138
struct closure io;
drivers/md/bcache/journal.c
646
closure_put(&w->c->journal.io);
drivers/md/bcache/journal.c
653
closure_type(j, struct journal, io);
drivers/md/bcache/journal.c
665
closure_type(c, struct cache_set, journal.io);
drivers/md/bcache/journal.c
674
closure_type(c, struct cache_set, journal.io);
drivers/md/bcache/journal.c
751
closure_type(c, struct cache_set, journal.io);
drivers/md/bcache/journal.c
760
struct closure *cl = &c->journal.io;
drivers/md/bcache/journal.h
111
struct closure io;
drivers/md/bcache/movinggc.c
100
io->bio.bio.bi_iter.bi_sector = KEY_START(&io->w->key);
drivers/md/bcache/movinggc.c
102
op->bio = &io->bio.bio;
drivers/md/bcache/movinggc.c
104
op->writeback = KEY_DIRTY(&io->w->key);
drivers/md/bcache/movinggc.c
105
op->csum = KEY_CSUM(&io->w->key);
drivers/md/bcache/movinggc.c
107
bkey_copy(&op->replace_key, &io->w->key);
drivers/md/bcache/movinggc.c
118
closure_type(io, struct moving_io, cl);
drivers/md/bcache/movinggc.c
119
struct bio *bio = &io->bio.bio;
drivers/md/bcache/movinggc.c
121
bch_submit_bbio(bio, io->op.c, &io->w->key, 0);
drivers/md/bcache/movinggc.c
123
continue_at(cl, write_moving, io->op.wq);
drivers/md/bcache/movinggc.c
129
struct moving_io *io;
drivers/md/bcache/movinggc.c
148
io = kzalloc(sizeof(*io) + sizeof(struct bio_vec) *
drivers/md/bcache/movinggc.c
151
if (!io)
drivers/md/bcache/movinggc.c
154
w->private = io;
drivers/md/bcache/movinggc.c
155
io->w = w;
drivers/md/bcache/movinggc.c
156
io->op.inode = KEY_INODE(&w->key);
drivers/md/bcache/movinggc.c
157
io->op.c = c;
drivers/md/bcache/movinggc.c
158
io->op.wq = c->moving_gc_wq;
drivers/md/bcache/movinggc.c
160
moving_init(io);
drivers/md/bcache/movinggc.c
161
bio = &io->bio.bio;
drivers/md/bcache/movinggc.c
172
closure_call(&io->cl, read_moving_submit, NULL, &cl);
drivers/md/bcache/movinggc.c
40
closure_type(io, struct moving_io, cl);
drivers/md/bcache/movinggc.c
42
kfree(io);
drivers/md/bcache/movinggc.c
47
closure_type(io, struct moving_io, cl);
drivers/md/bcache/movinggc.c
48
struct bio *bio = &io->bio.bio;
drivers/md/bcache/movinggc.c
52
if (io->op.replace_collision)
drivers/md/bcache/movinggc.c
53
trace_bcache_gc_copy_collision(&io->w->key);
drivers/md/bcache/movinggc.c
55
bch_keybuf_del(&io->op.c->moving_gc_keys, io->w);
drivers/md/bcache/movinggc.c
57
up(&io->op.c->moving_in_flight);
drivers/md/bcache/movinggc.c
65
struct moving_io *io = container_of(bio->bi_private,
drivers/md/bcache/movinggc.c
69
io->op.status = bio->bi_status;
drivers/md/bcache/movinggc.c
71
ptr_stale(io->op.c, &b->key, 0)) {
drivers/md/bcache/movinggc.c
72
io->op.status = BLK_STS_IOERR;
drivers/md/bcache/movinggc.c
75
bch_bbio_endio(io->op.c, bio, bio->bi_status, "reading data to move");
drivers/md/bcache/movinggc.c
78
static void moving_init(struct moving_io *io)
drivers/md/bcache/movinggc.c
80
struct bio *bio = &io->bio.bio;
drivers/md/bcache/movinggc.c
83
DIV_ROUND_UP(KEY_SIZE(&io->w->key), PAGE_SECTORS), 0);
drivers/md/bcache/movinggc.c
87
bio->bi_iter.bi_size = KEY_SIZE(&io->w->key) << 9;
drivers/md/bcache/movinggc.c
88
bio->bi_private = &io->cl;
drivers/md/bcache/movinggc.c
94
closure_type(io, struct moving_io, cl);
drivers/md/bcache/movinggc.c
95
struct data_insert_op *op = &io->op;
drivers/md/bcache/movinggc.c
98
moving_init(io);
drivers/md/bcache/request.c
369
struct io *i;
drivers/md/bcache/request.c
435
i = list_first_entry(&dc->io_lru, struct io, lru);
drivers/md/bcache/super.c
1413
struct io *io;
drivers/md/bcache/super.c
1429
for (io = dc->io; io < dc->io + RECENT_IO; io++) {
drivers/md/bcache/super.c
1430
list_add(&io->lru, &dc->io_lru);
drivers/md/bcache/super.c
1431
hlist_add_head(&io->hash, dc->io_hash + RECENT_IO);
drivers/md/bcache/writeback.c
331
struct dirty_io *io = w->private;
drivers/md/bcache/writeback.c
332
struct bio *bio = &io->bio;
drivers/md/bcache/writeback.c
336
if (!io->dc->writeback_percent)
drivers/md/bcache/writeback.c
346
closure_type(io, struct dirty_io, cl);
drivers/md/bcache/writeback.c
348
kfree(io);
drivers/md/bcache/writeback.c
353
closure_type(io, struct dirty_io, cl);
drivers/md/bcache/writeback.c
354
struct keybuf_key *w = io->bio.bi_private;
drivers/md/bcache/writeback.c
355
struct cached_dev *dc = io->dc;
drivers/md/bcache/writeback.c
357
bio_free_pages(&io->bio);
drivers/md/bcache/writeback.c
393
struct dirty_io *io = w->private;
drivers/md/bcache/writeback.c
397
bch_count_backing_io_errors(io->dc, bio);
drivers/md/bcache/writeback.c
400
closure_put(&io->cl);
drivers/md/bcache/writeback.c
405
closure_type(io, struct dirty_io, cl);
drivers/md/bcache/writeback.c
406
struct keybuf_key *w = io->bio.bi_private;
drivers/md/bcache/writeback.c
407
struct cached_dev *dc = io->dc;
drivers/md/bcache/writeback.c
411
if (atomic_read(&dc->writeback_sequence_next) != io->sequence) {
drivers/md/bcache/writeback.c
415
if (atomic_read(&dc->writeback_sequence_next) == io->sequence) {
drivers/md/bcache/writeback.c
423
continue_at(cl, write_dirty, io->dc->writeback_write_wq);
drivers/md/bcache/writeback.c
427
next_sequence = io->sequence + 1;
drivers/md/bcache/writeback.c
437
io->bio.bi_opf = REQ_OP_WRITE;
drivers/md/bcache/writeback.c
438
io->bio.bi_iter.bi_sector = KEY_START(&w->key);
drivers/md/bcache/writeback.c
439
bio_set_dev(&io->bio, io->dc->bdev);
drivers/md/bcache/writeback.c
440
io->bio.bi_end_io = dirty_endio;
drivers/md/bcache/writeback.c
443
closure_bio_submit(io->dc->disk.c, &io->bio, cl);
drivers/md/bcache/writeback.c
449
continue_at(cl, write_dirty_finish, io->dc->writeback_write_wq);
drivers/md/bcache/writeback.c
455
struct dirty_io *io = w->private;
drivers/md/bcache/writeback.c
458
bch_count_io_errors(io->dc->disk.c->cache,
drivers/md/bcache/writeback.c
467
closure_type(io, struct dirty_io, cl);
drivers/md/bcache/writeback.c
469
closure_bio_submit(io->dc->disk.c, &io->bio, cl);
drivers/md/bcache/writeback.c
471
continue_at(cl, write_dirty, io->dc->writeback_write_wq);
drivers/md/bcache/writeback.c
480
struct dirty_io *io;
drivers/md/bcache/writeback.c
539
io = kzalloc(sizeof(*io) + sizeof(struct bio_vec) *
drivers/md/bcache/writeback.c
542
if (!io)
drivers/md/bcache/writeback.c
545
w->private = io;
drivers/md/bcache/writeback.c
546
io->dc = dc;
drivers/md/bcache/writeback.c
547
io->sequence = sequence++;
drivers/md/bcache/writeback.c
550
io->bio.bi_opf = REQ_OP_READ;
drivers/md/bcache/writeback.c
551
io->bio.bi_iter.bi_sector = PTR_OFFSET(&w->key, 0);
drivers/md/bcache/writeback.c
552
bio_set_dev(&io->bio, dc->disk.c->cache->bdev);
drivers/md/bcache/writeback.c
553
io->bio.bi_end_io = read_dirty_endio;
drivers/md/bcache/writeback.c
555
if (bch_bio_alloc_pages(&io->bio, GFP_KERNEL))
drivers/md/bcache/writeback.c
567
closure_call(&io->cl, read_dirty_submit, NULL, &cl);
drivers/md/dm-core.h
245
struct dm_io *io;
drivers/md/dm-core.h
315
static inline bool dm_io_flagged(struct dm_io *io, unsigned int bit)
drivers/md/dm-core.h
317
return (io->flags & (1U << bit)) != 0;
drivers/md/dm-core.h
320
static inline void dm_io_set_flag(struct dm_io *io, unsigned int bit)
drivers/md/dm-core.h
322
io->flags |= (1U << bit);
drivers/md/dm-core.h
325
void dm_io_rewind(struct dm_io *io, struct bio_set *bs);
drivers/md/dm-crypt.c
1101
static int dm_crypt_integrity_io_alloc(struct dm_crypt_io *io, struct bio *bio)
drivers/md/dm-crypt.c
1107
if (!bio_sectors(bio) || !io->cc->tuple_size)
drivers/md/dm-crypt.c
1114
tag_len = io->cc->tuple_size * (bio_sectors(bio) >> io->cc->sector_shift);
drivers/md/dm-crypt.c
1118
ret = bio_integrity_add_page(bio, virt_to_page(io->integrity_metadata),
drivers/md/dm-crypt.c
1119
tag_len, offset_in_page(io->integrity_metadata));
drivers/md/dm-crypt.c
1238
struct dm_crypt_io *io = container_of(ctx, struct dm_crypt_io, ctx);
drivers/md/dm-crypt.c
1240
return &io->integrity_metadata[*org_tag_of_dmreq(cc, dmreq) *
drivers/md/dm-crypt.c
1489
struct dm_crypt_io *io = dm_per_bio_data(base_bio, cc->per_bio_data_size);
drivers/md/dm-crypt.c
1491
if ((struct skcipher_request *)(io + 1) != req)
drivers/md/dm-crypt.c
1498
struct dm_crypt_io *io = dm_per_bio_data(base_bio, cc->per_bio_data_size);
drivers/md/dm-crypt.c
1500
if ((struct aead_request *)(io + 1) != req)
drivers/md/dm-crypt.c
1630
static struct bio *crypt_alloc_buffer(struct dm_crypt_io *io, unsigned int size)
drivers/md/dm-crypt.c
1632
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1643
clone = bio_alloc_bioset(cc->dev->bdev, nr_iovecs, io->base_bio->bi_opf,
drivers/md/dm-crypt.c
1645
clone->bi_private = io;
drivers/md/dm-crypt.c
1647
clone->bi_ioprio = io->base_bio->bi_ioprio;
drivers/md/dm-crypt.c
1648
clone->bi_iter.bi_sector = cc->start + io->sector;
drivers/md/dm-crypt.c
1689
if (dm_crypt_integrity_io_alloc(io, clone)) {
drivers/md/dm-crypt.c
1718
static void crypt_io_init(struct dm_crypt_io *io, struct crypt_config *cc,
drivers/md/dm-crypt.c
1721
io->cc = cc;
drivers/md/dm-crypt.c
1722
io->base_bio = bio;
drivers/md/dm-crypt.c
1723
io->sector = sector;
drivers/md/dm-crypt.c
1724
io->error = 0;
drivers/md/dm-crypt.c
1725
io->ctx.aead_recheck = false;
drivers/md/dm-crypt.c
1726
io->ctx.aead_failed = false;
drivers/md/dm-crypt.c
1727
io->ctx.r.req = NULL;
drivers/md/dm-crypt.c
1728
io->integrity_metadata = NULL;
drivers/md/dm-crypt.c
1729
io->integrity_metadata_from_pool = false;
drivers/md/dm-crypt.c
1730
atomic_set(&io->io_pending, 0);
drivers/md/dm-crypt.c
1733
static void crypt_inc_pending(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1735
atomic_inc(&io->io_pending);
drivers/md/dm-crypt.c
1738
static void kcryptd_queue_read(struct dm_crypt_io *io);
drivers/md/dm-crypt.c
1744
static void crypt_dec_pending(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1746
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1747
struct bio *base_bio = io->base_bio;
drivers/md/dm-crypt.c
1748
blk_status_t error = io->error;
drivers/md/dm-crypt.c
1750
if (!atomic_dec_and_test(&io->io_pending))
drivers/md/dm-crypt.c
1753
if (likely(!io->ctx.aead_recheck) && unlikely(io->ctx.aead_failed) &&
drivers/md/dm-crypt.c
1755
io->ctx.aead_recheck = true;
drivers/md/dm-crypt.c
1756
io->ctx.aead_failed = false;
drivers/md/dm-crypt.c
1757
io->error = 0;
drivers/md/dm-crypt.c
1758
kcryptd_queue_read(io);
drivers/md/dm-crypt.c
1762
if (io->ctx.r.req)
drivers/md/dm-crypt.c
1763
crypt_free_req(cc, io->ctx.r.req, base_bio);
drivers/md/dm-crypt.c
1765
if (unlikely(io->integrity_metadata_from_pool))
drivers/md/dm-crypt.c
1766
mempool_free(io->integrity_metadata, &io->cc->tag_pool);
drivers/md/dm-crypt.c
1768
kfree(io->integrity_metadata);
drivers/md/dm-crypt.c
1794
struct dm_crypt_io *io = clone->bi_private;
drivers/md/dm-crypt.c
1795
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1799
if (io->ctx.aead_recheck && !error) {
drivers/md/dm-crypt.c
1800
kcryptd_queue_crypt(io);
drivers/md/dm-crypt.c
1807
if (rw == WRITE || io->ctx.aead_recheck)
drivers/md/dm-crypt.c
1813
kcryptd_queue_crypt(io);
drivers/md/dm-crypt.c
1818
io->error = error;
drivers/md/dm-crypt.c
1820
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1825
static int kcryptd_io_read(struct dm_crypt_io *io, gfp_t gfp)
drivers/md/dm-crypt.c
1827
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1830
if (io->ctx.aead_recheck) {
drivers/md/dm-crypt.c
1833
crypt_inc_pending(io);
drivers/md/dm-crypt.c
1834
clone = crypt_alloc_buffer(io, io->base_bio->bi_iter.bi_size);
drivers/md/dm-crypt.c
1836
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1839
crypt_convert_init(cc, &io->ctx, clone, clone, io->sector);
drivers/md/dm-crypt.c
1840
io->saved_bi_iter = clone->bi_iter;
drivers/md/dm-crypt.c
1841
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1851
clone = bio_alloc_clone(cc->dev->bdev, io->base_bio, gfp, &cc->bs);
drivers/md/dm-crypt.c
1855
clone->bi_iter.bi_sector = cc->start + io->sector;
drivers/md/dm-crypt.c
1856
clone->bi_private = io;
drivers/md/dm-crypt.c
1859
crypt_inc_pending(io);
drivers/md/dm-crypt.c
1861
if (dm_crypt_integrity_io_alloc(io, clone)) {
drivers/md/dm-crypt.c
1862
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1867
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1873
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
1875
crypt_inc_pending(io);
drivers/md/dm-crypt.c
1876
if (kcryptd_io_read(io, GFP_NOIO))
drivers/md/dm-crypt.c
1877
io->error = BLK_STS_RESOURCE;
drivers/md/dm-crypt.c
1878
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1881
static void kcryptd_queue_read(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1883
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1885
INIT_WORK(&io->work, kcryptd_io_read_work);
drivers/md/dm-crypt.c
1886
queue_work(cc->io_queue, &io->work);
drivers/md/dm-crypt.c
1889
static void kcryptd_io_write(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1891
struct bio *clone = io->ctx.bio_out;
drivers/md/dm-crypt.c
1893
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1901
struct dm_crypt_io *io;
drivers/md/dm-crypt.c
1940
io = crypt_io_from_node(rb_first(&write_tree));
drivers/md/dm-crypt.c
1941
rb_erase(&io->rb_node, &write_tree);
drivers/md/dm-crypt.c
1942
kcryptd_io_write(io);
drivers/md/dm-crypt.c
1950
static void kcryptd_crypt_write_io_submit(struct dm_crypt_io *io, int async)
drivers/md/dm-crypt.c
1952
struct bio *clone = io->ctx.bio_out;
drivers/md/dm-crypt.c
1953
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1958
if (unlikely(io->error)) {
drivers/md/dm-crypt.c
1961
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1966
BUG_ON(io->ctx.iter_out.bi_size);
drivers/md/dm-crypt.c
1970
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1979
sector = io->sector;
drivers/md/dm-crypt.c
1987
rb_link_node(&io->rb_node, parent, rbp);
drivers/md/dm-crypt.c
1988
rb_insert_color(&io->rb_node, &cc->write_tree);
drivers/md/dm-crypt.c
2015
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
2016
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2017
struct convert_context *ctx = &io->ctx;
drivers/md/dm-crypt.c
2024
r = crypt_convert(cc, &io->ctx, false, false);
drivers/md/dm-crypt.c
2026
io->error = r;
drivers/md/dm-crypt.c
2036
kcryptd_crypt_write_io_submit(io, 0);
drivers/md/dm-crypt.c
2038
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2041
static void kcryptd_crypt_write_convert(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2043
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2044
struct convert_context *ctx = &io->ctx;
drivers/md/dm-crypt.c
2052
crypt_inc_pending(io);
drivers/md/dm-crypt.c
2053
crypt_convert_init(cc, ctx, NULL, io->base_bio, io->sector);
drivers/md/dm-crypt.c
2055
clone = crypt_alloc_buffer(io, io->base_bio->bi_iter.bi_size);
drivers/md/dm-crypt.c
2057
io->error = BLK_STS_IOERR;
drivers/md/dm-crypt.c
2061
io->ctx.bio_out = clone;
drivers/md/dm-crypt.c
2062
io->ctx.iter_out = clone->bi_iter;
drivers/md/dm-crypt.c
2065
bio_copy_data(clone, io->base_bio);
drivers/md/dm-crypt.c
2066
io->ctx.bio_in = clone;
drivers/md/dm-crypt.c
2067
io->ctx.iter_in = clone->bi_iter;
drivers/md/dm-crypt.c
2070
crypt_inc_pending(io);
drivers/md/dm-crypt.c
2079
INIT_WORK(&io->work, kcryptd_crypt_write_continue);
drivers/md/dm-crypt.c
2080
queue_work(cc->crypt_queue, &io->work);
drivers/md/dm-crypt.c
2084
io->error = r;
drivers/md/dm-crypt.c
2094
kcryptd_crypt_write_io_submit(io, 0);
drivers/md/dm-crypt.c
2097
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2100
static void kcryptd_crypt_read_done(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2102
if (io->ctx.aead_recheck) {
drivers/md/dm-crypt.c
2103
if (!io->error) {
drivers/md/dm-crypt.c
2104
io->ctx.bio_in->bi_iter = io->saved_bi_iter;
drivers/md/dm-crypt.c
2105
bio_copy_data(io->base_bio, io->ctx.bio_in);
drivers/md/dm-crypt.c
2107
crypt_free_buffer_pages(io->cc, io->ctx.bio_in);
drivers/md/dm-crypt.c
2108
bio_put(io->ctx.bio_in);
drivers/md/dm-crypt.c
2110
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2115
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
2116
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2119
wait_for_completion(&io->ctx.restart);
drivers/md/dm-crypt.c
2120
reinit_completion(&io->ctx.restart);
drivers/md/dm-crypt.c
2122
r = crypt_convert(cc, &io->ctx, false, false);
drivers/md/dm-crypt.c
2124
io->error = r;
drivers/md/dm-crypt.c
2126
if (atomic_dec_and_test(&io->ctx.cc_pending))
drivers/md/dm-crypt.c
2127
kcryptd_crypt_read_done(io);
drivers/md/dm-crypt.c
2129
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2132
static void kcryptd_crypt_read_convert(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2134
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2137
crypt_inc_pending(io);
drivers/md/dm-crypt.c
2139
if (io->ctx.aead_recheck) {
drivers/md/dm-crypt.c
2140
r = crypt_convert(cc, &io->ctx,
drivers/md/dm-crypt.c
2143
crypt_convert_init(cc, &io->ctx, io->base_bio, io->base_bio,
drivers/md/dm-crypt.c
2144
io->sector);
drivers/md/dm-crypt.c
2146
r = crypt_convert(cc, &io->ctx,
drivers/md/dm-crypt.c
2154
INIT_WORK(&io->work, kcryptd_crypt_read_continue);
drivers/md/dm-crypt.c
2155
queue_work(cc->crypt_queue, &io->work);
drivers/md/dm-crypt.c
2159
io->error = r;
drivers/md/dm-crypt.c
2161
if (atomic_dec_and_test(&io->ctx.cc_pending))
drivers/md/dm-crypt.c
2162
kcryptd_crypt_read_done(io);
drivers/md/dm-crypt.c
2164
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2171
struct dm_crypt_io *io = container_of(ctx, struct dm_crypt_io, ctx);
drivers/md/dm-crypt.c
2172
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2197
io->error = BLK_STS_PROTECTION;
drivers/md/dm-crypt.c
2199
io->error = BLK_STS_IOERR;
drivers/md/dm-crypt.c
2201
crypt_free_req(cc, req_of_dmreq(cc, dmreq), io->base_bio);
drivers/md/dm-crypt.c
2210
if (bio_data_dir(io->base_bio) == READ) {
drivers/md/dm-crypt.c
2211
kcryptd_crypt_read_done(io);
drivers/md/dm-crypt.c
2220
kcryptd_crypt_write_io_submit(io, 1);
drivers/md/dm-crypt.c
2225
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
2227
if (bio_data_dir(io->base_bio) == READ)
drivers/md/dm-crypt.c
2228
kcryptd_crypt_read_convert(io);
drivers/md/dm-crypt.c
2230
kcryptd_crypt_write_convert(io);
drivers/md/dm-crypt.c
2233
static void kcryptd_queue_crypt(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2235
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2237
if ((bio_data_dir(io->base_bio) == READ && test_bit(DM_CRYPT_NO_READ_WORKQUEUE, &cc->flags)) ||
drivers/md/dm-crypt.c
2238
(bio_data_dir(io->base_bio) == WRITE && test_bit(DM_CRYPT_NO_WRITE_WORKQUEUE, &cc->flags))) {
drivers/md/dm-crypt.c
2245
INIT_WORK(&io->work, kcryptd_crypt);
drivers/md/dm-crypt.c
2246
queue_work(system_bh_wq, &io->work);
drivers/md/dm-crypt.c
2249
kcryptd_crypt(&io->work);
drivers/md/dm-crypt.c
2254
INIT_WORK(&io->work, kcryptd_crypt);
drivers/md/dm-crypt.c
2255
queue_work(cc->crypt_queue, &io->work);
drivers/md/dm-crypt.c
287
static void kcryptd_queue_crypt(struct dm_crypt_io *io);
drivers/md/dm-crypt.c
3419
struct dm_crypt_io *io;
drivers/md/dm-crypt.c
3465
io = dm_per_bio_data(bio, cc->per_bio_data_size);
drivers/md/dm-crypt.c
3466
crypt_io_init(io, cc, bio, dm_target_offset(ti, bio->bi_iter.bi_sector));
drivers/md/dm-crypt.c
3472
io->integrity_metadata = NULL;
drivers/md/dm-crypt.c
3474
io->integrity_metadata = kmalloc(tag_len, GFP_NOIO | __GFP_NORETRY | __GFP_NOMEMALLOC | __GFP_NOWARN);
drivers/md/dm-crypt.c
3476
if (unlikely(!io->integrity_metadata)) {
drivers/md/dm-crypt.c
3479
io->integrity_metadata = mempool_alloc(&cc->tag_pool, GFP_NOIO);
drivers/md/dm-crypt.c
3480
io->integrity_metadata_from_pool = true;
drivers/md/dm-crypt.c
3485
io->ctx.r.req_aead = (struct aead_request *)(io + 1);
drivers/md/dm-crypt.c
3487
io->ctx.r.req = (struct skcipher_request *)(io + 1);
drivers/md/dm-crypt.c
3489
if (bio_data_dir(io->base_bio) == READ) {
drivers/md/dm-crypt.c
3490
if (kcryptd_io_read(io, CRYPT_MAP_READ_GFP))
drivers/md/dm-crypt.c
3491
kcryptd_queue_read(io);
drivers/md/dm-crypt.c
3493
kcryptd_queue_crypt(io);
drivers/md/dm-integrity.c
1078
io_req.client = ic->io;
drivers/md/dm-integrity.c
1195
io_req.client = ic->io;
drivers/md/dm-integrity.c
177
struct dm_io_client *io;
drivers/md/dm-integrity.c
1827
io_req.client = ic->io;
drivers/md/dm-integrity.c
2895
struct journal_io *io = context;
drivers/md/dm-integrity.c
2896
struct journal_completion *comp = io->comp;
drivers/md/dm-integrity.c
2899
remove_range(ic, &io->range);
drivers/md/dm-integrity.c
2900
mempool_free(io, &ic->journal_io_mempool);
drivers/md/dm-integrity.c
2942
struct journal_io *io;
drivers/md/dm-integrity.c
2977
io = mempool_alloc(&ic->journal_io_mempool, GFP_NOIO);
drivers/md/dm-integrity.c
2978
io->comp = ∁
drivers/md/dm-integrity.c
2979
io->range.logical_sector = sec;
drivers/md/dm-integrity.c
2980
io->range.n_sectors = (k - j) << ic->sb->log2_sectors_per_block;
drivers/md/dm-integrity.c
2983
add_new_range_and_wait(ic, &io->range);
drivers/md/dm-integrity.c
3006
remove_range_unlocked(ic, &io->range);
drivers/md/dm-integrity.c
3008
mempool_free(io, &ic->journal_io_mempool);
drivers/md/dm-integrity.c
3050
complete_copy_from_journal, io);
drivers/md/dm-integrity.c
3213
io_req.client = ic->io;
drivers/md/dm-integrity.c
4963
ic->io = dm_io_client_create();
drivers/md/dm-integrity.c
4964
if (IS_ERR(ic->io)) {
drivers/md/dm-integrity.c
4965
r = PTR_ERR(ic->io);
drivers/md/dm-integrity.c
4966
ic->io = NULL;
drivers/md/dm-integrity.c
5386
if (ic->io)
drivers/md/dm-integrity.c
5387
dm_io_client_destroy(ic->io);
drivers/md/dm-integrity.c
551
io_req.client = ic->io;
drivers/md/dm-io-rewind.c
143
void dm_io_rewind(struct dm_io *io, struct bio_set *bs)
drivers/md/dm-io-rewind.c
145
struct bio *orig = io->orig_bio;
drivers/md/dm-io-rewind.c
153
dm_bio_rewind(new_orig, ((io->sector_offset << 9) -
drivers/md/dm-io-rewind.c
155
bio_trim(new_orig, 0, io->sectors);
drivers/md/dm-io-rewind.c
163
io->orig_bio = new_orig;
drivers/md/dm-io.c
101
bio->bi_private = (void *)((unsigned long)io | region);
drivers/md/dm-io.c
104
static void retrieve_io_and_region_from_bio(struct bio *bio, struct io **io,
drivers/md/dm-io.c
109
*io = (void *)(val & -(unsigned long)DM_IO_MAX_REGIONS);
drivers/md/dm-io.c
119
static void complete_io(struct io *io)
drivers/md/dm-io.c
121
unsigned long error_bits = io->error_bits;
drivers/md/dm-io.c
122
io_notify_fn fn = io->callback;
drivers/md/dm-io.c
123
void *context = io->context;
drivers/md/dm-io.c
125
if (io->vma_invalidate_size)
drivers/md/dm-io.c
126
invalidate_kernel_vmap_range(io->vma_invalidate_address,
drivers/md/dm-io.c
127
io->vma_invalidate_size);
drivers/md/dm-io.c
129
mempool_free(io, &io->client->pool);
drivers/md/dm-io.c
133
static void dec_count(struct io *io, unsigned int region, blk_status_t error)
drivers/md/dm-io.c
136
set_bit(region, &io->error_bits);
drivers/md/dm-io.c
138
if (atomic_dec_and_test(&io->count))
drivers/md/dm-io.c
139
complete_io(io);
drivers/md/dm-io.c
144
struct io *io;
drivers/md/dm-io.c
154
retrieve_io_and_region_from_bio(bio, &io, ®ion);
drivers/md/dm-io.c
159
dec_count(io, region, error);
drivers/md/dm-io.c
308
struct io *io, unsigned short ioprio)
drivers/md/dm-io.c
330
atomic_inc(&io->count);
drivers/md/dm-io.c
331
dec_count(io, region, BLK_STS_NOTSUPP);
drivers/md/dm-io.c
354
&io->client->bios);
drivers/md/dm-io.c
358
store_io_and_region_in_bio(bio, io, region);
drivers/md/dm-io.c
380
atomic_inc(&io->count);
drivers/md/dm-io.c
388
struct io *io, unsigned short ioprio)
drivers/md/dm-io.c
402
do_region(opf, i, where + i, dp, io, ioprio);
drivers/md/dm-io.c
409
dec_count(io, 0, 0);
drivers/md/dm-io.c
417
struct io *io;
drivers/md/dm-io.c
419
io = mempool_alloc(&client->pool, GFP_NOIO);
drivers/md/dm-io.c
420
io->error_bits = 0;
drivers/md/dm-io.c
421
atomic_set(&io->count, 1); /* see dispatch_io() */
drivers/md/dm-io.c
422
io->client = client;
drivers/md/dm-io.c
423
io->callback = fn;
drivers/md/dm-io.c
424
io->context = context;
drivers/md/dm-io.c
426
io->vma_invalidate_address = dp->vma_invalidate_address;
drivers/md/dm-io.c
427
io->vma_invalidate_size = dp->vma_invalidate_size;
drivers/md/dm-io.c
429
dispatch_io(opf, num_regions, where, dp, io, ioprio);
drivers/md/dm-io.c
529
_dm_io_cache = KMEM_CACHE(io, 0);
drivers/md/dm-io.c
93
static void store_io_and_region_in_bio(struct bio *bio, struct io *io,
drivers/md/dm-io.c
96
if (unlikely(!IS_ALIGNED((unsigned long)io, DM_IO_MAX_REGIONS))) {
drivers/md/dm-io.c
97
DMCRIT("Unaligned struct io pointer %p", io);
drivers/md/dm-raid1.c
264
struct dm_io_region io[MAX_NR_MIRRORS];
drivers/md/dm-raid1.c
274
io[i].bdev = m->dev->bdev;
drivers/md/dm-raid1.c
275
io[i].sector = 0;
drivers/md/dm-raid1.c
276
io[i].count = 0;
drivers/md/dm-raid1.c
280
dm_io(&io_req, ms->nr_mirrors, io, &error_bits, IOPRIO_DEFAULT);
drivers/md/dm-raid1.c
471
static void map_region(struct dm_io_region *io, struct mirror *m,
drivers/md/dm-raid1.c
474
io->bdev = m->dev->bdev;
drivers/md/dm-raid1.c
475
io->sector = map_sector(m, bio);
drivers/md/dm-raid1.c
476
io->count = bio_sectors(bio);
drivers/md/dm-raid1.c
544
struct dm_io_region io;
drivers/md/dm-raid1.c
554
map_region(&io, m, bio);
drivers/md/dm-raid1.c
556
BUG_ON(dm_io(&io_req, 1, &io, NULL, IOPRIO_DEFAULT));
drivers/md/dm-raid1.c
656
struct dm_io_region io[MAX_NR_MIRRORS], *dest = io;
drivers/md/dm-raid1.c
683
BUG_ON(dm_io(&io_req, ms->nr_mirrors, io, NULL, IOPRIO_DEFAULT));
drivers/md/dm-verity-fec.c
146
static int fec_is_erasure(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
149
if (unlikely(verity_hash(v, io, data, v->fec->block_size,
drivers/md/dm-verity-fec.c
150
io->tmp_digest)))
drivers/md/dm-verity-fec.c
153
return memcmp(io->tmp_digest, want_digest, v->digest_size) != 0;
drivers/md/dm-verity-fec.c
173
static int fec_read_bufs(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
181
struct dm_verity_fec_io *fio = io->fec_io;
drivers/md/dm-verity-fec.c
186
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-fec.c
231
verity_hash_for_block(v, io, block, want_digest,
drivers/md/dm-verity-fec.c
242
fec_is_erasure(v, io, want_digest, bbuf))
drivers/md/dm-verity-fec.c
27
#define fec_for_each_buffer(io, __i) \
drivers/md/dm-verity-fec.c
28
for (__i = 0; __i < (io)->nbufs; __i++)
drivers/md/dm-verity-fec.c
32
#define fec_for_each_buffer_rs_message(io, __i, __j) \
drivers/md/dm-verity-fec.c
322
static int fec_decode(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
33
fec_for_each_buffer(io, __i) \
drivers/md/dm-verity-fec.c
345
r = fec_read_bufs(v, io, target_block, index_in_region, out_pos,
drivers/md/dm-verity-fec.c
350
r = fec_decode_bufs(v, io, fio, target_block, target_region,
drivers/md/dm-verity-fec.c
359
r = verity_hash(v, io, fio->output, v->fec->block_size, io->tmp_digest);
drivers/md/dm-verity-fec.c
363
if (memcmp(io->tmp_digest, want_digest, v->digest_size)) {
drivers/md/dm-verity-fec.c
373
int verity_fec_decode(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
383
fio = io->fec_io;
drivers/md/dm-verity-fec.c
385
fio = io->fec_io = fec_alloc_and_init_io(v);
drivers/md/dm-verity-fec.c
400
r = fec_decode(v, io, fio, block, want_digest, false);
drivers/md/dm-verity-fec.c
402
r = fec_decode(v, io, fio, block, want_digest, true);
drivers/md/dm-verity-fec.c
418
void __verity_fec_finish_io(struct dm_verity_io *io)
drivers/md/dm-verity-fec.c
421
struct dm_verity_fec *f = io->v->fec;
drivers/md/dm-verity-fec.c
422
struct dm_verity_fec_io *fio = io->fec_io;
drivers/md/dm-verity-fec.c
434
io->fec_io = NULL;
drivers/md/dm-verity-fec.c
51
static int fec_decode_bufs(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
62
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-fec.h
114
struct dm_verity_io *io,
drivers/md/dm-verity-fec.h
129
static inline void verity_fec_finish_io(struct dm_verity_io *io)
drivers/md/dm-verity-fec.h
133
static inline void verity_fec_init_io(struct dm_verity_io *io)
drivers/md/dm-verity-fec.h
75
extern int verity_fec_decode(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.h
82
extern void __verity_fec_finish_io(struct dm_verity_io *io);
drivers/md/dm-verity-fec.h
83
static inline void verity_fec_finish_io(struct dm_verity_io *io)
drivers/md/dm-verity-fec.h
85
if (unlikely(io->fec_io))
drivers/md/dm-verity-fec.h
86
__verity_fec_finish_io(io);
drivers/md/dm-verity-fec.h
89
static inline void verity_fec_init_io(struct dm_verity_io *io)
drivers/md/dm-verity-fec.h
91
io->fec_io = NULL;
drivers/md/dm-verity-target.c
1070
if (v->io)
drivers/md/dm-verity-target.c
1071
dm_io_client_destroy(v->io);
drivers/md/dm-verity-target.c
1132
struct dm_verity_io *io;
drivers/md/dm-verity-target.c
1143
io = kmalloc(v->ti->per_io_data_size, GFP_KERNEL);
drivers/md/dm-verity-target.c
1145
if (!io)
drivers/md/dm-verity-target.c
1153
r = verity_hash(v, io, zero_data, 1 << v->data_dev_block_bits,
drivers/md/dm-verity-target.c
1157
kfree(io);
drivers/md/dm-verity-target.c
118
int verity_hash(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
125
struct sha256_ctx *ctx = &io->hash_ctx.sha256;
drivers/md/dm-verity-target.c
137
desc = &io->hash_ctx.shash;
drivers/md/dm-verity-target.c
1616
v->io = dm_io_client_create();
drivers/md/dm-verity-target.c
1617
if (IS_ERR(v->io)) {
drivers/md/dm-verity-target.c
1618
r = PTR_ERR(v->io);
drivers/md/dm-verity-target.c
1619
v->io = NULL;
drivers/md/dm-verity-target.c
242
static int verity_verify_level(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
252
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
256
if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
278
if (verity_fec_decode(v, io, DM_VERITY_BLOCK_TYPE_METADATA,
drivers/md/dm-verity-target.c
298
r = verity_hash(v, io, data, 1 << v->hash_dev_block_bits,
drivers/md/dm-verity-target.c
299
io->tmp_digest);
drivers/md/dm-verity-target.c
303
if (likely(memcmp(io->tmp_digest, want_digest,
drivers/md/dm-verity-target.c
306
else if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
313
} else if (verity_fec_decode(v, io, DM_VERITY_BLOCK_TYPE_METADATA,
drivers/md/dm-verity-target.c
320
io->had_mismatch = true;
drivers/md/dm-verity-target.c
321
bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
343
int verity_hash_for_block(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
356
r = verity_verify_level(v, io, block, 0, true, digest);
drivers/md/dm-verity-target.c
364
r = verity_verify_level(v, io, block, i, false, digest);
drivers/md/dm-verity-target.c
377
static noinline int verity_recheck(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
394
io_req.client = v->io;
drivers/md/dm-verity-target.c
402
r = verity_hash(v, io, buffer, 1 << v->data_dev_block_bits,
drivers/md/dm-verity-target.c
403
io->tmp_digest);
drivers/md/dm-verity-target.c
407
if (memcmp(io->tmp_digest, want_digest, v->digest_size)) {
drivers/md/dm-verity-target.c
421
struct dm_verity_io *io,
drivers/md/dm-verity-target.c
429
if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
436
if (verity_recheck(v, io, want_digest, blkno, data) == 0) {
drivers/md/dm-verity-target.c
441
if (verity_fec_decode(v, io, DM_VERITY_BLOCK_TYPE_DATA, want_digest,
drivers/md/dm-verity-target.c
448
io->had_mismatch = true;
drivers/md/dm-verity-target.c
455
static void verity_clear_pending_blocks(struct dm_verity_io *io)
drivers/md/dm-verity-target.c
459
for (i = io->num_pending - 1; i >= 0; i--) {
drivers/md/dm-verity-target.c
460
kunmap_local(io->pending_blocks[i].data);
drivers/md/dm-verity-target.c
461
io->pending_blocks[i].data = NULL;
drivers/md/dm-verity-target.c
463
io->num_pending = 0;
drivers/md/dm-verity-target.c
467
struct dm_verity_io *io,
drivers/md/dm-verity-target.c
473
if (io->num_pending == 2) {
drivers/md/dm-verity-target.c
476
io->pending_blocks[0].data,
drivers/md/dm-verity-target.c
477
io->pending_blocks[1].data, block_size,
drivers/md/dm-verity-target.c
478
io->pending_blocks[0].real_digest,
drivers/md/dm-verity-target.c
479
io->pending_blocks[1].real_digest);
drivers/md/dm-verity-target.c
481
for (i = 0; i < io->num_pending; i++) {
drivers/md/dm-verity-target.c
482
r = verity_hash(v, io, io->pending_blocks[i].data,
drivers/md/dm-verity-target.c
484
io->pending_blocks[i].real_digest);
drivers/md/dm-verity-target.c
490
for (i = 0; i < io->num_pending; i++) {
drivers/md/dm-verity-target.c
491
struct pending_block *block = &io->pending_blocks[i];
drivers/md/dm-verity-target.c
498
r = verity_handle_data_hash_mismatch(v, io, bio, block);
drivers/md/dm-verity-target.c
503
verity_clear_pending_blocks(io);
drivers/md/dm-verity-target.c
510
static int verity_verify_io(struct dm_verity_io *io)
drivers/md/dm-verity-target.c
512
struct dm_verity *v = io->v;
drivers/md/dm-verity-target.c
517
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
521
io->num_pending = 0;
drivers/md/dm-verity-target.c
523
if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
528
iter_copy = io->iter;
drivers/md/dm-verity-target.c
531
iter = &io->iter;
drivers/md/dm-verity-target.c
533
for (b = 0; b < io->n_blocks;
drivers/md/dm-verity-target.c
535
sector_t blkno = io->block + b;
drivers/md/dm-verity-target.c
545
block = &io->pending_blocks[io->num_pending];
drivers/md/dm-verity-target.c
547
r = verity_hash_for_block(v, io, blkno, block->want_digest,
drivers/md/dm-verity-target.c
578
if (++io->num_pending == max_pending) {
drivers/md/dm-verity-target.c
579
r = verity_verify_pending_blocks(v, io, bio);
drivers/md/dm-verity-target.c
585
if (io->num_pending) {
drivers/md/dm-verity-target.c
586
r = verity_verify_pending_blocks(v, io, bio);
drivers/md/dm-verity-target.c
594
verity_clear_pending_blocks(io);
drivers/md/dm-verity-target.c
615
static void verity_finish_io(struct dm_verity_io *io, blk_status_t status)
drivers/md/dm-verity-target.c
617
struct dm_verity *v = io->v;
drivers/md/dm-verity-target.c
618
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
620
bio->bi_end_io = io->orig_bi_end_io;
drivers/md/dm-verity-target.c
623
verity_fec_finish_io(io);
drivers/md/dm-verity-target.c
627
!io->had_mismatch &&
drivers/md/dm-verity-target.c
648
struct dm_verity_io *io = container_of(w, struct dm_verity_io, work);
drivers/md/dm-verity-target.c
650
io->in_bh = false;
drivers/md/dm-verity-target.c
652
verity_finish_io(io, errno_to_blk_status(verity_verify_io(io)));
drivers/md/dm-verity-target.c
657
struct dm_verity_io *io = container_of(w, struct dm_verity_io, work);
drivers/md/dm-verity-target.c
660
io->in_bh = true;
drivers/md/dm-verity-target.c
661
err = verity_verify_io(io);
drivers/md/dm-verity-target.c
664
INIT_WORK(&io->work, verity_work);
drivers/md/dm-verity-target.c
665
queue_work(io->v->verify_wq, &io->work);
drivers/md/dm-verity-target.c
669
verity_finish_io(io, errno_to_blk_status(err));
drivers/md/dm-verity-target.c
681
struct dm_verity_io *io = bio->bi_private;
drivers/md/dm-verity-target.c
683
unsigned int bytes = io->n_blocks << io->v->data_dev_block_bits;
drivers/md/dm-verity-target.c
686
(!verity_fec_is_enabled(io->v) ||
drivers/md/dm-verity-target.c
689
verity_finish_io(io, bio->bi_status);
drivers/md/dm-verity-target.c
693
if (static_branch_unlikely(&use_bh_wq_enabled) && io->v->use_bh_wq &&
drivers/md/dm-verity-target.c
696
INIT_WORK(&io->work, verity_bh_work);
drivers/md/dm-verity-target.c
697
queue_work(system_bh_wq, &io->work);
drivers/md/dm-verity-target.c
699
verity_bh_work(&io->work);
drivers/md/dm-verity-target.c
702
INIT_WORK(&io->work, verity_work);
drivers/md/dm-verity-target.c
703
queue_work(io->v->verify_wq, &io->work);
drivers/md/dm-verity-target.c
750
static void verity_submit_prefetch(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
753
sector_t block = io->block;
drivers/md/dm-verity-target.c
754
unsigned int n_blocks = io->n_blocks;
drivers/md/dm-verity-target.c
790
struct dm_verity_io *io;
drivers/md/dm-verity-target.c
810
io = dm_per_bio_data(bio, ti->per_io_data_size);
drivers/md/dm-verity-target.c
811
io->v = v;
drivers/md/dm-verity-target.c
812
io->orig_bi_end_io = bio->bi_end_io;
drivers/md/dm-verity-target.c
813
io->block = bio->bi_iter.bi_sector >> (v->data_dev_block_bits - SECTOR_SHIFT);
drivers/md/dm-verity-target.c
814
io->n_blocks = bio->bi_iter.bi_size >> v->data_dev_block_bits;
drivers/md/dm-verity-target.c
815
io->had_mismatch = false;
drivers/md/dm-verity-target.c
818
bio->bi_private = io;
drivers/md/dm-verity-target.c
819
io->iter = bio->bi_iter;
drivers/md/dm-verity-target.c
821
verity_fec_init_io(io);
drivers/md/dm-verity-target.c
823
verity_submit_prefetch(v, io, bio->bi_ioprio);
drivers/md/dm-verity.h
137
extern int verity_hash(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity.h
140
extern int verity_hash_for_block(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity.h
83
struct dm_io_client *io;
drivers/md/dm-zone.c
464
void dm_zone_endio(struct dm_io *io, struct bio *clone)
drivers/md/dm-zone.c
466
struct mapped_device *md = io->md;
drivers/md/dm-zone.c
468
struct bio *orig_bio = io->orig_bio;
drivers/md/dm.c
1006
struct dm_io *io;
drivers/md/dm.c
1010
io = md->requeue_list;
drivers/md/dm.c
1014
while (io) {
drivers/md/dm.c
1015
struct dm_io *next = io->next;
drivers/md/dm.c
1017
dm_io_rewind(io, &md->disk->bio_split);
drivers/md/dm.c
1019
io->next = NULL;
drivers/md/dm.c
1020
__dm_io_complete(io, false);
drivers/md/dm.c
1021
io = next;
drivers/md/dm.c
1034
static inline void dm_io_complete(struct dm_io *io)
drivers/md/dm.c
1044
__dm_io_complete(io, dm_io_flagged(io, DM_IO_WAS_SPLIT));
drivers/md/dm.c
1051
static inline void __dm_io_dec_pending(struct dm_io *io)
drivers/md/dm.c
1053
if (atomic_dec_and_test(&io->io_count))
drivers/md/dm.c
1054
dm_io_complete(io);
drivers/md/dm.c
1057
static void dm_io_set_error(struct dm_io *io, blk_status_t error)
drivers/md/dm.c
1062
spin_lock_irqsave(&io->lock, flags);
drivers/md/dm.c
1063
if (!(io->status == BLK_STS_DM_REQUEUE &&
drivers/md/dm.c
1064
__noflush_suspending(io->md))) {
drivers/md/dm.c
1065
io->status = error;
drivers/md/dm.c
1067
spin_unlock_irqrestore(&io->lock, flags);
drivers/md/dm.c
1070
static void dm_io_dec_pending(struct dm_io *io, blk_status_t error)
drivers/md/dm.c
1073
dm_io_set_error(io, error);
drivers/md/dm.c
1075
__dm_io_dec_pending(io);
drivers/md/dm.c
108
struct dm_io *io = (struct dm_io *)((char *)data + data_size);
drivers/md/dm.c
1098
struct dm_io *io = tio->io;
drivers/md/dm.c
1099
struct mapped_device *md = io->md;
drivers/md/dm.c
110
if (io->magic == DM_IO_MAGIC)
drivers/md/dm.c
111
return (struct bio *)((char *)io + DM_IO_BIO_OFFSET);
drivers/md/dm.c
1112
dm_zone_endio(io, bio);
drivers/md/dm.c
112
BUG_ON(io->magic != DM_TIO_MAGIC);
drivers/md/dm.c
113
return (struct bio *)((char *)io + DM_TARGET_IO_BIO_OFFSET);
drivers/md/dm.c
1148
dm_io_dec_pending(io, error);
drivers/md/dm.c
1327
struct dm_io *io = tio->io;
drivers/md/dm.c
1352
dm_io_set_flag(io, DM_IO_WAS_SPLIT);
drivers/md/dm.c
1353
io->sectors = n_sectors;
drivers/md/dm.c
1354
io->sector_offset = bio_sectors(io->orig_bio);
drivers/md/dm.c
1370
struct dm_io *io = tio->io;
drivers/md/dm.c
1376
bio_clone_blkg_association(tgt_clone, io->orig_bio);
drivers/md/dm.c
1382
dm_start_io_acct(io, clone);
drivers/md/dm.c
1384
trace_block_bio_remap(tgt_clone, disk_devt(io->md->disk),
drivers/md/dm.c
1410
struct dm_io *io = tio->io;
drivers/md/dm.c
1411
struct mapped_device *md = io->md;
drivers/md/dm.c
1441
dm_start_io_acct(io, clone);
drivers/md/dm.c
1453
dm_io_dec_pending(io, BLK_STS_IOERR);
drivers/md/dm.c
1455
dm_io_dec_pending(io, BLK_STS_DM_REQUEUE);
drivers/md/dm.c
1465
struct dm_io *io = ci->io;
drivers/md/dm.c
1472
dm_io_set_flag(io, DM_IO_WAS_SPLIT);
drivers/md/dm.c
1473
io->sectors = len;
drivers/md/dm.c
1474
io->sector_offset = bio_sectors(ci->bio);
drivers/md/dm.c
1489
mutex_lock(&ci->io->md->table_devices_lock);
drivers/md/dm.c
1499
mutex_unlock(&ci->io->md->table_devices_lock);
drivers/md/dm.c
1543
if ((ci->io->orig_bio->bi_opf & (REQ_IDLE | REQ_SYNC)) ==
drivers/md/dm.c
1552
bio_init(&flush_bio, ci->io->md->disk->part0, NULL, 0, opf);
drivers/md/dm.c
1556
ci->io->tio.clone.bi_iter.bi_size = 0;
drivers/md/dm.c
1566
atomic_add(ti->num_flush_bios, &ci->io->io_count);
drivers/md/dm.c
1569
atomic_sub(ti->num_flush_bios - bios, &ci->io->io_count);
drivers/md/dm.c
1590
atomic_add(1, &ci->io->io_count);
drivers/md/dm.c
1601
atomic_sub(1, &ci->io->io_count);
drivers/md/dm.c
1615
atomic_add(num_bios, &ci->io->io_count);
drivers/md/dm.c
1621
atomic_sub(num_bios - bios + 1, &ci->io->io_count);
drivers/md/dm.c
1699
static void dm_queue_poll_io(struct bio *bio, struct dm_io *io)
drivers/md/dm.c
1709
io->data = bio->bi_private;
drivers/md/dm.c
1714
io->next = NULL;
drivers/md/dm.c
1720
io->data = (*head)->data;
drivers/md/dm.c
1721
io->next = *head;
drivers/md/dm.c
1724
*head = io;
drivers/md/dm.c
1777
static void init_clone_info(struct clone_info *ci, struct dm_io *io,
drivers/md/dm.c
1781
ci->io = io;
drivers/md/dm.c
1830
struct mapped_device *md = ci->io->md;
drivers/md/dm.c
1857
atomic_add(nr_zones, &ci->io->io_count);
drivers/md/dm.c
1893
atomic_sub(nr_zones - num_bios, &ci->io->io_count);
drivers/md/dm.c
1907
atomic_add(1, &ci->io->io_count);
drivers/md/dm.c
1909
atomic_sub(1 - bios, &ci->io->io_count);
drivers/md/dm.c
1933
atomic_sub(1, &ci->io->io_count);
drivers/md/dm.c
1960
struct dm_io *io;
drivers/md/dm.c
2002
io = alloc_io(md, bio, GFP_NOWAIT);
drivers/md/dm.c
2003
if (unlikely(!io)) {
drivers/md/dm.c
2009
io = alloc_io(md, bio, GFP_NOIO);
drivers/md/dm.c
2011
init_clone_info(&ci, io, map, bio, is_abnormal);
drivers/md/dm.c
2030
io->requeue_flush_with_data = true;
drivers/md/dm.c
2050
bio_trim(bio, io->sectors, ci.sector_count);
drivers/md/dm.c
2068
atomic_dec(&io->io_count);
drivers/md/dm.c
2069
dm_io_dec_pending(io, error);
drivers/md/dm.c
2071
dm_queue_poll_io(bio, io);
drivers/md/dm.c
2104
static bool dm_poll_dm_io(struct dm_io *io, struct io_comp_batch *iob,
drivers/md/dm.c
2107
WARN_ON_ONCE(!dm_tio_is_normal(&io->tio));
drivers/md/dm.c
2110
if (atomic_read(&io->io_count) > 1) {
drivers/md/dm.c
2119
bio_poll(&io->tio.clone, iob, flags | BLK_POLL_ONESHOT);
drivers/md/dm.c
2123
return atomic_read(&io->io_count) == 1;
drivers/md/dm.c
489
return jiffies_to_nsecs(clone_to_tio(bio)->io->start_time);
drivers/md/dm.c
493
static inline unsigned int dm_io_sectors(struct dm_io *io, struct bio *bio)
drivers/md/dm.c
499
if (io->requeue_flush_with_data)
drivers/md/dm.c
501
if (unlikely(dm_io_flagged(io, DM_IO_WAS_SPLIT)))
drivers/md/dm.c
502
return io->sectors;
drivers/md/dm.c
506
static void dm_io_acct(struct dm_io *io, bool end)
drivers/md/dm.c
508
struct bio *bio = io->orig_bio;
drivers/md/dm.c
510
if (dm_io_flagged(io, DM_IO_BLK_STAT)) {
drivers/md/dm.c
513
io->start_time);
drivers/md/dm.c
516
dm_io_sectors(io, bio),
drivers/md/dm.c
517
io->start_time);
drivers/md/dm.c
521
unlikely(dm_stats_used(&io->md->stats))) {
drivers/md/dm.c
524
if (unlikely(dm_io_flagged(io, DM_IO_WAS_SPLIT)))
drivers/md/dm.c
525
sector = bio_end_sector(bio) - io->sector_offset;
drivers/md/dm.c
529
dm_stats_account_io(&io->md->stats, bio_data_dir(bio),
drivers/md/dm.c
530
sector, dm_io_sectors(io, bio),
drivers/md/dm.c
531
end, io->start_time, &io->stats_aux);
drivers/md/dm.c
535
static void __dm_start_io_acct(struct dm_io *io)
drivers/md/dm.c
537
dm_io_acct(io, false);
drivers/md/dm.c
540
static void dm_start_io_acct(struct dm_io *io, struct bio *clone)
drivers/md/dm.c
545
if (dm_io_flagged(io, DM_IO_ACCOUNTED))
drivers/md/dm.c
550
dm_io_set_flag(io, DM_IO_ACCOUNTED);
drivers/md/dm.c
554
spin_lock_irqsave(&io->lock, flags);
drivers/md/dm.c
555
if (dm_io_flagged(io, DM_IO_ACCOUNTED)) {
drivers/md/dm.c
556
spin_unlock_irqrestore(&io->lock, flags);
drivers/md/dm.c
559
dm_io_set_flag(io, DM_IO_ACCOUNTED);
drivers/md/dm.c
560
spin_unlock_irqrestore(&io->lock, flags);
drivers/md/dm.c
563
__dm_start_io_acct(io);
drivers/md/dm.c
566
static void dm_end_io_acct(struct dm_io *io)
drivers/md/dm.c
568
dm_io_acct(io, true);
drivers/md/dm.c
573
struct dm_io *io;
drivers/md/dm.c
583
tio->io = NULL;
drivers/md/dm.c
585
io = container_of(tio, struct dm_io, tio);
drivers/md/dm.c
586
io->magic = DM_IO_MAGIC;
drivers/md/dm.c
587
io->status = BLK_STS_OK;
drivers/md/dm.c
588
io->requeue_flush_with_data = false;
drivers/md/dm.c
591
atomic_set(&io->io_count, 2);
drivers/md/dm.c
593
io->orig_bio = bio;
drivers/md/dm.c
594
io->md = md;
drivers/md/dm.c
595
spin_lock_init(&io->lock);
drivers/md/dm.c
596
io->start_time = jiffies;
drivers/md/dm.c
597
io->flags = 0;
drivers/md/dm.c
599
dm_io_set_flag(io, DM_IO_BLK_STAT);
drivers/md/dm.c
603
dm_stats_record_start(&md->stats, &io->stats_aux);
drivers/md/dm.c
605
return io;
drivers/md/dm.c
608
static void free_io(struct dm_io *io)
drivers/md/dm.c
610
bio_put(&io->tio.clone);
drivers/md/dm.c
616
struct mapped_device *md = ci->io->md;
drivers/md/dm.c
620
if (!ci->io->tio.io) {
drivers/md/dm.c
622
tio = &ci->io->tio;
drivers/md/dm.c
639
tio->io = ci->io;
drivers/md/dm.c
86
struct dm_io *io;
drivers/md/dm.c
877
static void dm_requeue_add_io(struct dm_io *io, bool first_stage)
drivers/md/dm.c
879
struct mapped_device *md = io->md;
drivers/md/dm.c
884
md->requeue_list = io;
drivers/md/dm.c
885
io->next = next;
drivers/md/dm.c
887
bio_list_add_head(&md->deferred, io->orig_bio);
drivers/md/dm.c
903
static bool dm_handle_requeue(struct dm_io *io, bool first_stage)
drivers/md/dm.c
905
struct bio *bio = io->orig_bio;
drivers/md/dm.c
906
bool handle_requeue = (io->status == BLK_STS_DM_REQUEUE);
drivers/md/dm.c
907
bool handle_polled_eagain = ((io->status == BLK_STS_AGAIN) &&
drivers/md/dm.c
909
struct mapped_device *md = io->md;
drivers/md/dm.c
932
dm_requeue_add_io(io, first_stage);
drivers/md/dm.c
939
io->status = BLK_STS_IOERR;
drivers/md/dm.c
950
static void __dm_io_complete(struct dm_io *io, bool first_stage)
drivers/md/dm.c
952
struct bio *bio = io->orig_bio;
drivers/md/dm.c
953
struct mapped_device *md = io->md;
drivers/md/dm.c
958
requeued = dm_handle_requeue(io, first_stage);
drivers/md/dm.c
962
io_error = io->status;
drivers/md/dm.c
963
if (dm_io_flagged(io, DM_IO_ACCOUNTED))
drivers/md/dm.c
964
dm_end_io_acct(io);
drivers/md/dm.c
970
__dm_start_io_acct(io);
drivers/md/dm.c
971
dm_end_io_acct(io);
drivers/md/dm.c
973
requeue_flush_with_data = io->requeue_flush_with_data;
drivers/md/dm.c
974
free_io(io);
drivers/md/dm.h
109
void dm_zone_endio(struct dm_io *io, struct bio *clone);
drivers/md/raid5-cache.c
1197
struct r5l_io_unit *io, *next;
drivers/md/raid5-cache.c
1202
list_for_each_entry_safe(io, next, &log->finished_ios, log_sibling) {
drivers/md/raid5-cache.c
1204
if (io->state < IO_UNIT_STRIPE_END)
drivers/md/raid5-cache.c
1207
log->next_checkpoint = io->log_start;
drivers/md/raid5-cache.c
1209
list_del(&io->log_sibling);
drivers/md/raid5-cache.c
1210
mempool_free(io, &log->io_pool);
drivers/md/raid5-cache.c
1219
static void __r5l_stripe_write_finished(struct r5l_io_unit *io)
drivers/md/raid5-cache.c
1221
struct r5l_log *log = io->log;
drivers/md/raid5-cache.c
1226
__r5l_set_io_unit_state(io, IO_UNIT_STRIPE_END);
drivers/md/raid5-cache.c
1243
struct r5l_io_unit *io;
drivers/md/raid5-cache.c
1245
io = sh->log_io;
drivers/md/raid5-cache.c
1248
if (io && atomic_dec_and_test(&io->pending_stripe))
drivers/md/raid5-cache.c
1249
__r5l_stripe_write_finished(io);
drivers/md/raid5-cache.c
1257
struct r5l_io_unit *io;
drivers/md/raid5-cache.c
1264
list_for_each_entry(io, &log->flushing_ios, log_sibling)
drivers/md/raid5-cache.c
1265
r5l_io_run_stripes(io);
drivers/md/raid5-cache.c
283
static void __r5l_set_io_unit_state(struct r5l_io_unit *io,
drivers/md/raid5-cache.c
286
if (WARN_ON(io->state >= state))
drivers/md/raid5-cache.c
288
io->state = state;
drivers/md/raid5-cache.c
512
static void r5l_io_run_stripes(struct r5l_io_unit *io)
drivers/md/raid5-cache.c
516
list_for_each_entry_safe(sh, next, &io->stripe_list, log_list) {
drivers/md/raid5-cache.c
528
struct r5l_io_unit *io, *next;
drivers/md/raid5-cache.c
532
list_for_each_entry_safe(io, next, &log->running_ios, log_sibling) {
drivers/md/raid5-cache.c
534
if (io->state < IO_UNIT_IO_END)
drivers/md/raid5-cache.c
537
list_move_tail(&io->log_sibling, &log->finished_ios);
drivers/md/raid5-cache.c
538
r5l_io_run_stripes(io);
drivers/md/raid5-cache.c
544
struct r5l_io_unit *io, *next;
drivers/md/raid5-cache.c
548
list_for_each_entry_safe(io, next, &log->running_ios, log_sibling) {
drivers/md/raid5-cache.c
550
if (io->state < IO_UNIT_IO_END)
drivers/md/raid5-cache.c
552
list_move_tail(&io->log_sibling, &log->io_end_ios);
drivers/md/raid5-cache.c
556
static void __r5l_stripe_write_finished(struct r5l_io_unit *io);
drivers/md/raid5-cache.c
559
struct r5l_io_unit *io = bio->bi_private;
drivers/md/raid5-cache.c
561
struct r5l_log *log = io->log;
drivers/md/raid5-cache.c
570
mempool_free(io->meta_page, &log->meta_pool);
drivers/md/raid5-cache.c
573
__r5l_set_io_unit_state(io, IO_UNIT_IO_END);
drivers/md/raid5-cache.c
581
has_null_flush = io->has_null_flush;
drivers/md/raid5-cache.c
582
has_flush_payload = io->has_flush_payload;
drivers/md/raid5-cache.c
584
if (log->need_cache_flush && !list_empty(&io->stripe_list))
drivers/md/raid5-cache.c
608
WARN_ON(bio_list_empty(&io->flush_barriers));
drivers/md/raid5-cache.c
609
while ((bi = bio_list_pop(&io->flush_barriers)) != NULL) {
drivers/md/raid5-cache.c
611
if (atomic_dec_and_test(&io->pending_stripe)) {
drivers/md/raid5-cache.c
612
__r5l_stripe_write_finished(io);
drivers/md/raid5-cache.c
619
if (atomic_dec_and_test(&io->pending_stripe))
drivers/md/raid5-cache.c
620
__r5l_stripe_write_finished(io);
drivers/md/raid5-cache.c
623
static void r5l_do_submit_io(struct r5l_log *log, struct r5l_io_unit *io)
drivers/md/raid5-cache.c
628
__r5l_set_io_unit_state(io, IO_UNIT_IO_START);
drivers/md/raid5-cache.c
642
if (io->split_bio) {
drivers/md/raid5-cache.c
643
if (io->has_flush)
drivers/md/raid5-cache.c
644
io->split_bio->bi_opf |= REQ_PREFLUSH;
drivers/md/raid5-cache.c
645
if (io->has_fua)
drivers/md/raid5-cache.c
646
io->split_bio->bi_opf |= REQ_FUA;
drivers/md/raid5-cache.c
647
submit_bio(io->split_bio);
drivers/md/raid5-cache.c
650
if (io->has_flush)
drivers/md/raid5-cache.c
651
io->current_bio->bi_opf |= REQ_PREFLUSH;
drivers/md/raid5-cache.c
652
if (io->has_fua)
drivers/md/raid5-cache.c
653
io->current_bio->bi_opf |= REQ_FUA;
drivers/md/raid5-cache.c
654
submit_bio(io->current_bio);
drivers/md/raid5-cache.c
662
struct r5l_io_unit *io = NULL;
drivers/md/raid5-cache.c
667
io = list_first_entry(&log->running_ios, struct r5l_io_unit,
drivers/md/raid5-cache.c
669
if (!io->io_deferred)
drivers/md/raid5-cache.c
670
io = NULL;
drivers/md/raid5-cache.c
672
io->io_deferred = 0;
drivers/md/raid5-cache.c
675
if (io)
drivers/md/raid5-cache.c
676
r5l_do_submit_io(log, io);
drivers/md/raid5-cache.c
706
struct r5l_io_unit *io = log->current_io;
drivers/md/raid5-cache.c
712
if (!io)
drivers/md/raid5-cache.c
715
block = page_address(io->meta_page);
drivers/md/raid5-cache.c
716
block->meta_size = cpu_to_le32(io->meta_offset);
drivers/md/raid5-cache.c
722
if (io->has_flush || io->has_fua) {
drivers/md/raid5-cache.c
723
if (io != list_first_entry(&log->running_ios,
drivers/md/raid5-cache.c
725
io->io_deferred = 1;
drivers/md/raid5-cache.c
731
r5l_do_submit_io(log, io);
drivers/md/raid5-cache.c
744
static void r5_reserve_log_entry(struct r5l_log *log, struct r5l_io_unit *io)
drivers/md/raid5-cache.c
757
io->need_split_bio = true;
drivers/md/raid5-cache.c
759
io->log_end = log->log_start;
drivers/md/raid5-cache.c
764
struct r5l_io_unit *io;
drivers/md/raid5-cache.c
767
io = mempool_alloc(&log->io_pool, GFP_ATOMIC);
drivers/md/raid5-cache.c
768
if (!io)
drivers/md/raid5-cache.c
770
memset(io, 0, sizeof(*io));
drivers/md/raid5-cache.c
772
io->log = log;
drivers/md/raid5-cache.c
773
INIT_LIST_HEAD(&io->log_sibling);
drivers/md/raid5-cache.c
774
INIT_LIST_HEAD(&io->stripe_list);
drivers/md/raid5-cache.c
775
bio_list_init(&io->flush_barriers);
drivers/md/raid5-cache.c
776
io->state = IO_UNIT_RUNNING;
drivers/md/raid5-cache.c
778
io->meta_page = mempool_alloc(&log->meta_pool, GFP_NOIO);
drivers/md/raid5-cache.c
779
block = page_address(io->meta_page);
drivers/md/raid5-cache.c
786
io->log_start = log->log_start;
drivers/md/raid5-cache.c
787
io->meta_offset = sizeof(struct r5l_meta_block);
drivers/md/raid5-cache.c
788
io->seq = log->seq++;
drivers/md/raid5-cache.c
790
io->current_bio = r5l_bio_alloc(log);
drivers/md/raid5-cache.c
791
io->current_bio->bi_end_io = r5l_log_endio;
drivers/md/raid5-cache.c
792
io->current_bio->bi_private = io;
drivers/md/raid5-cache.c
793
__bio_add_page(io->current_bio, io->meta_page, PAGE_SIZE, 0);
drivers/md/raid5-cache.c
795
r5_reserve_log_entry(log, io);
drivers/md/raid5-cache.c
798
list_add_tail(&io->log_sibling, &log->running_ios);
drivers/md/raid5-cache.c
801
return io;
drivers/md/raid5-cache.c
824
struct r5l_io_unit *io = log->current_io;
drivers/md/raid5-cache.c
827
payload = page_address(io->meta_page) + io->meta_offset;
drivers/md/raid5-cache.c
837
io->meta_offset += sizeof(struct r5l_payload_data_parity) +
drivers/md/raid5-cache.c
843
struct r5l_io_unit *io = log->current_io;
drivers/md/raid5-cache.c
845
if (io->need_split_bio) {
drivers/md/raid5-cache.c
846
BUG_ON(io->split_bio);
drivers/md/raid5-cache.c
847
io->split_bio = io->current_bio;
drivers/md/raid5-cache.c
848
io->current_bio = r5l_bio_alloc(log);
drivers/md/raid5-cache.c
849
bio_chain(io->current_bio, io->split_bio);
drivers/md/raid5-cache.c
850
io->need_split_bio = false;
drivers/md/raid5-cache.c
853
if (!bio_add_page(io->current_bio, page, PAGE_SIZE, 0))
drivers/md/raid5-cache.c
856
r5_reserve_log_entry(log, io);
drivers/md/raid5-cache.c
863
struct r5l_io_unit *io;
drivers/md/raid5-cache.c
884
io = log->current_io;
drivers/md/raid5-cache.c
885
payload = page_address(io->meta_page) + io->meta_offset;
drivers/md/raid5-cache.c
890
io->meta_offset += meta_size;
drivers/md/raid5-cache.c
892
if (!io->has_flush_payload) {
drivers/md/raid5-cache.c
893
io->has_flush_payload = 1;
drivers/md/raid5-cache.c
894
atomic_inc(&io->pending_stripe);
drivers/md/raid5-cache.c
905
struct r5l_io_unit *io;
drivers/md/raid5-cache.c
917
io = log->current_io;
drivers/md/raid5-cache.c
920
io->has_flush = 1;
drivers/md/raid5-cache.c
930
io->has_fua = 1;
drivers/md/raid5-cache.c
935
io->has_flush = 1;
drivers/md/raid5-cache.c
957
list_add_tail(&sh->log_list, &io->stripe_list);
drivers/md/raid5-cache.c
958
atomic_inc(&io->pending_stripe);
drivers/md/raid5-cache.c
959
sh->log_io = io;
drivers/md/raid5-cache.c
966
sh->log_start = io->log_start;
drivers/md/raid5-ppl.c
208
struct ppl_io_unit *io;
drivers/md/raid5-ppl.c
210
io = kmem_cache_alloc(kc, gfp_mask);
drivers/md/raid5-ppl.c
211
if (!io)
drivers/md/raid5-ppl.c
214
io->header_page = alloc_page(gfp_mask);
drivers/md/raid5-ppl.c
215
if (!io->header_page) {
drivers/md/raid5-ppl.c
216
kmem_cache_free(kc, io);
drivers/md/raid5-ppl.c
220
return io;
drivers/md/raid5-ppl.c
226
struct ppl_io_unit *io = element;
drivers/md/raid5-ppl.c
228
__free_page(io->header_page);
drivers/md/raid5-ppl.c
229
kmem_cache_free(kc, io);
drivers/md/raid5-ppl.c
236
struct ppl_io_unit *io;
drivers/md/raid5-ppl.c
240
io = mempool_alloc(&ppl_conf->io_pool, GFP_NOWAIT);
drivers/md/raid5-ppl.c
241
if (!io)
drivers/md/raid5-ppl.c
244
header_page = io->header_page;
drivers/md/raid5-ppl.c
245
memset(io, 0, sizeof(*io));
drivers/md/raid5-ppl.c
246
io->header_page = header_page;
drivers/md/raid5-ppl.c
248
io->log = log;
drivers/md/raid5-ppl.c
249
INIT_LIST_HEAD(&io->log_sibling);
drivers/md/raid5-ppl.c
250
INIT_LIST_HEAD(&io->stripe_list);
drivers/md/raid5-ppl.c
251
atomic_set(&io->pending_stripes, 0);
drivers/md/raid5-ppl.c
252
atomic_set(&io->pending_flushes, 0);
drivers/md/raid5-ppl.c
253
bio_init(&io->bio, log->rdev->bdev, io->biovec, PPL_IO_INLINE_BVECS,
drivers/md/raid5-ppl.c
256
pplhdr = page_address(io->header_page);
drivers/md/raid5-ppl.c
261
io->seq = atomic64_inc_return(&ppl_conf->seq);
drivers/md/raid5-ppl.c
262
pplhdr->generation = cpu_to_le64(io->seq);
drivers/md/raid5-ppl.c
264
return io;
drivers/md/raid5-ppl.c
269
struct ppl_io_unit *io = log->current_io;
drivers/md/raid5-ppl.c
280
if (io && (io->pp_size == log->entry_space ||
drivers/md/raid5-ppl.c
281
io->entries_count == PPL_HDR_MAX_ENTRIES)) {
drivers/md/raid5-ppl.c
283
__func__, io->seq);
drivers/md/raid5-ppl.c
284
io = NULL;
drivers/md/raid5-ppl.c
288
if (!io) {
drivers/md/raid5-ppl.c
289
io = ppl_new_iounit(log, sh);
drivers/md/raid5-ppl.c
290
if (!io)
drivers/md/raid5-ppl.c
293
list_add_tail(&io->log_sibling, &log->io_list);
drivers/md/raid5-ppl.c
296
log->current_io = io;
drivers/md/raid5-ppl.c
311
io->seq, (unsigned long long)data_sector, data_disks);
drivers/md/raid5-ppl.c
313
pplhdr = page_address(io->header_page);
drivers/md/raid5-ppl.c
315
if (io->entries_count > 0) {
drivers/md/raid5-ppl.c
317
&pplhdr->entries[io->entries_count - 1];
drivers/md/raid5-ppl.c
319
&io->stripe_list, struct stripe_head, log_list);
drivers/md/raid5-ppl.c
337
e = &pplhdr->entries[io->entries_count++];
drivers/md/raid5-ppl.c
348
io->pp_size += PAGE_SIZE;
drivers/md/raid5-ppl.c
354
list_add_tail(&sh->log_list, &io->stripe_list);
drivers/md/raid5-ppl.c
355
atomic_inc(&io->pending_stripes);
drivers/md/raid5-ppl.c
356
sh->ppl_io = io;
drivers/md/raid5-ppl.c
364
struct ppl_io_unit *io = sh->ppl_io;
drivers/md/raid5-ppl.c
367
if (io || test_bit(STRIPE_SYNCING, &sh->state) || !sh->ppl_page ||
drivers/md/raid5-ppl.c
400
struct ppl_io_unit *io = bio->bi_private;
drivers/md/raid5-ppl.c
401
struct ppl_log *log = io->log;
drivers/md/raid5-ppl.c
405
pr_debug("%s: seq: %llu\n", __func__, io->seq);
drivers/md/raid5-ppl.c
410
list_for_each_entry_safe(sh, next, &io->stripe_list, log_list) {
drivers/md/raid5-ppl.c
418
static void ppl_submit_iounit_bio(struct ppl_io_unit *io, struct bio *bio)
drivers/md/raid5-ppl.c
421
__func__, io->seq, bio->bi_iter.bi_size,
drivers/md/raid5-ppl.c
428
static void ppl_submit_iounit(struct ppl_io_unit *io)
drivers/md/raid5-ppl.c
430
struct ppl_log *log = io->log;
drivers/md/raid5-ppl.c
432
struct ppl_header *pplhdr = page_address(io->header_page);
drivers/md/raid5-ppl.c
433
struct bio *bio = &io->bio;
drivers/md/raid5-ppl.c
437
bio->bi_private = io;
drivers/md/raid5-ppl.c
444
for (i = 0; i < io->entries_count; i++) {
drivers/md/raid5-ppl.c
448
__func__, io->seq, i, le64_to_cpu(e->data_sector),
drivers/md/raid5-ppl.c
456
pplhdr->entries_count = cpu_to_le32(io->entries_count);
drivers/md/raid5-ppl.c
462
(PPL_HEADER_SIZE + io->pp_size) >> 9)
drivers/md/raid5-ppl.c
468
__bio_add_page(bio, io->header_page, PAGE_SIZE, 0);
drivers/md/raid5-ppl.c
474
log->next_io_sector += (PPL_HEADER_SIZE + io->pp_size) >> 9;
drivers/md/raid5-ppl.c
478
list_for_each_entry(sh, &io->stripe_list, log_list) {
drivers/md/raid5-ppl.c
502
ppl_submit_iounit_bio(io, prev);
drivers/md/raid5-ppl.c
506
ppl_submit_iounit_bio(io, bio);
drivers/md/raid5-ppl.c
511
struct ppl_io_unit *io;
drivers/md/raid5-ppl.c
515
io = list_first_entry_or_null(&log->io_list, struct ppl_io_unit,
drivers/md/raid5-ppl.c
517
if (io && io->submitted)
drivers/md/raid5-ppl.c
518
io = NULL;
drivers/md/raid5-ppl.c
522
if (io) {
drivers/md/raid5-ppl.c
523
io->submitted = true;
drivers/md/raid5-ppl.c
525
if (io == log->current_io)
drivers/md/raid5-ppl.c
528
ppl_submit_iounit(io);
drivers/md/raid5-ppl.c
547
static void ppl_io_unit_finished(struct ppl_io_unit *io)
drivers/md/raid5-ppl.c
549
struct ppl_log *log = io->log;
drivers/md/raid5-ppl.c
554
pr_debug("%s: seq: %llu\n", __func__, io->seq);
drivers/md/raid5-ppl.c
559
list_del(&io->log_sibling);
drivers/md/raid5-ppl.c
562
mempool_free(io, &ppl_conf->io_pool);
drivers/md/raid5-ppl.c
583
struct ppl_io_unit *io = bio->bi_private;
drivers/md/raid5-ppl.c
584
struct ppl_log *log = io->log;
drivers/md/raid5-ppl.c
602
if (atomic_dec_and_test(&io->pending_flushes)) {
drivers/md/raid5-ppl.c
603
ppl_io_unit_finished(io);
drivers/md/raid5-ppl.c
608
static void ppl_do_flush(struct ppl_io_unit *io)
drivers/md/raid5-ppl.c
610
struct ppl_log *log = io->log;
drivers/md/raid5-ppl.c
617
atomic_set(&io->pending_flushes, raid_disks);
drivers/md/raid5-ppl.c
633
bio->bi_private = io;
drivers/md/raid5-ppl.c
646
if (atomic_dec_and_test(&io->pending_flushes))
drivers/md/raid5-ppl.c
647
ppl_io_unit_finished(io);
drivers/md/raid5-ppl.c
654
struct ppl_io_unit *io;
drivers/md/raid5-ppl.c
656
io = list_first_entry_or_null(&log->io_list, struct ppl_io_unit,
drivers/md/raid5-ppl.c
659
return !io || !io->submitted;
drivers/md/raid5-ppl.c
692
struct ppl_io_unit *io;
drivers/md/raid5-ppl.c
694
io = sh->ppl_io;
drivers/md/raid5-ppl.c
697
if (io && atomic_dec_and_test(&io->pending_stripes)) {
drivers/md/raid5-ppl.c
698
if (io->log->disk_flush_bitmap)
drivers/md/raid5-ppl.c
699
ppl_do_flush(io);
drivers/md/raid5-ppl.c
701
ppl_io_unit_finished(io);
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
114
int cxd2880_io_spi_create(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
117
if (!io || !spi)
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
120
io->read_regs = cxd2880_io_spi_read_reg;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
121
io->write_regs = cxd2880_io_spi_write_reg;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
122
io->write_reg = cxd2880_io_common_write_one_reg;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
123
io->if_object = spi;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
124
io->i2c_address_sys = 0;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
125
io->i2c_address_demod = 0;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
126
io->slave_select = slave_select;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
14
static int cxd2880_io_spi_read_reg(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
24
if (!io || !io->if_object || !data)
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
30
spi = io->if_object;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
62
static int cxd2880_io_spi_write_reg(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
72
if (!io || !io->if_object || !data)
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.c
81
spi = io->if_object;
drivers/media/dvb-frontends/cxd2880/cxd2880_devio_spi.h
19
int cxd2880_io_spi_create(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
12
int cxd2880_io_common_write_one_reg(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
16
if (!io)
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
19
return io->write_regs(io, tgt, sub_address, &data, 1);
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
22
int cxd2880_io_set_reg_bits(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
28
if (!io)
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
37
ret = io->read_regs(io, tgt, sub_address, &rdata, 1);
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
44
return io->write_reg(io, tgt, sub_address, data);
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
47
int cxd2880_io_write_multi_regs(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
55
if (!io)
drivers/media/dvb-frontends/cxd2880/cxd2880_io.c
59
ret = io->write_reg(io, tgt, reg_value[i].addr,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.h
26
int (*read_regs)(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.h
29
int (*write_regs)(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.h
32
int (*write_reg)(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.h
42
int cxd2880_io_common_write_one_reg(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.h
46
int cxd2880_io_set_reg_bits(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_io.h
50
int cxd2880_io_write_multi_regs(struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1009
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1025
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1034
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1040
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1047
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1053
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1059
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1065
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1072
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1082
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1088
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1124
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1130
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1199
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1207
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1215
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1231
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1238
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1249
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1255
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1265
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1281
ret = tnr_dmd->diver_sub->io->write_reg(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1288
ret = tnr_dmd->diver_sub->io->write_regs(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1294
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1301
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1306
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1313
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1319
ret = tnr_dmd->diver_sub->io->write_reg(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1326
ret = tnr_dmd->diver_sub->io->write_regs(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1331
ret = tnr_dmd->diver_sub->io->write_reg(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1337
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1344
return cxd2880_io_write_multi_regs(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1361
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1370
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1376
ret = tnr_dmd->diver_sub->io->write_reg(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1384
ret = tnr_dmd->diver_sub->io->write_regs(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1391
ret = tnr_dmd->diver_sub->io->write_regs(tnr_dmd->diver_sub->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1397
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1405
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1418
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1427
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1436
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1447
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1458
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1473
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1480
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1487
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1510
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1515
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1523
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1528
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1536
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1545
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1552
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1560
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1573
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1580
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1587
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1595
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1603
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1608
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1616
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1625
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1633
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1638
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1647
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1656
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1661
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1669
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1678
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1685
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1693
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1728
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1749
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1755
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1761
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1773
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1779
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1785
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1794
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1801
cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1820
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1827
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1843
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1857
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1863
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1917
struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1921
if (!tnr_dmd || !io || !create_param)
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1926
tnr_dmd->io = io;
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1964
tnr_dmd_main->io = io_main;
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
1977
tnr_dmd_sub->io = io_sub;
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
212
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
2215
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
2222
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
233
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
240
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
258
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
269
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
274
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
280
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
285
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
291
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3071
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3076
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
308
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3144
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3149
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3173
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3182
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3205
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
321
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3215
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3229
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3234
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3260
ret = tnr_dmd->io->write_reg(tnr_dmd->io, tgt, 0x00, bank);
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3264
ret = cxd2880_io_set_reg_bits(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3401
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3408
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3414
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3418
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3449
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3456
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3463
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3470
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3504
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
351
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
3516
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
364
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
386
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
440
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
448
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
454
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
461
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
468
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
475
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
490
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
496
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
516
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
522
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
530
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
537
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
546
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
551
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
556
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
562
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
569
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
574
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
580
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
586
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
594
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
600
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
620
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
635
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
652
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
667
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
674
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
681
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
688
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
694
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
700
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
708
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
714
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
721
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
729
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
734
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
742
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
751
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
756
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
764
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
774
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
781
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
788
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
795
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
802
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
809
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
818
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
823
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
831
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
845
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
852
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
867
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
873
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
880
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
897
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
904
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
912
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
923
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
949
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
955
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
964
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.c
970
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.h
205
struct cxd2880_io *io;
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.h
23
#define slvt_unfreeze_reg(tnr_dmd) ((void)((tnr_dmd)->io->write_reg\
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.h
237
struct cxd2880_io *io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd.h
24
((tnr_dmd)->io, CXD2880_IO_TGT_DMD, 0x01, 0x00)))
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
105
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
112
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
132
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
138
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
147
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
153
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
160
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
167
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
175
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
184
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
193
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
213
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
220
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
240
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
246
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
266
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
284
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
305
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
311
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
318
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
324
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
344
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
350
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
370
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
388
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
409
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
415
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
422
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
428
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
448
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
454
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
474
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
492
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
513
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
519
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
526
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
532
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
552
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
558
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
578
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
596
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
617
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
623
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
630
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
636
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
647
return cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
661
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
669
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
685
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt.c
691
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1128
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1135
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1142
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1173
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1179
return tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1202
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
1208
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
165
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
172
ret = cxd2880_io_write_multi_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
180
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
186
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
193
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
199
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
205
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
211
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
217
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
223
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
229
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
235
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
241
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
247
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
253
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
279
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
285
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
291
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
297
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
303
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
309
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
315
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
322
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
328
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
335
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
341
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
361
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
367
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
385
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
405
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
426
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
447
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
453
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
459
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
479
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
500
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
521
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
527
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
533
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
553
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
574
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
595
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
601
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
607
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
627
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
648
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
672
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
678
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
684
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
704
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
725
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
737
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
743
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
760
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
766
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
823
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
829
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
835
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2.c
841
return tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1004
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1090
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1098
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1116
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1129
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1142
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
118
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1202
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1210
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1257
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
126
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1265
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1409
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1415
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1471
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1479
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1488
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1496
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1592
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1600
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1614
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1627
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1635
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1679
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1687
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1701
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1714
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1722
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1755
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
1761
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
237
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
245
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
40
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
408
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
416
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
46
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
478
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
486
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
527
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
537
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
550
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
568
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
580
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
588
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
633
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
641
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
659
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
732
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
740
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
753
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
823
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
831
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
841
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
849
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
882
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
888
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
960
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
972
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt2_mon.c
985
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
115
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
123
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
165
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
173
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
241
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
249
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
257
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
265
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
313
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
319
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
366
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
374
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
40
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
410
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
418
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
46
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
573
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
581
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
590
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_dvbt_mon.c
598
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
121
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
126
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
29
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
35
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
41
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
47
ret = tnr_dmd->io->write_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
55
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
61
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
70
ret = tnr_dmd->io->read_regs(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
82
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_tnrdmd_mon.c
88
ret = tnr_dmd->io->write_reg(tnr_dmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
139
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
147
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
162
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
177
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
183
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
217
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
223
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
234
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
240
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
289
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
297
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
313
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
324
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
336
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
342
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
383
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
389
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
400
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
406
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
438
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
444
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
455
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
461
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
508
if (priv->tnrdmd.io != &priv->regio) {
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
67
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
730
ret = tnrdmd->io->write_reg(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
734
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
75
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
88
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/cxd2880/cxd2880_top.c
98
ret = tnrdmd->io->read_regs(tnrdmd->io,
drivers/media/dvb-frontends/dib0090.c
1581
else if (state->config->io.clock_khz >= 24000)
drivers/media/dvb-frontends/dib0090.c
2367
FREF = state->config->io.clock_khz;
drivers/media/dvb-frontends/dib0090.c
2416
if (!state->config->io.pll_int_loop_filt) {
drivers/media/dvb-frontends/dib0090.c
2424
lo6 = (state->config->io.pll_int_loop_filt << 3);
drivers/media/dvb-frontends/dib0090.c
2467
dprintk("REFDIV: %d, FREF: %d\n", (u32) 1, (u32) state->config->io.clock_khz);
drivers/media/dvb-frontends/dib0090.c
521
dib0090_write_reg(state, 0x20, ((cfg->io.adc_clock_ratio - 1) << 11) | (0 << 10) | (1 << 9) | (1 << 8) | (0 << 4) | 0);
drivers/media/dvb-frontends/dib0090.c
533
if ((PllCfg & 0x1FFF) != ((cfg->io.pll_range << 12) | (cfg->io.pll_loopdiv << 6) | (cfg->io.pll_prediv)) && (!cfg->in_soc)
drivers/media/dvb-frontends/dib0090.c
534
&& !cfg->io.pll_bypass) {
drivers/media/dvb-frontends/dib0090.c
545
PllCfg = (1 << 15) | (0 << 13) | (cfg->io.pll_range << 12) | (cfg->io.pll_loopdiv << 6) | (cfg->io.pll_prediv);
drivers/media/dvb-frontends/dib0090.c
570
if (cfg->io.pll_bypass) {
drivers/media/dvb-frontends/dib0090.c
571
PllCfg |= (cfg->io.pll_bypass << 15);
drivers/media/dvb-frontends/dib0090.c
590
((cfg->io.adc_clock_ratio - 1) << 11) | (0 << 10) | (1 << 9) | (1 << 8) | (cfg->data_tx_drv << 4) | cfg->ls_cfg_pad_drv);
drivers/media/dvb-frontends/dib0090.c
605
if ((PllCfg & 0x1FFF) != ((cfg->io.pll_range << 12) | (cfg->io.pll_loopdiv << 6) | (cfg->io.pll_prediv)) && !cfg->io.pll_bypass) {
drivers/media/dvb-frontends/dib0090.c
616
PllCfg = (1 << 15) | (0 << 13) | (cfg->io.pll_range << 12) | (cfg->io.pll_loopdiv << 6) | (cfg->io.pll_prediv);
drivers/media/dvb-frontends/dib0090.c
641
if (cfg->io.pll_bypass) {
drivers/media/dvb-frontends/dib0090.c
642
PllCfg |= (cfg->io.pll_bypass << 15);
drivers/media/dvb-frontends/dib0090.h
43
struct dib0090_io_config io;
drivers/media/dvb-frontends/drx39xyj/drxj.h
145
enum drxj_cfg_smart_ant_io io;
drivers/media/i2c/vd55g1.c
1044
unsigned long io;
drivers/media/i2c/vd55g1.c
1048
for_each_set_bit(io, &gpio_mask, VD55G1_NB_GPIOS) {
drivers/media/i2c/vd55g1.c
1049
gpio_val = sensor->gpios[io];
drivers/media/i2c/vd55g1.c
1057
VD55G1_REG_GPIO_0_CTRL(1) + io,
drivers/media/i2c/vd55g1.c
1062
ret = vd55g1_write(sensor, VD55G1_REG_GPIO_0_CTRL(0) + io,
drivers/media/i2c/vd56g3.c
460
unsigned long io;
drivers/media/i2c/vd56g3.c
464
for_each_set_bit(io, &gpio_mask, VD56G3_NB_GPIOS) {
drivers/media/i2c/vd56g3.c
465
gpio_val = sensor->gpios[io];
drivers/media/i2c/vd56g3.c
471
cci_write(sensor->regmap, VD56G3_REG_GPIO_0_CTRL + io, gpio_val,
drivers/media/pci/ddbridge/ddbridge-core.c
123
static void ddb_set_dma_table(struct ddb_io *io)
drivers/media/pci/ddbridge/ddbridge-core.c
125
struct ddb *dev = io->port->dev;
drivers/media/pci/ddbridge/ddbridge-core.c
126
struct ddb_dma *dma = io->dma;
drivers/media/pci/ddbridge/ddbridge-core.c
2167
struct ddb_input *input = (struct ddb_input *)dma->io;
drivers/media/pci/ddbridge/ddbridge-core.c
2198
struct ddb_output *output = (struct ddb_output *)dma->io;
drivers/media/pci/ddbridge/ddbridge-core.c
2225
static const struct ddb_regmap *io_regmap(struct ddb_io *io, int link)
drivers/media/pci/ddbridge/ddbridge-core.c
2230
info = io->port->dev->link[io->port->lnr].info;
drivers/media/pci/ddbridge/ddbridge-core.c
2232
info = io->port->dev->link[0].info;
drivers/media/pci/ddbridge/ddbridge-core.c
2240
static void ddb_dma_init(struct ddb_io *io, int nr, int out)
drivers/media/pci/ddbridge/ddbridge-core.c
2243
const struct ddb_regmap *rm = io_regmap(io, 0);
drivers/media/pci/ddbridge/ddbridge-core.c
2245
dma = out ? &io->port->dev->odma[nr] : &io->port->dev->idma[nr];
drivers/media/pci/ddbridge/ddbridge-core.c
2246
io->dma = dma;
drivers/media/pci/ddbridge/ddbridge-core.c
2247
dma->io = io;
drivers/media/pci/ddbridge/ddbridge-core.c
2266
ddbwritel(io->port->dev, 0, DMA_BUFFER_ACK(dma));
drivers/media/pci/ddbridge/ddbridge-core.c
2267
dev_dbg(io->port->dev->dev, "init link %u, io %u, dma %u, dmaregs %08x bufregs %08x\n",
drivers/media/pci/ddbridge/ddbridge-core.c
2268
io->port->lnr, io->nr, nr, dma->regs, dma->bufregs);
drivers/media/pci/ddbridge/ddbridge.h
133
void *io;
drivers/media/pci/ngene/ngene-core.c
1446
int io = ni->io_type[nr];
drivers/media/pci/ngene/ngene-core.c
1450
chan->type = io;
drivers/media/pci/ngene/ngene-core.c
1454
if (io & NGENE_IO_TSIN) {
drivers/media/pci/ngene/ngene-core.c
1468
if (!dev->ci.en && (io & NGENE_IO_TSOUT))
drivers/media/pci/ngene/ngene-core.c
1471
if (io & (NGENE_IO_TSIN | NGENE_IO_TSOUT)) {
drivers/media/pci/ngene/ngene-core.c
1490
if (dev->ci.en && (io & NGENE_IO_TSOUT)) {
drivers/media/radio/radio-aimslab.c
102
outb_p(bits, rt->isa.io);
drivers/media/radio/radio-aimslab.c
115
return 0xffff * !(inb(isa->io) & 2);
drivers/media/radio/radio-aimslab.c
124
outb(0xd0, isa->io); /* volume steady + sigstr + off */
drivers/media/radio/radio-aimslab.c
128
outb(0x48, isa->io); /* volume down but still "on" */
drivers/media/radio/radio-aimslab.c
131
outb(0x98, isa->io); /* volume up + sigstr + on */
drivers/media/radio/radio-aimslab.c
135
outb(0x58, isa->io); /* volume down + sigstr + on */
drivers/media/radio/radio-aimslab.c
139
outb(0xd8, isa->io); /* volume steady + sigstr + on */
drivers/media/radio/radio-aimslab.c
148
outb(0x90, isa->io); /* volume up but still "on" */
drivers/media/radio/radio-aimslab.c
150
outb(0xc0, isa->io); /* steady volume, mute card */
drivers/media/radio/radio-aimslab.c
173
.io_params = io,
drivers/media/radio/radio-aimslab.c
54
static int io[RTRACK_MAX] = { [0] = CONFIG_RADIO_RTRACK_PORT,
drivers/media/radio/radio-aimslab.c
58
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-aimslab.c
59
MODULE_PARM_DESC(io, "I/O addresses of the RadioTrack card (0x20f or 0x30f)");
drivers/media/radio/radio-aztech.c
106
return (inb(isa->io) & AZTECH_BIT_NOT_TUNED) ? 0 : 0xffff;
drivers/media/radio/radio-aztech.c
116
outb(az->curvol, isa->io);
drivers/media/radio/radio-aztech.c
139
.io_params = io,
drivers/media/radio/radio-aztech.c
44
static int io[AZTECH_MAX] = { [0] = CONFIG_RADIO_AZTECH_PORT,
drivers/media/radio/radio-aztech.c
48
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-aztech.c
49
MODULE_PARM_DESC(io, "I/O addresses of the Aztech card (0x350 or 0x358)");
drivers/media/radio/radio-aztech.c
80
outb_p(bits, az->isa.io);
drivers/media/radio/radio-aztech.c
99
if (inb(isa->io) & AZTECH_BIT_MONO)
drivers/media/radio/radio-cadet.c
122
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
123
if ((inb(dev->io + 1) & 0x40) == 0)
drivers/media/radio/radio-cadet.c
137
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
138
curvol = inb(dev->io + 1); /* Save current volume/mute setting */
drivers/media/radio/radio-cadet.c
139
outb(0x00, dev->io + 1); /* Ensure WRITE-ENABLE is LOW */
drivers/media/radio/radio-cadet.c
146
fifo = (fifo << 1) | ((inb(dev->io + 1) >> 7) & 0x01);
drivers/media/radio/radio-cadet.c
148
outb(0x01, dev->io + 1);
drivers/media/radio/radio-cadet.c
149
dev->tunestat &= inb(dev->io + 1);
drivers/media/radio/radio-cadet.c
150
outb(0x00, dev->io + 1);
drivers/media/radio/radio-cadet.c
157
outb(curvol, dev->io + 1);
drivers/media/radio/radio-cadet.c
194
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
201
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
202
outb(test, dev->io + 1); /* Initialize for write */
drivers/media/radio/radio-cadet.c
205
outb(test, dev->io + 1);
drivers/media/radio/radio-cadet.c
207
outb(test, dev->io + 1);
drivers/media/radio/radio-cadet.c
210
outb(test, dev->io + 1);
drivers/media/radio/radio-cadet.c
248
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
249
curvol = inb(dev->io + 1);
drivers/media/radio/radio-cadet.c
257
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
258
outb(curvol, dev->io + 1);
drivers/media/radio/radio-cadet.c
270
outb(3, dev->io);
drivers/media/radio/radio-cadet.c
271
outb(inb(dev->io + 1) & 0x7f, dev->io + 1);
drivers/media/radio/radio-cadet.c
291
outb(0x3, dev->io); /* Select RDS Decoder Control */
drivers/media/radio/radio-cadet.c
292
if ((inb(dev->io + 1) & 0x20) != 0)
drivers/media/radio/radio-cadet.c
294
outb(0x80, dev->io); /* Select RDS fifo */
drivers/media/radio/radio-cadet.c
296
while ((inb(dev->io) & 0x80) != 0) {
drivers/media/radio/radio-cadet.c
297
dev->rdsbuf[dev->rdsin] = inb(dev->io + 1);
drivers/media/radio/radio-cadet.c
320
outb(0x80, dev->io); /* Select RDS fifo */
drivers/media/radio/radio-cadet.c
377
outb(3, dev->io);
drivers/media/radio/radio-cadet.c
378
outb(inb(dev->io + 1) & 0x7f, dev->io + 1);
drivers/media/radio/radio-cadet.c
380
outb(3, dev->io);
drivers/media/radio/radio-cadet.c
381
if (inb(dev->io + 1) & 0x80)
drivers/media/radio/radio-cadet.c
442
outb(7, dev->io); /* Select tuner control */
drivers/media/radio/radio-cadet.c
444
outb(0x00, dev->io + 1);
drivers/media/radio/radio-cadet.c
446
outb(0x20, dev->io + 1);
drivers/media/radio/radio-cadet.c
54
static int io = -1; /* default to isapnp activation */
drivers/media/radio/radio-cadet.c
541
if (io > 0)
drivers/media/radio/radio-cadet.c
547
io = pnp_port_start(dev, 0);
drivers/media/radio/radio-cadet.c
549
printk(KERN_INFO "radio-cadet: PnP reports device at %#x\n", io);
drivers/media/radio/radio-cadet.c
551
return io;
drivers/media/radio/radio-cadet.c
57
module_param(io, int, 0);
drivers/media/radio/radio-cadet.c
571
dev->io = iovals[i];
drivers/media/radio/radio-cadet.c
572
if (request_region(dev->io, 2, "cadet-probe")) {
drivers/media/radio/radio-cadet.c
575
release_region(dev->io, 2);
drivers/media/radio/radio-cadet.c
578
release_region(dev->io, 2);
drivers/media/radio/radio-cadet.c
58
MODULE_PARM_DESC(io, "I/O address of Cadet card (0x330,0x332,0x334,0x336,0x338,0x33a,0x33c,0x33e)");
drivers/media/radio/radio-cadet.c
581
dev->io = -1;
drivers/media/radio/radio-cadet.c
600
if (io < 0)
drivers/media/radio/radio-cadet.c
602
dev->io = io;
drivers/media/radio/radio-cadet.c
605
if (dev->io < 0)
drivers/media/radio/radio-cadet.c
609
if (dev->io < 0) {
drivers/media/radio/radio-cadet.c
616
if (!request_region(dev->io, 2, "cadet"))
drivers/media/radio/radio-cadet.c
621
release_region(dev->io, 2);
drivers/media/radio/radio-cadet.c
653
v4l2_info(v4l2_dev, "ADS Cadet Radio Card at 0x%x\n", dev->io);
drivers/media/radio/radio-cadet.c
658
release_region(dev->io, 2);
drivers/media/radio/radio-cadet.c
671
outb(7, dev->io); /* Mute */
drivers/media/radio/radio-cadet.c
672
outb(0x00, dev->io + 1);
drivers/media/radio/radio-cadet.c
673
release_region(dev->io, 2);
drivers/media/radio/radio-cadet.c
69
int io;
drivers/media/radio/radio-gemtek.c
157
outb_p(mute | GEMTEK_CE | GEMTEK_DA | GEMTEK_CK, isa->io);
drivers/media/radio/radio-gemtek.c
162
outb_p(mute | GEMTEK_CE | bit, isa->io);
drivers/media/radio/radio-gemtek.c
164
outb_p(mute | GEMTEK_CE | bit | GEMTEK_CK, isa->io);
drivers/media/radio/radio-gemtek.c
168
outb_p(mute | GEMTEK_DA | GEMTEK_CK, isa->io);
drivers/media/radio/radio-gemtek.c
238
i = inb_p(isa->io);
drivers/media/radio/radio-gemtek.c
240
outb_p((i >> 5) | (mute ? GEMTEK_MT : 0), isa->io);
drivers/media/radio/radio-gemtek.c
247
if (inb_p(isa->io) & GEMTEK_NS)
drivers/media/radio/radio-gemtek.c
255
static bool gemtek_probe(struct radio_isa_card *isa, int io)
drivers/media/radio/radio-gemtek.c
259
q = inb_p(io); /* Read bus contents before probing. */
drivers/media/radio/radio-gemtek.c
263
outb_p(1 << i, io);
drivers/media/radio/radio-gemtek.c
266
if ((inb_p(io) & ~GEMTEK_NS) != (0x17 | (1 << (i + 5))))
drivers/media/radio/radio-gemtek.c
269
outb_p(q >> 5, io); /* Write bus contents back. */
drivers/media/radio/radio-gemtek.c
311
.io_params = io,
drivers/media/radio/radio-gemtek.c
63
static int io[GEMTEK_MAX] = { [0] = CONFIG_RADIO_GEMTEK_PORT,
drivers/media/radio/radio-gemtek.c
73
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-gemtek.c
74
MODULE_PARM_DESC(io, "Force I/O ports for the GemTek Radio card if automatic probing is disabled or fails. The most common I/O ports are: 0x20c 0x30c, 0x24c or 0x34c (0x20c, 0x248 and 0x28c have been reported to work for the combined sound/radiocard).");
drivers/media/radio/radio-isa.c
133
v4l2_info(&isa->v4l2_dev, "I/O Port = 0x%03x\n", isa->io);
drivers/media/radio/radio-isa.c
169
static bool radio_isa_valid_io(const struct radio_isa_driver *drv, int io)
drivers/media/radio/radio-isa.c
174
if (drv->io_ports[i] == io)
drivers/media/radio/radio-isa.c
204
if (!request_region(isa->io, region_size, v4l2_dev->name)) {
drivers/media/radio/radio-isa.c
205
v4l2_err(v4l2_dev, "port 0x%x already in use\n", isa->io);
drivers/media/radio/radio-isa.c
265
drv->card, isa->io);
drivers/media/radio/radio-isa.c
271
release_region(isa->io, region_size);
drivers/media/radio/radio-isa.c
285
release_region(isa->io, region_size);
drivers/media/radio/radio-isa.c
300
isa->io = drv->io_params[dev];
drivers/media/radio/radio-isa.c
307
int io = drv->io_ports[i];
drivers/media/radio/radio-isa.c
309
if (request_region(io, drv->region_size, v4l2_dev->name)) {
drivers/media/radio/radio-isa.c
310
bool found = ops->probe(isa, io);
drivers/media/radio/radio-isa.c
312
release_region(io, drv->region_size);
drivers/media/radio/radio-isa.c
314
isa->io = io;
drivers/media/radio/radio-isa.c
321
if (!radio_isa_valid_io(drv, isa->io)) {
drivers/media/radio/radio-isa.c
324
if (isa->io < 0)
drivers/media/radio/radio-isa.c
363
isa->io = pnp_port_start(dev, 0);
drivers/media/radio/radio-isa.h
35
int io;
drivers/media/radio/radio-isa.h
47
bool (*probe)(struct radio_isa_card *isa, int io);
drivers/media/radio/radio-maxiradio.c
102
u8 bits = inb(dev->io);
drivers/media/radio/radio-maxiradio.c
159
dev->io = pci_resource_start(pdev, 0);
drivers/media/radio/radio-maxiradio.c
182
outb(0, dev->io);
drivers/media/radio/radio-maxiradio.c
76
u16 io; /* base of radio io */
drivers/media/radio/radio-maxiradio.c
94
outb(bits, dev->io);
drivers/media/radio/radio-rtrack2.c
121
.io_params = io,
drivers/media/radio/radio-rtrack2.c
39
static int io[RTRACK2_MAX] = { [0] = CONFIG_RADIO_RTRACK2_PORT,
drivers/media/radio/radio-rtrack2.c
43
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-rtrack2.c
44
MODULE_PARM_DESC(io, "I/O addresses of the RadioTrack card (0x20f or 0x30f)");
drivers/media/radio/radio-rtrack2.c
55
outb_p(1, isa->io);
drivers/media/radio/radio-rtrack2.c
56
outb_p(3, isa->io);
drivers/media/radio/radio-rtrack2.c
57
outb_p(1, isa->io);
drivers/media/radio/radio-rtrack2.c
62
outb_p(5, isa->io);
drivers/media/radio/radio-rtrack2.c
63
outb_p(7, isa->io);
drivers/media/radio/radio-rtrack2.c
64
outb_p(5, isa->io);
drivers/media/radio/radio-rtrack2.c
73
outb_p(0xc8, isa->io);
drivers/media/radio/radio-rtrack2.c
74
outb_p(0xc9, isa->io);
drivers/media/radio/radio-rtrack2.c
75
outb_p(0xc9, isa->io);
drivers/media/radio/radio-rtrack2.c
86
outb_p(0xc8, isa->io);
drivers/media/radio/radio-rtrack2.c
87
outb_p(v4l2_ctrl_g_ctrl(isa->mute), isa->io);
drivers/media/radio/radio-rtrack2.c
94
return (inb(isa->io) & 2) ? 0 : 0xffff;
drivers/media/radio/radio-rtrack2.c
99
outb(mute, isa->io);
drivers/media/radio/radio-sf16fmi.c
101
outb(0x08, fmi->io);
drivers/media/radio/radio-sf16fmi.c
112
outb(val, fmi->io);
drivers/media/radio/radio-sf16fmi.c
113
outb(val | 0x10, fmi->io);
drivers/media/radio/radio-sf16fmi.c
115
res = (int)inb(fmi->io + 1);
drivers/media/radio/radio-sf16fmi.c
116
outb(val, fmi->io);
drivers/media/radio/radio-sf16fmi.c
280
if (io < 0) {
drivers/media/radio/radio-sf16fmi.c
282
io = probe_ports[i];
drivers/media/radio/radio-sf16fmi.c
283
if (io == 0) {
drivers/media/radio/radio-sf16fmi.c
284
io = isapnp_fmi_probe();
drivers/media/radio/radio-sf16fmi.c
285
if (io < 0)
drivers/media/radio/radio-sf16fmi.c
289
if (!request_region(io, 2, "radio-sf16fmi")) {
drivers/media/radio/radio-sf16fmi.c
292
io = -1;
drivers/media/radio/radio-sf16fmi.c
296
((inb(io) & 0xf9) == 0xf9 && (inb(io) & 0x4) == 0))
drivers/media/radio/radio-sf16fmi.c
298
release_region(io, 2);
drivers/media/radio/radio-sf16fmi.c
299
io = -1;
drivers/media/radio/radio-sf16fmi.c
302
if (!request_region(io, 2, "radio-sf16fmi")) {
drivers/media/radio/radio-sf16fmi.c
303
printk(KERN_ERR "radio-sf16fmi: port %#x already in use\n", io);
drivers/media/radio/radio-sf16fmi.c
306
if (inb(io) == 0xff) {
drivers/media/radio/radio-sf16fmi.c
307
printk(KERN_ERR "radio-sf16fmi: card not present at %#x\n", io);
drivers/media/radio/radio-sf16fmi.c
308
release_region(io, 2);
drivers/media/radio/radio-sf16fmi.c
312
if (io < 0) {
drivers/media/radio/radio-sf16fmi.c
318
fmi->io = io;
drivers/media/radio/radio-sf16fmi.c
322
release_region(fmi->io, 2);
drivers/media/radio/radio-sf16fmi.c
359
release_region(fmi->io, 2);
drivers/media/radio/radio-sf16fmi.c
365
v4l2_info(v4l2_dev, "card driver at 0x%x\n", fmi->io);
drivers/media/radio/radio-sf16fmi.c
376
release_region(fmi->io, 2);
drivers/media/radio/radio-sf16fmi.c
40
static int io = -1;
drivers/media/radio/radio-sf16fmi.c
43
module_param(io, int, 0);
drivers/media/radio/radio-sf16fmi.c
44
MODULE_PARM_DESC(io, "I/O address of the SF16-FMI/SF16-FMP/SF16-FMD card (0x284 or 0x384)");
drivers/media/radio/radio-sf16fmi.c
52
int io;
drivers/media/radio/radio-sf16fmi.c
87
outb_p(bits, fmi->io);
drivers/media/radio/radio-sf16fmi.c
94
outb(0x00, fmi->io);
drivers/media/radio/radio-sf16fmr2.c
121
outb(pins, fmr2->io);
drivers/media/radio/radio-sf16fmr2.c
189
if (!fmr2->is_fmd2 && inb(fmr2->io) & FMR2_HASVOL) {
drivers/media/radio/radio-sf16fmr2.c
207
static int fmr2_probe(struct fmr2 *fmr2, struct device *pdev, int io)
drivers/media/radio/radio-sf16fmr2.c
214
if (io == fmr2_cards[i]->io)
drivers/media/radio/radio-sf16fmr2.c
219
fmr2->io = io;
drivers/media/radio/radio-sf16fmr2.c
221
if (!request_region(fmr2->io, 2, fmr2->v4l2_dev.name)) {
drivers/media/radio/radio-sf16fmr2.c
222
printk(KERN_ERR "radio-sf16fmr2: I/O port 0x%x already in use\n", fmr2->io);
drivers/media/radio/radio-sf16fmr2.c
230
release_region(fmr2->io, 2);
drivers/media/radio/radio-sf16fmr2.c
244
release_region(fmr2->io, 2);
drivers/media/radio/radio-sf16fmr2.c
249
card_name, fmr2->io);
drivers/media/radio/radio-sf16fmr2.c
291
release_region(fmr2->io, 2);
drivers/media/radio/radio-sf16fmr2.c
32
int io;
drivers/media/radio/radio-sf16fmr2.c
70
outb(bits, fmr2->io);
drivers/media/radio/radio-sf16fmr2.c
76
u8 bits = inb(fmr2->io);
drivers/media/radio/radio-terratec.c
109
outb(WRT_EN | DATA, isa->io);
drivers/media/radio/radio-terratec.c
110
outb(WRT_EN | DATA | CLK_ON, isa->io);
drivers/media/radio/radio-terratec.c
111
outb(WRT_EN | DATA, isa->io);
drivers/media/radio/radio-terratec.c
113
outb(WRT_EN | 0x00, isa->io);
drivers/media/radio/radio-terratec.c
114
outb(WRT_EN | 0x00 | CLK_ON, isa->io);
drivers/media/radio/radio-terratec.c
117
outb(0x00, isa->io);
drivers/media/radio/radio-terratec.c
124
return (inb(isa->io) & 2) ? 0 : 0xffff;
drivers/media/radio/radio-terratec.c
145
.io_params = &io,
drivers/media/radio/radio-terratec.c
43
static int io = 0x590;
drivers/media/radio/radio-terratec.c
71
outb(0x80, isa->io + 1);
drivers/media/radio/radio-terratec.c
73
outb(0x00, isa->io + 1);
drivers/media/radio/radio-trust.c
124
outb(tr->ioval, isa->io);
drivers/media/radio/radio-trust.c
134
outb(tr->ioval, isa->io);
drivers/media/radio/radio-trust.c
143
v |= inb(isa->io);
drivers/media/radio/radio-trust.c
221
.io_params = io,
drivers/media/radio/radio-trust.c
42
static int io[TRUST_MAX] = { [0] = CONFIG_RADIO_TRUST_PORT,
drivers/media/radio/radio-trust.c
46
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-trust.c
47
MODULE_PARM_DESC(io, "I/O addresses of the Trust FM Radio card (0x350 or 0x358)");
drivers/media/radio/radio-trust.c
67
#define TR_DELAY do { inb(tr->isa.io); inb(tr->isa.io); inb(tr->isa.io); } while (0)
drivers/media/radio/radio-trust.c
68
#define TR_SET_SCL outb(tr->ioval |= 2, tr->isa.io)
drivers/media/radio/radio-trust.c
69
#define TR_CLR_SCL outb(tr->ioval &= 0xfd, tr->isa.io)
drivers/media/radio/radio-trust.c
70
#define TR_SET_SDA outb(tr->ioval |= 1, tr->isa.io)
drivers/media/radio/radio-trust.c
71
#define TR_CLR_SDA outb(tr->ioval &= 0xfe, tr->isa.io)
drivers/media/radio/radio-typhoon.c
105
outb_p((outval >> 8) & 0x01, isa->io + 4);
drivers/media/radio/radio-typhoon.c
106
outb_p(outval >> 9, isa->io + 6);
drivers/media/radio/radio-typhoon.c
107
outb_p(outval & 0xff, isa->io + 8);
drivers/media/radio/radio-typhoon.c
119
outb_p(vol / 2, isa->io); /* Set the volume, high bit. */
drivers/media/radio/radio-typhoon.c
120
outb_p(vol % 2, isa->io + 2); /* Set the volume, low bit. */
drivers/media/radio/radio-typhoon.c
150
.io_params = io,
drivers/media/radio/radio-typhoon.c
59
static int io[TYPHOON_MAX] = { [0] = CONFIG_RADIO_TYPHOON_PORT,
drivers/media/radio/radio-typhoon.c
64
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-typhoon.c
65
MODULE_PARM_DESC(io, "I/O addresses of the Typhoon card (0x316 or 0x336)");
drivers/media/radio/radio-zoltrix.c
100
outb(vol - 1, isa->io);
drivers/media/radio/radio-zoltrix.c
102
inb(isa->io + 2);
drivers/media/radio/radio-zoltrix.c
126
outb(0, isa->io);
drivers/media/radio/radio-zoltrix.c
127
outb(0, isa->io);
drivers/media/radio/radio-zoltrix.c
128
inb(isa->io + 3); /* Zoltrix needs to be read to confirm */
drivers/media/radio/radio-zoltrix.c
130
outb(0x40, isa->io);
drivers/media/radio/radio-zoltrix.c
131
outb(0xc0, isa->io);
drivers/media/radio/radio-zoltrix.c
136
outb(0x80, isa->io);
drivers/media/radio/radio-zoltrix.c
138
outb(0x00, isa->io);
drivers/media/radio/radio-zoltrix.c
140
outb(0x80, isa->io);
drivers/media/radio/radio-zoltrix.c
143
outb(0xc0, isa->io);
drivers/media/radio/radio-zoltrix.c
145
outb(0x40, isa->io);
drivers/media/radio/radio-zoltrix.c
147
outb(0xc0, isa->io);
drivers/media/radio/radio-zoltrix.c
153
outb(0x80, isa->io);
drivers/media/radio/radio-zoltrix.c
154
outb(0xc0, isa->io);
drivers/media/radio/radio-zoltrix.c
155
outb(0x40, isa->io);
drivers/media/radio/radio-zoltrix.c
157
inb(isa->io + 2);
drivers/media/radio/radio-zoltrix.c
169
outb(0x00, isa->io); /* This stuff I found to do nothing */
drivers/media/radio/radio-zoltrix.c
170
outb(zol->curvol, isa->io);
drivers/media/radio/radio-zoltrix.c
173
a = inb(isa->io);
drivers/media/radio/radio-zoltrix.c
175
b = inb(isa->io);
drivers/media/radio/radio-zoltrix.c
186
outb(0x00, isa->io); /* This stuff I found to do nothing */
drivers/media/radio/radio-zoltrix.c
187
outb(zol->curvol, isa->io);
drivers/media/radio/radio-zoltrix.c
190
a = inb(isa->io);
drivers/media/radio/radio-zoltrix.c
192
b = inb(isa->io);
drivers/media/radio/radio-zoltrix.c
226
.io_params = io,
drivers/media/radio/radio-zoltrix.c
65
static int io[ZOLTRIX_MAX] = { [0] = CONFIG_RADIO_ZOLTRIX_PORT,
drivers/media/radio/radio-zoltrix.c
69
module_param_array(io, int, NULL, 0444);
drivers/media/radio/radio-zoltrix.c
70
MODULE_PARM_DESC(io, "I/O addresses of the Zoltrix Radio Plus card (0x20c or 0x30c)");
drivers/media/radio/radio-zoltrix.c
94
outb(0, isa->io);
drivers/media/radio/radio-zoltrix.c
95
outb(0, isa->io);
drivers/media/radio/radio-zoltrix.c
96
inb(isa->io + 3); /* Zoltrix needs to be read to confirm */
drivers/media/rc/serial_ir.c
148
return inb(io + offset);
drivers/media/rc/serial_ir.c
158
outb(value, io + offset);
drivers/media/rc/serial_ir.c
50
static int io;
drivers/media/rc/serial_ir.c
553
(!iommap && (devm_request_region(&dev->dev, io, 8,
drivers/media/rc/serial_ir.c
555
dev_err(&dev->dev, "port %04x already in use\n", io);
drivers/media/rc/serial_ir.c
596
dev_dbg(&dev->dev, "Interrupt %d, port %04x obtained\n", irq, io);
drivers/media/rc/serial_ir.c
776
io = io ? io : 0x3f8;
drivers/media/rc/serial_ir.c
815
module_param_hw(io, int, ioport, 0444);
drivers/media/rc/serial_ir.c
816
MODULE_PARM_DESC(io, "I/O address base (0x3f8 or 0x2f8)");
drivers/media/usb/dvb-usb/dib0700_devices.c
1605
.io.pll_bypass = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
1606
.io.pll_range = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
1607
.io.pll_prediv = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
1608
.io.pll_loopdiv = 20,
drivers/media/usb/dvb-usb/dib0700_devices.c
1609
.io.adc_clock_ratio = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
1610
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
1611
.io.clock_khz = 12000,
drivers/media/usb/dvb-usb/dib0700_devices.c
1997
.io.clock_khz = 12000,
drivers/media/usb/dvb-usb/dib0700_devices.c
1998
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
1999
.io.pll_range = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2000
.io.pll_prediv = 3,
drivers/media/usb/dvb-usb/dib0700_devices.c
2001
.io.pll_loopdiv = 6,
drivers/media/usb/dvb-usb/dib0700_devices.c
2002
.io.adc_clock_ratio = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2003
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2322
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2323
.io.pll_range = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
2324
.io.pll_prediv = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
2325
.io.pll_loopdiv = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
2326
.io.adc_clock_ratio = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
2327
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2328
.io.clock_khz = 30000,
drivers/media/usb/dvb-usb/dib0700_devices.c
2341
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2342
.io.pll_range = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
2343
.io.pll_prediv = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
2344
.io.pll_loopdiv = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
2345
.io.adc_clock_ratio = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
2346
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2347
.io.clock_khz = 30000,
drivers/media/usb/dvb-usb/dib0700_devices.c
2357
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2358
.io.pll_range = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
2359
.io.pll_prediv = 1,
drivers/media/usb/dvb-usb/dib0700_devices.c
2360
.io.pll_loopdiv = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
2361
.io.adc_clock_ratio = 8,
drivers/media/usb/dvb-usb/dib0700_devices.c
2362
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2363
.io.clock_khz = 30000,
drivers/media/usb/dvb-usb/dib0700_devices.c
2898
.io.clock_khz = 12000,
drivers/media/usb/dvb-usb/dib0700_devices.c
2899
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2900
.io.pll_range = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2901
.io.pll_prediv = 3,
drivers/media/usb/dvb-usb/dib0700_devices.c
2902
.io.pll_loopdiv = 6,
drivers/media/usb/dvb-usb/dib0700_devices.c
2903
.io.adc_clock_ratio = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2904
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2956
.io.clock_khz = 12000,
drivers/media/usb/dvb-usb/dib0700_devices.c
2957
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2958
.io.pll_range = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2959
.io.pll_prediv = 3,
drivers/media/usb/dvb-usb/dib0700_devices.c
2960
.io.pll_loopdiv = 6,
drivers/media/usb/dvb-usb/dib0700_devices.c
2961
.io.adc_clock_ratio = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2962
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2990
.io.clock_khz = 12000,
drivers/media/usb/dvb-usb/dib0700_devices.c
2991
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2992
.io.pll_range = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2993
.io.pll_prediv = 3,
drivers/media/usb/dvb-usb/dib0700_devices.c
2994
.io.pll_loopdiv = 6,
drivers/media/usb/dvb-usb/dib0700_devices.c
2995
.io.adc_clock_ratio = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
2996
.io.pll_int_loop_filt = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
3018
.io.clock_khz = 12000,
drivers/media/usb/dvb-usb/dib0700_devices.c
3019
.io.pll_bypass = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
3020
.io.pll_range = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
3021
.io.pll_prediv = 3,
drivers/media/usb/dvb-usb/dib0700_devices.c
3022
.io.pll_loopdiv = 6,
drivers/media/usb/dvb-usb/dib0700_devices.c
3023
.io.adc_clock_ratio = 0,
drivers/media/usb/dvb-usb/dib0700_devices.c
3024
.io.pll_int_loop_filt = 0,
drivers/message/fusion/mptscsih.c
2765
mptscsih_do_cmd(MPT_SCSI_HOST *hd, INTERNAL_CMD *io)
drivers/message/fusion/mptscsih.c
2773
u8 cmd = io->cmd;
drivers/message/fusion/mptscsih.c
2798
CDB[4] = io->size;
drivers/message/fusion/mptscsih.c
2819
CDB[4] = io->size;
drivers/message/fusion/mptscsih.c
2828
if (io->flags & MPT_ICFLAG_ECHO) {
drivers/message/fusion/mptscsih.c
2834
if (io->flags & MPT_ICFLAG_BUF_CAP) {
drivers/message/fusion/mptscsih.c
2837
CDB[6] = (io->size >> 16) & 0xFF;
drivers/message/fusion/mptscsih.c
2838
CDB[7] = (io->size >> 8) & 0xFF;
drivers/message/fusion/mptscsih.c
2839
CDB[8] = io->size & 0xFF;
drivers/message/fusion/mptscsih.c
2847
if (io->flags & MPT_ICFLAG_ECHO) {
drivers/message/fusion/mptscsih.c
2852
CDB[6] = (io->size >> 16) & 0xFF;
drivers/message/fusion/mptscsih.c
2853
CDB[7] = (io->size >> 8) & 0xFF;
drivers/message/fusion/mptscsih.c
2854
CDB[8] = io->size & 0xFF;
drivers/message/fusion/mptscsih.c
2902
if (io->flags & MPT_ICFLAG_PHYS_DISK) {
drivers/message/fusion/mptscsih.c
2903
pScsiReq->TargetID = io->physDiskNum;
drivers/message/fusion/mptscsih.c
2908
pScsiReq->TargetID = io->id;
drivers/message/fusion/mptscsih.c
2909
pScsiReq->Bus = io->channel;
drivers/message/fusion/mptscsih.c
2922
int_to_scsilun(io->lun, (struct scsi_lun *)pScsiReq->LUN);
drivers/message/fusion/mptscsih.c
2924
if (io->flags & MPT_ICFLAG_TAGGED_CMD)
drivers/message/fusion/mptscsih.c
2938
pScsiReq->DataLength = cpu_to_le32(io->size);
drivers/message/fusion/mptscsih.c
2944
ioc->name, __func__, cmd, io->channel, io->id, io->lun));
drivers/message/fusion/mptscsih.c
2948
MPT_SGE_FLAGS_SSIMPLE_READ | io->size, io->data_dma);
drivers/message/fusion/mptscsih.c
2951
MPT_SGE_FLAGS_SSIMPLE_WRITE | io->size, io->data_dma);
drivers/misc/genwqe/card_dev.c
1059
struct genwqe_reg_io __user *io;
drivers/misc/genwqe/card_dev.c
1078
io = (struct genwqe_reg_io __user *)arg;
drivers/misc/genwqe/card_dev.c
1080
if (get_user(reg_offs, &io->num))
drivers/misc/genwqe/card_dev.c
1087
put_user(val, &io->val64);
drivers/misc/genwqe/card_dev.c
1092
io = (struct genwqe_reg_io __user *)arg;
drivers/misc/genwqe/card_dev.c
1100
if (get_user(reg_offs, &io->num))
drivers/misc/genwqe/card_dev.c
1106
if (get_user(val, &io->val64))
drivers/misc/genwqe/card_dev.c
1114
io = (struct genwqe_reg_io __user *)arg;
drivers/misc/genwqe/card_dev.c
1116
if (get_user(reg_offs, &io->num))
drivers/misc/genwqe/card_dev.c
1123
put_user(val, &io->val64);
drivers/misc/genwqe/card_dev.c
1128
io = (struct genwqe_reg_io __user *)arg;
drivers/misc/genwqe/card_dev.c
1136
if (get_user(reg_offs, &io->num))
drivers/misc/genwqe/card_dev.c
1142
if (get_user(val, &io->val64))
drivers/misc/keba/cp500.c
346
cp500->i2c->io = (struct resource) {
drivers/misc/keba/cp500.c
404
cp500->spi->io = (struct resource) {
drivers/misc/keba/cp500.c
454
cp500->fan->io = (struct resource) {
drivers/misc/keba/cp500.c
502
cp500->batt->io = (struct resource) {
drivers/misc/keba/cp500.c
552
(*uart)->io = (struct resource) {
drivers/mmc/host/wbsd.c
1767
int io, irq, dma;
drivers/mmc/host/wbsd.c
1772
io = pnp_port_start(pnpdev, 0);
drivers/mmc/host/wbsd.c
1779
DBGF("PnP resources: port %3x irq %d dma %d\n", io, irq, dma);
drivers/mmc/host/wbsd.c
1781
return wbsd_init(&pnpdev->dev, io, irq, dma, 1);
drivers/mmc/host/wbsd.c
1986
module_param_hw_named(io, param_io, uint, ioport, 0444);
drivers/mmc/host/wbsd.c
1997
MODULE_PARM_DESC(io, "I/O base to allocate. Must be 8 byte aligned. (default 0x248)");
drivers/mtd/nand/raw/atmel/nand-controller.c
155
} io;
drivers/mtd/nand/raw/atmel/nand-controller.c
1691
nand->cs[i].io.dma = res.start;
drivers/mtd/nand/raw/atmel/nand-controller.c
1692
nand->cs[i].io.virt = devm_ioremap_resource(nc->dev, &res);
drivers/mtd/nand/raw/atmel/nand-controller.c
1693
if (IS_ERR(nand->cs[i].io.virt))
drivers/mtd/nand/raw/atmel/nand-controller.c
1694
return ERR_CAST(nand->cs[i].io.virt);
drivers/mtd/nand/raw/atmel/nand-controller.c
1809
nand->cs[0].io.virt = devm_platform_get_and_ioremap_resource(pdev, 0, &res);
drivers/mtd/nand/raw/atmel/nand-controller.c
1810
if (IS_ERR(nand->cs[0].io.virt))
drivers/mtd/nand/raw/atmel/nand-controller.c
1811
return PTR_ERR(nand->cs[0].io.virt);
drivers/mtd/nand/raw/atmel/nand-controller.c
1813
nand->cs[0].io.dma = res->start;
drivers/mtd/nand/raw/atmel/nand-controller.c
2214
nc->io = devm_regmap_init_mmio(dev, iomem, ®map_conf);
drivers/mtd/nand/raw/atmel/nand-controller.c
2215
if (IS_ERR(nc->io)) {
drivers/mtd/nand/raw/atmel/nand-controller.c
2216
ret = PTR_ERR(nc->io);
drivers/mtd/nand/raw/atmel/nand-controller.c
2297
nc->io = syscon_node_to_regmap(np);
drivers/mtd/nand/raw/atmel/nand-controller.c
2299
if (IS_ERR(nc->io)) {
drivers/mtd/nand/raw/atmel/nand-controller.c
2300
ret = PTR_ERR(nc->io);
drivers/mtd/nand/raw/atmel/nand-controller.c
261
struct regmap *io;
drivers/mtd/nand/raw/atmel/nand-controller.c
457
regmap_write(nc->io, op, addr);
drivers/mtd/nand/raw/atmel/nand-controller.c
485
!atmel_nand_dma_transfer(nc, buf, nand->activecs->io.dma, len,
drivers/mtd/nand/raw/atmel/nand-controller.c
490
ioread16_rep(nand->activecs->io.virt, buf, len / 2);
drivers/mtd/nand/raw/atmel/nand-controller.c
492
ioread8_rep(nand->activecs->io.virt, buf, len);
drivers/mtd/nand/raw/atmel/nand-controller.c
509
!atmel_nand_dma_transfer(nc, (void *)buf, nand->activecs->io.dma,
drivers/mtd/nand/raw/atmel/nand-controller.c
514
iowrite16_rep(nand->activecs->io.virt, buf, len / 2);
drivers/mtd/nand/raw/atmel/nand-controller.c
516
iowrite8_rep(nand->activecs->io.virt, buf, len);
drivers/mtd/nand/raw/atmel/nand-controller.c
583
nand->activecs->io.virt + nc->caps->cle_offs);
drivers/mtd/nand/raw/atmel/nand-controller.c
588
nand->activecs->io.virt + nc->caps->ale_offs);
drivers/mtd/nand/raw/cadence-nand-controller.c
1891
src_dma = cdns_ctrl->io.iova_dma;
drivers/mtd/nand/raw/cadence-nand-controller.c
1895
dst_dma = cdns_ctrl->io.iova_dma;
drivers/mtd/nand/raw/cadence-nand-controller.c
1949
ioread32_rep(cdns_ctrl->io.virt, buf, len_in_words);
drivers/mtd/nand/raw/cadence-nand-controller.c
1952
readsq(cdns_ctrl->io.virt, buf, len_in_words);
drivers/mtd/nand/raw/cadence-nand-controller.c
1961
ioread32_rep(cdns_ctrl->io.virt,
drivers/mtd/nand/raw/cadence-nand-controller.c
1966
readsq(cdns_ctrl->io.virt, cdns_ctrl->buf,
drivers/mtd/nand/raw/cadence-nand-controller.c
1979
cdns_ctrl->io.dma,
drivers/mtd/nand/raw/cadence-nand-controller.c
1990
cdns_ctrl->io.dma,
drivers/mtd/nand/raw/cadence-nand-controller.c
2021
iowrite32_rep(cdns_ctrl->io.virt, buf, len_in_words);
drivers/mtd/nand/raw/cadence-nand-controller.c
2024
writesq(cdns_ctrl->io.virt, buf, len_in_words);
drivers/mtd/nand/raw/cadence-nand-controller.c
2037
iowrite32_rep(cdns_ctrl->io.virt,
drivers/mtd/nand/raw/cadence-nand-controller.c
2042
writesq(cdns_ctrl->io.virt, cdns_ctrl->buf,
drivers/mtd/nand/raw/cadence-nand-controller.c
2052
cdns_ctrl->io.dma,
drivers/mtd/nand/raw/cadence-nand-controller.c
2065
cdns_ctrl->io.dma,
drivers/mtd/nand/raw/cadence-nand-controller.c
3174
cdns_ctrl->io.iova_dma = dma_map_resource(dma_dev->dev, cdns_ctrl->io.dma,
drivers/mtd/nand/raw/cadence-nand-controller.c
3175
cdns_ctrl->io.size,
drivers/mtd/nand/raw/cadence-nand-controller.c
3178
ret = dma_mapping_error(dma_dev->dev, cdns_ctrl->io.iova_dma);
drivers/mtd/nand/raw/cadence-nand-controller.c
3207
dma_unmap_resource(dma_dev->dev, cdns_ctrl->io.iova_dma,
drivers/mtd/nand/raw/cadence-nand-controller.c
3208
cdns_ctrl->io.size, DMA_BIDIRECTIONAL, 0);
drivers/mtd/nand/raw/cadence-nand-controller.c
3233
cdns_ctrl->io.iova_dma, cdns_ctrl->io.size,
drivers/mtd/nand/raw/cadence-nand-controller.c
3296
cdns_ctrl->io.virt = devm_platform_get_and_ioremap_resource(ofdev, 1, &res);
drivers/mtd/nand/raw/cadence-nand-controller.c
3297
if (IS_ERR(cdns_ctrl->io.virt))
drivers/mtd/nand/raw/cadence-nand-controller.c
3298
return PTR_ERR(cdns_ctrl->io.virt);
drivers/mtd/nand/raw/cadence-nand-controller.c
3300
cdns_ctrl->io.dma = res->start;
drivers/mtd/nand/raw/cadence-nand-controller.c
3301
cdns_ctrl->io.size = resource_size(res);
drivers/mtd/nand/raw/cadence-nand-controller.c
527
} io;
drivers/mtd/nand/raw/gpio.c
105
ioread16_rep(gpiomtd->io, instr->ctx.data.buf.in,
drivers/mtd/nand/raw/gpio.c
108
ioread8_rep(gpiomtd->io, instr->ctx.data.buf.in,
drivers/mtd/nand/raw/gpio.c
116
iowrite16_rep(gpiomtd->io, instr->ctx.data.buf.out,
drivers/mtd/nand/raw/gpio.c
119
iowrite8_rep(gpiomtd->io, instr->ctx.data.buf.out,
drivers/mtd/nand/raw/gpio.c
303
gpiomtd->io = devm_platform_ioremap_resource(pdev, 0);
drivers/mtd/nand/raw/gpio.c
304
if (IS_ERR(gpiomtd->io))
drivers/mtd/nand/raw/gpio.c
305
return PTR_ERR(gpiomtd->io);
drivers/mtd/nand/raw/gpio.c
32
void __iomem *io;
drivers/mtd/nand/raw/gpio.c
86
writeb(instr->ctx.cmd.opcode, gpiomtd->io);
drivers/mtd/nand/raw/gpio.c
96
writeb(instr->ctx.addr.addrs[i], gpiomtd->io);
drivers/mtd/nand/raw/sharpsl.c
147
sharpsl->io = ioremap(r->start, resource_size(r));
drivers/mtd/nand/raw/sharpsl.c
148
if (!sharpsl->io) {
drivers/mtd/nand/raw/sharpsl.c
171
writeb(readb(sharpsl->io + FLASHCTL) | FLWP, sharpsl->io + FLASHCTL);
drivers/mtd/nand/raw/sharpsl.c
174
this->legacy.IO_ADDR_R = sharpsl->io + FLASHIO;
drivers/mtd/nand/raw/sharpsl.c
175
this->legacy.IO_ADDR_W = sharpsl->io + FLASHIO;
drivers/mtd/nand/raw/sharpsl.c
203
iounmap(sharpsl->io);
drivers/mtd/nand/raw/sharpsl.c
226
iounmap(sharpsl->io);
drivers/mtd/nand/raw/sharpsl.c
24
void __iomem *io;
drivers/mtd/nand/raw/sharpsl.c
69
writeb((readb(sharpsl->io + FLASHCTL) & ~0x17) | bits, sharpsl->io + FLASHCTL);
drivers/mtd/nand/raw/sharpsl.c
79
return !((readb(sharpsl->io + FLASHCTL) & FLRYBY) == 0);
drivers/mtd/nand/raw/sharpsl.c
85
writeb(0, sharpsl->io + ECCCLRR);
drivers/mtd/nand/raw/sharpsl.c
92
ecc_code[0] = ~readb(sharpsl->io + ECCLPUB);
drivers/mtd/nand/raw/sharpsl.c
93
ecc_code[1] = ~readb(sharpsl->io + ECCLPLB);
drivers/mtd/nand/raw/sharpsl.c
94
ecc_code[2] = (~readb(sharpsl->io + ECCCP) << 2) | 0x03;
drivers/mtd/nand/raw/sharpsl.c
95
return readb(sharpsl->io + ECCCNTR) != 0;
drivers/net/ethernet/8390/ne.c
1167
if (io[0] == 0)
drivers/net/ethernet/8390/ne.c
69
static int io[MAX_NE_CARDS];
drivers/net/ethernet/8390/ne.c
75
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/net/ethernet/8390/ne.c
79
MODULE_PARM_DESC(io, "I/O base address(es),required");
drivers/net/ethernet/8390/ne.c
802
dev->base_addr = io[this_dev];
drivers/net/ethernet/8390/ne.c
818
io[this_dev] = dev->base_addr;
drivers/net/ethernet/8390/ne.c
967
io[this_dev]) {
drivers/net/ethernet/8390/ne.c
980
io[this_dev] = dev->base_addr;
drivers/net/ethernet/broadcom/bnx2.c
345
struct drv_ctl_io *io = &info->data.io;
drivers/net/ethernet/broadcom/bnx2.c
349
bnx2_reg_wr_ind(bp, io->offset, io->data);
drivers/net/ethernet/broadcom/bnx2.c
352
io->data = bnx2_reg_rd_ind(bp, io->offset);
drivers/net/ethernet/broadcom/bnx2.c
355
bnx2_ctx_wr(bp, io->cid_addr, io->offset, io->data);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
14673
u32 index = ctl->data.io.offset;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
14674
dma_addr_t addr = ctl->data.io.dma_addr;
drivers/net/ethernet/broadcom/cnic.c
194
struct drv_ctl_io *io = &info.data.io;
drivers/net/ethernet/broadcom/cnic.c
198
io->cid_addr = cid_addr;
drivers/net/ethernet/broadcom/cnic.c
199
io->offset = off;
drivers/net/ethernet/broadcom/cnic.c
200
io->data = val;
drivers/net/ethernet/broadcom/cnic.c
209
struct drv_ctl_io *io = &info.data.io;
drivers/net/ethernet/broadcom/cnic.c
213
io->offset = off;
drivers/net/ethernet/broadcom/cnic.c
214
io->dma_addr = addr;
drivers/net/ethernet/broadcom/cnic.c
241
struct drv_ctl_io *io = &info.data.io;
drivers/net/ethernet/broadcom/cnic.c
245
io->offset = off;
drivers/net/ethernet/broadcom/cnic.c
246
io->data = val;
drivers/net/ethernet/broadcom/cnic.c
255
struct drv_ctl_io *io = &info.data.io;
drivers/net/ethernet/broadcom/cnic.c
259
io->offset = off;
drivers/net/ethernet/broadcom/cnic.c
261
return io->data;
drivers/net/ethernet/broadcom/cnic_if.h
161
struct drv_ctl_io io;
drivers/net/ethernet/ec_bhf.c
126
void __iomem *io;
drivers/net/ethernet/ec_bhf.c
257
block_count = ioread8(priv->io + INFO_BLOCK_BLK_CNT);
drivers/net/ethernet/ec_bhf.c
259
u16 type = ioread16(priv->io + i * INFO_BLOCK_SIZE +
drivers/net/ethernet/ec_bhf.c
269
ec_info = priv->io + i * INFO_BLOCK_SIZE;
drivers/net/ethernet/ec_bhf.c
274
priv->ec_io = priv->io + ioread32(ec_info + INFO_BLOCK_OFFSET);
drivers/net/ethernet/ec_bhf.c
482
void __iomem *io;
drivers/net/ethernet/ec_bhf.c
504
io = pci_iomap(dev, 0, 0);
drivers/net/ethernet/ec_bhf.c
505
if (!io) {
drivers/net/ethernet/ec_bhf.c
534
priv->io = io;
drivers/net/ethernet/ec_bhf.c
556
pci_iounmap(dev, io);
drivers/net/ethernet/ec_bhf.c
573
pci_iounmap(dev, priv->io);
drivers/net/ethernet/engleder/tsnep_main.c
2560
struct resource *io;
drivers/net/ethernet/engleder/tsnep_main.c
2589
adapter->addr = devm_platform_get_and_ioremap_resource(pdev, 0, &io);
drivers/net/ethernet/engleder/tsnep_main.c
2592
netdev->mem_start = io->start;
drivers/net/ethernet/engleder/tsnep_main.c
2593
netdev->mem_end = io->end;
drivers/net/ethernet/marvell/skge.c
135
const void __iomem *io = skge->hw->regs;
drivers/net/ethernet/marvell/skge.c
139
memcpy_fromio(p, io, B3_RAM_ADDR);
drivers/net/ethernet/marvell/skge.c
142
memcpy_fromio(p + B3_RI_WTO_R1, io + B3_RI_WTO_R1,
drivers/net/ethernet/marvell/sky2.c
4241
const void __iomem *io = sky2->hw->regs;
drivers/net/ethernet/marvell/sky2.c
4249
memcpy_fromio(p + 0x10, io + 0x10, 128 - 0x10);
drivers/net/ethernet/marvell/sky2.c
4251
memcpy_fromio(p, io, 128);
drivers/net/ethernet/marvell/sky2.c
4256
io += 128;
drivers/net/ethernet/micrel/ksz884x.c
1196
void __iomem *io;
drivers/net/ethernet/micrel/ksz884x.c
1427
writel(interrupt, hw->io + KS884X_INTERRUPTS_STATUS);
drivers/net/ethernet/micrel/ksz884x.c
1433
writel(0, hw->io + KS884X_INTERRUPTS_ENABLE);
drivers/net/ethernet/micrel/ksz884x.c
1434
hw->intr_set = readl(hw->io + KS884X_INTERRUPTS_ENABLE);
drivers/net/ethernet/micrel/ksz884x.c
1440
writel(interrupt, hw->io + KS884X_INTERRUPTS_ENABLE);
drivers/net/ethernet/micrel/ksz884x.c
1458
read_intr = readl(hw->io + KS884X_INTERRUPTS_ENABLE);
drivers/net/ethernet/micrel/ksz884x.c
1460
writel(hw->intr_set, hw->io + KS884X_INTERRUPTS_ENABLE);
drivers/net/ethernet/micrel/ksz884x.c
1482
*status = readl(hw->io + KS884X_INTERRUPTS_STATUS);
drivers/net/ethernet/micrel/ksz884x.c
1578
readw(hw->io + reg); \
drivers/net/ethernet/micrel/ksz884x.c
1600
writew(ctrl_addr, hw->io + KS884X_IACR_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1602
*data = readl(hw->io + KS884X_ACC_DATA_0_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1628
writel(data_hi, hw->io + KS884X_ACC_DATA_4_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1629
writel(data_lo, hw->io + KS884X_ACC_DATA_0_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1631
writew(ctrl_addr, hw->io + KS884X_IACR_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1726
writew(ctrl_addr, hw->io + KS884X_IACR_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1730
data = readl(hw->io + KS884X_ACC_DATA_0_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1768
writew(ctrl_addr, hw->io + KS884X_IACR_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1770
data = readl(hw->io + KS884X_ACC_DATA_0_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
1866
data = readw(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1871
writew(data, hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1889
*data = readb(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1907
*data = readw(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1925
writew(data, hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1943
data = readw(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1960
data = readw(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1965
writew(data, hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
1997
data = readw(hw->io + KS8842_SWITCH_CTRL_3_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2000
writew(data, hw->io + KS8842_SWITCH_CTRL_3_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2015
data = readw(hw->io + KS8842_SWITCH_CTRL_3_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2096
writel(0, hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
2337
*vid = readw(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
2382
data = readb(hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
2385
writeb(data, hw->io + addr);
drivers/net/ethernet/micrel/ksz884x.c
2402
writeb(mac_addr[i], hw->io + KS8842_MAC_ADDR_0_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
2403
writeb(mac_addr[1 + i], hw->io + KS8842_MAC_ADDR_1_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
2418
data = readw(hw->io + KS8842_SWITCH_CTRL_3_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2420
writew(data, hw->io + KS8842_SWITCH_CTRL_3_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2422
data = readw(hw->io + KS8842_SWITCH_CTRL_1_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2435
writew(data, hw->io + KS8842_SWITCH_CTRL_1_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2437
data = readw(hw->io + KS8842_SWITCH_CTRL_2_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2441
writew(data, hw->io + KS8842_SWITCH_CTRL_2_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2580
*data = readw(hw->io + phy + KS884X_PHY_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2585
writew(data, hw->io + phy + KS884X_PHY_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2602
*val = readw(hw->io + phy);
drivers/net/ethernet/micrel/ksz884x.c
2619
writew(val, hw->io + phy);
drivers/net/ethernet/micrel/ksz884x.c
2642
data = readw(hw->io + KS884X_EEPROM_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2644
writew(data, hw->io + KS884X_EEPROM_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2651
data = readw(hw->io + KS884X_EEPROM_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2653
writew(data, hw->io + KS884X_EEPROM_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2660
data = readw(hw->io + KS884X_EEPROM_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
2853
writel(hw->rx_cfg, hw->io + KS_DMA_RX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
2855
writel(hw->tx_cfg, hw->io + KS_DMA_TX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
2900
writel(hw->tx_cfg, hw->io + KS_DMA_TX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
3165
data = readw(hw->io + KS8841_WOL_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3170
writew(data, hw->io + KS8841_WOL_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3201
writel(0, hw->io + KS8841_WOL_FRAME_BYTE0_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
3202
writel(0, hw->io + KS8841_WOL_FRAME_BYTE2_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
3214
writeb(val, hw->io + KS8841_WOL_FRAME_BYTE0_OFFSET + i
drivers/net/ethernet/micrel/ksz884x.c
3227
writeb(bits, hw->io + KS8841_WOL_FRAME_BYTE0_OFFSET + i + len -
drivers/net/ethernet/micrel/ksz884x.c
3231
writel(crc, hw->io + KS8841_WOL_FRAME_CRC_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
3343
writew(BUS_SPEED_125_MHZ, hw->io + KS884X_BUS_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3346
data = readw(hw->io + KS884X_CHIP_ID_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3374
writew(GLOBAL_SOFTWARE_RESET, hw->io + KS884X_GLOBAL_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3380
writew(0, hw->io + KS884X_GLOBAL_CTRL_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3395
data = readw(hw->io + KS8842_SWITCH_CTRL_5_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3398
writew(data, hw->io + KS8842_SWITCH_CTRL_5_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
3491
writel(tx_addr, hw->io + KS_DMA_TX_ADDR);
drivers/net/ethernet/micrel/ksz884x.c
3492
writel(rx_addr, hw->io + KS_DMA_RX_ADDR);
drivers/net/ethernet/micrel/ksz884x.c
3504
writel(DMA_START, hw->io + KS_DMA_RX_START);
drivers/net/ethernet/micrel/ksz884x.c
3515
writel(hw->rx_cfg, hw->io + KS_DMA_RX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
3520
writel(DMA_START, hw->io + KS_DMA_RX_START);
drivers/net/ethernet/micrel/ksz884x.c
3539
writel((hw->rx_cfg & ~DMA_RX_ENABLE), hw->io + KS_DMA_RX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
3550
writel(hw->tx_cfg, hw->io + KS_DMA_TX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
3561
writel((hw->tx_cfg & ~DMA_TX_ENABLE), hw->io + KS_DMA_TX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
3648
writel(0, hw->io + KS_DMA_TX_START);
drivers/net/ethernet/micrel/ksz884x.c
3672
hw->io + KS884X_ADDR_0_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
3688
hw->perm_addr[MAC_ADDR_ORDER(i)] = readb(hw->io +
drivers/net/ethernet/micrel/ksz884x.c
3722
writel(mac_addr_lo, hw->io + index + KS_ADD_ADDR_0_LO);
drivers/net/ethernet/micrel/ksz884x.c
3723
writel(mac_addr_hi, hw->io + index + KS_ADD_ADDR_0_HI);
drivers/net/ethernet/micrel/ksz884x.c
3732
writel(0, hw->io + ADD_ADDR_INCR * i +
drivers/net/ethernet/micrel/ksz884x.c
3767
writel(0, hw->io + ADD_ADDR_INCR * i +
drivers/net/ethernet/micrel/ksz884x.c
3788
writeb(0, hw->io + KS884X_MULTICAST_0_OFFSET + i);
drivers/net/ethernet/micrel/ksz884x.c
3816
writeb(hw->multi_bits[i], hw->io + KS884X_MULTICAST_0_OFFSET +
drivers/net/ethernet/micrel/ksz884x.c
3891
writew(enable, hw->io + KS884X_CHIP_ID_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
4912
data = readl(hw->io + KS_DMA_TX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
5040
data = readw(hw->io + KS8842_SWITCH_CTRL_2_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
5045
writew(data, hw->io + KS8842_SWITCH_CTRL_2_OFFSET);
drivers/net/ethernet/micrel/ksz884x.c
5768
*buf = readl(hw->io + len);
drivers/net/ethernet/micrel/ksz884x.c
6217
writel(hw->rx_cfg, hw->io + KS_DMA_RX_CTRL);
drivers/net/ethernet/micrel/ksz884x.c
6588
hw->io = ioremap(reg_base, reg_len);
drivers/net/ethernet/micrel/ksz884x.c
6589
if (!hw->io)
drivers/net/ethernet/micrel/ksz884x.c
6603
dev_dbg(&hw_priv->pdev->dev, "Mem = %p; IRQ = %d\n", hw->io, pdev->irq);
drivers/net/ethernet/micrel/ksz884x.c
6711
dev->mem_start = (unsigned long) hw->io;
drivers/net/ethernet/micrel/ksz884x.c
6755
iounmap(hw->io);
drivers/net/ethernet/micrel/ksz884x.c
6778
if (hw_priv->hw.io)
drivers/net/ethernet/micrel/ksz884x.c
6779
iounmap(hw_priv->hw.io);
drivers/net/ethernet/microchip/sparx5/sparx5_main.c
280
const struct sparx5_main_io_resource *io = &iomap[jdx];
drivers/net/ethernet/microchip/sparx5/sparx5_main.c
282
if (idx == io->range) {
drivers/net/ethernet/microchip/sparx5/sparx5_main.c
305
const struct sparx5_main_io_resource *io = &iomap[jdx];
drivers/net/ethernet/microchip/sparx5/sparx5_main.c
307
sparx5->regs[io->id] = begin[io->range] + io->offset;
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
206
bool io, cru;
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
213
io = bsp_priv->clock_input;
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
214
cru = !io;
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
224
val = rk_encode_wm16(io, bsp_priv->clock.io_clksel_io_mask) |
drivers/net/fddi/skfp/h/skfbi.h
804
#define CLEAR(io,mask) outpw((io),inpw(io)&(~(mask)))
drivers/net/fddi/skfp/h/skfbi.h
805
#define SET(io,mask) outpw((io),inpw(io)|(mask))
drivers/net/fddi/skfp/h/skfbi.h
806
#define GET(io,mask) (inpw(io)&(mask))
drivers/net/fddi/skfp/h/skfbi.h
807
#define SETMASK(io,val,mask) outpw((io),(inpw(io) & ~(mask)) | (val))
drivers/net/wan/n2.c
110
u16 io; /* IO Base address */
drivers/net/wan/n2.c
123
#define sca_reg(reg, card) (0x8000 | (card)->io | \
drivers/net/wan/n2.c
140
return inb(card->io + N2_PSR) & PSR_PAGEBITS;
drivers/net/wan/n2.c
145
u8 psr = inb(card->io + N2_PSR);
drivers/net/wan/n2.c
147
outb((psr & ~PSR_PAGEBITS) | page, card->io + N2_PSR);
drivers/net/wan/n2.c
155
int io = card->io;
drivers/net/wan/n2.c
156
u8 mcr = inb(io + N2_MCR);
drivers/net/wan/n2.c
186
outb(mcr, io + N2_MCR);
drivers/net/wan/n2.c
197
int io = port->card->io;
drivers/net/wan/n2.c
198
u8 mcr = inb(io + N2_MCR) |
drivers/net/wan/n2.c
207
outb(mcr, io + N2_MCR);
drivers/net/wan/n2.c
209
outb(inb(io + N2_PCR) | PCR_ENWIN, io + N2_PCR); /* open window */
drivers/net/wan/n2.c
210
outb(inb(io + N2_PSR) | PSR_DMAEN, io + N2_PSR); /* enable dma */
drivers/net/wan/n2.c
219
int io = port->card->io;
drivers/net/wan/n2.c
220
u8 mcr = inb(io + N2_MCR) |
drivers/net/wan/n2.c
225
outb(mcr, io + N2_MCR);
drivers/net/wan/n2.c
304
if (card->io)
drivers/net/wan/n2.c
305
release_region(card->io, N2_IOPORTS);
drivers/net/wan/n2.c
321
static int __init n2_run(unsigned long io, unsigned long irq,
drivers/net/wan/n2.c
328
if (io < 0x200 || io > 0x3FF || (io % N2_IOPORTS) != 0) {
drivers/net/wan/n2.c
355
if (!request_region(io, N2_IOPORTS, devname)) {
drivers/net/wan/n2.c
360
card->io = io;
drivers/net/wan/n2.c
382
outb(0, io + N2_PCR);
drivers/net/wan/n2.c
383
outb(winbase >> 12, io + N2_BAR);
drivers/net/wan/n2.c
387
outb(WIN16K, io + N2_PSR);
drivers/net/wan/n2.c
391
outb(WIN32K, io + N2_PSR);
drivers/net/wan/n2.c
395
outb(WIN64K, io + N2_PSR);
drivers/net/wan/n2.c
405
outb(pcr, io + N2_PCR);
drivers/net/wan/n2.c
430
outb(pcr, io + N2_PCR);
drivers/net/wan/n2.c
431
outb(0, io + N2_MCR);
drivers/net/wan/n2.c
488
unsigned long io, irq, ram;
drivers/net/wan/n2.c
491
io = simple_strtoul(hw, &hw, 0);
drivers/net/wan/n2.c
517
n2_run(io, irq, ram, valid[0], valid[1]);
drivers/net/wireless/intel/iwlwifi/iwl-devtrace-io.h
193
#define TRACE_INCLUDE_FILE iwl-devtrace-io
drivers/net/wireless/realtek/rtlwifi/core.c
74
rtlpriv->io.dev);
drivers/net/wireless/realtek/rtlwifi/pci.c
2153
rtlpriv->io.pci_mem_start =
drivers/net/wireless/realtek/rtlwifi/pci.c
2156
if (rtlpriv->io.pci_mem_start == 0) {
drivers/net/wireless/realtek/rtlwifi/pci.c
2165
rtlpriv->io.pci_mem_start);
drivers/net/wireless/realtek/rtlwifi/pci.c
2246
if (rtlpriv->io.pci_mem_start != 0)
drivers/net/wireless/realtek/rtlwifi/pci.c
2247
pci_iounmap(pdev, (void __iomem *)rtlpriv->io.pci_mem_start);
drivers/net/wireless/realtek/rtlwifi/pci.c
2300
if (rtlpriv->io.pci_mem_start != 0) {
drivers/net/wireless/realtek/rtlwifi/pci.c
2301
pci_iounmap(pdev, (void __iomem *)rtlpriv->io.pci_mem_start);
drivers/net/wireless/realtek/rtlwifi/pci.c
349
rtlpriv->io.dev = dev;
drivers/net/wireless/realtek/rtlwifi/pci.c
351
rtlpriv->io.write8 = pci_write8_async;
drivers/net/wireless/realtek/rtlwifi/pci.c
352
rtlpriv->io.write16 = pci_write16_async;
drivers/net/wireless/realtek/rtlwifi/pci.c
353
rtlpriv->io.write32 = pci_write32_async;
drivers/net/wireless/realtek/rtlwifi/pci.c
355
rtlpriv->io.read8 = pci_read8_sync;
drivers/net/wireless/realtek/rtlwifi/pci.c
356
rtlpriv->io.read16 = pci_read16_sync;
drivers/net/wireless/realtek/rtlwifi/pci.c
357
rtlpriv->io.read32 = pci_read32_sync;
drivers/net/wireless/realtek/rtlwifi/pci.h
245
return readb((u8 __iomem *)rtlpriv->io.pci_mem_start + addr);
drivers/net/wireless/realtek/rtlwifi/pci.h
250
return readw((u8 __iomem *)rtlpriv->io.pci_mem_start + addr);
drivers/net/wireless/realtek/rtlwifi/pci.h
255
return readl((u8 __iomem *)rtlpriv->io.pci_mem_start + addr);
drivers/net/wireless/realtek/rtlwifi/pci.h
260
writeb(val, (u8 __iomem *)rtlpriv->io.pci_mem_start + addr);
drivers/net/wireless/realtek/rtlwifi/pci.h
266
writew(val, (u8 __iomem *)rtlpriv->io.pci_mem_start + addr);
drivers/net/wireless/realtek/rtlwifi/pci.h
272
writel(val, (u8 __iomem *)rtlpriv->io.pci_mem_start + addr);
drivers/net/wireless/realtek/rtlwifi/rtl8188ee/sw.c
145
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8192ce/sw.c
148
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8192cu/phy.c
329
mutex_lock(&rtlpriv->io.bb_mutex);
drivers/net/wireless/realtek/rtlwifi/rtl8192cu/phy.c
332
mutex_unlock(&rtlpriv->io.bb_mutex);
drivers/net/wireless/realtek/rtlwifi/rtl8192cu/sw.c
59
fw_name, rtlpriv->io.dev,
drivers/net/wireless/realtek/rtlwifi/rtl8192de/sw.c
162
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8192du/sw.c
157
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8192ee/sw.c
151
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8192se/hw.c
1113
void rtl92se_set_mac_addr(struct rtl_io *io, const u8 *addr)
drivers/net/wireless/realtek/rtlwifi/rtl8192se/hw.h
32
void rtl92se_set_mac_addr(struct rtl_io *io, const u8 *addr);
drivers/net/wireless/realtek/rtlwifi/rtl8192se/sw.c
189
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8723ae/sw.c
154
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8723be/sw.c
158
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8821ae/sw.c
187
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/rtl8821ae/sw.c
199
rtlpriv->io.dev, GFP_KERNEL, hw,
drivers/net/wireless/realtek/rtlwifi/usb.c
133
struct usb_device *udev = to_usb_device(rtlpriv->io.dev);
drivers/net/wireless/realtek/rtlwifi/usb.c
143
rtlpriv->io.dev = dev;
drivers/net/wireless/realtek/rtlwifi/usb.c
144
mutex_init(&rtlpriv->io.bb_mutex);
drivers/net/wireless/realtek/rtlwifi/usb.c
145
rtlpriv->io.write8 = _usb_write8_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
146
rtlpriv->io.write16 = _usb_write16_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
147
rtlpriv->io.write32 = _usb_write32_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
148
rtlpriv->io.write_chunk = _usb_write_chunk_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
149
rtlpriv->io.read8 = _usb_read8_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
150
rtlpriv->io.read16 = _usb_read16_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
151
rtlpriv->io.read32 = _usb_read32_sync;
drivers/net/wireless/realtek/rtlwifi/usb.c
158
mutex_destroy(&rtlpriv->io.bb_mutex);
drivers/net/wireless/realtek/rtlwifi/usb.c
62
struct device *dev = rtlpriv->io.dev;
drivers/net/wireless/realtek/rtlwifi/usb.c
82
struct device *dev = rtlpriv->io.dev;
drivers/net/wireless/realtek/rtlwifi/wifi.h
2668
struct rtl_io io;
drivers/net/wireless/realtek/rtlwifi/wifi.h
2889
return rtlpriv->io.read8(rtlpriv, addr);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2894
return rtlpriv->io.read16(rtlpriv, addr);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2899
return rtlpriv->io.read32(rtlpriv, addr);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2904
rtlpriv->io.write8(rtlpriv, addr, val8);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2907
rtlpriv->io.read8(rtlpriv, addr);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2920
rtlpriv->io.write16(rtlpriv, addr, val16);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2923
rtlpriv->io.read16(rtlpriv, addr);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2929
rtlpriv->io.write32(rtlpriv, addr, val32);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2932
rtlpriv->io.read32(rtlpriv, addr);
drivers/net/wireless/realtek/rtlwifi/wifi.h
2938
rtlpriv->io.write_chunk(rtlpriv, addr, length, data);
drivers/net/wireless/realtek/rtw89/core.c
6873
rtwdev->io = rtw89_fw_cmd_ofld_alloc_and_get_io_ops(rtwdev);
drivers/net/wireless/realtek/rtw89/core.h
6426
const struct rtw89_io_ops *io;
drivers/net/wireless/realtek/rtw89/core.h
6923
if (rtwdev->io->pack)
drivers/net/wireless/realtek/rtw89/core.h
6924
return rtwdev->io->pack(rtwdev);
drivers/net/wireless/realtek/rtw89/core.h
6931
if (rtwdev->io->unpack)
drivers/net/wireless/realtek/rtw89/core.h
6932
return rtwdev->io->unpack(rtwdev);
drivers/net/wireless/realtek/rtw89/core.h
6939
if (rtwdev->io->do_udelay)
drivers/net/wireless/realtek/rtw89/core.h
6940
rtwdev->io->do_udelay(rtwdev, us);
drivers/net/wireless/realtek/rtw89/core.h
6947
if (rtwdev->io->do_mdelay)
drivers/net/wireless/realtek/rtw89/core.h
6948
rtwdev->io->do_mdelay(rtwdev, ms);
drivers/net/wireless/realtek/rtw89/core.h
6985
rtwdev->io->write8(rtwdev, addr, data);
drivers/net/wireless/realtek/rtw89/core.h
6990
rtwdev->io->write16(rtwdev, addr, data);
drivers/net/wireless/realtek/rtw89/core.h
6995
rtwdev->io->write32(rtwdev, addr, data);
drivers/net/wireless/realtek/rtw89/core.h
7155
rtwdev->io->write_rf(rtwdev, rf_path, addr, mask, data);
drivers/net/wireless/realtek/rtw89/phy.h
736
rtwdev->io->phy_write8(rtwdev, addr, data);
drivers/net/wireless/realtek/rtw89/phy.h
742
rtwdev->io->phy_write16(rtwdev, addr, data);
drivers/net/wireless/realtek/rtw89/phy.h
748
rtwdev->io->phy_write32(rtwdev, addr, data);
drivers/nvme/host/ioctl.c
207
struct nvme_user_io io;
drivers/nvme/host/ioctl.c
212
if (copy_from_user(&io, uio, sizeof(io)))
drivers/nvme/host/ioctl.c
214
if (io.flags)
drivers/nvme/host/ioctl.c
217
switch (io.opcode) {
drivers/nvme/host/ioctl.c
226
length = (io.nblocks + 1) << ns->head->lba_shift;
drivers/nvme/host/ioctl.c
228
if ((io.control & NVME_RW_PRINFO_PRACT) &&
drivers/nvme/host/ioctl.c
234
if (nvme_to_user_ptr(io.metadata))
drivers/nvme/host/ioctl.c
239
meta_len = (io.nblocks + 1) * ns->head->ms;
drivers/nvme/host/ioctl.c
240
metadata = nvme_to_user_ptr(io.metadata);
drivers/nvme/host/ioctl.c
247
if ((io.metadata & 3) || !io.metadata)
drivers/nvme/host/ioctl.c
252
c.rw.opcode = io.opcode;
drivers/nvme/host/ioctl.c
253
c.rw.flags = io.flags;
drivers/nvme/host/ioctl.c
255
c.rw.slba = cpu_to_le64(io.slba);
drivers/nvme/host/ioctl.c
256
c.rw.length = cpu_to_le16(io.nblocks);
drivers/nvme/host/ioctl.c
257
c.rw.control = cpu_to_le16(io.control);
drivers/nvme/host/ioctl.c
258
c.rw.dsmgmt = cpu_to_le32(io.dsmgmt);
drivers/nvme/host/ioctl.c
259
c.rw.reftag = cpu_to_le32(io.reftag);
drivers/nvme/host/ioctl.c
260
c.rw.lbat = cpu_to_le16(io.apptag);
drivers/nvme/host/ioctl.c
261
c.rw.lbatm = cpu_to_le16(io.appmask);
drivers/nvme/host/ioctl.c
263
return nvme_submit_user_cmd(ns->queue, &c, io.addr, length, metadata,
drivers/parisc/lba_pci.c
1064
} *p, *io;
drivers/parisc/lba_pci.c
1068
io = (void *) &(io_pdc_cell->mod[2+i*3]);
drivers/parisc/lba_pci.c
1072
i, io->type, io->start, io->end);
drivers/parisc/lba_pci.c
1097
io->start;
drivers/parport/parport_pc.c
1027
s->io = 0x3bc;
drivers/parport/parport_pc.c
1031
s->io = 0x378;
drivers/parport/parport_pc.c
1035
s->io = 0x278;
drivers/parport/parport_pc.c
1048
static void show_parconfig_winbond(int io, int key)
drivers/parport/parport_pc.c
1068
outb(key, io);
drivers/parport/parport_pc.c
1069
outb(key, io);
drivers/parport/parport_pc.c
1070
outb(0x07, io); /* Register 7: Select Logical Device */
drivers/parport/parport_pc.c
1071
outb(0x01, io + 1); /* LD1 is Parallel Port */
drivers/parport/parport_pc.c
1072
outb(0x30, io);
drivers/parport/parport_pc.c
1073
cr30 = inb(io + 1);
drivers/parport/parport_pc.c
1074
outb(0x60, io);
drivers/parport/parport_pc.c
1075
cr60 = inb(io + 1);
drivers/parport/parport_pc.c
1076
outb(0x61, io);
drivers/parport/parport_pc.c
1077
cr61 = inb(io + 1);
drivers/parport/parport_pc.c
1078
outb(0x70, io);
drivers/parport/parport_pc.c
1079
cr70 = inb(io + 1);
drivers/parport/parport_pc.c
1080
outb(0x74, io);
drivers/parport/parport_pc.c
1081
cr74 = inb(io + 1);
drivers/parport/parport_pc.c
1082
outb(0xf0, io);
drivers/parport/parport_pc.c
1083
crf0 = inb(io + 1);
drivers/parport/parport_pc.c
1084
outb(0xaa, io);
drivers/parport/parport_pc.c
1106
s->io = (cr60 << 8) | cr61;
drivers/parport/parport_pc.c
1168
void (*func)(int io, int key);
drivers/parport/parport_pc.c
1198
static void winbond_check(int io, int key)
drivers/parport/parport_pc.c
1202
if (!request_region(io, 3, __func__))
drivers/parport/parport_pc.c
1205
origval = inb(io); /* Save original value */
drivers/parport/parport_pc.c
1208
outb(0x20, io);
drivers/parport/parport_pc.c
1209
x_devid = inb(io + 1);
drivers/parport/parport_pc.c
1210
outb(0x21, io);
drivers/parport/parport_pc.c
1211
x_devrev = inb(io + 1);
drivers/parport/parport_pc.c
1212
outb(0x09, io);
drivers/parport/parport_pc.c
1213
x_oldid = inb(io + 1);
drivers/parport/parport_pc.c
1215
outb(key, io);
drivers/parport/parport_pc.c
1216
outb(key, io); /* Write Magic Sequence to EFER, extended
drivers/parport/parport_pc.c
1218
outb(0x20, io); /* Write EFIR, extended function index register */
drivers/parport/parport_pc.c
1219
devid = inb(io + 1); /* Read EFDR, extended function data register */
drivers/parport/parport_pc.c
1220
outb(0x21, io);
drivers/parport/parport_pc.c
1221
devrev = inb(io + 1);
drivers/parport/parport_pc.c
1222
outb(0x09, io);
drivers/parport/parport_pc.c
1223
oldid = inb(io + 1);
drivers/parport/parport_pc.c
1224
outb(0xaa, io); /* Magic Seal */
drivers/parport/parport_pc.c
1226
outb(origval, io); /* in case we poked some entirely different hardware */
drivers/parport/parport_pc.c
1231
decode_winbond(io, key, devid, devrev, oldid);
drivers/parport/parport_pc.c
1233
release_region(io, 3);
drivers/parport/parport_pc.c
1236
static void winbond_check2(int io, int key)
drivers/parport/parport_pc.c
1240
if (!request_region(io, 3, __func__))
drivers/parport/parport_pc.c
1243
origval[0] = inb(io); /* Save original values */
drivers/parport/parport_pc.c
1244
origval[1] = inb(io + 1);
drivers/parport/parport_pc.c
1245
origval[2] = inb(io + 2);
drivers/parport/parport_pc.c
1248
outb(0x20, io + 2);
drivers/parport/parport_pc.c
1249
x_devid = inb(io + 2);
drivers/parport/parport_pc.c
1250
outb(0x21, io + 1);
drivers/parport/parport_pc.c
1251
x_devrev = inb(io + 2);
drivers/parport/parport_pc.c
1252
outb(0x09, io + 1);
drivers/parport/parport_pc.c
1253
x_oldid = inb(io + 2);
drivers/parport/parport_pc.c
1255
outb(key, io); /* Write Magic Byte to EFER, extended
drivers/parport/parport_pc.c
1257
outb(0x20, io + 2); /* Write EFIR, extended function index register */
drivers/parport/parport_pc.c
1258
devid = inb(io + 2); /* Read EFDR, extended function data register */
drivers/parport/parport_pc.c
1259
outb(0x21, io + 1);
drivers/parport/parport_pc.c
1260
devrev = inb(io + 2);
drivers/parport/parport_pc.c
1261
outb(0x09, io + 1);
drivers/parport/parport_pc.c
1262
oldid = inb(io + 2);
drivers/parport/parport_pc.c
1263
outb(0xaa, io); /* Magic Seal */
drivers/parport/parport_pc.c
1265
outb(origval[0], io); /* in case we poked some entirely different hardware */
drivers/parport/parport_pc.c
1266
outb(origval[1], io + 1);
drivers/parport/parport_pc.c
1267
outb(origval[2], io + 2);
drivers/parport/parport_pc.c
1272
decode_winbond(io, key, devid, devrev, oldid);
drivers/parport/parport_pc.c
1274
release_region(io, 3);
drivers/parport/parport_pc.c
1277
static void smsc_check(int io, int key)
drivers/parport/parport_pc.c
1281
if (!request_region(io, 3, __func__))
drivers/parport/parport_pc.c
1284
origval = inb(io); /* Save original value */
drivers/parport/parport_pc.c
1287
outb(0x0d, io);
drivers/parport/parport_pc.c
1288
x_oldid = inb(io + 1);
drivers/parport/parport_pc.c
1289
outb(0x0e, io);
drivers/parport/parport_pc.c
1290
x_oldrev = inb(io + 1);
drivers/parport/parport_pc.c
1291
outb(0x20, io);
drivers/parport/parport_pc.c
1292
x_id = inb(io + 1);
drivers/parport/parport_pc.c
1293
outb(0x21, io);
drivers/parport/parport_pc.c
1294
x_rev = inb(io + 1);
drivers/parport/parport_pc.c
1296
outb(key, io);
drivers/parport/parport_pc.c
1297
outb(key, io); /* Write Magic Sequence to EFER, extended
drivers/parport/parport_pc.c
1299
outb(0x0d, io); /* Write EFIR, extended function index register */
drivers/parport/parport_pc.c
1300
oldid = inb(io + 1); /* Read EFDR, extended function data register */
drivers/parport/parport_pc.c
1301
outb(0x0e, io);
drivers/parport/parport_pc.c
1302
oldrev = inb(io + 1);
drivers/parport/parport_pc.c
1303
outb(0x20, io);
drivers/parport/parport_pc.c
1304
id = inb(io + 1);
drivers/parport/parport_pc.c
1305
outb(0x21, io);
drivers/parport/parport_pc.c
1306
rev = inb(io + 1);
drivers/parport/parport_pc.c
1307
outb(0xaa, io); /* Magic Seal */
drivers/parport/parport_pc.c
1309
outb(origval, io); /* in case we poked some entirely different hardware */
drivers/parport/parport_pc.c
1315
decode_smsc(io, key, oldid, oldrev);
drivers/parport/parport_pc.c
1317
release_region(io, 3);
drivers/parport/parport_pc.c
1383
if (superios[i].io == p->base)
drivers/parport/parport_pc.c
3136
static int __initdata io[PARPORT_PC_MAX_PORTS+1] = {
drivers/parport/parport_pc.c
3209
MODULE_PARM_DESC(io, "Base I/O address (SPP regs)");
drivers/parport/parport_pc.c
3210
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/parport/parport_pc.c
3239
for (i = 0; i < PARPORT_PC_MAX_PORTS && io[i]; i++) {
drivers/parport/parport_pc.c
3247
if (!io[0]) {
drivers/parport/parport_pc.c
3293
io[0] = PARPORT_DISABLE;
drivers/parport/parport_pc.c
3314
io[parport_setup_ptr] = val;
drivers/parport/parport_pc.c
3336
return io[0] == PARPORT_DISABLE;
drivers/parport/parport_pc.c
3364
if (io[0]) {
drivers/parport/parport_pc.c
3369
if (!io[i])
drivers/parport/parport_pc.c
3372
io_hi[i] = 0x400 + io[i];
drivers/parport/parport_pc.c
3373
parport_pc_probe_port(io[i], io_hi[i],
drivers/parport/parport_pc.c
92
int io;
drivers/parport/parport_pc.c
960
if (superios[i].io == 0)
drivers/parport/parport_pc.c
967
static void show_parconfig_smsc37c669(int io, int key)
drivers/parport/parport_pc.c
978
outb(key, io);
drivers/parport/parport_pc.c
979
outb(key, io);
drivers/parport/parport_pc.c
980
outb(1, io);
drivers/parport/parport_pc.c
981
cr1 = inb(io + 1);
drivers/parport/parport_pc.c
982
outb(4, io);
drivers/parport/parport_pc.c
983
cr4 = inb(io + 1);
drivers/parport/parport_pc.c
984
outb(0x0a, io);
drivers/parport/parport_pc.c
985
cra = inb(io + 1);
drivers/parport/parport_pc.c
986
outb(0x23, io);
drivers/parport/parport_pc.c
987
cr23 = inb(io + 1);
drivers/parport/parport_pc.c
988
outb(0x26, io);
drivers/parport/parport_pc.c
989
cr26 = inb(io + 1);
drivers/parport/parport_pc.c
990
outb(0x27, io);
drivers/parport/parport_pc.c
991
cr27 = inb(io + 1);
drivers/parport/parport_pc.c
992
outb(0xaa, io);
drivers/pci/controller/pci-ftpci100.c
413
struct resource *io;
drivers/pci/controller/pci-ftpci100.c
444
io = win->res;
drivers/pci/controller/pci-ftpci100.c
445
if (!faraday_res_to_memcfg(io->start - win->offset,
drivers/pci/controller/pci-ftpci100.c
446
resource_size(io), &val)) {
drivers/pci/controller/pci-mvebu.c
1284
if (resource_size(&pcie->io) != 0) {
drivers/pci/controller/pci-mvebu.c
1425
mvebu_mbus_get_pcie_io_aperture(&pcie->io);
drivers/pci/controller/pci-mvebu.c
1427
if (resource_size(&pcie->io) != 0) {
drivers/pci/controller/pci-mvebu.c
1428
pcie->realio.flags = pcie->io.flags;
drivers/pci/controller/pci-mvebu.c
1432
resource_size(&pcie->io) - 1);
drivers/pci/controller/pci-mvebu.c
1435
ret = devm_pci_remap_iospace(dev, &pcie->realio, pcie->io.start);
drivers/pci/controller/pci-mvebu.c
538
desired.base = port->pcie->io.start + desired.remap;
drivers/pci/controller/pci-mvebu.c
87
struct resource io;
drivers/pci/controller/pci-v3-semi.c
523
struct resource *io;
drivers/pci/controller/pci-v3-semi.c
527
io = win->res;
drivers/pci/controller/pci-v3-semi.c
530
writel(v3_addr_to_lb_base2(pci_pio_to_address(io->start)) |
drivers/pci/controller/pci-v3-semi.c
533
writew(v3_addr_to_lb_map2(io->start - win->offset),
drivers/pci/hotplug/ibmphp.h
362
u32 io;
drivers/pci/hotplug/ibmphp.h
680
struct resource_node *io[6];
drivers/pci/hotplug/ibmphp_pci.c
1021
if (io)
drivers/pci/hotplug/ibmphp_pci.c
1022
ibmphp_remove_resource(io);
drivers/pci/hotplug/ibmphp_pci.c
1028
func->io[i] = NULL;
drivers/pci/hotplug/ibmphp_pci.c
1134
amount->io += len[count];
drivers/pci/hotplug/ibmphp_pci.c
1166
if ((amount->io) && (amount->io < IOBRIDGE))
drivers/pci/hotplug/ibmphp_pci.c
1167
amount->io = IOBRIDGE;
drivers/pci/hotplug/ibmphp_pci.c
1195
struct resource_node *io;
drivers/pci/hotplug/ibmphp_pci.c
1238
if (ibmphp_find_resource(bus, start_address, &io, IO))
drivers/pci/hotplug/ibmphp_pci.c
1241
debug("io->start = %x\n", io->start);
drivers/pci/hotplug/ibmphp_pci.c
1242
temp_end = io->end;
drivers/pci/hotplug/ibmphp_pci.c
1243
start_address = io->end + 1;
drivers/pci/hotplug/ibmphp_pci.c
1244
ibmphp_remove_resource(io);
drivers/pci/hotplug/ibmphp_pci.c
1248
&io, IO))
drivers/pci/hotplug/ibmphp_pci.c
1251
debug("io->start = %x\n", io->start);
drivers/pci/hotplug/ibmphp_pci.c
1252
temp_end = io->end;
drivers/pci/hotplug/ibmphp_pci.c
1253
start_address = io->end + 1;
drivers/pci/hotplug/ibmphp_pci.c
1254
ibmphp_remove_resource(io);
drivers/pci/hotplug/ibmphp_pci.c
1309
struct resource_node *io = NULL;
drivers/pci/hotplug/ibmphp_pci.c
1368
if (ibmphp_find_resource(bus, start_address, &io, IO) < 0) {
drivers/pci/hotplug/ibmphp_pci.c
1372
if (io)
drivers/pci/hotplug/ibmphp_pci.c
1373
debug("io->start = %x\n", io->start);
drivers/pci/hotplug/ibmphp_pci.c
1375
ibmphp_remove_resource(io);
drivers/pci/hotplug/ibmphp_pci.c
1563
if (cur_func->io[i]) {
drivers/pci/hotplug/ibmphp_pci.c
1566
ibmphp_remove_resource(cur_func->io[i]);
drivers/pci/hotplug/ibmphp_pci.c
1567
cur_func->io[i] = NULL;
drivers/pci/hotplug/ibmphp_pci.c
1603
static int add_new_bus(struct bus_node *bus, struct resource_node *io, struct resource_node *mem, struct resource_node *pfmem, u8 parent_busno)
drivers/pci/hotplug/ibmphp_pci.c
1620
if (io) {
drivers/pci/hotplug/ibmphp_pci.c
1625
io_range->start = io->start;
drivers/pci/hotplug/ibmphp_pci.c
1626
io_range->end = io->end;
drivers/pci/hotplug/ibmphp_pci.c
310
if (cur_func->io[i]) {
drivers/pci/hotplug/ibmphp_pci.c
311
ibmphp_remove_resource(cur_func->io[i]);
drivers/pci/hotplug/ibmphp_pci.c
312
cur_func->io[i] = NULL;
drivers/pci/hotplug/ibmphp_pci.c
344
struct resource_node *io[6];
drivers/pci/hotplug/ibmphp_pci.c
387
io[count] = kzalloc_obj(struct resource_node);
drivers/pci/hotplug/ibmphp_pci.c
389
if (!io[count])
drivers/pci/hotplug/ibmphp_pci.c
392
io[count]->type = IO;
drivers/pci/hotplug/ibmphp_pci.c
393
io[count]->busno = func->busno;
drivers/pci/hotplug/ibmphp_pci.c
394
io[count]->devfunc = PCI_DEVFN(func->device, func->function);
drivers/pci/hotplug/ibmphp_pci.c
395
io[count]->len = len[count];
drivers/pci/hotplug/ibmphp_pci.c
396
if (ibmphp_check_resource(io[count], 0) == 0) {
drivers/pci/hotplug/ibmphp_pci.c
397
ibmphp_add_resource(io[count]);
drivers/pci/hotplug/ibmphp_pci.c
398
func->io[count] = io[count];
drivers/pci/hotplug/ibmphp_pci.c
402
kfree(io[count]);
drivers/pci/hotplug/ibmphp_pci.c
405
pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->io[count]->start);
drivers/pci/hotplug/ibmphp_pci.c
408
debug("b4 writing, the IO address is %x\n", func->io[count]->start);
drivers/pci/hotplug/ibmphp_pci.c
559
struct resource_node *io = NULL;
drivers/pci/hotplug/ibmphp_pci.c
664
func->io[count] = bus_io[count];
drivers/pci/hotplug/ibmphp_pci.c
672
pci_bus_write_config_dword(ibmphp_pci_bus, devfn, address[count], func->io[count]->start);
drivers/pci/hotplug/ibmphp_pci.c
779
debug("amount_needed->io = %x\n", amount_needed->io);
drivers/pci/hotplug/ibmphp_pci.c
789
func->io[count] = NULL;
drivers/pci/hotplug/ibmphp_pci.c
802
if (!amount_needed->io) {
drivers/pci/hotplug/ibmphp_pci.c
806
debug("it wants %x IO behind the bridge\n", amount_needed->io);
drivers/pci/hotplug/ibmphp_pci.c
807
io = kzalloc_obj(*io);
drivers/pci/hotplug/ibmphp_pci.c
809
if (!io) {
drivers/pci/hotplug/ibmphp_pci.c
813
io->type = IO;
drivers/pci/hotplug/ibmphp_pci.c
814
io->busno = func->busno;
drivers/pci/hotplug/ibmphp_pci.c
815
io->devfunc = PCI_DEVFN(func->device, func->function);
drivers/pci/hotplug/ibmphp_pci.c
816
io->len = amount_needed->io;
drivers/pci/hotplug/ibmphp_pci.c
817
if (ibmphp_check_resource(io, 1) == 0) {
drivers/pci/hotplug/ibmphp_pci.c
819
ibmphp_add_resource(io);
drivers/pci/hotplug/ibmphp_pci.c
901
rc = add_new_bus(bus, io, mem, pfmem, func->busno);
drivers/pci/hotplug/ibmphp_pci.c
903
rc = add_new_bus(bus, io, mem, pfmem, 0xFF);
drivers/pci/hotplug/ibmphp_res.c
1913
struct resource_node *io;
drivers/pci/hotplug/ibmphp_res.c
1995
if (ibmphp_find_resource(bus_cur, start_address, &io, IO)) {
drivers/pci/hotplug/ibmphp_res.c
1996
io = kzalloc_obj(struct resource_node);
drivers/pci/hotplug/ibmphp_res.c
1997
if (!io) {
drivers/pci/hotplug/ibmphp_res.c
2001
io->type = IO;
drivers/pci/hotplug/ibmphp_res.c
2002
io->busno = bus_cur->busno;
drivers/pci/hotplug/ibmphp_res.c
2003
io->devfunc = ((device << 3) | (function & 0x7));
drivers/pci/hotplug/ibmphp_res.c
2004
io->start = start_address;
drivers/pci/hotplug/ibmphp_res.c
2005
io->end = end_address + 0xfff;
drivers/pci/hotplug/ibmphp_res.c
2006
io->len = io->end - io->start + 1;
drivers/pci/hotplug/ibmphp_res.c
2007
ibmphp_add_resource(io);
drivers/pci/probe.c
508
u16 io;
drivers/pci/probe.c
519
pci_read_config_word(bridge, PCI_IO_BASE, &io);
drivers/pci/probe.c
520
if (!io) {
drivers/pci/probe.c
522
pci_read_config_word(bridge, PCI_IO_BASE, &io);
drivers/pci/probe.c
525
if (io) {
drivers/pcmcia/cistpl.c
1004
for (i = 0; i < io->nwin; i++) {
drivers/pcmcia/cistpl.c
1005
io->win[i].base = 0;
drivers/pcmcia/cistpl.c
1006
io->win[i].len = 1;
drivers/pcmcia/cistpl.c
1010
io->win[i].base += *p << (j*8);
drivers/pcmcia/cistpl.c
1015
io->win[i].len += *p << (j*8);
drivers/pcmcia/cistpl.c
1142
p = parse_io(p, q, &entry->io);
drivers/pcmcia/cistpl.c
1146
entry->io.nwin = 0;
drivers/pcmcia/cistpl.c
978
static u_char *parse_io(u_char *p, u_char *q, cistpl_io_t *io)
drivers/pcmcia/cistpl.c
984
io->flags = *p;
drivers/pcmcia/cistpl.c
987
io->nwin = 1;
drivers/pcmcia/cistpl.c
988
io->win[0].base = 0;
drivers/pcmcia/cistpl.c
989
io->win[0].len = (1 << (io->flags & CISTPL_IO_LINES_MASK));
drivers/pcmcia/cistpl.c
995
io->nwin = (*p & 0x0f) + 1;
drivers/pcmcia/cs_internal.h
33
struct resource io[MAX_IO_WIN]; /* io ports */
drivers/pcmcia/ds.c
553
c->io[i].name = p_dev->devname;
drivers/pcmcia/ds.c
554
c->io[i].flags = IORESOURCE_IO;
drivers/pcmcia/ds.c
562
p_dev->resource[i] = &p_dev->function_config->io[i];
drivers/pcmcia/electra_cf.c
147
struct pccard_io_map *io)
drivers/pcmcia/electra_cf.c
180
struct resource mem, io;
drivers/pcmcia/electra_cf.c
189
err = of_address_to_resource(np, 1, &io);
drivers/pcmcia/electra_cf.c
206
cf->io_size = PAGE_ALIGN(resource_size(&io));
drivers/pcmcia/electra_cf.c
207
cf->io_virt = ioremap_phb(io.start, cf->io_size);
drivers/pcmcia/electra_cf.c
284
cf->mem_phys, io.start, cf->irq);
drivers/pcmcia/omap_cf.c
157
omap_cf_set_io_map(struct pcmcia_socket *s, struct pccard_io_map *io)
drivers/pcmcia/omap_cf.c
162
io->flags &= MAP_ACTIVE|MAP_ATTRIB|MAP_16BIT;
drivers/pcmcia/omap_cf.c
163
io->start = cf->phys_cf + SZ_4K;
drivers/pcmcia/omap_cf.c
164
io->stop = io->start + SZ_2K - 1;
drivers/pcmcia/omap_cf.c
276
cf->socket.io[0].res = &cf->iomem;
drivers/pcmcia/pcmcia_cis.c
198
cistpl_io_t *io = (cfg->io.nwin) ? &cfg->io : &dflt->io;
drivers/pcmcia/pcmcia_cis.c
203
if (io->nwin == 0)
drivers/pcmcia/pcmcia_cis.c
208
pcmcia_io_cfg_data_width(io->flags);
drivers/pcmcia/pcmcia_cis.c
209
if (io->nwin > 1) {
drivers/pcmcia/pcmcia_cis.c
213
i = (io->win[1].len > io->win[0].len);
drivers/pcmcia/pcmcia_cis.c
215
p_dev->resource[1]->start = io->win[1-i].base;
drivers/pcmcia/pcmcia_cis.c
216
p_dev->resource[1]->end = io->win[1-i].len;
drivers/pcmcia/pcmcia_cis.c
218
p_dev->resource[0]->start = io->win[i].base;
drivers/pcmcia/pcmcia_cis.c
219
p_dev->resource[0]->end = io->win[i].len;
drivers/pcmcia/pcmcia_cis.c
220
p_dev->io_lines = io->flags & CISTPL_IO_LINES_MASK;
drivers/pcmcia/pcmcia_resource.c
273
if (!s->io[i].res)
drivers/pcmcia/pcmcia_resource.c
279
io_on.start = s->io[i].res->start;
drivers/pcmcia/pcmcia_resource.c
280
io_on.stop = s->io[i].res->end;
drivers/pcmcia/pcmcia_resource.c
348
pccard_io_map io = { 0, 0, 0, 0, 1 };
drivers/pcmcia/pcmcia_resource.c
368
if (!s->io[i].res)
drivers/pcmcia/pcmcia_resource.c
370
s->io[i].Config--;
drivers/pcmcia/pcmcia_resource.c
371
if (s->io[i].Config != 0)
drivers/pcmcia/pcmcia_resource.c
373
io.map = i;
drivers/pcmcia/pcmcia_resource.c
374
s->ops->set_io_map(s, &io);
drivers/pcmcia/pcmcia_resource.c
404
release_io_space(s, &c->io[0]);
drivers/pcmcia/pcmcia_resource.c
406
if (c->io[1].end)
drivers/pcmcia/pcmcia_resource.c
407
release_io_space(s, &c->io[1]);
drivers/pcmcia/pcmcia_resource.c
573
u8 b = c->io[0].start & 0xff;
drivers/pcmcia/pcmcia_resource.c
575
b = (c->io[0].start >> 8) & 0xff;
drivers/pcmcia/pcmcia_resource.c
579
u8 b = resource_size(&c->io[0]) + resource_size(&c->io[1]) - 1;
drivers/pcmcia/pcmcia_resource.c
587
if (s->io[i].res) {
drivers/pcmcia/pcmcia_resource.c
590
switch (s->io[i].res->flags & IO_DATA_PATH_WIDTH) {
drivers/pcmcia/pcmcia_resource.c
598
iomap.start = s->io[i].res->start;
drivers/pcmcia/pcmcia_resource.c
599
iomap.stop = s->io[i].res->end;
drivers/pcmcia/pcmcia_resource.c
601
s->io[i].Config++;
drivers/pcmcia/pcmcia_resource.c
631
&c->io[0], &c->io[1]);
drivers/pcmcia/pcmcia_resource.c
647
ret = alloc_io_space(s, &c->io[0], p_dev->io_lines);
drivers/pcmcia/pcmcia_resource.c
651
if (c->io[1].end) {
drivers/pcmcia/pcmcia_resource.c
652
ret = alloc_io_space(s, &c->io[1], p_dev->io_lines);
drivers/pcmcia/pcmcia_resource.c
654
struct resource tmp = c->io[0];
drivers/pcmcia/pcmcia_resource.c
656
release_io_space(s, &c->io[0]);
drivers/pcmcia/pcmcia_resource.c
658
c->io[0].end = resource_size(&tmp);
drivers/pcmcia/pcmcia_resource.c
659
c->io[0].start = tmp.start;
drivers/pcmcia/pcmcia_resource.c
660
c->io[0].flags = tmp.flags;
drivers/pcmcia/pcmcia_resource.c
664
c->io[1].start = 0;
drivers/pcmcia/pcmcia_resource.c
670
&c->io[0], &c->io[1]);
drivers/pcmcia/pcmcia_resource.c
68
if (!s->io[i].res)
drivers/pcmcia/pcmcia_resource.c
70
if ((s->io[i].res->start <= res->start) &&
drivers/pcmcia/pcmcia_resource.c
71
(s->io[i].res->end >= res->end)) {
drivers/pcmcia/pcmcia_resource.c
72
s->io[i].InUse -= num;
drivers/pcmcia/pcmcia_resource.c
78
if (s->io[i].InUse == 0) {
drivers/pcmcia/pcmcia_resource.c
79
release_resource(s->io[i].res);
drivers/pcmcia/pcmcia_resource.c
80
kfree(s->io[i].res);
drivers/pcmcia/pcmcia_resource.c
81
s->io[i].res = NULL;
drivers/pcmcia/pd6729.c
424
struct pccard_io_map *io)
drivers/pcmcia/pd6729.c
430
map = io->map;
drivers/pcmcia/pd6729.c
446
indirect_write16(socket, I365_IO(map)+I365_W_START, io->start);
drivers/pcmcia/pd6729.c
447
indirect_write16(socket, I365_IO(map)+I365_W_STOP, io->stop);
drivers/pcmcia/pd6729.c
451
if (io->flags & MAP_0WS)
drivers/pcmcia/pd6729.c
453
if (io->flags & MAP_16BIT)
drivers/pcmcia/pd6729.c
455
if (io->flags & MAP_AUTOSZ)
drivers/pcmcia/pd6729.c
461
if (io->flags & MAP_ACTIVE)
drivers/pcmcia/pd6729.c
548
pccard_io_map io = { 0, 0, 0, 0, 1 };
drivers/pcmcia/pd6729.c
553
io.map = i;
drivers/pcmcia/pd6729.c
554
pd6729_set_io_map(sock, &io);
drivers/pcmcia/pxa2xx_base.c
170
pxa2xx_pcmcia_mcio(sock, timing.io, clk));
drivers/pcmcia/rsrc_nonstatic.c
729
if (!s->io[i].res)
drivers/pcmcia/rsrc_nonstatic.c
735
if ((s->io[i].res->start & (align-1)) == *base)
drivers/pcmcia/rsrc_nonstatic.c
740
struct resource *res = s->io[i].res;
drivers/pcmcia/rsrc_nonstatic.c
751
res = s->io[i].res = __nonstatic_find_io_region(s,
drivers/pcmcia/rsrc_nonstatic.c
758
s->io[i].res->flags =
drivers/pcmcia/rsrc_nonstatic.c
761
s->io[i].InUse = num;
drivers/pcmcia/rsrc_nonstatic.c
772
ret = adjust_resource(s->io[i].res, res->start,
drivers/pcmcia/rsrc_nonstatic.c
777
s->io[i].InUse += num;
drivers/pcmcia/rsrc_nonstatic.c
790
ret = adjust_resource(s->io[i].res,
drivers/pcmcia/rsrc_nonstatic.c
796
s->io[i].InUse += num;
drivers/pcmcia/sa11xx_base.c
153
p+=sprintf(p, "I/O : %uns (%uns)\n", timing.io,
drivers/pcmcia/sa11xx_base.c
88
bs_io = skt->ops->get_timing(skt, cpu_clock, timing.io);
drivers/pcmcia/soc_common.c
136
timing->io =
drivers/pcmcia/soc_common.h
30
unsigned short io;
drivers/pcmcia/yenta_socket.c
405
static int yenta_set_io_map(struct pcmcia_socket *sock, struct pccard_io_map *io)
drivers/pcmcia/yenta_socket.c
411
map = io->map;
drivers/pcmcia/yenta_socket.c
425
exca_writew(socket, I365_IO(map)+I365_W_START, io->start);
drivers/pcmcia/yenta_socket.c
426
exca_writew(socket, I365_IO(map)+I365_W_STOP, io->stop);
drivers/pcmcia/yenta_socket.c
429
if (io->flags & MAP_0WS)
drivers/pcmcia/yenta_socket.c
431
if (io->flags & MAP_16BIT)
drivers/pcmcia/yenta_socket.c
433
if (io->flags & MAP_AUTOSZ)
drivers/pcmcia/yenta_socket.c
437
if (io->flags & MAP_ACTIVE)
drivers/pcmcia/yenta_socket.c
554
pccard_io_map io = { 0, 0, 0, 0, 1 };
drivers/pcmcia/yenta_socket.c
559
io.map = i;
drivers/pcmcia/yenta_socket.c
560
yenta_set_io_map(&socket->socket, &io);
drivers/pinctrl/qcom/pinctrl-eliza.c
57
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-eliza.c
63
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-glymur.c
81
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-glymur.c
87
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-hawi.c
82
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-hawi.c
88
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-kaanapali.c
81
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-kaanapali.c
87
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-milos.c
84
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-milos.c
90
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-msm.c
98
MSM_ACCESSOR(io)
drivers/pinctrl/qcom/pinctrl-nord.c
57
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-nord.c
63
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-sm8650.c
84
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-sm8650.c
90
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-sm8750.c
82
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-sm8750.c
88
.io_reg = io, \
drivers/platform/x86/fujitsu-tablet.c
431
fujitsu.io_base = res->data.io.minimum;
drivers/platform/x86/fujitsu-tablet.c
432
fujitsu.io_length = res->data.io.address_length;
drivers/platform/x86/sony-laptop.c
4216
struct acpi_resource_io *io = &resource->data.io;
drivers/platform/x86/sony-laptop.c
4220
memcpy(&ioport->io1, io, sizeof(*io));
drivers/platform/x86/sony-laptop.c
4225
memcpy(&ioport->io2, io, sizeof(*io));
drivers/platform/x86/sony-laptop.c
4345
memcpy(&resource->res1.data.io, &ioport->io1,
drivers/platform/x86/sony-laptop.c
4350
memcpy(&resource->res2.data.io, &ioport->io2,
drivers/platform/x86/sony-laptop.c
4369
memcpy(&resource->res1.data.io, &ioport->io1,
drivers/platform/x86/sony-laptop.c
4477
struct sony_pic_ioport *io, *tmp_io;
drivers/platform/x86/sony-laptop.c
4500
list_for_each_entry_safe(io, tmp_io, &spic_dev.ioports, list) {
drivers/platform/x86/sony-laptop.c
4501
list_del(&io->list);
drivers/platform/x86/sony-laptop.c
4502
kfree(io);
drivers/platform/x86/sony-laptop.c
4516
struct sony_pic_ioport *io, *tmp_io;
drivers/platform/x86/sony-laptop.c
4549
list_for_each_entry_reverse(io, &spic_dev.ioports, list) {
drivers/platform/x86/sony-laptop.c
4550
if (request_region(io->io1.minimum, io->io1.address_length,
drivers/platform/x86/sony-laptop.c
4553
io->io1.minimum, io->io1.maximum,
drivers/platform/x86/sony-laptop.c
4554
io->io1.address_length);
drivers/platform/x86/sony-laptop.c
4556
if (io->io2.minimum) {
drivers/platform/x86/sony-laptop.c
4557
if (request_region(io->io2.minimum,
drivers/platform/x86/sony-laptop.c
4558
io->io2.address_length,
drivers/platform/x86/sony-laptop.c
4561
io->io2.minimum, io->io2.maximum,
drivers/platform/x86/sony-laptop.c
4562
io->io2.address_length);
drivers/platform/x86/sony-laptop.c
4563
spic_dev.cur_ioport = io;
drivers/platform/x86/sony-laptop.c
4569
io->io2.minimum, io->io2.maximum,
drivers/platform/x86/sony-laptop.c
4570
io->io2.address_length);
drivers/platform/x86/sony-laptop.c
4571
release_region(io->io1.minimum,
drivers/platform/x86/sony-laptop.c
4572
io->io1.address_length);
drivers/platform/x86/sony-laptop.c
4576
spic_dev.cur_ioport = io;
drivers/platform/x86/sony-laptop.c
4650
list_for_each_entry_safe(io, tmp_io, &spic_dev.ioports, list) {
drivers/platform/x86/sony-laptop.c
4651
list_del(&io->list);
drivers/platform/x86/sony-laptop.c
4652
kfree(io);
drivers/pnp/pnpacpi/rsparser.c
349
struct acpi_resource_io *io)
drivers/pnp/pnpacpi/rsparser.c
353
if (io->io_decode == ACPI_DECODE_16)
drivers/pnp/pnpacpi/rsparser.c
355
pnp_register_port_resource(dev, option_flags, io->minimum, io->maximum,
drivers/pnp/pnpacpi/rsparser.c
356
io->alignment, io->address_length, flags);
drivers/pnp/pnpacpi/rsparser.c
361
struct acpi_resource_fixed_io *io)
drivers/pnp/pnpacpi/rsparser.c
363
pnp_register_port_resource(dev, option_flags, io->address, io->address,
drivers/pnp/pnpacpi/rsparser.c
364
0, io->address_length, IORESOURCE_IO_FIXED);
drivers/pnp/pnpacpi/rsparser.c
496
pnpacpi_parse_port_option(dev, option_flags, &res->data.io);
drivers/pnp/pnpacpi/rsparser.c
768
struct acpi_resource_io *io = &resource->data.io;
drivers/pnp/pnpacpi/rsparser.c
772
io->io_decode = (p->flags & IORESOURCE_IO_16BIT_ADDR) ?
drivers/pnp/pnpacpi/rsparser.c
774
io->minimum = p->start;
drivers/pnp/pnpacpi/rsparser.c
775
io->maximum = p->end;
drivers/pnp/pnpacpi/rsparser.c
776
io->alignment = 0; /* Correct? */
drivers/pnp/pnpacpi/rsparser.c
777
io->address_length = resource_size(p);
drivers/pnp/pnpacpi/rsparser.c
779
io->minimum = 0;
drivers/pnp/pnpacpi/rsparser.c
780
io->address_length = 0;
drivers/pnp/pnpacpi/rsparser.c
783
pnp_dbg(&dev->dev, " encode io %#x-%#x decode %#x\n", io->minimum,
drivers/pnp/pnpacpi/rsparser.c
784
io->minimum + io->address_length - 1, io->io_decode);
drivers/pnp/pnpbios/rsparser.c
110
io = *(short *)&p[4];
drivers/pnp/pnpbios/rsparser.c
112
pnpbios_parse_allocated_memresource(dev, io, size);
drivers/pnp/pnpbios/rsparser.c
126
io = *(int *)&p[4];
drivers/pnp/pnpbios/rsparser.c
128
pnpbios_parse_allocated_memresource(dev, io, size);
drivers/pnp/pnpbios/rsparser.c
134
io = *(int *)&p[4];
drivers/pnp/pnpbios/rsparser.c
136
pnpbios_parse_allocated_memresource(dev, io, size);
drivers/pnp/pnpbios/rsparser.c
143
io = -1;
drivers/pnp/pnpbios/rsparser.c
147
io = i;
drivers/pnp/pnpbios/rsparser.c
148
if (io != -1)
drivers/pnp/pnpbios/rsparser.c
149
pcibios_penalize_isa_irq(io, 1);
drivers/pnp/pnpbios/rsparser.c
152
pnp_add_irq_resource(dev, io, flags);
drivers/pnp/pnpbios/rsparser.c
159
io = -1;
drivers/pnp/pnpbios/rsparser.c
163
io = i;
drivers/pnp/pnpbios/rsparser.c
164
if (io == -1)
drivers/pnp/pnpbios/rsparser.c
166
pnp_add_dma_resource(dev, io, flags);
drivers/pnp/pnpbios/rsparser.c
172
io = p[2] + p[3] * 256;
drivers/pnp/pnpbios/rsparser.c
174
pnpbios_parse_allocated_ioresource(dev, io, size);
drivers/pnp/pnpbios/rsparser.c
184
io = p[1] + p[2] * 256;
drivers/pnp/pnpbios/rsparser.c
186
pnpbios_parse_allocated_ioresource(dev, io, size);
drivers/pnp/pnpbios/rsparser.c
85
int io, size, mask, i, flags;
drivers/power/supply/ds2760_battery.c
119
int io)
drivers/power/supply/ds2760_battery.c
136
if (!io) {
drivers/power/supply/ds2780_battery.c
56
char *buf, int addr, size_t count, int io)
drivers/power/supply/ds2780_battery.c
58
return w1_ds2780_io(dev_info->w1_dev, buf, addr, count, io);
drivers/power/supply/ds2781_battery.c
54
char *buf, int addr, size_t count, int io)
drivers/power/supply/ds2781_battery.c
56
return w1_ds2781_io(dev_info->w1_dev, buf, addr, count, io);
drivers/resctrl/mpam_devices.c
2089
void __iomem *io;
drivers/resctrl/mpam_devices.c
2091
io = devm_platform_get_and_ioremap_resource(pdev, 0,
drivers/resctrl/mpam_devices.c
2093
if (IS_ERR(io)) {
drivers/resctrl/mpam_devices.c
2095
return ERR_CAST(io);
drivers/resctrl/mpam_devices.c
2098
msc->mapped_hwpage = io;
drivers/rtc/rtc-stmp3xxx.c
137
if (!(readl(rtc_data->io + STMP3XXX_RTC_STAT) &
drivers/rtc/rtc-stmp3xxx.c
142
return (readl(rtc_data->io + STMP3XXX_RTC_STAT) &
drivers/rtc/rtc-stmp3xxx.c
156
rtc_time64_to_tm(readl(rtc_data->io + STMP3XXX_RTC_SECONDS), rtc_tm);
drivers/rtc/rtc-stmp3xxx.c
164
writel(rtc_tm_to_time64(rtc_tm), rtc_data->io + STMP3XXX_RTC_SECONDS);
drivers/rtc/rtc-stmp3xxx.c
172
u32 status = readl(rtc_data->io + STMP3XXX_RTC_CTRL);
drivers/rtc/rtc-stmp3xxx.c
176
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
191
rtc_data->io + STMP3XXX_RTC_PERSISTENT0 +
drivers/rtc/rtc-stmp3xxx.c
194
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_SET);
drivers/rtc/rtc-stmp3xxx.c
198
rtc_data->io + STMP3XXX_RTC_PERSISTENT0 +
drivers/rtc/rtc-stmp3xxx.c
201
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
210
rtc_time64_to_tm(readl(rtc_data->io + STMP3XXX_RTC_ALARM), &alm->time);
drivers/rtc/rtc-stmp3xxx.c
218
writel(rtc_tm_to_time64(&alm->time), rtc_data->io + STMP3XXX_RTC_ALARM);
drivers/rtc/rtc-stmp3xxx.c
242
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
264
rtc_data->io = devm_ioremap(&pdev->dev, r->start, resource_size(r));
drivers/rtc/rtc-stmp3xxx.c
265
if (!rtc_data->io) {
drivers/rtc/rtc-stmp3xxx.c
272
rtc_stat = readl(rtc_data->io + STMP3XXX_RTC_STAT);
drivers/rtc/rtc-stmp3xxx.c
285
if (readl(rtc_data->io + STMP3XXX_RTC_CTRL) &
drivers/rtc/rtc-stmp3xxx.c
290
err = stmp_reset_block(rtc_data->io);
drivers/rtc/rtc-stmp3xxx.c
341
writel(pers0_set, rtc_data->io + STMP3XXX_RTC_PERSISTENT0 +
drivers/rtc/rtc-stmp3xxx.c
347
rtc_data->io + STMP3XXX_RTC_PERSISTENT0 + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
351
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
386
stmp_reset_block(rtc_data->io);
drivers/rtc/rtc-stmp3xxx.c
390
rtc_data->io + STMP3XXX_RTC_PERSISTENT0 + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
58
void __iomem *io;
drivers/rtc/rtc-stmp3xxx.c
82
writel(timeout, rtc_data->io + STMP3XXX_RTC_WATCHDOG);
drivers/rtc/rtc-stmp3xxx.c
84
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_SET);
drivers/rtc/rtc-stmp3xxx.c
86
rtc_data->io + STMP3XXX_RTC_PERSISTENT1 + STMP_OFFSET_REG_SET);
drivers/rtc/rtc-stmp3xxx.c
89
rtc_data->io + STMP3XXX_RTC_CTRL + STMP_OFFSET_REG_CLR);
drivers/rtc/rtc-stmp3xxx.c
91
rtc_data->io + STMP3XXX_RTC_PERSISTENT1 + STMP_OFFSET_REG_CLR);
drivers/s390/scsi/zfcp_dbf.c
712
fcp_rsp = &(fsf->qtcb->bottom.io.fcp_rsp.iu);
drivers/s390/scsi/zfcp_dbf.h
337
fcp_rsp = &qtcb->bottom.io.fcp_rsp.iu.resp;
drivers/s390/scsi/zfcp_fsf.c
2357
switch (req->qtcb->bottom.io.data_direction) {
drivers/s390/scsi/zfcp_fsf.c
2419
req->qtcb->bottom.io.data_direction,
drivers/s390/scsi/zfcp_fsf.c
2428
req->qtcb->bottom.io.fcp_cmnd_length);
drivers/s390/scsi/zfcp_fsf.c
2498
fcp_rsp = &req->qtcb->bottom.io.fcp_rsp.iu;
drivers/s390/scsi/zfcp_fsf.c
2568
struct fsf_qtcb_bottom_io *io;
drivers/s390/scsi/zfcp_fsf.c
2595
io = &req->qtcb->bottom.io;
drivers/s390/scsi/zfcp_fsf.c
2601
io->service_class = FSF_CLASS_3;
drivers/s390/scsi/zfcp_fsf.c
2602
io->fcp_cmnd_length = FCP_CMND_LEN;
drivers/s390/scsi/zfcp_fsf.c
2605
io->data_block_length = scsi_prot_interval(scsi_cmnd);
drivers/s390/scsi/zfcp_fsf.c
2606
io->ref_tag_value = scsi_prot_ref_tag(scsi_cmnd);
drivers/s390/scsi/zfcp_fsf.c
2609
if (zfcp_fsf_set_data_dir(scsi_cmnd, &io->data_direction))
drivers/s390/scsi/zfcp_fsf.c
2613
fcp_cmnd = &req->qtcb->bottom.io.fcp_cmnd.iu;
drivers/s390/scsi/zfcp_fsf.c
2624
io->prot_data_length = zfcp_qdio_real_bytes(
drivers/s390/scsi/zfcp_fsf.c
2660
fcp_rsp = &req->qtcb->bottom.io.fcp_rsp.iu;
drivers/s390/scsi/zfcp_fsf.c
2705
req->qtcb->bottom.io.data_direction = FSF_DATADIR_CMND;
drivers/s390/scsi/zfcp_fsf.c
2706
req->qtcb->bottom.io.service_class = FSF_CLASS_3;
drivers/s390/scsi/zfcp_fsf.c
2707
req->qtcb->bottom.io.fcp_cmnd_length = FCP_CMND_LEN;
drivers/s390/scsi/zfcp_fsf.c
2711
fcp_cmnd = &req->qtcb->bottom.io.fcp_cmnd.iu;
drivers/s390/scsi/zfcp_fsf.h
461
struct fsf_qtcb_bottom_io io;
drivers/scsi/3w-9xxx.h
519
} io;
drivers/scsi/3w-sas.h
247
} io;
drivers/scsi/3w-xxxx.c
1752
command_packet->byte8.io.lba = lba;
drivers/scsi/3w-xxxx.c
1760
command_packet->byte8.io.sgl[i].address = sg_dma_address(sg);
drivers/scsi/3w-xxxx.c
1761
command_packet->byte8.io.sgl[i].length = sg_dma_len(sg);
drivers/scsi/3w-xxxx.c
973
tw_ioctl->firmware_command.byte8.io.sgl[0].address = dma_handle + sizeof(TW_New_Ioctl);
drivers/scsi/3w-xxxx.c
974
tw_ioctl->firmware_command.byte8.io.sgl[0].length = data_buffer_length_adjusted;
drivers/scsi/3w-xxxx.h
318
} io;
drivers/scsi/NCR5380.h
202
u8 __iomem *io; /* Remapped 5380 address */
drivers/scsi/aha152x.c
3173
if (setup_count<ARRAY_SIZE(setup) && (aha152x[0]!=0 || io[0]!=0 || irq[0]!=0)) {
drivers/scsi/aha152x.c
3184
} else if (io[0] != 0 || irq[0] != 0) {
drivers/scsi/aha152x.c
3185
if(io[0]!=0) setup[setup_count].io_port = io[0];
drivers/scsi/aha152x.c
3210
if (setup_count<ARRAY_SIZE(setup) && (aha152x1[0]!=0 || io[1]!=0 || irq[1]!=0)) {
drivers/scsi/aha152x.c
3221
} else if (io[1] != 0 || irq[1] != 0) {
drivers/scsi/aha152x.c
3222
if(io[1]!=0) setup[setup_count].io_port = io[1];
drivers/scsi/aha152x.c
340
static int io[] = {0, 0};
drivers/scsi/aha152x.c
341
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/scsi/aha152x.c
342
MODULE_PARM_DESC(io,"base io address of controller");
drivers/scsi/aha1542.c
1095
for (indx = 0; indx < ARRAY_SIZE(io); indx++) {
drivers/scsi/aha1542.c
1096
if (io[indx])
drivers/scsi/aha1542.c
1102
io[indx] = pnp_port_start(pdev, 0);
drivers/scsi/aha1542.c
1109
dev_info(&pdev->dev, "ISAPnP found an AHA1535 at I/O 0x%03X", io[indx]);
drivers/scsi/aha1542.c
34
static int io[MAXBOARDS] = { 0x330, 0x334, 0, 0 };
drivers/scsi/aha1542.c
35
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/scsi/aha1542.c
36
MODULE_PARM_DESC(io, "base IO address of controller (0x130,0x134,0x230,0x234,0x330,0x334, default=0x330,0x334)");
drivers/scsi/aha1542.c
744
unsigned int base_io = io[indx];
drivers/scsi/aic7xxx/aic7770.c
104
aic7770_config(struct ahc_softc *ahc, struct aic7770_identity *entry, u_int io)
drivers/scsi/aic7xxx/aic7770.c
117
error = aic7770_map_registers(ahc, io);
drivers/scsi/arm/cumana_1.c
115
u8 __iomem *base = hostdata->io;
drivers/scsi/arm/cumana_1.c
186
u8 __iomem *base = hostdata->io;
drivers/scsi/arm/cumana_1.c
202
u8 __iomem *base = hostdata->io;
drivers/scsi/arm/cumana_1.c
247
priv(host)->io = ioremap(ecard_resource_start(ec, ECARD_RES_IOCSLOW),
drivers/scsi/arm/cumana_1.c
251
if (!priv(host)->io || !priv(host)->pdma_io) {
drivers/scsi/arm/cumana_1.c
265
writeb(0, priv(host)->io + CTRL);
drivers/scsi/arm/cumana_1.c
287
iounmap(priv(host)->io);
drivers/scsi/arm/cumana_1.c
299
void __iomem *base = priv(host)->io;
drivers/scsi/arm/cumana_1.c
48
u8 __iomem *base = hostdata->io;
drivers/scsi/arm/oak.c
135
priv(host)->io = ioremap(ecard_resource_start(ec, ECARD_RES_MEMC),
drivers/scsi/arm/oak.c
137
if (!priv(host)->io) {
drivers/scsi/arm/oak.c
160
iounmap(priv(host)->io);
drivers/scsi/arm/oak.c
172
void __iomem *base = priv(host)->io;
drivers/scsi/arm/oak.c
20
#define NCR5380_read(reg) readb(hostdata->io + ((reg) << 2))
drivers/scsi/arm/oak.c
21
#define NCR5380_write(reg, value) writeb(value, hostdata->io + ((reg) << 2))
drivers/scsi/arm/oak.c
44
u8 __iomem *base = hostdata->io;
drivers/scsi/arm/oak.c
59
u8 __iomem *base = hostdata->io;
drivers/scsi/bnx2i/bnx2i_iscsi.c
447
struct io_bdt *io = &cmd->io_tbl;
drivers/scsi/bnx2i/bnx2i_iscsi.c
450
io->bd_tbl = dma_alloc_coherent(&hba->pcidev->dev,
drivers/scsi/bnx2i/bnx2i_iscsi.c
452
&io->bd_tbl_dma, GFP_KERNEL);
drivers/scsi/bnx2i/bnx2i_iscsi.c
453
if (!io->bd_tbl) {
drivers/scsi/bnx2i/bnx2i_iscsi.c
458
io->bd_valid = 0;
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
2198
u32 io;
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
2200
io = t4_read_reg(adap, MA_TARGET_MEM_ENABLE_A);
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
2202
if ((io & EXT_MEM0_ENABLE_F) || (io & EXT_MEM1_ENABLE_F))
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
2204
} else if (io & EXT_MEM_ENABLE_F) {
drivers/scsi/dmx3191d.c
109
release_region(io, DMX3191D_REGION_LEN);
drivers/scsi/dmx3191d.c
120
unsigned long io = hostdata->base;
drivers/scsi/dmx3191d.c
126
release_region(io, DMX3191D_REGION_LEN);
drivers/scsi/dmx3191d.c
63
unsigned long io;
drivers/scsi/dmx3191d.c
69
io = pci_resource_start(pdev, 0);
drivers/scsi/dmx3191d.c
70
if (!request_region(io, DMX3191D_REGION_LEN, DMX3191D_DRIVER_NAME)) {
drivers/scsi/dmx3191d.c
72
io, io + DMX3191D_REGION_LEN);
drivers/scsi/dmx3191d.c
82
hostdata->base = io;
drivers/scsi/elx/efct/efct_hw.c
1579
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
1582
io = list_first_entry(&hw->io_free, struct efct_hw_io,
drivers/scsi/elx/efct/efct_hw.c
1584
list_del(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
1586
if (io) {
drivers/scsi/elx/efct/efct_hw.c
1587
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
1588
list_add_tail(&io->list_entry, &hw->io_inuse);
drivers/scsi/elx/efct/efct_hw.c
1589
io->state = EFCT_HW_IO_STATE_INUSE;
drivers/scsi/elx/efct/efct_hw.c
1590
io->abort_reqtag = U32_MAX;
drivers/scsi/elx/efct/efct_hw.c
1591
io->wq = hw->wq_cpu_array[raw_smp_processor_id()];
drivers/scsi/elx/efct/efct_hw.c
1592
if (!io->wq) {
drivers/scsi/elx/efct/efct_hw.c
1595
io->wq = hw->hw_wq[0];
drivers/scsi/elx/efct/efct_hw.c
1597
kref_init(&io->ref);
drivers/scsi/elx/efct/efct_hw.c
1598
io->release = efct_hw_io_free_internal;
drivers/scsi/elx/efct/efct_hw.c
1603
return io;
drivers/scsi/elx/efct/efct_hw.c
1609
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
1613
io = _efct_hw_io_alloc(hw);
drivers/scsi/elx/efct/efct_hw.c
1616
return io;
drivers/scsi/elx/efct/efct_hw.c
1621
struct efct_hw_io *io)
drivers/scsi/elx/efct/efct_hw.c
1627
if (io->xbusy) {
drivers/scsi/elx/efct/efct_hw.c
1632
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
1633
list_add_tail(&io->list_entry, &hw->io_wait_free);
drivers/scsi/elx/efct/efct_hw.c
1634
io->state = EFCT_HW_IO_STATE_WAIT_FREE;
drivers/scsi/elx/efct/efct_hw.c
1637
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
1638
list_add_tail(&io->list_entry, &hw->io_free);
drivers/scsi/elx/efct/efct_hw.c
1639
io->state = EFCT_HW_IO_STATE_FREE;
drivers/scsi/elx/efct/efct_hw.c
1644
efct_hw_io_free_common(struct efct_hw *hw, struct efct_hw_io *io)
drivers/scsi/elx/efct/efct_hw.c
1647
efct_hw_init_free_io(io);
drivers/scsi/elx/efct/efct_hw.c
1650
efct_hw_io_restore_sgl(hw, io);
drivers/scsi/elx/efct/efct_hw.c
1657
struct efct_hw_io *io = container_of(arg, struct efct_hw_io, ref);
drivers/scsi/elx/efct/efct_hw.c
1658
struct efct_hw *hw = io->hw;
drivers/scsi/elx/efct/efct_hw.c
1661
efct_hw_io_free_common(hw, io);
drivers/scsi/elx/efct/efct_hw.c
1665
if (!list_empty(&io->list_entry) && !list_empty(&hw->io_inuse)) {
drivers/scsi/elx/efct/efct_hw.c
1666
list_del_init(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
1667
efct_hw_io_free_move_correct_list(hw, io);
drivers/scsi/elx/efct/efct_hw.c
1673
efct_hw_io_free(struct efct_hw *hw, struct efct_hw_io *io)
drivers/scsi/elx/efct/efct_hw.c
1675
return kref_put(&io->ref, io->release);
drivers/scsi/elx/efct/efct_hw.c
1684
return hw->io[ioindex];
drivers/scsi/elx/efct/efct_hw.c
1688
efct_hw_io_init_sges(struct efct_hw *hw, struct efct_hw_io *io,
drivers/scsi/elx/efct/efct_hw.c
1696
if (!io) {
drivers/scsi/elx/efct/efct_hw.c
1697
efc_log_err(hw->os, "bad parameter hw=%p io=%p\n", hw, io);
drivers/scsi/elx/efct/efct_hw.c
1702
io->sgl = &io->def_sgl;
drivers/scsi/elx/efct/efct_hw.c
1703
io->sgl_count = io->def_sgl_count;
drivers/scsi/elx/efct/efct_hw.c
1704
io->first_data_sge = 0;
drivers/scsi/elx/efct/efct_hw.c
1706
memset(io->sgl->virt, 0, 2 * sizeof(struct sli4_sge));
drivers/scsi/elx/efct/efct_hw.c
1707
io->n_sge = 0;
drivers/scsi/elx/efct/efct_hw.c
1708
io->sge_offset = 0;
drivers/scsi/elx/efct/efct_hw.c
1710
io->type = type;
drivers/scsi/elx/efct/efct_hw.c
1712
data = io->sgl->virt;
drivers/scsi/elx/efct/efct_hw.c
1726
cpu_to_le32(upper_32_bits(io->xfer_rdy.phys));
drivers/scsi/elx/efct/efct_hw.c
1728
cpu_to_le32(lower_32_bits(io->xfer_rdy.phys));
drivers/scsi/elx/efct/efct_hw.c
1729
data->buffer_length = cpu_to_le32(io->xfer_rdy.size);
drivers/scsi/elx/efct/efct_hw.c
1735
io->n_sge = 1;
drivers/scsi/elx/efct/efct_hw.c
1764
io->n_sge += skips;
drivers/scsi/elx/efct/efct_hw.c
1777
efct_hw_io_add_sge(struct efct_hw *hw, struct efct_hw_io *io,
drivers/scsi/elx/efct/efct_hw.c
1783
if (!io || !addr || !length) {
drivers/scsi/elx/efct/efct_hw.c
1786
hw, io, addr, length);
drivers/scsi/elx/efct/efct_hw.c
1797
data = io->sgl->virt;
drivers/scsi/elx/efct/efct_hw.c
1798
data += io->n_sge;
drivers/scsi/elx/efct/efct_hw.c
1804
sge_flags |= SLI4_SGE_DATA_OFFSET_MASK & io->sge_offset;
drivers/scsi/elx/efct/efct_hw.c
1818
if (io->n_sge) {
drivers/scsi/elx/efct/efct_hw.c
1825
if (io->first_data_sge == 0)
drivers/scsi/elx/efct/efct_hw.c
1826
io->first_data_sge = io->n_sge;
drivers/scsi/elx/efct/efct_hw.c
1828
io->sge_offset += length;
drivers/scsi/elx/efct/efct_hw.c
1829
io->n_sge++;
drivers/scsi/elx/efct/efct_hw.c
1849
struct efct_hw_io *io = arg;
drivers/scsi/elx/efct/efct_hw.c
1850
struct efct_hw *hw = io->hw;
drivers/scsi/elx/efct/efct_hw.c
1863
ext == SLI4_FC_LOCAL_REJECT_NO_XRI && io->done) {
drivers/scsi/elx/efct/efct_hw.c
1864
efct_hw_done_t done = io->done;
drivers/scsi/elx/efct/efct_hw.c
1866
io->done = NULL;
drivers/scsi/elx/efct/efct_hw.c
1874
status = io->saved_status;
drivers/scsi/elx/efct/efct_hw.c
1875
len = io->saved_len;
drivers/scsi/elx/efct/efct_hw.c
1876
ext = io->saved_ext;
drivers/scsi/elx/efct/efct_hw.c
1877
io->status_saved = false;
drivers/scsi/elx/efct/efct_hw.c
1878
done(io, len, status, ext, io->arg);
drivers/scsi/elx/efct/efct_hw.c
1881
if (io->abort_done) {
drivers/scsi/elx/efct/efct_hw.c
1882
efct_hw_done_t done = io->abort_done;
drivers/scsi/elx/efct/efct_hw.c
1884
io->abort_done = NULL;
drivers/scsi/elx/efct/efct_hw.c
1885
done(io, len, status, ext, io->abort_arg);
drivers/scsi/elx/efct/efct_hw.c
1889
io->abort_in_progress = false;
drivers/scsi/elx/efct/efct_hw.c
1892
if (io->abort_reqtag == U32_MAX) {
drivers/scsi/elx/efct/efct_hw.c
1897
wqcb = efct_hw_reqtag_get_instance(hw, io->abort_reqtag);
drivers/scsi/elx/efct/efct_hw.c
1904
(void)efct_hw_io_free(hw, io);
drivers/scsi/elx/efct/efct_hw.c
2445
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
2448
io = efct_hw_io_lookup(hw, rid);
drivers/scsi/elx/efct/efct_hw.c
2449
if (!io) {
drivers/scsi/elx/efct/efct_hw.c
2455
if (!io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2459
io->xbusy = false;
drivers/scsi/elx/efct/efct_hw.c
2465
if (io->done) {
drivers/scsi/elx/efct/efct_hw.c
2466
efct_hw_done_t done = io->done;
drivers/scsi/elx/efct/efct_hw.c
2467
void *arg = io->arg;
drivers/scsi/elx/efct/efct_hw.c
2473
int status = io->saved_status;
drivers/scsi/elx/efct/efct_hw.c
2474
u32 len = io->saved_len;
drivers/scsi/elx/efct/efct_hw.c
2475
u32 ext = io->saved_ext;
drivers/scsi/elx/efct/efct_hw.c
2477
io->done = NULL;
drivers/scsi/elx/efct/efct_hw.c
2478
io->status_saved = false;
drivers/scsi/elx/efct/efct_hw.c
2480
done(io, len, status, ext, arg);
drivers/scsi/elx/efct/efct_hw.c
2484
if (io->state == EFCT_HW_IO_STATE_INUSE ||
drivers/scsi/elx/efct/efct_hw.c
2485
io->state == EFCT_HW_IO_STATE_WAIT_FREE) {
drivers/scsi/elx/efct/efct_hw.c
2491
if (io->state == EFCT_HW_IO_STATE_WAIT_FREE) {
drivers/scsi/elx/efct/efct_hw.c
2492
io->state = EFCT_HW_IO_STATE_FREE;
drivers/scsi/elx/efct/efct_hw.c
2493
list_del_init(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
2494
efct_hw_io_free_move_correct_list(hw, io);
drivers/scsi/elx/efct/efct_hw.c
2640
struct efc_disc_io *io = arg;
drivers/scsi/elx/efct/efct_hw.c
2642
efc_disc_io_complete(io, length, status, ext_status);
drivers/scsi/elx/efct/efct_hw.c
2647
efct_fill_els_params(struct efc_disc_io *io, struct sli_els_params *params)
drivers/scsi/elx/efct/efct_hw.c
2649
u8 *cmd = io->req.virt;
drivers/scsi/elx/efct/efct_hw.c
2652
params->s_id = io->s_id;
drivers/scsi/elx/efct/efct_hw.c
2653
params->d_id = io->d_id;
drivers/scsi/elx/efct/efct_hw.c
2654
params->ox_id = io->iparam.els.ox_id;
drivers/scsi/elx/efct/efct_hw.c
2655
params->rpi = io->rpi;
drivers/scsi/elx/efct/efct_hw.c
2656
params->vpi = io->vpi;
drivers/scsi/elx/efct/efct_hw.c
2657
params->rpi_registered = io->rpi_registered;
drivers/scsi/elx/efct/efct_hw.c
2658
params->xmit_len = io->xmit_len;
drivers/scsi/elx/efct/efct_hw.c
2659
params->rsp_len = io->rsp_len;
drivers/scsi/elx/efct/efct_hw.c
2660
params->timeout = io->iparam.els.timeout;
drivers/scsi/elx/efct/efct_hw.c
2664
efct_fill_ct_params(struct efc_disc_io *io, struct sli_ct_params *params)
drivers/scsi/elx/efct/efct_hw.c
2666
params->r_ctl = io->iparam.ct.r_ctl;
drivers/scsi/elx/efct/efct_hw.c
2667
params->type = io->iparam.ct.type;
drivers/scsi/elx/efct/efct_hw.c
2668
params->df_ctl = io->iparam.ct.df_ctl;
drivers/scsi/elx/efct/efct_hw.c
2669
params->d_id = io->d_id;
drivers/scsi/elx/efct/efct_hw.c
2670
params->ox_id = io->iparam.ct.ox_id;
drivers/scsi/elx/efct/efct_hw.c
2671
params->rpi = io->rpi;
drivers/scsi/elx/efct/efct_hw.c
2672
params->vpi = io->vpi;
drivers/scsi/elx/efct/efct_hw.c
2673
params->rpi_registered = io->rpi_registered;
drivers/scsi/elx/efct/efct_hw.c
2674
params->xmit_len = io->xmit_len;
drivers/scsi/elx/efct/efct_hw.c
2675
params->rsp_len = io->rsp_len;
drivers/scsi/elx/efct/efct_hw.c
2676
params->timeout = io->iparam.ct.timeout;
drivers/scsi/elx/efct/efct_hw.c
2696
efct_els_hw_srrs_send(struct efc *efc, struct efc_disc_io *io)
drivers/scsi/elx/efct/efct_hw.c
2701
struct efc_dma *send = &io->req;
drivers/scsi/elx/efct/efct_hw.c
2702
struct efc_dma *receive = &io->rsp;
drivers/scsi/elx/efct/efct_hw.c
2705
u32 len = io->xmit_len;
drivers/scsi/elx/efct/efct_hw.c
2722
hio->arg = io;
drivers/scsi/elx/efct/efct_hw.c
2742
if (io->io_type == EFC_DISC_IO_ELS_REQ ||
drivers/scsi/elx/efct/efct_hw.c
2743
io->io_type == EFC_DISC_IO_CT_REQ) {
drivers/scsi/elx/efct/efct_hw.c
2760
switch (io->io_type) {
drivers/scsi/elx/efct/efct_hw.c
2765
efct_fill_els_params(io, &els_params);
drivers/scsi/elx/efct/efct_hw.c
2780
efct_fill_els_params(io, &els_params);
drivers/scsi/elx/efct/efct_hw.c
2794
efct_fill_ct_params(io, &ct_params);
drivers/scsi/elx/efct/efct_hw.c
2808
efct_fill_ct_params(io, &ct_params);
drivers/scsi/elx/efct/efct_hw.c
2819
efc_log_err(hw->os, "bad SRRS type %#x\n", io->io_type);
drivers/scsi/elx/efct/efct_hw.c
2848
struct efct_hw_io *io, union efct_hw_io_param_u *iparam,
drivers/scsi/elx/efct/efct_hw.c
2854
if (!io) {
drivers/scsi/elx/efct/efct_hw.c
2855
pr_err("bad parm hw=%p io=%p\n", hw, io);
drivers/scsi/elx/efct/efct_hw.c
2867
io->type = type;
drivers/scsi/elx/efct/efct_hw.c
2868
io->done = cb;
drivers/scsi/elx/efct/efct_hw.c
2869
io->arg = arg;
drivers/scsi/elx/efct/efct_hw.c
2877
struct fcp_txrdy *xfer = io->xfer_rdy.virt;
drivers/scsi/elx/efct/efct_hw.c
2885
if (io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2889
iparam->fcp_tgt.xri = io->indicator;
drivers/scsi/elx/efct/efct_hw.c
2890
iparam->fcp_tgt.tag = io->reqtag;
drivers/scsi/elx/efct/efct_hw.c
2892
if (sli_fcp_treceive64_wqe(&hw->sli, io->wqe.wqebuf,
drivers/scsi/elx/efct/efct_hw.c
2893
&io->def_sgl, io->first_data_sge,
drivers/scsi/elx/efct/efct_hw.c
2904
if (io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2909
iparam->fcp_tgt.xri = io->indicator;
drivers/scsi/elx/efct/efct_hw.c
2910
iparam->fcp_tgt.tag = io->reqtag;
drivers/scsi/elx/efct/efct_hw.c
2912
if (sli_fcp_tsend64_wqe(&hw->sli, io->wqe.wqebuf,
drivers/scsi/elx/efct/efct_hw.c
2913
&io->def_sgl, io->first_data_sge,
drivers/scsi/elx/efct/efct_hw.c
2924
if (io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2929
iparam->fcp_tgt.xri = io->indicator;
drivers/scsi/elx/efct/efct_hw.c
2930
iparam->fcp_tgt.tag = io->reqtag;
drivers/scsi/elx/efct/efct_hw.c
2932
if (sli_fcp_trsp64_wqe(&hw->sli, io->wqe.wqebuf,
drivers/scsi/elx/efct/efct_hw.c
2933
&io->def_sgl, SLI4_CQ_DEFAULT,
drivers/scsi/elx/efct/efct_hw.c
2947
io->xbusy = true;
drivers/scsi/elx/efct/efct_hw.c
2953
hw->tcmd_wq_submit[io->wq->instance]++;
drivers/scsi/elx/efct/efct_hw.c
2954
io->wq->use_count++;
drivers/scsi/elx/efct/efct_hw.c
2955
rc = efct_hw_wq_write(io->wq, &io->wqe);
drivers/scsi/elx/efct/efct_hw.c
2963
io->xbusy = false;
drivers/scsi/elx/efct/efct_hw.c
327
efct_hw_init_free_io(struct efct_hw_io *io)
drivers/scsi/elx/efct/efct_hw.c
333
io->done = NULL;
drivers/scsi/elx/efct/efct_hw.c
334
io->abort_done = NULL;
drivers/scsi/elx/efct/efct_hw.c
335
io->status_saved = false;
drivers/scsi/elx/efct/efct_hw.c
336
io->abort_in_progress = false;
drivers/scsi/elx/efct/efct_hw.c
337
io->type = 0xFFFF;
drivers/scsi/elx/efct/efct_hw.c
338
io->wq = NULL;
drivers/scsi/elx/efct/efct_hw.c
3431
if (hw->io) {
drivers/scsi/elx/efct/efct_hw.c
3433
if (hw->io[i] && hw->io[i]->sgl &&
drivers/scsi/elx/efct/efct_hw.c
3434
hw->io[i]->sgl->virt) {
drivers/scsi/elx/efct/efct_hw.c
3436
hw->io[i]->sgl->size,
drivers/scsi/elx/efct/efct_hw.c
3437
hw->io[i]->sgl->virt,
drivers/scsi/elx/efct/efct_hw.c
3438
hw->io[i]->sgl->phys);
drivers/scsi/elx/efct/efct_hw.c
3440
kfree(hw->io[i]);
drivers/scsi/elx/efct/efct_hw.c
3441
hw->io[i] = NULL;
drivers/scsi/elx/efct/efct_hw.c
3443
kfree(hw->io);
drivers/scsi/elx/efct/efct_hw.c
3444
hw->io = NULL;
drivers/scsi/elx/efct/efct_hw.c
353
efct_hw_io_restore_sgl(struct efct_hw *hw, struct efct_hw_io *io)
drivers/scsi/elx/efct/efct_hw.c
356
io->sgl = &io->def_sgl;
drivers/scsi/elx/efct/efct_hw.c
357
io->sgl_count = io->def_sgl_count;
drivers/scsi/elx/efct/efct_hw.c
363
struct efct_hw_io *io = arg;
drivers/scsi/elx/efct/efct_hw.c
364
struct efct_hw *hw = io->hw;
drivers/scsi/elx/efct/efct_hw.c
370
if (io->xbusy && (wcqe->flags & SLI4_WCQE_XB) == 0)
drivers/scsi/elx/efct/efct_hw.c
371
io->xbusy = false;
drivers/scsi/elx/efct/efct_hw.c
374
switch (io->type) {
drivers/scsi/elx/efct/efct_hw.c
402
io->type, io->indicator);
drivers/scsi/elx/efct/efct_hw.c
411
if (efct_hw_iotype_is_originator(io->type) &&
drivers/scsi/elx/efct/efct_hw.c
416
io->indicator, io->reqtag);
drivers/scsi/elx/efct/efct_hw.c
423
rc = efct_hw_io_abort(hw, io, false, NULL, NULL);
drivers/scsi/elx/efct/efct_hw.c
429
io->status_saved = true;
drivers/scsi/elx/efct/efct_hw.c
430
io->saved_status = status;
drivers/scsi/elx/efct/efct_hw.c
431
io->saved_ext = ext;
drivers/scsi/elx/efct/efct_hw.c
432
io->saved_len = len;
drivers/scsi/elx/efct/efct_hw.c
442
io->indicator, io->reqtag);
drivers/scsi/elx/efct/efct_hw.c
450
io->indicator, io->reqtag, rc);
drivers/scsi/elx/efct/efct_hw.c
455
if (io->done) {
drivers/scsi/elx/efct/efct_hw.c
456
efct_hw_done_t done = io->done;
drivers/scsi/elx/efct/efct_hw.c
458
io->done = NULL;
drivers/scsi/elx/efct/efct_hw.c
460
if (io->status_saved) {
drivers/scsi/elx/efct/efct_hw.c
462
status = io->saved_status;
drivers/scsi/elx/efct/efct_hw.c
463
len = io->saved_len;
drivers/scsi/elx/efct/efct_hw.c
464
ext = io->saved_ext;
drivers/scsi/elx/efct/efct_hw.c
465
io->status_saved = false;
drivers/scsi/elx/efct/efct_hw.c
469
efct_hw_io_restore_sgl(hw, io);
drivers/scsi/elx/efct/efct_hw.c
470
done(io, len, status, ext, io->arg);
drivers/scsi/elx/efct/efct_hw.c
481
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
489
if (!hw->io) {
drivers/scsi/elx/efct/efct_hw.c
490
hw->io = kmalloc_objs(io, hw->config.n_io);
drivers/scsi/elx/efct/efct_hw.c
491
if (!hw->io)
drivers/scsi/elx/efct/efct_hw.c
494
memset(hw->io, 0, hw->config.n_io * sizeof(io));
drivers/scsi/elx/efct/efct_hw.c
497
hw->io[i] = kzalloc_obj(*io);
drivers/scsi/elx/efct/efct_hw.c
498
if (!hw->io[i])
drivers/scsi/elx/efct/efct_hw.c
506
kfree(hw->io);
drivers/scsi/elx/efct/efct_hw.c
530
io = hw->io[i];
drivers/scsi/elx/efct/efct_hw.c
533
io->hw = hw;
drivers/scsi/elx/efct/efct_hw.c
536
io->wqe.wqebuf = &hw->wqe_buffs[i * hw->sli.wqe_size];
drivers/scsi/elx/efct/efct_hw.c
539
wqcb = efct_hw_reqtag_alloc(hw, efct_hw_wq_process_io, io);
drivers/scsi/elx/efct/efct_hw.c
544
io->reqtag = wqcb->instance_index;
drivers/scsi/elx/efct/efct_hw.c
547
efct_hw_init_free_io(io);
drivers/scsi/elx/efct/efct_hw.c
550
io->xbusy = 0;
drivers/scsi/elx/efct/efct_hw.c
553
&io->indicator, &index)) {
drivers/scsi/elx/efct/efct_hw.c
560
dma = &io->def_sgl;
drivers/scsi/elx/efct/efct_hw.c
568
memset(&io->def_sgl, 0,
drivers/scsi/elx/efct/efct_hw.c
573
io->def_sgl_count = hw->config.n_sgl;
drivers/scsi/elx/efct/efct_hw.c
574
io->sgl = &io->def_sgl;
drivers/scsi/elx/efct/efct_hw.c
575
io->sgl_count = io->def_sgl_count;
drivers/scsi/elx/efct/efct_hw.c
578
io->xfer_rdy.virt = (void *)xfer_virt;
drivers/scsi/elx/efct/efct_hw.c
579
io->xfer_rdy.phys = xfer_phys;
drivers/scsi/elx/efct/efct_hw.c
580
io->xfer_rdy.size = sizeof(struct fcp_txrdy);
drivers/scsi/elx/efct/efct_hw.c
589
for (i = 0; i < hw->config.n_io && hw->io[i]; i++) {
drivers/scsi/elx/efct/efct_hw.c
590
kfree(hw->io[i]);
drivers/scsi/elx/efct/efct_hw.c
591
hw->io[i] = NULL;
drivers/scsi/elx/efct/efct_hw.c
594
kfree(hw->io);
drivers/scsi/elx/efct/efct_hw.c
595
hw->io = NULL;
drivers/scsi/elx/efct/efct_hw.c
604
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
636
if (hw->io[idx + n]->indicator !=
drivers/scsi/elx/efct/efct_hw.c
637
hw->io[idx + n - 1]->indicator + 1)
drivers/scsi/elx/efct/efct_hw.c
641
sgls[n] = hw->io[idx + n]->sgl;
drivers/scsi/elx/efct/efct_hw.c
645
hw->io[idx]->indicator, n, sgls, NULL, &req)) {
drivers/scsi/elx/efct/efct_hw.c
658
io = hw->io[idx];
drivers/scsi/elx/efct/efct_hw.c
659
io->state = EFCT_HW_IO_STATE_FREE;
drivers/scsi/elx/efct/efct_hw.c
660
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
661
list_add_tail(&io->list_entry, &hw->io_free);
drivers/scsi/elx/efct/efct_hw.c
677
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
686
io = hw->io[idx];
drivers/scsi/elx/efct/efct_hw.c
687
io->state = EFCT_HW_IO_STATE_FREE;
drivers/scsi/elx/efct/efct_hw.c
688
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
689
list_add_tail(&io->list_entry, &hw->io_free);
drivers/scsi/elx/efct/efct_hw.h
431
struct efct_hw_io **io;
drivers/scsi/elx/efct/efct_hw.h
615
int efct_hw_io_free(struct efct_hw *hw, struct efct_hw_io *io);
drivers/scsi/elx/efct/efct_hw.h
616
u8 efct_hw_io_inuse(struct efct_hw *hw, struct efct_hw_io *io);
drivers/scsi/elx/efct/efct_hw.h
619
struct efct_hw_io *io, union efct_hw_io_param_u *iparam,
drivers/scsi/elx/efct/efct_hw.h
622
efct_hw_io_register_sgl(struct efct_hw *hw, struct efct_hw_io *io,
drivers/scsi/elx/efct/efct_hw.h
627
struct efct_hw_io *io, enum efct_hw_io_type type);
drivers/scsi/elx/efct/efct_hw.h
630
efct_hw_io_add_sge(struct efct_hw *hw, struct efct_hw_io *io,
drivers/scsi/elx/efct/efct_hw.h
701
efct_els_hw_srrs_send(struct efc *efc, struct efc_disc_io *io);
drivers/scsi/elx/efct/efct_io.c
107
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_io.c
116
io = list_first_entry(&io_pool->freelist, struct efct_io,
drivers/scsi/elx/efct/efct_io.c
118
list_del_init(&io->list_entry);
drivers/scsi/elx/efct/efct_io.c
123
if (!io)
drivers/scsi/elx/efct/efct_io.c
126
io->io_type = EFCT_IO_TYPE_MAX;
drivers/scsi/elx/efct/efct_io.c
127
io->hio_type = EFCT_HW_IO_MAX;
drivers/scsi/elx/efct/efct_io.c
128
io->hio = NULL;
drivers/scsi/elx/efct/efct_io.c
129
io->transferred = 0;
drivers/scsi/elx/efct/efct_io.c
130
io->efct = efct;
drivers/scsi/elx/efct/efct_io.c
131
io->timeout = 0;
drivers/scsi/elx/efct/efct_io.c
132
io->sgl_count = 0;
drivers/scsi/elx/efct/efct_io.c
133
io->tgt_task_tag = 0;
drivers/scsi/elx/efct/efct_io.c
134
io->init_task_tag = 0;
drivers/scsi/elx/efct/efct_io.c
135
io->hw_tag = 0;
drivers/scsi/elx/efct/efct_io.c
136
io->display_name = "pending";
drivers/scsi/elx/efct/efct_io.c
137
io->seq_init = 0;
drivers/scsi/elx/efct/efct_io.c
138
io->io_free = 0;
drivers/scsi/elx/efct/efct_io.c
139
io->release = NULL;
drivers/scsi/elx/efct/efct_io.c
142
return io;
drivers/scsi/elx/efct/efct_io.c
147
efct_io_pool_io_free(struct efct_io_pool *io_pool, struct efct_io *io)
drivers/scsi/elx/efct/efct_io.c
156
hio = io->hio;
drivers/scsi/elx/efct/efct_io.c
157
io->hio = NULL;
drivers/scsi/elx/efct/efct_io.c
158
io->io_free = 1;
drivers/scsi/elx/efct/efct_io.c
159
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_io.c
160
list_add(&io->list_entry, &io_pool->freelist);
drivers/scsi/elx/efct/efct_io.c
175
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_io.c
180
list_for_each_entry(io, &node->active_ios, list_entry) {
drivers/scsi/elx/efct/efct_io.c
181
if ((io->cmd_tgt && io->init_task_tag == ox_id) &&
drivers/scsi/elx/efct/efct_io.c
182
(rx_id == 0xffff || io->tgt_task_tag == rx_id)) {
drivers/scsi/elx/efct/efct_io.c
183
if (kref_get_unless_zero(&io->ref))
drivers/scsi/elx/efct/efct_io.c
189
return found ? io : NULL;
drivers/scsi/elx/efct/efct_io.c
25
struct efct_io *io;
drivers/scsi/elx/efct/efct_io.c
38
io = kzalloc_obj(*io);
drivers/scsi/elx/efct/efct_io.c
39
if (!io)
drivers/scsi/elx/efct/efct_io.c
43
io_pool->ios[i] = io;
drivers/scsi/elx/efct/efct_io.c
44
io->tag = i;
drivers/scsi/elx/efct/efct_io.c
45
io->instance_index = i;
drivers/scsi/elx/efct/efct_io.c
48
io->rspbuf.size = SCSI_RSP_BUF_LENGTH;
drivers/scsi/elx/efct/efct_io.c
49
io->rspbuf.virt = dma_alloc_coherent(&efct->pci->dev,
drivers/scsi/elx/efct/efct_io.c
50
io->rspbuf.size,
drivers/scsi/elx/efct/efct_io.c
51
&io->rspbuf.phys, GFP_KERNEL);
drivers/scsi/elx/efct/efct_io.c
52
if (!io->rspbuf.virt) {
drivers/scsi/elx/efct/efct_io.c
59
io->sgl = kzalloc(sizeof(*io->sgl) * num_sgl, GFP_KERNEL);
drivers/scsi/elx/efct/efct_io.c
60
if (!io->sgl) {
drivers/scsi/elx/efct/efct_io.c
65
io->sgl_allocated = num_sgl;
drivers/scsi/elx/efct/efct_io.c
66
io->sgl_count = 0;
drivers/scsi/elx/efct/efct_io.c
68
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_io.c
69
list_add_tail(&io->list_entry, &io_pool->freelist);
drivers/scsi/elx/efct/efct_io.c
80
struct efct_io *io;
drivers/scsi/elx/efct/efct_io.c
86
io = io_pool->ios[i];
drivers/scsi/elx/efct/efct_io.c
87
if (!io)
drivers/scsi/elx/efct/efct_io.c
90
kfree(io->sgl);
drivers/scsi/elx/efct/efct_io.c
92
io->rspbuf.size, io->rspbuf.virt,
drivers/scsi/elx/efct/efct_io.c
93
io->rspbuf.phys);
drivers/scsi/elx/efct/efct_io.c
94
memset(&io->rspbuf, 0, sizeof(struct efc_dma));
drivers/scsi/elx/efct/efct_io.h
15
#define io_error_log(io, fmt, ...) \
drivers/scsi/elx/efct/efct_io.h
17
if (EFCT_LOG_ENABLE_IO_ERRORS(io->efct)) \
drivers/scsi/elx/efct/efct_io.h
170
efct_io_pool_io_free(struct efct_io_pool *io_pool, struct efct_io *io);
drivers/scsi/elx/efct/efct_io.h
18
efc_log_warn(io->efct, fmt, ##__VA_ARGS__); \
drivers/scsi/elx/efct/efct_lio.c
1321
void efct_scsi_recv_cmd(struct efct_io *io, uint64_t lun, u8 *cdb,
drivers/scsi/elx/efct/efct_lio.c
1324
struct efct_scsi_tgt_io *ocp = &io->tgt_io;
drivers/scsi/elx/efct/efct_lio.c
1325
struct se_cmd *se_cmd = &io->tgt_io.cmd;
drivers/scsi/elx/efct/efct_lio.c
1326
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_lio.c
1333
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_RECV_CMD);
drivers/scsi/elx/efct/efct_lio.c
1337
io->timeout = efct->target_io_timer_sec;
drivers/scsi/elx/efct/efct_lio.c
1368
efct_lio_io_printf(io, "new cmd=0x%x ddir=%s dl=%u\n",
drivers/scsi/elx/efct/efct_lio.c
1369
cdb[0], ddir, io->exp_xfer_len);
drivers/scsi/elx/efct/efct_lio.c
1371
tgt_node = io->node;
drivers/scsi/elx/efct/efct_lio.c
1376
efct_scsi_io_free(io);
drivers/scsi/elx/efct/efct_lio.c
1380
efct_set_lio_io_state(io, EFCT_LIO_STATE_TGT_SUBMIT_CMD);
drivers/scsi/elx/efct/efct_lio.c
1381
rc = target_init_cmd(se_cmd, se_sess, &io->tgt_io.sense_buffer[0],
drivers/scsi/elx/efct/efct_lio.c
1382
ocp->lun, io->exp_xfer_len, ocp->task_attr,
drivers/scsi/elx/efct/efct_lio.c
1386
efct_scsi_io_free(io);
drivers/scsi/elx/efct/efct_lio.c
292
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
294
efct_set_lio_io_state(io, EFCT_LIO_STATE_TFO_CHK_STOP_FREE);
drivers/scsi/elx/efct/efct_lio.c
299
efct_lio_abort_tgt_cb(struct efct_io *io,
drivers/scsi/elx/efct/efct_lio.c
303
efct_lio_io_printf(io, "Abort done, status:%d\n", scsi_status);
drivers/scsi/elx/efct/efct_lio.c
312
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
314
efct_set_lio_io_state(io, EFCT_LIO_STATE_TFO_ABORTED_TASK);
drivers/scsi/elx/efct/efct_lio.c
323
efct_scsi_tgt_abort_io(io, efct_lio_abort_tgt_cb, NULL);
drivers/scsi/elx/efct/efct_lio.c
330
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
331
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_lio.c
333
efct_set_lio_io_state(io, EFCT_LIO_STATE_TFO_RELEASE_CMD);
drivers/scsi/elx/efct/efct_lio.c
334
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_CMPL_CMD);
drivers/scsi/elx/efct/efct_lio.c
335
efct_scsi_io_complete(io);
drivers/scsi/elx/efct/efct_lio.c
357
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
359
return io->tgt_io.state;
drivers/scsi/elx/efct/efct_lio.c
363
efct_lio_sg_map(struct efct_io *io)
drivers/scsi/elx/efct/efct_lio.c
365
struct efct_scsi_tgt_io *ocp = &io->tgt_io;
drivers/scsi/elx/efct/efct_lio.c
368
ocp->seg_map_cnt = dma_map_sg(&io->efct->pci->dev, cmd->t_data_sg,
drivers/scsi/elx/efct/efct_lio.c
376
efct_lio_sg_unmap(struct efct_io *io)
drivers/scsi/elx/efct/efct_lio.c
378
struct efct_scsi_tgt_io *ocp = &io->tgt_io;
drivers/scsi/elx/efct/efct_lio.c
384
dma_unmap_sg(&io->efct->pci->dev, cmd->t_data_sg,
drivers/scsi/elx/efct/efct_lio.c
390
efct_lio_status_done(struct efct_io *io,
drivers/scsi/elx/efct/efct_lio.c
394
struct efct_scsi_tgt_io *ocp = &io->tgt_io;
drivers/scsi/elx/efct/efct_lio.c
396
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_RSP_DONE);
drivers/scsi/elx/efct/efct_lio.c
398
efct_lio_io_printf(io, "callback completed with error=%d\n",
drivers/scsi/elx/efct/efct_lio.c
403
efct_lio_sg_unmap(io);
drivers/scsi/elx/efct/efct_lio.c
405
efct_lio_io_printf(io, "status=%d, err=%d flags=0x%x, dir=%d\n",
drivers/scsi/elx/efct/efct_lio.c
408
efct_set_lio_io_state(io, EFCT_LIO_STATE_TGT_GENERIC_FREE);
drivers/scsi/elx/efct/efct_lio.c
409
transport_generic_free_cmd(&io->tgt_io.cmd, 0);
drivers/scsi/elx/efct/efct_lio.c
414
efct_lio_datamove_done(struct efct_io *io, enum efct_scsi_io_status scsi_status,
drivers/scsi/elx/efct/efct_lio.c
422
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
423
struct efct_scsi_sgl *sgl = io->sgl;
drivers/scsi/elx/efct/efct_lio.c
428
efct_set_lio_io_state(io, EFCT_LIO_STATE_TFO_WRITE_PENDING);
drivers/scsi/elx/efct/efct_lio.c
429
efct_lio_io_printf(io, "trans_state=0x%x se_cmd_flags=0x%x\n",
drivers/scsi/elx/efct/efct_lio.c
435
if (efct_lio_sg_map(io)) {
drivers/scsi/elx/efct/efct_lio.c
436
efct_lio_io_printf(io, "efct_lio_sg_map failed\n");
drivers/scsi/elx/efct/efct_lio.c
441
curcnt = (curcnt < io->sgl_allocated) ? curcnt : io->sgl_allocated;
drivers/scsi/elx/efct/efct_lio.c
458
return efct_scsi_recv_wr_data(io, flags, sgl, curcnt, length,
drivers/scsi/elx/efct/efct_lio.c
467
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
468
struct efct_scsi_sgl *sgl = io->sgl;
drivers/scsi/elx/efct/efct_lio.c
473
efct_set_lio_io_state(io, EFCT_LIO_STATE_TFO_QUEUE_DATA_IN);
drivers/scsi/elx/efct/efct_lio.c
479
if (efct_lio_sg_map(io)) {
drivers/scsi/elx/efct/efct_lio.c
480
efct_lio_io_printf(io,
drivers/scsi/elx/efct/efct_lio.c
489
efct_lio_io_printf(io,
drivers/scsi/elx/efct/efct_lio.c
492
return efct_scsi_send_resp(io, 0, &rsp,
drivers/scsi/elx/efct/efct_lio.c
496
curcnt = min(ocp->seg_map_cnt - ocp->cur_seg, io->sgl_allocated);
drivers/scsi/elx/efct/efct_lio.c
524
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_SEND_RD_DATA);
drivers/scsi/elx/efct/efct_lio.c
526
return efct_scsi_send_rd_data(io, flags, sgl, curcnt, length,
drivers/scsi/elx/efct/efct_lio.c
531
efct_lio_send_resp(struct efct_io *io, enum efct_scsi_io_status scsi_status,
drivers/scsi/elx/efct/efct_lio.c
535
struct efct_scsi_tgt_io *ocp = &io->tgt_io;
drivers/scsi/elx/efct/efct_lio.c
536
struct se_cmd *cmd = &io->tgt_io.cmd;
drivers/scsi/elx/efct/efct_lio.c
541
efct_set_lio_io_state(io, EFCT_LIO_STATE_TGT_GENERIC_FREE);
drivers/scsi/elx/efct/efct_lio.c
542
transport_generic_free_cmd(&io->tgt_io.cmd, 0);
drivers/scsi/elx/efct/efct_lio.c
549
rsp.sense_data = (uint8_t *)io->tgt_io.sense_buffer;
drivers/scsi/elx/efct/efct_lio.c
558
rc = efct_scsi_send_resp(io, 0, &rsp, efct_lio_status_done, NULL);
drivers/scsi/elx/efct/efct_lio.c
559
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_SEND_RSP);
drivers/scsi/elx/efct/efct_lio.c
561
efct_lio_io_printf(io, "Read done, send rsp failed %d\n", rc);
drivers/scsi/elx/efct/efct_lio.c
562
efct_set_lio_io_state(io, EFCT_LIO_STATE_TGT_GENERIC_FREE);
drivers/scsi/elx/efct/efct_lio.c
563
transport_generic_free_cmd(&io->tgt_io.cmd, 0);
drivers/scsi/elx/efct/efct_lio.c
570
efct_lio_datamove_done(struct efct_io *io, enum efct_scsi_io_status scsi_status,
drivers/scsi/elx/efct/efct_lio.c
573
struct efct_scsi_tgt_io *ocp = &io->tgt_io;
drivers/scsi/elx/efct/efct_lio.c
575
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_DATA_DONE);
drivers/scsi/elx/efct/efct_lio.c
577
efct_lio_io_printf(io, "callback completed with error=%d\n",
drivers/scsi/elx/efct/efct_lio.c
581
efct_lio_io_printf(io, "seg_map_cnt=%d\n", ocp->seg_map_cnt);
drivers/scsi/elx/efct/efct_lio.c
587
efct_lio_io_printf(io, "continuing cmd at segm=%d\n",
drivers/scsi/elx/efct/efct_lio.c
597
efct_lio_io_printf(io, "could not continue command\n");
drivers/scsi/elx/efct/efct_lio.c
599
efct_lio_sg_unmap(io);
drivers/scsi/elx/efct/efct_lio.c
602
if (io->tgt_io.aborting) {
drivers/scsi/elx/efct/efct_lio.c
603
efct_lio_io_printf(io, "IO done aborted\n");
drivers/scsi/elx/efct/efct_lio.c
608
efct_lio_io_printf(io, "Write done, trans_state=0x%x\n",
drivers/scsi/elx/efct/efct_lio.c
609
io->tgt_io.cmd.transport_state);
drivers/scsi/elx/efct/efct_lio.c
611
transport_generic_request_failure(&io->tgt_io.cmd,
drivers/scsi/elx/efct/efct_lio.c
613
efct_set_lio_io_state(io,
drivers/scsi/elx/efct/efct_lio.c
616
efct_set_lio_io_state(io,
drivers/scsi/elx/efct/efct_lio.c
618
target_execute_cmd(&io->tgt_io.cmd);
drivers/scsi/elx/efct/efct_lio.c
621
efct_lio_send_resp(io, scsi_status, flags);
drivers/scsi/elx/efct/efct_lio.c
627
efct_lio_tmf_done(struct efct_io *io, enum efct_scsi_io_status scsi_status,
drivers/scsi/elx/efct/efct_lio.c
630
efct_lio_tmfio_printf(io, "cmd=%p status=%d, flags=0x%x\n",
drivers/scsi/elx/efct/efct_lio.c
631
&io->tgt_io.cmd, scsi_status, flags);
drivers/scsi/elx/efct/efct_lio.c
633
efct_set_lio_io_state(io, EFCT_LIO_STATE_TGT_GENERIC_FREE);
drivers/scsi/elx/efct/efct_lio.c
634
transport_generic_free_cmd(&io->tgt_io.cmd, 0);
drivers/scsi/elx/efct/efct_lio.c
657
struct efct_io *io = container_of(ocp, struct efct_io, tgt_io);
drivers/scsi/elx/efct/efct_lio.c
660
efct_set_lio_io_state(io, EFCT_LIO_STATE_TFO_QUEUE_STATUS);
drivers/scsi/elx/efct/efct_lio.c
661
efct_lio_io_printf(io,
drivers/scsi/elx/efct/efct_lio.c
668
rsp.sense_data = (u8 *)io->tgt_io.sense_buffer;
drivers/scsi/elx/efct/efct_lio.c
679
rc = efct_scsi_send_resp(io, 0, &rsp, efct_lio_status_done, NULL);
drivers/scsi/elx/efct/efct_lio.c
680
efct_set_lio_io_state(io, EFCT_LIO_STATE_SCSI_SEND_RSP);
drivers/scsi/elx/efct/efct_lio.h
13
#define efct_lio_io_printf(io, fmt, ...) \
drivers/scsi/elx/efct/efct_lio.h
14
efc_log_debug(io->efct, \
drivers/scsi/elx/efct/efct_lio.h
16
io->node->display_name, io->instance_index, \
drivers/scsi/elx/efct/efct_lio.h
17
io->init_task_tag, io->tgt_task_tag, io->hw_tag,\
drivers/scsi/elx/efct/efct_lio.h
20
#define efct_lio_tmfio_printf(io, fmt, ...) \
drivers/scsi/elx/efct/efct_lio.h
21
efc_log_debug(io->efct, \
drivers/scsi/elx/efct/efct_lio.h
23
io->node->display_name, io->instance_index, \
drivers/scsi/elx/efct/efct_lio.h
24
io->init_task_tag, io->tgt_task_tag, io->hw_tag,\
drivers/scsi/elx/efct/efct_lio.h
25
io->tgt_io.tmf, ##__VA_ARGS__)
drivers/scsi/elx/efct/efct_lio.h
27
#define efct_set_lio_io_state(io, value) (io->tgt_io.state |= value)
drivers/scsi/elx/efct/efct_scsi.c
1000
rc = efct_target_send_bls_resp(io, cb, arg);
drivers/scsi/elx/efct/efct_scsi.c
1005
fcprsp = io->rspbuf.virt;
drivers/scsi/elx/efct/efct_scsi.c
101
scsi_io_trace(io, "freeing io 0x%p %s\n", io, io->display_name);
drivers/scsi/elx/efct/efct_scsi.c
1016
io->wire_len = sizeof(*fcprsp);
drivers/scsi/elx/efct/efct_scsi.c
102
WARN_ON(!refcount_read(&io->ref.refcount));
drivers/scsi/elx/efct/efct_scsi.c
1021
io->sgl[0].addr = io->rspbuf.phys;
drivers/scsi/elx/efct/efct_scsi.c
1022
io->sgl[0].dif_addr = 0;
drivers/scsi/elx/efct/efct_scsi.c
1023
io->sgl[0].len = io->wire_len;
drivers/scsi/elx/efct/efct_scsi.c
1024
io->sgl_count = 1;
drivers/scsi/elx/efct/efct_scsi.c
1026
memset(&io->iparam, 0, sizeof(io->iparam));
drivers/scsi/elx/efct/efct_scsi.c
1027
io->iparam.fcp_tgt.ox_id = io->init_task_tag;
drivers/scsi/elx/efct/efct_scsi.c
1028
io->iparam.fcp_tgt.offset = 0;
drivers/scsi/elx/efct/efct_scsi.c
1029
io->iparam.fcp_tgt.cs_ctl = io->cs_ctl;
drivers/scsi/elx/efct/efct_scsi.c
103
kref_put(&io->ref, io->release);
drivers/scsi/elx/efct/efct_scsi.c
1030
io->iparam.fcp_tgt.timeout = io->timeout;
drivers/scsi/elx/efct/efct_scsi.c
1032
rc = efct_scsi_io_dispatch(io, efct_target_io_cb);
drivers/scsi/elx/efct/efct_scsi.c
1041
struct efct_io *io = app;
drivers/scsi/elx/efct/efct_scsi.c
1047
efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
1049
if (!io->abort_cb)
drivers/scsi/elx/efct/efct_scsi.c
1052
abort_cb = io->abort_cb;
drivers/scsi/elx/efct/efct_scsi.c
1053
abort_cb_arg = io->abort_cb_arg;
drivers/scsi/elx/efct/efct_scsi.c
1055
io->abort_cb = NULL;
drivers/scsi/elx/efct/efct_scsi.c
1056
io->abort_cb_arg = NULL;
drivers/scsi/elx/efct/efct_scsi.c
1084
abort_cb(io->io_to_abort, scsi_status, 0, abort_cb_arg);
drivers/scsi/elx/efct/efct_scsi.c
1088
kref_put(&io->io_to_abort->ref, io->io_to_abort->release);
drivers/scsi/elx/efct/efct_scsi.c
1090
efct_io_pool_io_free(efct->xport->io_pool, io);
drivers/scsi/elx/efct/efct_scsi.c
1097
efct_scsi_tgt_abort_io(struct efct_io *io, efct_scsi_io_cb_t cb, void *arg)
drivers/scsi/elx/efct/efct_scsi.c
1104
efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
1108
if (kref_get_unless_zero(&io->ref) == 0) {
drivers/scsi/elx/efct/efct_scsi.c
111
struct efct_io *io = app;
drivers/scsi/elx/efct/efct_scsi.c
1110
scsi_io_printf(io, "command no longer active\n");
drivers/scsi/elx/efct/efct_scsi.c
1122
kref_put(&io->ref, io->release);
drivers/scsi/elx/efct/efct_scsi.c
1129
abort_io->node = io->node;
drivers/scsi/elx/efct/efct_scsi.c
1134
abort_io->io_to_abort = io;
drivers/scsi/elx/efct/efct_scsi.c
1142
kref_put(&io->ref, io->release);
drivers/scsi/elx/efct/efct_scsi.c
1147
efct_scsi_io_complete(struct efct_io *io)
drivers/scsi/elx/efct/efct_scsi.c
1149
if (io->io_free) {
drivers/scsi/elx/efct/efct_scsi.c
1150
efc_log_debug(io->efct, "completion for non-busy io tag 0x%x\n",
drivers/scsi/elx/efct/efct_scsi.c
1151
io->tag);
drivers/scsi/elx/efct/efct_scsi.c
1155
scsi_io_trace(io, "freeing io 0x%p %s\n", io, io->display_name);
drivers/scsi/elx/efct/efct_scsi.c
1156
kref_put(&io->ref, io->release);
drivers/scsi/elx/efct/efct_scsi.c
116
if (!io || !io->efct) {
drivers/scsi/elx/efct/efct_scsi.c
121
scsi_io_trace(io, "status x%x ext_status x%x\n", status, ext_status);
drivers/scsi/elx/efct/efct_scsi.c
123
efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
125
io->transferred += length;
drivers/scsi/elx/efct/efct_scsi.c
127
if (!io->scsi_tgt_cb) {
drivers/scsi/elx/efct/efct_scsi.c
133
cb = io->scsi_tgt_cb;
drivers/scsi/elx/efct/efct_scsi.c
136
io->scsi_tgt_cb = NULL;
drivers/scsi/elx/efct/efct_scsi.c
142
if (status == 0 && io->auto_resp)
drivers/scsi/elx/efct/efct_scsi.c
15
#define scsi_io_printf(io, fmt, ...) \
drivers/scsi/elx/efct/efct_scsi.c
16
efc_log_debug(io->efct, "[%s]" SCSI_IOFMT fmt, \
drivers/scsi/elx/efct/efct_scsi.c
17
io->node->display_name, io->instance_index,\
drivers/scsi/elx/efct/efct_scsi.c
18
io->init_task_tag, io->tgt_task_tag, io->hw_tag, ##__VA_ARGS__)
drivers/scsi/elx/efct/efct_scsi.c
195
cb(io, scsi_stat, flags, io->scsi_tgt_cb_arg);
drivers/scsi/elx/efct/efct_scsi.c
229
static void efc_log_sgl(struct efct_io *io)
drivers/scsi/elx/efct/efct_scsi.c
23
#define scsi_io_trace(io, fmt, ...) \
drivers/scsi/elx/efct/efct_scsi.c
231
struct efct_hw_io *hio = io->hio;
drivers/scsi/elx/efct/efct_scsi.c
237
scsi_io_trace(io, "def_sgl at 0x%x 0x%08x\n",
drivers/scsi/elx/efct/efct_scsi.c
244
scsi_io_trace(io, "SGL %2d 0x%08x 0x%08x 0x%08x 0x%08x\n",
drivers/scsi/elx/efct/efct_scsi.c
25
if (EFCT_LOG_ENABLE_SCSI_TRACE(io->efct)) \
drivers/scsi/elx/efct/efct_scsi.c
256
struct efct_io *io = arg;
drivers/scsi/elx/efct/efct_scsi.c
258
if (io) {
drivers/scsi/elx/efct/efct_scsi.c
259
efct_hw_done_t cb = io->hw_cb;
drivers/scsi/elx/efct/efct_scsi.c
26
scsi_io_printf(io, fmt, ##__VA_ARGS__); \
drivers/scsi/elx/efct/efct_scsi.c
261
if (!io->hw_cb)
drivers/scsi/elx/efct/efct_scsi.c
264
io->hw_cb = NULL;
drivers/scsi/elx/efct/efct_scsi.c
265
(cb)(io->hio, 0, SLI4_FC_WCQE_STATUS_DISPATCH_ERROR, 0, io);
drivers/scsi/elx/efct/efct_scsi.c
270
efct_scsi_io_dispatch_hw_io(struct efct_io *io, struct efct_hw_io *hio)
drivers/scsi/elx/efct/efct_scsi.c
273
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
278
io->hio = hio;
drivers/scsi/elx/efct/efct_scsi.c
279
if (io->cmd_tgt)
drivers/scsi/elx/efct/efct_scsi.c
280
io->tgt_task_tag = hio->indicator;
drivers/scsi/elx/efct/efct_scsi.c
281
else if (io->cmd_ini)
drivers/scsi/elx/efct/efct_scsi.c
282
io->init_task_tag = hio->indicator;
drivers/scsi/elx/efct/efct_scsi.c
283
io->hw_tag = hio->reqtag;
drivers/scsi/elx/efct/efct_scsi.c
285
hio->eq = io->hw_priv;
drivers/scsi/elx/efct/efct_scsi.c
288
switch (io->wq_steering) {
drivers/scsi/elx/efct/efct_scsi.c
300
switch (io->io_type) {
drivers/scsi/elx/efct/efct_scsi.c
302
rc = efct_scsi_build_sgls(&efct->hw, io->hio,
drivers/scsi/elx/efct/efct_scsi.c
303
io->sgl, io->sgl_count, io->hio_type);
drivers/scsi/elx/efct/efct_scsi.c
308
efc_log_sgl(io);
drivers/scsi/elx/efct/efct_scsi.c
310
if (io->app_id)
drivers/scsi/elx/efct/efct_scsi.c
311
io->iparam.fcp_tgt.app_id = io->app_id;
drivers/scsi/elx/efct/efct_scsi.c
313
io->iparam.fcp_tgt.vpi = io->node->vpi;
drivers/scsi/elx/efct/efct_scsi.c
314
io->iparam.fcp_tgt.rpi = io->node->rpi;
drivers/scsi/elx/efct/efct_scsi.c
315
io->iparam.fcp_tgt.s_id = io->node->port_fc_id;
drivers/scsi/elx/efct/efct_scsi.c
316
io->iparam.fcp_tgt.d_id = io->node->node_fc_id;
drivers/scsi/elx/efct/efct_scsi.c
317
io->iparam.fcp_tgt.xmit_len = io->wire_len;
drivers/scsi/elx/efct/efct_scsi.c
319
rc = efct_hw_io_send(&io->efct->hw, io->hio_type, io->hio,
drivers/scsi/elx/efct/efct_scsi.c
320
&io->iparam, io->hw_cb, io);
drivers/scsi/elx/efct/efct_scsi.c
323
scsi_io_printf(io, "Unknown IO type=%d\n", io->io_type);
drivers/scsi/elx/efct/efct_scsi.c
331
efct_scsi_io_dispatch_no_hw_io(struct efct_io *io)
drivers/scsi/elx/efct/efct_scsi.c
335
switch (io->io_type) {
drivers/scsi/elx/efct/efct_scsi.c
339
hio_to_abort = io->io_to_abort->hio;
drivers/scsi/elx/efct/efct_scsi.c
34
struct efct_io *io;
drivers/scsi/elx/efct/efct_scsi.c
354
scsi_io_printf(io, "IO: not active\n");
drivers/scsi/elx/efct/efct_scsi.c
355
((efct_hw_done_t)io->hw_cb)(io->hio, 0,
drivers/scsi/elx/efct/efct_scsi.c
356
SLI4_FC_WCQE_STATUS_SUCCESS, 0, io);
drivers/scsi/elx/efct/efct_scsi.c
362
scsi_io_printf(io, "aborting\n");
drivers/scsi/elx/efct/efct_scsi.c
363
rc = efct_hw_io_abort(&io->efct->hw, hio_to_abort,
drivers/scsi/elx/efct/efct_scsi.c
364
io->send_abts, io->hw_cb, io);
drivers/scsi/elx/efct/efct_scsi.c
367
efct_hw_done_t cb = io->hw_cb;
drivers/scsi/elx/efct/efct_scsi.c
371
scsi_io_printf(io, "Failed to abort IO rc=%d\n",
drivers/scsi/elx/efct/efct_scsi.c
374
cb(io->hio, 0, status, 0, io);
drivers/scsi/elx/efct/efct_scsi.c
381
scsi_io_printf(io, "Unknown IO type=%d\n", io->io_type);
drivers/scsi/elx/efct/efct_scsi.c
392
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_scsi.c
400
io = list_first_entry(&xport->io_pending_list, struct efct_io,
drivers/scsi/elx/efct/efct_scsi.c
402
list_del_init(&io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
405
if (!io) {
drivers/scsi/elx/efct/efct_scsi.c
41
io = efct_io_pool_io_alloc(efct->xport->io_pool);
drivers/scsi/elx/efct/efct_scsi.c
410
if (io->io_type == EFCT_IO_TYPE_ABORT) {
drivers/scsi/elx/efct/efct_scsi.c
419
list_add(&xport->io_pending_list, &io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
42
if (!io) {
drivers/scsi/elx/efct/efct_scsi.c
420
io = NULL;
drivers/scsi/elx/efct/efct_scsi.c
422
hio->eq = io->hw_priv;
drivers/scsi/elx/efct/efct_scsi.c
429
if (!io)
drivers/scsi/elx/efct/efct_scsi.c
438
status = efct_scsi_io_dispatch_no_hw_io(io);
drivers/scsi/elx/efct/efct_scsi.c
440
status = efct_scsi_io_dispatch_hw_io(io, hio);
drivers/scsi/elx/efct/efct_scsi.c
449
efct_scsi_check_pending_async_cb, io)) {
drivers/scsi/elx/efct/efct_scsi.c
454
return io;
drivers/scsi/elx/efct/efct_scsi.c
461
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_scsi.c
49
kref_init(&io->ref);
drivers/scsi/elx/efct/efct_scsi.c
490
list_for_each_entry(io, &xport->io_pending_list, io_pending_link) {
drivers/scsi/elx/efct/efct_scsi.c
491
if (io->io_type == EFCT_IO_TYPE_ABORT && io->io_to_abort->hio) {
drivers/scsi/elx/efct/efct_scsi.c
496
list_del_init(&io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
50
io->release = _efct_scsi_io_free;
drivers/scsi/elx/efct/efct_scsi.c
505
if (efct_scsi_io_dispatch_no_hw_io(io)) {
drivers/scsi/elx/efct/efct_scsi.c
507
efct_scsi_check_pending_async_cb, io)) {
drivers/scsi/elx/efct/efct_scsi.c
517
efct_scsi_io_dispatch(struct efct_io *io, void *cb)
drivers/scsi/elx/efct/efct_scsi.c
520
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
524
io->hw_cb = cb;
drivers/scsi/elx/efct/efct_scsi.c
53
io->efct = efct;
drivers/scsi/elx/efct/efct_scsi.c
530
if (io->hio)
drivers/scsi/elx/efct/efct_scsi.c
531
return efct_scsi_io_dispatch_hw_io(io, io->hio);
drivers/scsi/elx/efct/efct_scsi.c
54
io->node = node;
drivers/scsi/elx/efct/efct_scsi.c
545
if (io->low_latency) {
drivers/scsi/elx/efct/efct_scsi.c
546
INIT_LIST_HEAD(&io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
547
list_add(&xport->io_pending_list, &io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
549
INIT_LIST_HEAD(&io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
550
list_add_tail(&io->io_pending_link,
drivers/scsi/elx/efct/efct_scsi.c
567
hio = efct_hw_io_alloc(&io->efct->hw);
drivers/scsi/elx/efct/efct_scsi.c
571
INIT_LIST_HEAD(&io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
572
list_add_tail(&io->io_pending_link, &xport->io_pending_list);
drivers/scsi/elx/efct/efct_scsi.c
58
io->io_type = EFCT_IO_TYPE_IO;
drivers/scsi/elx/efct/efct_scsi.c
581
return efct_scsi_io_dispatch_hw_io(io, hio);
drivers/scsi/elx/efct/efct_scsi.c
585
efct_scsi_io_dispatch_abort(struct efct_io *io, void *cb)
drivers/scsi/elx/efct/efct_scsi.c
587
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
59
io->display_name = "scsi_io";
drivers/scsi/elx/efct/efct_scsi.c
591
io->hw_cb = cb;
drivers/scsi/elx/efct/efct_scsi.c
601
INIT_LIST_HEAD(&io->io_pending_link);
drivers/scsi/elx/efct/efct_scsi.c
602
list_add_tail(&io->io_pending_link, &xport->io_pending_list);
drivers/scsi/elx/efct/efct_scsi.c
61
io->cmd_ini = false;
drivers/scsi/elx/efct/efct_scsi.c
614
return efct_scsi_io_dispatch_no_hw_io(io);
drivers/scsi/elx/efct/efct_scsi.c
618
efct_scsi_xfer_data(struct efct_io *io, u32 flags,
drivers/scsi/elx/efct/efct_scsi.c
62
io->cmd_tgt = true;
drivers/scsi/elx/efct/efct_scsi.c
626
io->sgl_count = sgl_count;
drivers/scsi/elx/efct/efct_scsi.c
628
efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
630
scsi_io_trace(io, "%s wire_len %llu\n",
drivers/scsi/elx/efct/efct_scsi.c
634
io->hio_type = type;
drivers/scsi/elx/efct/efct_scsi.c
636
io->scsi_tgt_cb = cb;
drivers/scsi/elx/efct/efct_scsi.c
637
io->scsi_tgt_cb_arg = arg;
drivers/scsi/elx/efct/efct_scsi.c
639
residual = io->exp_xfer_len - io->transferred;
drivers/scsi/elx/efct/efct_scsi.c
640
io->wire_len = (xwire_len < residual) ? xwire_len : residual;
drivers/scsi/elx/efct/efct_scsi.c
641
residual = (xwire_len - io->wire_len);
drivers/scsi/elx/efct/efct_scsi.c
643
memset(&io->iparam, 0, sizeof(io->iparam));
drivers/scsi/elx/efct/efct_scsi.c
644
io->iparam.fcp_tgt.ox_id = io->init_task_tag;
drivers/scsi/elx/efct/efct_scsi.c
645
io->iparam.fcp_tgt.offset = io->transferred;
drivers/scsi/elx/efct/efct_scsi.c
646
io->iparam.fcp_tgt.cs_ctl = io->cs_ctl;
drivers/scsi/elx/efct/efct_scsi.c
647
io->iparam.fcp_tgt.timeout = io->timeout;
drivers/scsi/elx/efct/efct_scsi.c
65
INIT_LIST_HEAD(&io->list_entry);
drivers/scsi/elx/efct/efct_scsi.c
653
((io->transferred + io->wire_len) == io->exp_xfer_len) &&
drivers/scsi/elx/efct/efct_scsi.c
655
io->iparam.fcp_tgt.flags |= SLI4_IO_AUTO_GOOD_RESPONSE;
drivers/scsi/elx/efct/efct_scsi.c
656
io->auto_resp = true;
drivers/scsi/elx/efct/efct_scsi.c
658
io->auto_resp = false;
drivers/scsi/elx/efct/efct_scsi.c
662
io->xfer_req = io->wire_len;
drivers/scsi/elx/efct/efct_scsi.c
667
io->transferred += residual;
drivers/scsi/elx/efct/efct_scsi.c
67
list_add(&io->list_entry, &node->active_ios);
drivers/scsi/elx/efct/efct_scsi.c
672
struct efct_scsi_sgl *sgl_ptr = &io->sgl[sgl_count - 1];
drivers/scsi/elx/efct/efct_scsi.c
683
io->sgl_count--;
drivers/scsi/elx/efct/efct_scsi.c
690
io->low_latency = (flags & EFCT_SCSI_LOW_LATENCY) != 0;
drivers/scsi/elx/efct/efct_scsi.c
691
io->wq_steering = (flags & EFCT_SCSI_WQ_STEERING_MASK) >>
drivers/scsi/elx/efct/efct_scsi.c
693
io->wq_class = (flags & EFCT_SCSI_WQ_CLASS_MASK) >>
drivers/scsi/elx/efct/efct_scsi.c
707
return efct_scsi_io_dispatch(io, efct_target_io_cb);
drivers/scsi/elx/efct/efct_scsi.c
71
return io;
drivers/scsi/elx/efct/efct_scsi.c
711
efct_scsi_send_rd_data(struct efct_io *io, u32 flags,
drivers/scsi/elx/efct/efct_scsi.c
715
return efct_scsi_xfer_data(io, flags, sgl, sgl_count,
drivers/scsi/elx/efct/efct_scsi.c
717
enable_tsend_auto_resp(io->efct), cb, arg);
drivers/scsi/elx/efct/efct_scsi.c
721
efct_scsi_recv_wr_data(struct efct_io *io, u32 flags,
drivers/scsi/elx/efct/efct_scsi.c
725
return efct_scsi_xfer_data(io, flags, sgl, sgl_count, len,
drivers/scsi/elx/efct/efct_scsi.c
727
enable_treceive_auto_resp(io->efct), cb, arg);
drivers/scsi/elx/efct/efct_scsi.c
731
efct_scsi_send_resp(struct efct_io *io, u32 flags,
drivers/scsi/elx/efct/efct_scsi.c
744
efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
753
residual = io->exp_xfer_len - io->transferred;
drivers/scsi/elx/efct/efct_scsi.c
756
io->wire_len = 0;
drivers/scsi/elx/efct/efct_scsi.c
757
io->hio_type = EFCT_HW_IO_TARGET_RSP;
drivers/scsi/elx/efct/efct_scsi.c
759
io->scsi_tgt_cb = cb;
drivers/scsi/elx/efct/efct_scsi.c
760
io->scsi_tgt_cb_arg = arg;
drivers/scsi/elx/efct/efct_scsi.c
762
memset(&io->iparam, 0, sizeof(io->iparam));
drivers/scsi/elx/efct/efct_scsi.c
763
io->iparam.fcp_tgt.ox_id = io->init_task_tag;
drivers/scsi/elx/efct/efct_scsi.c
764
io->iparam.fcp_tgt.offset = 0;
drivers/scsi/elx/efct/efct_scsi.c
765
io->iparam.fcp_tgt.cs_ctl = io->cs_ctl;
drivers/scsi/elx/efct/efct_scsi.c
766
io->iparam.fcp_tgt.timeout = io->timeout;
drivers/scsi/elx/efct/efct_scsi.c
769
io->low_latency = (flags & EFCT_SCSI_LOW_LATENCY) != 0;
drivers/scsi/elx/efct/efct_scsi.c
77
struct efct_io *io = container_of(arg, struct efct_io, ref);
drivers/scsi/elx/efct/efct_scsi.c
770
io->wq_steering = (flags & EFCT_SCSI_WQ_STEERING_MASK) >>
drivers/scsi/elx/efct/efct_scsi.c
772
io->wq_class = (flags & EFCT_SCSI_WQ_CLASS_MASK) >>
drivers/scsi/elx/efct/efct_scsi.c
776
struct fcp_resp_with_ext *fcprsp = io->rspbuf.virt;
drivers/scsi/elx/efct/efct_scsi.c
78
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
784
sns_data = (u8 *)io->rspbuf.virt + sizeof(*fcprsp);
drivers/scsi/elx/efct/efct_scsi.c
79
struct efct_node *node = io->node;
drivers/scsi/elx/efct/efct_scsi.c
790
io->wire_len += sizeof(*fcprsp);
drivers/scsi/elx/efct/efct_scsi.c
82
scsi_io_trace(io, "freeing io 0x%p %s\n", io, io->display_name);
drivers/scsi/elx/efct/efct_scsi.c
821
io->wire_len += sense_data_length;
drivers/scsi/elx/efct/efct_scsi.c
824
io->sgl[0].addr = io->rspbuf.phys;
drivers/scsi/elx/efct/efct_scsi.c
825
io->sgl[0].dif_addr = 0;
drivers/scsi/elx/efct/efct_scsi.c
826
io->sgl[0].len = io->wire_len;
drivers/scsi/elx/efct/efct_scsi.c
827
io->sgl_count = 1;
drivers/scsi/elx/efct/efct_scsi.c
831
io->iparam.fcp_tgt.flags |= SLI4_IO_AUTO_GOOD_RESPONSE;
drivers/scsi/elx/efct/efct_scsi.c
833
return efct_scsi_io_dispatch(io, efct_target_io_cb);
drivers/scsi/elx/efct/efct_scsi.c
84
if (io->io_free) {
drivers/scsi/elx/efct/efct_scsi.c
840
struct efct_io *io = app;
drivers/scsi/elx/efct/efct_scsi.c
844
efct = io->efct;
drivers/scsi/elx/efct/efct_scsi.c
848
io_error_log(io, "s=%#x x=%#x\n", status, ext_status);
drivers/scsi/elx/efct/efct_scsi.c
854
if (io->bls_cb) {
drivers/scsi/elx/efct/efct_scsi.c
855
efct_scsi_io_cb_t bls_cb = io->bls_cb;
drivers/scsi/elx/efct/efct_scsi.c
856
void *bls_cb_arg = io->bls_cb_arg;
drivers/scsi/elx/efct/efct_scsi.c
858
io->bls_cb = NULL;
drivers/scsi/elx/efct/efct_scsi.c
859
io->bls_cb_arg = NULL;
drivers/scsi/elx/efct/efct_scsi.c
862
bls_cb(io, bls_status, 0, bls_cb_arg);
drivers/scsi/elx/efct/efct_scsi.c
870
efct_target_send_bls_resp(struct efct_io *io,
drivers/scsi/elx/efct/efct_scsi.c
873
struct efct_node *node = io->node;
drivers/scsi/elx/efct/efct_scsi.c
874
struct sli_bls_params *bls = &io->iparam.bls;
drivers/scsi/elx/efct/efct_scsi.c
880
memset(&io->iparam, 0, sizeof(io->iparam));
drivers/scsi/elx/efct/efct_scsi.c
881
bls->ox_id = io->init_task_tag;
drivers/scsi/elx/efct/efct_scsi.c
882
bls->rx_id = io->abort_rx_id;
drivers/scsi/elx/efct/efct_scsi.c
883
bls->vpi = io->node->vpi;
drivers/scsi/elx/efct/efct_scsi.c
884
bls->rpi = io->node->rpi;
drivers/scsi/elx/efct/efct_scsi.c
886
bls->d_id = io->node->node_fc_id;
drivers/scsi/elx/efct/efct_scsi.c
897
io->io_type = EFCT_IO_TYPE_BLS_RESP;
drivers/scsi/elx/efct/efct_scsi.c
898
io->display_name = "bls_rsp";
drivers/scsi/elx/efct/efct_scsi.c
899
io->hio_type = EFCT_HW_BLS_ACC;
drivers/scsi/elx/efct/efct_scsi.c
90
list_del_init(&io->list_entry);
drivers/scsi/elx/efct/efct_scsi.c
900
io->bls_cb = cb;
drivers/scsi/elx/efct/efct_scsi.c
901
io->bls_cb_arg = arg;
drivers/scsi/elx/efct/efct_scsi.c
905
efct_target_bls_resp_cb, io);
drivers/scsi/elx/efct/efct_scsi.c
912
struct efct_io *io = app;
drivers/scsi/elx/efct/efct_scsi.c
914
efct_scsi_io_free(io);
drivers/scsi/elx/efct/efct_scsi.c
919
efct_bls_send_rjt(struct efct_io *io, struct fc_frame_header *hdr)
drivers/scsi/elx/efct/efct_scsi.c
921
struct efct_node *node = io->node;
drivers/scsi/elx/efct/efct_scsi.c
922
struct sli_bls_params *bls = &io->iparam.bls;
drivers/scsi/elx/efct/efct_scsi.c
928
io->io_type = EFCT_IO_TYPE_BLS_RESP;
drivers/scsi/elx/efct/efct_scsi.c
929
io->display_name = "ba_rjt";
drivers/scsi/elx/efct/efct_scsi.c
930
io->hio_type = EFCT_HW_BLS_RJT;
drivers/scsi/elx/efct/efct_scsi.c
931
io->init_task_tag = be16_to_cpu(hdr->fh_ox_id);
drivers/scsi/elx/efct/efct_scsi.c
934
memset(&io->iparam, 0, sizeof(io->iparam));
drivers/scsi/elx/efct/efct_scsi.c
937
bls->vpi = io->node->vpi;
drivers/scsi/elx/efct/efct_scsi.c
938
bls->rpi = io->node->rpi;
drivers/scsi/elx/efct/efct_scsi.c
94
io->node = NULL;
drivers/scsi/elx/efct/efct_scsi.c
940
bls->d_id = io->node->node_fc_id;
drivers/scsi/elx/efct/efct_scsi.c
948
io);
drivers/scsi/elx/efct/efct_scsi.c
95
efct_io_pool_io_free(efct->xport->io_pool, io);
drivers/scsi/elx/efct/efct_scsi.c
951
efct_scsi_io_free(io);
drivers/scsi/elx/efct/efct_scsi.c
952
io = NULL;
drivers/scsi/elx/efct/efct_scsi.c
954
return io;
drivers/scsi/elx/efct/efct_scsi.c
958
efct_scsi_send_tmf_resp(struct efct_io *io,
drivers/scsi/elx/efct/efct_scsi.c
970
io->wire_len = 0;
drivers/scsi/elx/efct/efct_scsi.c
99
efct_scsi_io_free(struct efct_io *io)
drivers/scsi/elx/efct/efct_scsi.c
994
io->hio_type = EFCT_HW_IO_TARGET_RSP;
drivers/scsi/elx/efct/efct_scsi.c
996
io->scsi_tgt_cb = cb;
drivers/scsi/elx/efct/efct_scsi.c
997
io->scsi_tgt_cb_arg = arg;
drivers/scsi/elx/efct/efct_scsi.c
999
if (io->tmf_cmd == EFCT_SCSI_TMF_ABORT_TASK) {
drivers/scsi/elx/efct/efct_scsi.h
141
void efct_scsi_io_free(struct efct_io *io);
drivers/scsi/elx/efct/efct_scsi.h
164
efct_scsi_recv_cmd(struct efct_io *io, uint64_t lun, u8 *cdb, u32 cdb_len,
drivers/scsi/elx/efct/efct_scsi.h
170
efct_scsi_send_rd_data(struct efct_io *io, u32 flags, struct efct_scsi_sgl *sgl,
drivers/scsi/elx/efct/efct_scsi.h
173
efct_scsi_recv_wr_data(struct efct_io *io, u32 flags, struct efct_scsi_sgl *sgl,
drivers/scsi/elx/efct/efct_scsi.h
176
efct_scsi_send_resp(struct efct_io *io, u32 flags,
drivers/scsi/elx/efct/efct_scsi.h
179
efct_scsi_send_tmf_resp(struct efct_io *io, enum efct_scsi_tmf_resp rspcode,
drivers/scsi/elx/efct/efct_scsi.h
182
efct_scsi_tgt_abort_io(struct efct_io *io, efct_scsi_io_cb_t cb, void *arg);
drivers/scsi/elx/efct/efct_scsi.h
184
void efct_scsi_io_complete(struct efct_io *io);
drivers/scsi/elx/efct/efct_scsi.h
197
int efct_scsi_io_dispatch(struct efct_io *io, void *cb);
drivers/scsi/elx/efct/efct_scsi.h
198
int efct_scsi_io_dispatch_abort(struct efct_io *io, void *cb);
drivers/scsi/elx/efct/efct_scsi.h
201
efct_bls_send_rjt(struct efct_io *io, struct fc_frame_header *hdr);
drivers/scsi/elx/efct/efct_scsi.h
90
typedef int (*efct_scsi_io_cb_t)(struct efct_io *io,
drivers/scsi/elx/efct/efct_scsi.h
95
typedef int (*efct_scsi_rsp_io_cb_t)(struct efct_io *io,
drivers/scsi/elx/efct/efct_unsol.c
102
efct_scsi_io_free(io);
drivers/scsi/elx/efct/efct_unsol.c
107
efct_dispatch_unsol_tmf(struct efct_io *io, u8 tm_flags, u32 lun)
drivers/scsi/elx/efct/efct_unsol.c
120
io->exp_xfer_len = 0;
drivers/scsi/elx/efct/efct_unsol.c
124
io->tmf_cmd = tmflist[i].cmd;
drivers/scsi/elx/efct/efct_unsol.c
125
efct_scsi_recv_tmf(io, lun, tmflist[i].cmd, NULL, 0);
drivers/scsi/elx/efct/efct_unsol.c
131
efc_log_err(io->node->efct, "TMF x%x rejected\n", tm_flags);
drivers/scsi/elx/efct/efct_unsol.c
132
efct_scsi_send_tmf_resp(io, EFCT_SCSI_TMF_FUNCTION_REJECTED,
drivers/scsi/elx/efct/efct_unsol.c
159
efct_populate_io_fcp_cmd(struct efct_io *io, struct fcp_cmnd *cmnd,
drivers/scsi/elx/efct/efct_unsol.c
162
io->init_task_tag = be16_to_cpu(fchdr->fh_ox_id);
drivers/scsi/elx/efct/efct_unsol.c
164
io->exp_xfer_len = be32_to_cpu(cmnd->fc_dl);
drivers/scsi/elx/efct/efct_unsol.c
165
io->transferred = 0;
drivers/scsi/elx/efct/efct_unsol.c
173
io->cs_ctl = fchdr->fh_cs_ctl;
drivers/scsi/elx/efct/efct_unsol.c
175
io->cs_ctl = 0;
drivers/scsi/elx/efct/efct_unsol.c
177
io->seq_init = sit;
drivers/scsi/elx/efct/efct_unsol.c
344
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_unsol.c
362
io = efct_scsi_io_alloc(node);
drivers/scsi/elx/efct/efct_unsol.c
363
if (!io) {
drivers/scsi/elx/efct/efct_unsol.c
374
io->hw_priv = seq->hw_priv;
drivers/scsi/elx/efct/efct_unsol.c
376
io->app_id = 0;
drivers/scsi/elx/efct/efct_unsol.c
379
efct_populate_io_fcp_cmd(io, cmnd, fchdr, true);
drivers/scsi/elx/efct/efct_unsol.c
382
efct_dispatch_unsol_tmf(io, cmnd->fc_tm_flags, lun);
drivers/scsi/elx/efct/efct_unsol.c
388
efct_scsi_io_free(io);
drivers/scsi/elx/efct/efct_unsol.c
395
efct_scsi_recv_cmd(io, lun, cmnd->fc_cdb,
drivers/scsi/elx/efct/efct_unsol.c
403
efct_process_abts(struct efct_io *io, struct fc_frame_header *hdr)
drivers/scsi/elx/efct/efct_unsol.c
405
struct efct_node *node = io->node;
drivers/scsi/elx/efct/efct_unsol.c
406
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_unsol.c
426
io->display_name = "abts";
drivers/scsi/elx/efct/efct_unsol.c
427
io->init_task_tag = ox_id;
drivers/scsi/elx/efct/efct_unsol.c
435
io->abort_rx_id = rx_id;
drivers/scsi/elx/efct/efct_unsol.c
438
io->tmf_cmd = EFCT_SCSI_TMF_ABORT_TASK;
drivers/scsi/elx/efct/efct_unsol.c
439
efct_scsi_recv_tmf(io, abortio->tgt_io.lun,
drivers/scsi/elx/efct/efct_unsol.c
458
efct_bls_send_rjt(io, hdr);
drivers/scsi/elx/efct/efct_unsol.c
468
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_unsol.c
471
io = efct_scsi_io_alloc(node);
drivers/scsi/elx/efct/efct_unsol.c
472
if (io) {
drivers/scsi/elx/efct/efct_unsol.c
473
io->hw_priv = seq->hw_priv;
drivers/scsi/elx/efct/efct_unsol.c
475
io->seq_init = 1;
drivers/scsi/elx/efct/efct_unsol.c
478
io->efct = efct;
drivers/scsi/elx/efct/efct_unsol.c
479
io->node = node;
drivers/scsi/elx/efct/efct_unsol.c
480
io->cmd_tgt = true;
drivers/scsi/elx/efct/efct_unsol.c
482
efct_process_abts(io, seq->header->dma.virt);
drivers/scsi/elx/efct/efct_unsol.c
98
efct_fc_tmf_rejected_cb(struct efct_io *io,
drivers/scsi/elx/libefc/efc_els.c
1040
rsp = els->io.rsp.virt;
drivers/scsi/elx/libefc/efc_els.c
1052
els->io.io_type = EFC_DISC_IO_CT_RESP;
drivers/scsi/elx/libefc/efc_els.c
1053
els->io.xmit_len = sizeof(*rsp);
drivers/scsi/elx/libefc/efc_els.c
1055
els->io.rpi = node->rnode.indicator;
drivers/scsi/elx/libefc/efc_els.c
1056
els->io.d_id = node->rnode.fc_id;
drivers/scsi/elx/libefc/efc_els.c
1058
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
1060
els->io.iparam.ct.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
1061
els->io.iparam.ct.r_ctl = 3;
drivers/scsi/elx/libefc/efc_els.c
1062
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
1063
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
1064
els->io.iparam.ct.timeout = 5;
drivers/scsi/elx/libefc/efc_els.c
1066
if (efc->tt.send_els(efc, &els->io)) {
drivers/scsi/elx/libefc/efc_els.c
133
dma_free_coherent(&efc->pci->dev, els->io.rsp.size,
drivers/scsi/elx/libefc/efc_els.c
134
els->io.rsp.virt, els->io.rsp.phys);
drivers/scsi/elx/libefc/efc_els.c
135
dma_free_coherent(&efc->pci->dev, els->io.req.size,
drivers/scsi/elx/libefc/efc_els.c
136
els->io.req.virt, els->io.req.phys);
drivers/scsi/elx/libefc/efc_els.c
173
els->io.rsp.len = length;
drivers/scsi/elx/libefc/efc_els.c
178
cbdata.els_rsp = els->io.rsp;
drivers/scsi/elx/libefc/efc_els.c
187
if (length > els->io.rsp.size) {
drivers/scsi/elx/libefc/efc_els.c
190
length, els->io.rsp.size);
drivers/scsi/elx/libefc/efc_els.c
245
void efc_disc_io_complete(struct efc_disc_io *io, u32 len, u32 status,
drivers/scsi/elx/libefc/efc_els.c
249
container_of(io, struct efc_els_io_req, io);
drivers/scsi/elx/libefc/efc_els.c
267
els->io.io_type = io_type;
drivers/scsi/elx/libefc/efc_els.c
268
els->io.xmit_len = els->io.req.size;
drivers/scsi/elx/libefc/efc_els.c
269
els->io.rsp_len = els->io.rsp.size;
drivers/scsi/elx/libefc/efc_els.c
270
els->io.rpi = node->rnode.indicator;
drivers/scsi/elx/libefc/efc_els.c
271
els->io.vpi = node->nport->indicator;
drivers/scsi/elx/libefc/efc_els.c
272
els->io.s_id = node->nport->fc_id;
drivers/scsi/elx/libefc/efc_els.c
273
els->io.d_id = node->rnode.fc_id;
drivers/scsi/elx/libefc/efc_els.c
276
els->io.rpi_registered = true;
drivers/scsi/elx/libefc/efc_els.c
280
rc = efc->tt.send_els(efc, &els->io);
drivers/scsi/elx/libefc/efc_els.c
286
cbdata.els_rsp = els->io.rsp;
drivers/scsi/elx/libefc/efc_els.c
303
cbdata.els_rsp = els->io.rsp;
drivers/scsi/elx/libefc/efc_els.c
307
rc = efc->tt.send_els(efc, &els->io);
drivers/scsi/elx/libefc/efc_els.c
333
cbdata.els_rsp = els->io.rsp;
drivers/scsi/elx/libefc/efc_els.c
363
els->io.io_type = EFC_DISC_IO_ELS_RESP;
drivers/scsi/elx/libefc/efc_els.c
367
els->io.xmit_len = rsplen;
drivers/scsi/elx/libefc/efc_els.c
368
els->io.rsp_len = els->io.rsp.size;
drivers/scsi/elx/libefc/efc_els.c
369
els->io.rpi = node->rnode.indicator;
drivers/scsi/elx/libefc/efc_els.c
370
els->io.vpi = node->nport->indicator;
drivers/scsi/elx/libefc/efc_els.c
372
els->io.s_id = node->nport->fc_id;
drivers/scsi/elx/libefc/efc_els.c
374
els->io.s_id = els->io.iparam.els.s_id;
drivers/scsi/elx/libefc/efc_els.c
375
els->io.d_id = node->rnode.fc_id;
drivers/scsi/elx/libefc/efc_els.c
378
els->io.rpi_registered = true;
drivers/scsi/elx/libefc/efc_els.c
380
rc = efc->tt.send_els(efc, &els->io);
drivers/scsi/elx/libefc/efc_els.c
386
cbdata.els_rsp = els->io.rsp;
drivers/scsi/elx/libefc/efc_els.c
409
plogi = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
439
flogi = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
468
fdisc = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
498
pp = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
539
logo = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
572
adisc = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
601
req = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
628
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
629
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
631
rjt = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
659
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
660
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
662
plogi = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
68
els->io.req.size = reqlen;
drivers/scsi/elx/libefc/efc_els.c
69
els->io.req.virt = dma_alloc_coherent(&efc->pci->dev, els->io.req.size,
drivers/scsi/elx/libefc/efc_els.c
693
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
694
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
695
els->io.iparam.els.s_id = s_id;
drivers/scsi/elx/libefc/efc_els.c
697
flogi = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
70
&els->io.req.phys, GFP_KERNEL);
drivers/scsi/elx/libefc/efc_els.c
71
if (!els->io.req.virt) {
drivers/scsi/elx/libefc/efc_els.c
729
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
730
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
732
pp = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
76
els->io.rsp.size = rsplen;
drivers/scsi/elx/libefc/efc_els.c
77
els->io.rsp.virt = dma_alloc_coherent(&efc->pci->dev, els->io.rsp.size,
drivers/scsi/elx/libefc/efc_els.c
771
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
772
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
774
pp = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
78
&els->io.rsp.phys, GFP_KERNEL);
drivers/scsi/elx/libefc/efc_els.c
79
if (!els->io.rsp.virt) {
drivers/scsi/elx/libefc/efc_els.c
80
dma_free_coherent(&efc->pci->dev, els->io.req.size,
drivers/scsi/elx/libefc/efc_els.c
804
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
805
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
807
acc = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
81
els->io.req.virt, els->io.req.phys);
drivers/scsi/elx/libefc/efc_els.c
832
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
833
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
835
logo = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
862
memset(&els->io.iparam, 0, sizeof(els->io.iparam));
drivers/scsi/elx/libefc/efc_els.c
863
els->io.iparam.els.ox_id = ox_id;
drivers/scsi/elx/libefc/efc_els.c
866
adisc = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
909
els->io.iparam.ct.r_ctl = FC_RCTL_ELS_REQ;
drivers/scsi/elx/libefc/efc_els.c
910
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
911
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
912
els->io.iparam.ct.timeout = EFC_FC_ELS_SEND_DEFAULT_TIMEOUT;
drivers/scsi/elx/libefc/efc_els.c
916
ct = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
946
els->io.iparam.ct.r_ctl = FC_RCTL_ELS_REQ;
drivers/scsi/elx/libefc/efc_els.c
947
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
948
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
949
els->io.iparam.ct.timeout = EFC_FC_ELS_SEND_DEFAULT_TIMEOUT;
drivers/scsi/elx/libefc/efc_els.c
952
ct = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.c
986
els->io.iparam.ct.r_ctl = FC_RCTL_ELS_REQ;
drivers/scsi/elx/libefc/efc_els.c
987
els->io.iparam.ct.type = FC_TYPE_CT;
drivers/scsi/elx/libefc/efc_els.c
988
els->io.iparam.ct.df_ctl = 0;
drivers/scsi/elx/libefc/efc_els.c
989
els->io.iparam.ct.timeout = EFC_FC_ELS_SEND_DEFAULT_TIMEOUT;
drivers/scsi/elx/libefc/efc_els.c
993
ct = els->io.req.virt;
drivers/scsi/elx/libefc/efc_els.h
25
struct efc_disc_io io;
drivers/scsi/elx/libefc/efc_els.h
93
efc_bls_send_rjt_hdr(struct efc_els_io_req *io, struct fc_frame_header *hdr);
drivers/scsi/elx/libefc/efc_node.h
17
#define scsi_io_printf(io, fmt, ...) \
drivers/scsi/elx/libefc/efc_node.h
18
efc_log_debug(io->efc, "[%s] [%04x][i:%04x t:%04x h:%04x]" fmt, \
drivers/scsi/elx/libefc/efc_node.h
19
io->node->display_name, io->instance_index, io->init_task_tag, \
drivers/scsi/elx/libefc/efc_node.h
20
io->tgt_task_tag, io->hw_tag, ##__VA_ARGS__)
drivers/scsi/elx/libefc/efclib.h
499
int (*send_els)(struct efc *efc, struct efc_disc_io *io);
drivers/scsi/elx/libefc/efclib.h
612
void efc_disc_io_complete(struct efc_disc_io *io, u32 len, u32 status,
drivers/scsi/fdomain_isa.c
10
static int io[MAXBOARDS_PARAM] = { 0, 0, 0, 0 };
drivers/scsi/fdomain_isa.c
11
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/scsi/fdomain_isa.c
12
MODULE_PARM_DESC(io, "base I/O address of controller (0x140, 0x150, 0x160, 0x170)");
drivers/scsi/fdomain_isa.c
156
if (!io[ndev])
drivers/scsi/fdomain_isa.c
159
if (!request_region(io[ndev], FDOMAIN_REGION_SIZE, "fdomain_isa")) {
drivers/scsi/fdomain_isa.c
160
dev_err(dev, "base 0x%x already in use", io[ndev]);
drivers/scsi/fdomain_isa.c
165
irq_ = irqs[(inb(io[ndev] + REG_CFG1) & CFG1_IRQ_MASK) >> 1];
drivers/scsi/fdomain_isa.c
167
sh = fdomain_create(io[ndev], irq_, scsi_id[ndev], dev);
drivers/scsi/fdomain_isa.c
169
dev_err(dev, "controller not found at base 0x%x", io[ndev]);
drivers/scsi/fdomain_isa.c
170
release_region(io[ndev], FDOMAIN_REGION_SIZE);
drivers/scsi/fdomain_isa.c
201
if (io[0]) { /* use module parameters if present */
drivers/scsi/g_NCR5380.c
323
hostdata->io = iomem;
drivers/scsi/g_NCR5380.c
39
ioread8(hostdata->io + hostdata->offset + (reg))
drivers/scsi/g_NCR5380.c
41
iowrite8(value, hostdata->io + hostdata->offset + (reg))
drivers/scsi/g_NCR5380.c
470
void __iomem *iomem = hostdata->io;
drivers/scsi/g_NCR5380.c
553
hostdata->io + NCR53C400_host_buffer, 128);
drivers/scsi/g_NCR5380.c
631
memcpy_toio(hostdata->io + NCR53C400_host_buffer,
drivers/scsi/mac_scsi.c
135
: "+a" (addr), "+r" (n), "+r" (result) : "a" (io))
drivers/scsi/mac_scsi.c
162
: "+a" (addr), "+r" (n), "+r" (result) : "a" (io))
drivers/scsi/mac_scsi.c
213
: "+a" (addr), "+r" (n), "+r" (result) : "a" (io))
drivers/scsi/mac_scsi.c
215
static inline int mac_pdma_recv(void __iomem *io, unsigned char *start, int n)
drivers/scsi/mac_scsi.c
242
static inline int mac_pdma_send(unsigned char *start, void __iomem *io, int n)
drivers/scsi/mac_scsi.c
275
out_be32(hostdata->io + (CTRL_REG << 4), value);
drivers/scsi/mac_scsi.c
38
#define NCR5380_read(reg) in_8(hostdata->io + ((reg) << 4))
drivers/scsi/mac_scsi.c
39
#define NCR5380_write(reg, value) out_8(hostdata->io + ((reg) << 4), value)
drivers/scsi/mac_scsi.c
488
hostdata->io = (u8 __iomem *)pio_mem->start;
drivers/scsi/megaraid/megaraid_sas.h
2012
struct megasas_io_frame io;
drivers/scsi/megaraid/megaraid_sas_base.c
3546
(cmd->frame->io.cmd_status == MFI_STAT_OK) ?
drivers/scsi/megaraid/megaraid_sas_base.c
367
cmd->frame->io.context = cpu_to_le32(cmd->index);
drivers/scsi/megaraid/megaraid_sas_base.c
4406
cmd->frame->io.context = cpu_to_le32(cmd->index);
drivers/scsi/megaraid/megaraid_sas_base.c
4407
cmd->frame->io.pad_0 = 0;
drivers/scsi/qedi/qedi_iscsi.c
191
struct qedi_io_bdt *io = &cmd->io_tbl;
drivers/scsi/qedi/qedi_iscsi.c
194
io->sge_tbl = dma_alloc_coherent(&qedi->pdev->dev,
drivers/scsi/qedi/qedi_iscsi.c
197
&io->sge_tbl_dma, GFP_KERNEL);
drivers/scsi/qedi/qedi_iscsi.c
198
if (!io->sge_tbl) {
drivers/scsi/qedi/qedi_iscsi.c
204
io->sge_valid = 0;
drivers/scsi/snic/snic_debugfs.c
108
u64 *io_stats_p = (u64 *) &stats->io;
drivers/scsi/snic/snic_debugfs.c
134
atomic64_read(&stats->io.active));
drivers/scsi/snic/snic_debugfs.c
179
maxio_tm = (u64) atomic64_read(&stats->io.max_time);
drivers/scsi/snic/snic_debugfs.c
195
(u64) atomic64_read(&stats->io.active),
drivers/scsi/snic/snic_debugfs.c
196
(u64) atomic64_read(&stats->io.max_active),
drivers/scsi/snic/snic_debugfs.c
197
(u64) atomic64_read(&stats->io.num_ios),
drivers/scsi/snic/snic_debugfs.c
198
(u64) atomic64_read(&stats->io.compl),
drivers/scsi/snic/snic_debugfs.c
199
(u64) atomic64_read(&stats->io.fail),
drivers/scsi/snic/snic_debugfs.c
200
(u64) atomic64_read(&stats->io.io_not_found),
drivers/scsi/snic/snic_debugfs.c
201
(u64) atomic64_read(&stats->io.alloc_fail),
drivers/scsi/snic/snic_debugfs.c
202
(u64) atomic64_read(&stats->io.req_null),
drivers/scsi/snic/snic_debugfs.c
203
(u64) atomic64_read(&stats->io.sc_null),
drivers/scsi/snic/snic_debugfs.c
204
(u64) atomic64_read(&stats->io.max_sgl),
drivers/scsi/snic/snic_debugfs.c
205
(u64) atomic64_read(&stats->io.max_io_sz),
drivers/scsi/snic/snic_debugfs.c
206
(u64) atomic64_read(&stats->io.max_qtime),
drivers/scsi/snic/snic_debugfs.c
207
(u64) atomic64_read(&stats->io.max_cmpl_time),
drivers/scsi/snic/snic_debugfs.c
216
(u64) atomic64_read(&stats->io.sgl_cnt[i]));
drivers/scsi/snic/snic_io.c
230
atomic64_inc(&snic->s_stats.io.alloc_fail);
drivers/scsi/snic/snic_io.c
251
if (sg_cnt > atomic64_read(&snic->s_stats.io.max_sgl))
drivers/scsi/snic/snic_io.c
252
atomic64_set(&snic->s_stats.io.max_sgl, sg_cnt);
drivers/scsi/snic/snic_io.c
255
atomic64_inc(&snic->s_stats.io.sgl_cnt[sg_cnt - 1]);
drivers/scsi/snic/snic_io.c
553
if (duration > atomic64_read(&snic->s_stats.io.max_time))
drivers/scsi/snic/snic_io.c
554
atomic64_set(&snic->s_stats.io.max_time, duration);
drivers/scsi/snic/snic_scsi.c
1025
atomic64_inc(&snic->s_stats.io.sc_null);
drivers/scsi/snic/snic_scsi.c
1054
atomic64_inc(&snic->s_stats.io.req_null);
drivers/scsi/snic/snic_scsi.c
1247
if (cmpl_time > atomic64_read(&snic->s_stats.io.max_cmpl_time))
drivers/scsi/snic/snic_scsi.c
1248
atomic64_set(&snic->s_stats.io.max_cmpl_time, cmpl_time);
drivers/scsi/snic/snic_scsi.c
1418
atomic64_inc(&snic->s_stats.io.req_null);
drivers/scsi/snic/snic_scsi.c
209
atomic64_inc(&snic->s_stats.io.active);
drivers/scsi/snic/snic_scsi.c
212
atomic64_dec(&snic->s_stats.io.active);
drivers/scsi/snic/snic_scsi.c
291
struct snic_io_stats *iostats = &snic->s_stats.io;
drivers/scsi/snic/snic_scsi.c
425
atomic64_inc(&snic->s_stats.io.io_not_found);
drivers/scsi/snic/snic_scsi.c
510
atomic64_inc(&snic->s_stats.io.fail);
drivers/scsi/snic/snic_scsi.c
558
atomic64_inc(&snic->s_stats.io.sc_null);
drivers/scsi/snic/snic_scsi.c
591
atomic64_inc(&snic->s_stats.io.req_null);
drivers/scsi/snic/snic_scsi.c
777
atomic64_inc(&snic->s_stats.io.req_null);
drivers/scsi/snic/snic_scsi.c
941
atomic64_inc(&snic->s_stats.io.sc_null);
drivers/scsi/snic/snic_scsi.c
964
act_ios = atomic64_read(&st->io.active);
drivers/scsi/snic/snic_scsi.c
965
atomic64_add(act_ios, &st->io.compl);
drivers/scsi/snic/snic_scsi.c
966
atomic64_sub(act_ios, &st->io.active);
drivers/scsi/snic/snic_stats.h
100
atomic64_set(&io->max_active, nr_active_ios);
drivers/scsi/snic/snic_stats.h
102
atomic64_inc(&io->num_ios);
drivers/scsi/snic/snic_stats.h
109
atomic64_dec(&s_stats->io.active);
drivers/scsi/snic/snic_stats.h
113
atomic64_inc(&s_stats->io.compl);
drivers/scsi/snic/snic_stats.h
80
struct snic_io_stats io;
drivers/scsi/snic/snic_stats.h
95
struct snic_io_stats *io = &s_stats->io;
drivers/scsi/snic/snic_stats.h
98
nr_active_ios = atomic64_read(&io->active);
drivers/scsi/snic/snic_stats.h
99
if (atomic64_read(&io->max_active) < nr_active_ios)
drivers/scsi/sun3_scsi.c
46
#define NCR5380_read(reg) in_8(hostdata->io + (reg))
drivers/scsi/sun3_scsi.c
47
#define NCR5380_write(reg, value) out_8(hostdata->io + (reg), value)
drivers/scsi/sun3_scsi.c
591
hostdata->io = ioaddr;
drivers/scsi/sun3_scsi.c
648
void __iomem *ioaddr = hostdata->io;
drivers/soc/fsl/dpio/dpio-driver.c
233
priv->io = dpaa2_io_create(&desc, dev);
drivers/soc/fsl/dpio/dpio-driver.c
234
if (!priv->io) {
drivers/soc/fsl/dpio/dpio-driver.c
281
cpu = dpaa2_io_get_cpu(priv->io);
drivers/soc/fsl/dpio/dpio-driver.c
283
dpaa2_io_down(priv->io);
drivers/soc/fsl/dpio/dpio-driver.c
30
struct dpaa2_io *io;
drivers/soc/fsl/dpio/dpio-driver.c
80
return dpaa2_io_irq(priv->io);
drivers/spi/spi-kspi2.c
360
kspi->base = devm_ioremap_resource(dev, &kspi->auxdev->io);
drivers/tee/qcomtee/call.c
324
int io = 0, oo = 0, ib = 0, ob = 0;
drivers/tee/qcomtee/call.c
341
io++;
drivers/tee/qcomtee/call.c
352
if (io > QCOMTEE_ARGS_PER_TYPE || oo > QCOMTEE_ARGS_PER_TYPE ||
drivers/tee/qcomtee/core.c
403
int i, ib, ob, io, oo;
drivers/tee/qcomtee/core.c
445
io = ob;
drivers/tee/qcomtee/core.c
447
if (qcomtee_object_id_get(oic, u[i].o, &msg->args[io].o)) {
drivers/tee/qcomtee/core.c
449
for (io--; io >= ob; io--)
drivers/tee/qcomtee/core.c
450
qcomtee_object_id_put(oic, msg->args[io].o);
drivers/tee/qcomtee/core.c
455
io++;
drivers/tee/qcomtee/core.c
458
oo = io;
drivers/tee/qcomtee/core.c
463
qcomtee_msg_init(msg, object_id, op, ib, ob, io, oo);
drivers/tee/qcomtee/core.c
486
int i, ib, ob, io, oo;
drivers/tee/qcomtee/core.c
512
io = ob;
drivers/tee/qcomtee/core.c
514
io++;
drivers/tee/qcomtee/core.c
516
oo = io;
drivers/tee/qcomtee/core.c
581
int i, ib, ob, io, oo;
drivers/tee/qcomtee/core.c
600
io = ob;
drivers/tee/qcomtee/core.c
602
io++;
drivers/tee/qcomtee/core.c
604
oo = io;
drivers/tee/qcomtee/core.c
607
for (oo--; oo >= io; oo--)
drivers/thunderbolt/nhi.c
173
void __iomem *io = ring->nhi->iobase;
drivers/thunderbolt/nhi.c
174
io += ring->is_tx ? REG_TX_RING_BASE : REG_RX_RING_BASE;
drivers/thunderbolt/nhi.c
175
io += ring->hop * 16;
drivers/thunderbolt/nhi.c
176
return io;
drivers/thunderbolt/nhi.c
181
void __iomem *io = ring->nhi->iobase;
drivers/thunderbolt/nhi.c
182
io += ring->is_tx ? REG_TX_OPTIONS_BASE : REG_RX_OPTIONS_BASE;
drivers/thunderbolt/nhi.c
183
io += ring->hop * 32;
drivers/thunderbolt/nhi.c
184
return io;
drivers/tty/mxser.c
388
static enum mxser_must_hwid mxser_must_get_hwid(unsigned long io)
drivers/tty/mxser.c
393
outb(0, io + UART_LCR);
drivers/tty/mxser.c
394
mxser_must_set_enhance_mode(io, false);
drivers/tty/mxser.c
395
oldmcr = inb(io + UART_MCR);
drivers/tty/mxser.c
396
outb(0, io + UART_MCR);
drivers/tty/mxser.c
397
mxser_set_must_xon1_value(io, 0x11);
drivers/tty/mxser.c
398
if (inb(io + UART_MCR) != 0) {
drivers/tty/mxser.c
399
outb(oldmcr, io + UART_MCR);
drivers/tty/mxser.c
403
hwid = mxser_get_must_hardware_id(io);
drivers/tty/serial/8250/8250_keba.c
190
res = kuart->auxdev->io;
drivers/tty/serial/8250/8250_keba.c
209
uart.port.mapbase = kuart->auxdev->io.start + KUART_BASE;
drivers/usb/core/message.c
452
static void sg_clean(struct usb_sg_request *io)
drivers/usb/core/message.c
454
if (io->urbs) {
drivers/usb/core/message.c
455
while (io->entries--)
drivers/usb/core/message.c
456
usb_free_urb(io->urbs[io->entries]);
drivers/usb/core/message.c
457
kfree(io->urbs);
drivers/usb/core/message.c
458
io->urbs = NULL;
drivers/usb/core/message.c
460
io->dev = NULL;
drivers/usb/core/message.c
466
struct usb_sg_request *io = urb->context;
drivers/usb/core/message.c
469
spin_lock_irqsave(&io->lock, flags);
drivers/usb/core/message.c
481
if (io->status
drivers/usb/core/message.c
482
&& (io->status != -ECONNRESET
drivers/usb/core/message.c
485
dev_err(io->dev->bus->controller,
drivers/usb/core/message.c
487
io->dev->devpath,
drivers/usb/core/message.c
490
status, io->status);
drivers/usb/core/message.c
494
if (io->status == 0 && status && status != -ECONNRESET) {
drivers/usb/core/message.c
497
io->status = status;
drivers/usb/core/message.c
503
spin_unlock_irqrestore(&io->lock, flags);
drivers/usb/core/message.c
504
for (i = 0, found = 0; i < io->entries; i++) {
drivers/usb/core/message.c
505
if (!io->urbs[i])
drivers/usb/core/message.c
508
usb_block_urb(io->urbs[i]);
drivers/usb/core/message.c
509
retval = usb_unlink_urb(io->urbs[i]);
drivers/usb/core/message.c
514
dev_err(&io->dev->dev,
drivers/usb/core/message.c
517
} else if (urb == io->urbs[i])
drivers/usb/core/message.c
520
spin_lock_irqsave(&io->lock, flags);
drivers/usb/core/message.c
524
io->bytes += urb->actual_length;
drivers/usb/core/message.c
525
io->count--;
drivers/usb/core/message.c
526
if (!io->count)
drivers/usb/core/message.c
527
complete(&io->complete);
drivers/usb/core/message.c
529
spin_unlock_irqrestore(&io->lock, flags);
drivers/usb/core/message.c
560
int usb_sg_init(struct usb_sg_request *io, struct usb_device *dev,
drivers/usb/core/message.c
568
if (!io || !dev || !sg
drivers/usb/core/message.c
574
spin_lock_init(&io->lock);
drivers/usb/core/message.c
575
io->dev = dev;
drivers/usb/core/message.c
576
io->pipe = pipe;
drivers/usb/core/message.c
580
io->entries = 1;
drivers/usb/core/message.c
583
io->entries = nents;
drivers/usb/core/message.c
587
io->urbs = kmalloc_objs(*io->urbs, io->entries, mem_flags);
drivers/usb/core/message.c
588
if (!io->urbs)
drivers/usb/core/message.c
595
for_each_sg(sg, sg, io->entries, i) {
drivers/usb/core/message.c
601
io->entries = i;
drivers/usb/core/message.c
604
io->urbs[i] = urb;
drivers/usb/core/message.c
611
urb->context = io;
drivers/usb/core/message.c
644
io->entries = i + 1;
drivers/usb/core/message.c
649
io->urbs[--i]->transfer_flags &= ~URB_NO_INTERRUPT;
drivers/usb/core/message.c
652
io->count = io->entries;
drivers/usb/core/message.c
653
io->status = 0;
drivers/usb/core/message.c
654
io->bytes = 0;
drivers/usb/core/message.c
655
init_completion(&io->complete);
drivers/usb/core/message.c
659
sg_clean(io);
drivers/usb/core/message.c
709
void usb_sg_wait(struct usb_sg_request *io)
drivers/usb/core/message.c
712
int entries = io->entries;
drivers/usb/core/message.c
715
spin_lock_irq(&io->lock);
drivers/usb/core/message.c
717
while (i < entries && !io->status) {
drivers/usb/core/message.c
720
io->urbs[i]->dev = io->dev;
drivers/usb/core/message.c
721
spin_unlock_irq(&io->lock);
drivers/usb/core/message.c
723
retval = usb_submit_urb(io->urbs[i], GFP_NOIO);
drivers/usb/core/message.c
747
io->urbs[i]->status = retval;
drivers/usb/core/message.c
748
dev_dbg(&io->dev->dev, "%s, submit --> %d\n",
drivers/usb/core/message.c
750
usb_sg_cancel(io);
drivers/usb/core/message.c
752
spin_lock_irq(&io->lock);
drivers/usb/core/message.c
753
if (retval && (io->status == 0 || io->status == -ECONNRESET))
drivers/usb/core/message.c
754
io->status = retval;
drivers/usb/core/message.c
756
io->count -= entries - i;
drivers/usb/core/message.c
757
if (io->count == 0)
drivers/usb/core/message.c
758
complete(&io->complete);
drivers/usb/core/message.c
759
spin_unlock_irq(&io->lock);
drivers/usb/core/message.c
765
wait_for_completion(&io->complete);
drivers/usb/core/message.c
767
sg_clean(io);
drivers/usb/core/message.c
779
void usb_sg_cancel(struct usb_sg_request *io)
drivers/usb/core/message.c
784
spin_lock_irqsave(&io->lock, flags);
drivers/usb/core/message.c
785
if (io->status || io->count == 0) {
drivers/usb/core/message.c
786
spin_unlock_irqrestore(&io->lock, flags);
drivers/usb/core/message.c
790
io->status = -ECONNRESET;
drivers/usb/core/message.c
791
io->count++; /* Keep the request alive until we're done */
drivers/usb/core/message.c
792
spin_unlock_irqrestore(&io->lock, flags);
drivers/usb/core/message.c
794
for (i = io->entries - 1; i >= 0; --i) {
drivers/usb/core/message.c
795
usb_block_urb(io->urbs[i]);
drivers/usb/core/message.c
797
retval = usb_unlink_urb(io->urbs[i]);
drivers/usb/core/message.c
802
dev_warn(&io->dev->dev, "%s, unlink --> %d\n",
drivers/usb/core/message.c
806
spin_lock_irqsave(&io->lock, flags);
drivers/usb/core/message.c
807
io->count--;
drivers/usb/core/message.c
808
if (!io->count)
drivers/usb/core/message.c
809
complete(&io->complete);
drivers/usb/core/message.c
810
spin_unlock_irqrestore(&io->lock, flags);
drivers/usb/gadget/legacy/raw_gadget.c
1058
static int raw_process_ep_io(struct raw_dev *dev, struct usb_raw_ep_io *io,
drivers/usb/gadget/legacy/raw_gadget.c
1077
if (io->ep >= dev->eps_num) {
drivers/usb/gadget/legacy/raw_gadget.c
1082
ep = &dev->eps[io->ep];
drivers/usb/gadget/legacy/raw_gadget.c
1109
ep->req->length = io->length;
drivers/usb/gadget/legacy/raw_gadget.c
1110
ep->req->zero = usb_raw_io_flags_zero(io->flags);
drivers/usb/gadget/legacy/raw_gadget.c
1148
struct usb_raw_ep_io io;
drivers/usb/gadget/legacy/raw_gadget.c
1150
data = raw_alloc_io_data(&io, (void __user *)value, true);
drivers/usb/gadget/legacy/raw_gadget.c
1153
ret = raw_process_ep_io(dev, &io, data, true);
drivers/usb/gadget/legacy/raw_gadget.c
1162
struct usb_raw_ep_io io;
drivers/usb/gadget/legacy/raw_gadget.c
1165
data = raw_alloc_io_data(&io, (void __user *)value, false);
drivers/usb/gadget/legacy/raw_gadget.c
1168
ret = raw_process_ep_io(dev, &io, data, false);
drivers/usb/gadget/legacy/raw_gadget.c
1172
length = min_t(unsigned int, io.length, ret);
drivers/usb/gadget/legacy/raw_gadget.c
1173
if (copy_to_user((void __user *)(value + sizeof(io)), data, length))
drivers/usb/gadget/legacy/raw_gadget.c
660
static void *raw_alloc_io_data(struct usb_raw_ep_io *io, void __user *ptr,
drivers/usb/gadget/legacy/raw_gadget.c
665
if (copy_from_user(io, ptr, sizeof(*io)))
drivers/usb/gadget/legacy/raw_gadget.c
667
if (io->ep >= USB_RAW_EPS_NUM_MAX)
drivers/usb/gadget/legacy/raw_gadget.c
669
if (!usb_raw_io_flags_valid(io->flags))
drivers/usb/gadget/legacy/raw_gadget.c
671
if (io->length > USB_RAW_IO_LENGTH_MAX)
drivers/usb/gadget/legacy/raw_gadget.c
674
data = memdup_user(ptr + sizeof(*io), io->length);
drivers/usb/gadget/legacy/raw_gadget.c
676
data = kmalloc(io->length, GFP_KERNEL);
drivers/usb/gadget/legacy/raw_gadget.c
683
static int raw_process_ep0_io(struct raw_dev *dev, struct usb_raw_ep_io *io,
drivers/usb/gadget/legacy/raw_gadget.c
723
dev->req->length = io->length;
drivers/usb/gadget/legacy/raw_gadget.c
724
dev->req->zero = usb_raw_io_flags_zero(io->flags);
drivers/usb/gadget/legacy/raw_gadget.c
762
struct usb_raw_ep_io io;
drivers/usb/gadget/legacy/raw_gadget.c
764
data = raw_alloc_io_data(&io, (void __user *)value, true);
drivers/usb/gadget/legacy/raw_gadget.c
767
ret = raw_process_ep0_io(dev, &io, data, true);
drivers/usb/gadget/legacy/raw_gadget.c
776
struct usb_raw_ep_io io;
drivers/usb/gadget/legacy/raw_gadget.c
779
data = raw_alloc_io_data(&io, (void __user *)value, false);
drivers/usb/gadget/legacy/raw_gadget.c
782
ret = raw_process_ep0_io(dev, &io, data, false);
drivers/usb/gadget/legacy/raw_gadget.c
786
length = min_t(unsigned int, io.length, ret);
drivers/usb/gadget/legacy/raw_gadget.c
787
if (copy_to_user((void __user *)(value + sizeof(io)), data, length))
drivers/usb/musb/musb_core.c
1668
hw_ep->fifo = musb->io.fifo_offset(i) + mbase;
drivers/usb/musb/musb_core.c
1672
musb->io.fifo_offset(i);
drivers/usb/musb/musb_core.c
1674
musb->io.fifo_offset(i);
drivers/usb/musb/musb_core.c
1676
musb->sync_va + 0x400 + musb->io.fifo_offset(i);
drivers/usb/musb/musb_core.c
1686
hw_ep->regs = musb->io.ep_offset(i, 0) + mbase;
drivers/usb/musb/musb_core.c
2369
musb->io.ep_offset = musb_indexed_ep_offset;
drivers/usb/musb/musb_core.c
2370
musb->io.ep_select = musb_indexed_ep_select;
drivers/usb/musb/musb_core.c
2372
musb->io.ep_offset = musb_flat_ep_offset;
drivers/usb/musb/musb_core.c
2373
musb->io.ep_select = musb_flat_ep_select;
drivers/usb/musb/musb_core.c
2381
musb->io.ep_offset = musb->ops->ep_offset;
drivers/usb/musb/musb_core.c
2383
musb->io.ep_select = musb->ops->ep_select;
drivers/usb/musb/musb_core.c
2391
musb->io.fifo_offset = musb->ops->fifo_offset;
drivers/usb/musb/musb_core.c
2393
musb->io.fifo_offset = musb_default_fifo_offset;
drivers/usb/musb/musb_core.c
2396
musb->io.busctl_offset = musb->ops->busctl_offset;
drivers/usb/musb/musb_core.c
2398
musb->io.busctl_offset = musb_default_busctl_offset;
drivers/usb/musb/musb_core.c
2429
musb->io.read_fifo = musb->ops->read_fifo;
drivers/usb/musb/musb_core.c
2431
musb->io.read_fifo = musb_default_read_fifo;
drivers/usb/musb/musb_core.c
2434
musb->io.write_fifo = musb->ops->write_fifo;
drivers/usb/musb/musb_core.c
2436
musb->io.write_fifo = musb_default_write_fifo;
drivers/usb/musb/musb_core.c
2439
musb->io.get_toggle = musb->ops->get_toggle;
drivers/usb/musb/musb_core.c
2441
musb->io.get_toggle = musb_default_get_toggle;
drivers/usb/musb/musb_core.c
2444
musb->io.set_toggle = musb->ops->set_toggle;
drivers/usb/musb/musb_core.c
2446
musb->io.set_toggle = musb_default_set_toggle;
drivers/usb/musb/musb_core.c
449
return hw_ep->musb->io.read_fifo(hw_ep, len, dst);
drivers/usb/musb/musb_core.c
454
return hw_ep->musb->io.write_fifo(hw_ep, len, src);
drivers/usb/musb/musb_core.h
282
struct musb_io io;
drivers/usb/musb/musb_core.h
459
reg = musb_readb(mbase, musb->io.ep_offset(epnum, MUSB_FIFOSIZE));
drivers/usb/musb/musb_dma.h
174
musb_dma_controller_create(struct musb *m, void __iomem *io)
drivers/usb/musb/musb_host.c
312
toggle = musb->io.get_toggle(qh, !is_in);
drivers/usb/musb/musb_host.c
759
csr |= musb->io.set_toggle(qh, is_out, urb);
drivers/usb/musb/musb_host.c
844
csr |= musb->io.set_toggle(qh, is_out, urb);
drivers/usb/musb/musb_host.c
946
toggle = musb->io.get_toggle(cur_qh, !is_in);
drivers/usb/musb/musb_io.h
15
#define musb_ep_select(_mbase, _epnum) musb->io.ep_select((_mbase), (_epnum))
drivers/usb/musb/musb_regs.h
286
musb->io.busctl_offset(epnum, MUSB_RXFUNCADDR),
drivers/usb/musb/musb_regs.h
293
musb_writeb(musb->mregs, musb->io.busctl_offset(epnum, MUSB_RXHUBADDR),
drivers/usb/musb/musb_regs.h
300
musb_writeb(musb->mregs, musb->io.busctl_offset(epnum, MUSB_RXHUBPORT),
drivers/usb/musb/musb_regs.h
308
musb->io.busctl_offset(epnum, MUSB_TXFUNCADDR),
drivers/usb/musb/musb_regs.h
315
musb_writeb(musb->mregs, musb->io.busctl_offset(epnum, MUSB_TXHUBADDR),
drivers/usb/musb/musb_regs.h
322
musb_writeb(musb->mregs, musb->io.busctl_offset(epnum, MUSB_TXHUBPORT),
drivers/usb/musb/musb_regs.h
329
musb->io.busctl_offset(epnum, MUSB_RXFUNCADDR));
drivers/usb/musb/musb_regs.h
335
musb->io.busctl_offset(epnum, MUSB_RXHUBADDR));
drivers/usb/musb/musb_regs.h
341
musb->io.busctl_offset(epnum, MUSB_RXHUBPORT));
drivers/usb/musb/musb_regs.h
347
musb->io.busctl_offset(epnum, MUSB_TXFUNCADDR));
drivers/usb/musb/musb_regs.h
353
musb->io.busctl_offset(epnum, MUSB_TXHUBADDR));
drivers/usb/musb/musb_regs.h
359
musb->io.busctl_offset(epnum, MUSB_TXHUBPORT));
drivers/usb/musb/musbhsdma.c
232
offset = musb->io.ep_offset(musb_channel->epnum,
drivers/usb/musb/musbhsdma.c
245
offset = musb->io.ep_offset(musb_channel->epnum,
drivers/usb/musb/musbhsdma.c
345
int offset = musb->io.ep_offset(epnum,
drivers/usb/musb/ux500_dma.c
83
dma_addr_t usb_fifo_addr = (musb->io.fifo_offset(hw_ep->epnum) +
drivers/vdpa/solidrun/snet_main.c
572
void __iomem *io;
drivers/vdpa/solidrun/snet_main.c
577
io = pcim_iomap_region(pdev, i, name);
drivers/vdpa/solidrun/snet_main.c
578
if (IS_ERR(io)) {
drivers/vdpa/solidrun/snet_main.c
580
return PTR_ERR(io);
drivers/vdpa/solidrun/snet_main.c
583
psnet->bars[i] = io;
drivers/vdpa/solidrun/snet_main.c
599
void __iomem *io;
drivers/vdpa/solidrun/snet_main.c
606
io = pcim_iomap_region(pdev, snet->psnet->cfg.vf_bar, name);
drivers/vdpa/solidrun/snet_main.c
607
if (IS_ERR(io)) {
drivers/vdpa/solidrun/snet_main.c
609
return PTR_ERR(io);
drivers/vdpa/solidrun/snet_main.c
612
snet->bar = io;
drivers/vfio/pci/nvgrace-gpu/main.c
1285
void __iomem *io;
drivers/vfio/pci/nvgrace-gpu/main.c
1303
io = pci_iomap(pdev, 0, 0);
drivers/vfio/pci/nvgrace-gpu/main.c
1304
if (!io) {
drivers/vfio/pci/nvgrace-gpu/main.c
1309
ret = nvgrace_gpu_wait_device_ready_legacy(io);
drivers/vfio/pci/nvgrace-gpu/main.c
1311
pci_iounmap(pdev, io);
drivers/vfio/pci/nvgrace-gpu/main.c
180
void __iomem *io;
drivers/vfio/pci/nvgrace-gpu/main.c
197
io = vfio_pci_core_get_iomap(vdev, 0);
drivers/vfio/pci/nvgrace-gpu/main.c
198
if (IS_ERR(io)) {
drivers/vfio/pci/nvgrace-gpu/main.c
199
ret = PTR_ERR(io);
drivers/vfio/pci/nvgrace-gpu/main.c
214
nvdev->bar0_base = io;
drivers/vfio/pci/nvgrace-gpu/main.c
256
static int nvgrace_gpu_wait_device_ready_legacy(void __iomem *io)
drivers/vfio/pci/nvgrace-gpu/main.c
261
if ((ioread32(io + C2C_LINK_BAR0_OFFSET) == STATUS_READY) &&
drivers/vfio/pci/nvgrace-gpu/main.c
262
(ioread32(io + HBM_TRAINING_BAR0_OFFSET) == STATUS_READY))
drivers/vfio/pci/vfio_pci_core.c
1164
void __iomem *io;
drivers/vfio/pci/vfio_pci_core.c
1178
io = pci_map_rom(pdev, &size);
drivers/vfio/pci/vfio_pci_core.c
1179
if (io) {
drivers/vfio/pci/vfio_pci_core.c
1184
pci_unmap_rom(pdev, io);
drivers/vfio/pci/vfio_pci_rdwr.c
107
val, io + off); \
drivers/vfio/pci/vfio_pci_rdwr.c
112
&val, io + off); \
drivers/vfio/pci/vfio_pci_rdwr.c
136
void __iomem *io, char __user *buf,
drivers/vfio/pci/vfio_pci_rdwr.c
156
io, buf, off, &filled);
drivers/vfio/pci/vfio_pci_rdwr.c
162
io, buf, off, &filled);
drivers/vfio/pci/vfio_pci_rdwr.c
168
io, buf, off, &filled);
drivers/vfio/pci/vfio_pci_rdwr.c
174
io, buf, off, &filled);
drivers/vfio/pci/vfio_pci_rdwr.c
209
void __iomem *io;
drivers/vfio/pci/vfio_pci_rdwr.c
233
io = pci_map_rom(pdev, &x_start);
drivers/vfio/pci/vfio_pci_rdwr.c
235
io = ioremap(pdev->rom, pdev->romlen);
drivers/vfio/pci/vfio_pci_rdwr.c
238
if (!io)
drivers/vfio/pci/vfio_pci_rdwr.c
252
io = vfio_pci_core_get_iomap(vdev, bar);
drivers/vfio/pci/vfio_pci_rdwr.c
253
if (IS_ERR(io)) {
drivers/vfio/pci/vfio_pci_rdwr.c
254
done = PTR_ERR(io);
drivers/vfio/pci/vfio_pci_rdwr.c
264
done = vfio_pci_core_do_io_rw(vdev, res->flags & IORESOURCE_MEM, io, buf, pos,
drivers/vfio/pci/vfio_pci_rdwr.c
272
pci_unmap_rom(pdev, io);
drivers/vfio/pci/vfio_pci_rdwr.c
274
iounmap(io);
drivers/vfio/pci/vfio_pci_rdwr.c
411
void __iomem *io;
drivers/vfio/pci/vfio_pci_rdwr.c
429
io = vfio_pci_core_get_iomap(vdev, bar);
drivers/vfio/pci/vfio_pci_rdwr.c
43
bool test_mem, u##size val, void __iomem *io) \
drivers/vfio/pci/vfio_pci_rdwr.c
430
if (IS_ERR(io))
drivers/vfio/pci/vfio_pci_rdwr.c
431
return PTR_ERR(io);
drivers/vfio/pci/vfio_pci_rdwr.c
468
ioeventfd->addr = io + pos;
drivers/vfio/pci/vfio_pci_rdwr.c
53
vfio_iowrite##size(val, io); \
drivers/vfio/pci/vfio_pci_rdwr.c
69
bool test_mem, u##size *val, void __iomem *io) \
drivers/vfio/pci/vfio_pci_rdwr.c
79
*val = vfio_ioread##size(io); \
drivers/vfio/pci/vfio_pci_rdwr.c
96
void __iomem *io, char __user *buf, \
drivers/vfio/pci/virtio/legacy_io.c
301
void __iomem *io;
drivers/vfio/pci/virtio/legacy_io.c
307
io = vfio_pci_core_get_iomap(core_device,
drivers/vfio/pci/virtio/legacy_io.c
309
if (IS_ERR(io))
drivers/vfio/pci/virtio/legacy_io.c
310
return PTR_ERR(io);
drivers/vfio/pci/virtio/legacy_io.c
312
virtvdev->notify_addr = io + virtvdev->notify_offset;
drivers/video/fbdev/aty/atyfb_base.c
2983
int io, breg = PCI_BASE_ADDRESS_0 + (i << 2);
drivers/video/fbdev/aty/atyfb_base.c
2989
io = (rp->flags & IORESOURCE_IO);
drivers/video/fbdev/aty/atyfb_base.c
2995
if (io)
drivers/virt/coco/sev-guest/sev-guest.c
170
struct snp_req_resp *io)
drivers/virt/coco/sev-guest/sev-guest.c
181
if (sockptr_is_null(io->req_data) || sockptr_is_null(io->resp_data))
drivers/virt/coco/sev-guest/sev-guest.c
188
if (copy_from_sockptr(report_req, io->req_data, sizeof(*report_req)))
drivers/virt/coco/sev-guest/sev-guest.c
199
if (sockptr_is_kernel(io->resp_data)) {
drivers/virt/coco/sev-guest/sev-guest.c
258
if (copy_to_sockptr(io->req_data, report_req, sizeof(*report_req)))
drivers/virt/coco/sev-guest/sev-guest.c
270
if (copy_to_sockptr(io->resp_data, report_resp, sizeof(*report_resp)))
drivers/virt/coco/sev-guest/sev-guest.c
292
struct snp_req_resp io;
drivers/virt/coco/sev-guest/sev-guest.c
317
io.req_data = USER_SOCKPTR((void __user *)input.req_data);
drivers/virt/coco/sev-guest/sev-guest.c
318
io.resp_data = USER_SOCKPTR((void __user *)input.resp_data);
drivers/virt/coco/sev-guest/sev-guest.c
319
ret = get_ext_report(snp_dev, &input, &io);
drivers/virt/coco/sev-guest/sev-guest.c
522
struct snp_req_resp io = {
drivers/virt/coco/sev-guest/sev-guest.c
527
ret = get_ext_report(snp_dev, &input, &io);
drivers/virt/vboxguest/vboxguest_linux.c
290
resource_size_t io, io_len, mmio, mmio_len;
drivers/virt/vboxguest/vboxguest_linux.c
307
io = pci_resource_start(pci, 0);
drivers/virt/vboxguest/vboxguest_linux.c
309
if (!io || !io_len) {
drivers/virt/vboxguest/vboxguest_linux.c
313
if (devm_request_region(dev, io, io_len, DEVICE_NAME) == NULL) {
drivers/virt/vboxguest/vboxguest_linux.c
348
gdev->io_port = io;
drivers/w1/slaves/w1_ds2780.c
27
size_t count, int io)
drivers/w1/slaves/w1_ds2780.c
37
if (io) {
drivers/w1/slaves/w1_ds2780.c
52
int io)
drivers/w1/slaves/w1_ds2780.c
62
ret = w1_ds2780_do_io(dev, buf, addr, count, io);
drivers/w1/slaves/w1_ds2780.h
122
int io);
drivers/w1/slaves/w1_ds2781.c
24
size_t count, int io)
drivers/w1/slaves/w1_ds2781.c
34
if (io) {
drivers/w1/slaves/w1_ds2781.c
49
int io)
drivers/w1/slaves/w1_ds2781.c
59
ret = w1_ds2781_do_io(dev, buf, addr, count, io);
drivers/w1/slaves/w1_ds2781.h
127
int io);
drivers/watchdog/eurotechwdt.c
110
outb(index, io);
drivers/watchdog/eurotechwdt.c
111
outb(data, io+1);
drivers/watchdog/eurotechwdt.c
116
outb(0xaa, io);
drivers/watchdog/eurotechwdt.c
121
outb(0x55, io);
drivers/watchdog/eurotechwdt.c
410
release_region(io, 2);
drivers/watchdog/eurotechwdt.c
432
if (!request_region(io, 2, "eurwdt")) {
drivers/watchdog/eurotechwdt.c
433
pr_err("IO %X is not free\n", io);
drivers/watchdog/eurotechwdt.c
454
io, irq, (!strcmp("int", ev) ? "int" : "reboot"));
drivers/watchdog/eurotechwdt.c
463
release_region(io, 2);
drivers/watchdog/eurotechwdt.c
70
static int io = 0x3f0;
drivers/watchdog/eurotechwdt.c
96
module_param_hw(io, int, ioport, 0);
drivers/watchdog/eurotechwdt.c
97
MODULE_PARM_DESC(io, "Eurotech WDT io port (default=0x3f0)");
drivers/watchdog/ni903x_wdt.c
144
wdt->io_base = res->data.io.minimum;
drivers/watchdog/ni903x_wdt.c
145
io_size = res->data.io.address_length;
drivers/watchdog/pc87413_wdt.c
44
#define WDT_INDEX_IO_PORT (io+0) /* I/O port base (index register) */
drivers/watchdog/pc87413_wdt.c
507
if (!request_muxed_region(io, 2, MODNAME))
drivers/watchdog/pc87413_wdt.c
534
release_region(io, 2);
drivers/watchdog/pc87413_wdt.c
54
static int io = IO_DEFAULT;
drivers/watchdog/pc87413_wdt.c
541
release_region(io, 2);
drivers/watchdog/pc87413_wdt.c
578
module_param_hw(io, int, ioport, 0);
drivers/watchdog/pc87413_wdt.c
579
MODULE_PARM_DESC(io, MODNAME " I/O port (default: "
drivers/watchdog/sc1200wdt.c
354
io = pnp_port_start(wdt_dev, 0);
drivers/watchdog/sc1200wdt.c
357
if (!request_region(io, io_len, SC1200_MODULE_NAME)) {
drivers/watchdog/sc1200wdt.c
358
pr_err("Unable to register IO port %#x\n", io);
drivers/watchdog/sc1200wdt.c
362
pr_info("PnP device found at io port %#x/%d\n", io, io_len);
drivers/watchdog/sc1200wdt.c
369
release_region(io, io_len);
drivers/watchdog/sc1200wdt.c
398
if (io == -1) {
drivers/watchdog/sc1200wdt.c
412
if (!request_region(io, io_len, SC1200_MODULE_NAME)) {
drivers/watchdog/sc1200wdt.c
413
pr_err("Unable to register IO port %#x\n", io);
drivers/watchdog/sc1200wdt.c
444
release_region(io, io_len);
drivers/watchdog/sc1200wdt.c
465
release_region(io, io_len);
drivers/watchdog/sc1200wdt.c
50
#define PMIR (io) /* Power Management Index Register */
drivers/watchdog/sc1200wdt.c
51
#define PMDR (io+1) /* Power Management Data Register */
drivers/watchdog/sc1200wdt.c
71
static int io = -1;
drivers/watchdog/sc1200wdt.c
86
module_param_hw(io, int, ioport, 0);
drivers/watchdog/sc1200wdt.c
87
MODULE_PARM_DESC(io, "io port");
drivers/watchdog/wd501p.h
19
#define WDT_COUNT0 (io+0)
drivers/watchdog/wd501p.h
20
#define WDT_COUNT1 (io+1)
drivers/watchdog/wd501p.h
21
#define WDT_COUNT2 (io+2)
drivers/watchdog/wd501p.h
22
#define WDT_CR (io+3)
drivers/watchdog/wd501p.h
23
#define WDT_SR (io+4) /* Start buzzer on PCI write */
drivers/watchdog/wd501p.h
24
#define WDT_RT (io+5) /* Stop buzzer on PCI write */
drivers/watchdog/wd501p.h
25
#define WDT_BUZZER (io+6) /* PCI only: rd=disable, wr=enable */
drivers/watchdog/wd501p.h
26
#define WDT_DC (io+7)
drivers/watchdog/wd501p.h
30
#define WDT_CLOCK (io+12) /* COUNT2: rd=16.67MHz, wr=2.0833MHz */
drivers/watchdog/wd501p.h
32
#define WDT_OPTONOTRST (io+13) /* wr=enable, rd=disable */
drivers/watchdog/wd501p.h
34
#define WDT_OPTORST (io+14) /* wr=enable, rd=disable */
drivers/watchdog/wd501p.h
36
#define WDT_PROGOUT (io+15) /* wr=enable, rd=disable */
drivers/watchdog/wdt.c
575
release_region(io, 8);
drivers/watchdog/wdt.c
603
if (!request_region(io, 8, "wdt501p")) {
drivers/watchdog/wdt.c
604
pr_err("I/O address 0x%04x already in use\n", io);
drivers/watchdog/wdt.c
638
io, irq, heartbeat, nowayout);
drivers/watchdog/wdt.c
652
release_region(io, 8);
drivers/watchdog/wdt.c
72
static int io = 0x240;
drivers/watchdog/wdt.c
77
module_param_hw(io, int, ioport, 0);
drivers/watchdog/wdt.c
78
MODULE_PARM_DESC(io, "WDT io port (default=0x240)");
drivers/watchdog/wdt_pci.c
636
io = pci_resource_start(dev, 2);
drivers/watchdog/wdt_pci.c
64
static resource_size_t io;
drivers/watchdog/wdt_pci.c
645
(unsigned long long)io, irq);
drivers/xen/pvcalls-back.c
206
atomic_inc(&map->io);
drivers/xen/pvcalls-back.c
223
atomic_inc(&map->io);
drivers/xen/pvcalls-back.c
238
while (atomic_read(&map->io) > 0) {
drivers/xen/pvcalls-back.c
257
atomic_dec(&map->io);
drivers/xen/pvcalls-back.c
312
atomic_inc(&map->io);
drivers/xen/pvcalls-back.c
369
atomic_set(&map->io, 1);
drivers/xen/pvcalls-back.c
574
atomic_inc(&map->io);
drivers/xen/pvcalls-back.c
68
atomic_t io;
drivers/xen/pvcalls-back.c
924
atomic_inc(&map->io);
fs/btrfs/block-group.c
3579
struct list_head *io = &cur_trans->io_bgs;
fs/btrfs/block-group.c
3652
list_add_tail(&cache->io_list, io);
fs/btrfs/block-group.c
3743
struct list_head *io = &cur_trans->io_bgs;
fs/btrfs/block-group.c
3801
list_add_tail(&cache->io_list, io);
fs/btrfs/block-group.c
3848
while (!list_empty(io)) {
fs/btrfs/block-group.c
3849
cache = list_first_entry(io, struct btrfs_block_group,
fs/erofs/fileio.c
125
if (io->rq && (map->m_pa + ofs != io->dev.m_pa ||
fs/erofs/fileio.c
126
map->m_deviceid != io->dev.m_deviceid)) {
fs/erofs/fileio.c
128
erofs_fileio_rq_submit(io->rq);
fs/erofs/fileio.c
129
io->rq = NULL;
fs/erofs/fileio.c
132
if (!io->rq) {
fs/erofs/fileio.c
133
io->dev = (struct erofs_map_dev) {
fs/erofs/fileio.c
134
.m_pa = io->map.m_pa + ofs,
fs/erofs/fileio.c
135
.m_deviceid = io->map.m_deviceid,
fs/erofs/fileio.c
137
err = erofs_map_dev(inode->i_sb, &io->dev);
fs/erofs/fileio.c
140
io->rq = erofs_fileio_rq_alloc(&io->dev);
fs/erofs/fileio.c
141
io->rq->bio.bi_iter.bi_sector =
fs/erofs/fileio.c
142
(io->dev.m_dif->fsoff + io->dev.m_pa) >> 9;
fs/erofs/fileio.c
145
if (!bio_add_folio(&io->rq->bio, folio, len, cur))
fs/erofs/fileio.c
149
io->dev.m_pa += len;
fs/erofs/fileio.c
161
struct erofs_fileio io = {};
fs/erofs/fileio.c
165
err = erofs_fileio_scan_folio(&io, realinode, folio);
fs/erofs/fileio.c
166
erofs_fileio_rq_submit(io.rq);
fs/erofs/fileio.c
176
struct erofs_fileio io = {};
fs/erofs/fileio.c
183
err = erofs_fileio_scan_folio(&io, realinode, folio);
fs/erofs/fileio.c
188
erofs_fileio_rq_submit(io.rq);
fs/erofs/fileio.c
89
static int erofs_fileio_scan_folio(struct erofs_fileio *io,
fs/erofs/fileio.c
92
struct erofs_map_blocks *map = &io->map;
fs/erofs/zdata.c
1390
static int z_erofs_decompress_queue(const struct z_erofs_decompressqueue *io,
fs/erofs/zdata.c
1394
.sb = io->sb,
fs/erofs/zdata.c
1398
.pcl = io->head,
fs/erofs/zdata.c
1406
err = z_erofs_decompress_pcluster(&be, io->eio) ?: err;
fs/erofs/zdata.c
1440
static void z_erofs_decompress_kickoff(struct z_erofs_decompressqueue *io,
fs/erofs/zdata.c
1443
struct erofs_sb_info *const sbi = EROFS_SB(io->sb);
fs/erofs/zdata.c
1447
if (io->sync) {
fs/erofs/zdata.c
1448
if (!atomic_add_return(bios, &io->pending_bios))
fs/erofs/zdata.c
1449
complete(&io->u.done);
fs/erofs/zdata.c
1453
if (atomic_add_return(bios, &io->pending_bios))
fs/erofs/zdata.c
1466
kthread_queue_work(worker, &io->u.kthread_work);
fs/erofs/zdata.c
1470
INIT_WORK(&io->u.work, z_erofs_decompressqueue_work);
fs/erofs/zdata.c
1472
queue_work(z_erofs_workqueue, &io->u.work);
fs/erofs/zdata.c
1476
z_erofs_decompressqueue_work(&io->u.work);
fs/erofs/zdata.c
1788
struct z_erofs_decompressqueue io[NR_JOBQUEUES];
fs/erofs/zdata.c
1800
z_erofs_submit_queue(f, io, &force_fg, !!rabytes);
fs/erofs/zdata.c
1803
err = z_erofs_decompress_queue(&io[JQ_BYPASS], &f->pagepool);
fs/erofs/zdata.c
1808
wait_for_completion_io(&io[JQ_SUBMIT].u.done);
fs/erofs/zdata.c
1811
return z_erofs_decompress_queue(&io[JQ_SUBMIT], &f->pagepool) ?: err;
fs/ext4/ext4.h
3944
extern void ext4_io_submit_init(struct ext4_io_submit *io,
fs/ext4/ext4.h
3947
extern void ext4_io_submit(struct ext4_io_submit *io);
fs/ext4/ext4.h
3948
int ext4_bio_write_folio(struct ext4_io_submit *io, struct folio *page,
fs/ext4/page-io.c
397
void ext4_io_submit(struct ext4_io_submit *io)
fs/ext4/page-io.c
399
struct bio *bio = io->io_bio;
fs/ext4/page-io.c
402
if (io->io_wbc->sync_mode == WB_SYNC_ALL)
fs/ext4/page-io.c
403
io->io_bio->bi_opf |= REQ_SYNC;
fs/ext4/page-io.c
404
blk_crypto_submit_bio(io->io_bio);
fs/ext4/page-io.c
406
io->io_bio = NULL;
fs/ext4/page-io.c
409
void ext4_io_submit_init(struct ext4_io_submit *io,
fs/ext4/page-io.c
412
io->io_wbc = wbc;
fs/ext4/page-io.c
413
io->io_bio = NULL;
fs/ext4/page-io.c
414
io->io_end = NULL;
fs/ext4/page-io.c
417
static void io_submit_init_bio(struct ext4_io_submit *io,
fs/ext4/page-io.c
433
bio->bi_private = ext4_get_io_end(io->io_end);
fs/ext4/page-io.c
435
io->io_bio = bio;
fs/ext4/page-io.c
436
io->io_next_block = bh->b_blocknr;
fs/ext4/page-io.c
437
wbc_init_bio(io->io_wbc, bio);
fs/ext4/page-io.c
440
static bool io_submit_need_new_bio(struct ext4_io_submit *io,
fs/ext4/page-io.c
445
if (bh->b_blocknr != io->io_next_block)
fs/ext4/page-io.c
447
if (!fscrypt_mergeable_bio(io->io_bio, inode,
fs/ext4/page-io.c
453
static void io_submit_add_bh(struct ext4_io_submit *io,
fs/ext4/page-io.c
459
if (io->io_bio && io_submit_need_new_bio(io, inode, folio, bh)) {
fs/ext4/page-io.c
461
ext4_io_submit(io);
fs/ext4/page-io.c
463
if (io->io_bio == NULL)
fs/ext4/page-io.c
464
io_submit_init_bio(io, inode, folio, bh);
fs/ext4/page-io.c
465
if (!bio_add_folio(io->io_bio, io_folio, bh->b_size, bh_offset(bh)))
fs/ext4/page-io.c
467
wbc_account_cgroup_owner(io->io_wbc, folio, bh->b_size);
fs/ext4/page-io.c
468
io->io_next_block++;
fs/ext4/page-io.c
471
int ext4_bio_write_folio(struct ext4_io_submit *io, struct folio *folio,
fs/ext4/page-io.c
480
struct writeback_control *wbc = io->io_wbc;
fs/ext4/page-io.c
569
if (io->io_bio)
fs/ext4/page-io.c
577
(io->io_bio || wbc->sync_mode == WB_SYNC_ALL)) {
fs/ext4/page-io.c
579
if (io->io_bio)
fs/ext4/page-io.c
580
ext4_io_submit(io);
fs/ext4/page-io.c
609
io_submit_add_bh(io, inode, folio, io_folio, bh);
fs/f2fs/data.c
1053
struct f2fs_bio_info *io = sbi->write_io[btype] + fio->temp;
fs/f2fs/data.c
1060
f2fs_down_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
1063
if (f2fs_sb_has_blkzoned(sbi) && btype < META && io->zone_pending_bio) {
fs/f2fs/data.c
1064
wait_for_completion_io(&io->zone_wait);
fs/f2fs/data.c
1065
bio_put(io->zone_pending_bio);
fs/f2fs/data.c
1066
io->zone_pending_bio = NULL;
fs/f2fs/data.c
1067
io->bi_private = NULL;
fs/f2fs/data.c
1072
spin_lock(&io->io_lock);
fs/f2fs/data.c
1073
if (list_empty(&io->io_list)) {
fs/f2fs/data.c
1074
spin_unlock(&io->io_lock);
fs/f2fs/data.c
1077
fio = list_first_entry(&io->io_list,
fs/f2fs/data.c
1080
spin_unlock(&io->io_lock);
fs/f2fs/data.c
1098
if (io->bio &&
fs/f2fs/data.c
1099
(!io_is_mergeable(sbi, io->bio, io, fio, io->last_block_in_bio,
fs/f2fs/data.c
1101
!f2fs_crypt_mergeable_bio(io->bio, fio_inode(fio),
fs/f2fs/data.c
1103
__submit_merged_bio(io);
fs/f2fs/data.c
1105
if (io->bio == NULL) {
fs/f2fs/data.c
1106
io->bio = __bio_alloc(fio, BIO_MAX_VECS);
fs/f2fs/data.c
1107
f2fs_set_bio_crypt_ctx(io->bio, fio_inode(fio),
fs/f2fs/data.c
1109
io->fio = *fio;
fs/f2fs/data.c
1112
if (!bio_add_folio(io->bio, bio_folio, folio_size(bio_folio), 0)) {
fs/f2fs/data.c
1113
__submit_merged_bio(io);
fs/f2fs/data.c
1121
io->last_block_in_bio = fio->new_blkaddr;
fs/f2fs/data.c
1127
bio_get(io->bio);
fs/f2fs/data.c
1128
reinit_completion(&io->zone_wait);
fs/f2fs/data.c
1129
io->bi_private = io->bio->bi_private;
fs/f2fs/data.c
1130
io->bio->bi_private = io;
fs/f2fs/data.c
1131
io->bio->bi_end_io = f2fs_zone_write_end_io;
fs/f2fs/data.c
1132
io->zone_pending_bio = io->bio;
fs/f2fs/data.c
1133
__submit_merged_bio(io);
fs/f2fs/data.c
1141
__submit_merged_bio(io);
fs/f2fs/data.c
1142
f2fs_up_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
424
struct f2fs_bio_info *io = (struct f2fs_bio_info *)bio->bi_private;
fs/f2fs/data.c
426
bio->bi_private = io->bi_private;
fs/f2fs/data.c
427
complete(&io->zone_wait);
fs/f2fs/data.c
586
static void __submit_merged_bio(struct f2fs_bio_info *io)
fs/f2fs/data.c
588
struct f2fs_io_info *fio = &io->fio;
fs/f2fs/data.c
590
if (!io->bio)
fs/f2fs/data.c
594
trace_f2fs_prepare_read_bio(io->sbi->sb, fio->type, io->bio);
fs/f2fs/data.c
595
f2fs_submit_read_bio(io->sbi, io->bio, fio->type);
fs/f2fs/data.c
597
trace_f2fs_prepare_write_bio(io->sbi->sb, fio->type, io->bio);
fs/f2fs/data.c
598
f2fs_submit_write_bio(io->sbi, io->bio, fio->type);
fs/f2fs/data.c
600
io->bio = NULL;
fs/f2fs/data.c
654
struct f2fs_bio_info *io = &sbi->write_io[i][j];
fs/f2fs/data.c
656
init_f2fs_rwsem_trace(&io->io_rwsem, sbi,
fs/f2fs/data.c
658
io->sbi = sbi;
fs/f2fs/data.c
659
io->bio = NULL;
fs/f2fs/data.c
660
io->last_block_in_bio = 0;
fs/f2fs/data.c
661
spin_lock_init(&io->io_lock);
fs/f2fs/data.c
662
INIT_LIST_HEAD(&io->io_list);
fs/f2fs/data.c
663
INIT_LIST_HEAD(&io->bio_list);
fs/f2fs/data.c
664
init_f2fs_rwsem(&io->bio_list_lock);
fs/f2fs/data.c
666
init_completion(&io->zone_wait);
fs/f2fs/data.c
667
io->zone_pending_bio = NULL;
fs/f2fs/data.c
668
io->bi_private = NULL;
fs/f2fs/data.c
680
struct f2fs_bio_info *io = sbi->write_io[btype] + temp;
fs/f2fs/data.c
683
f2fs_down_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
685
if (!io->bio)
fs/f2fs/data.c
690
io->fio.type = META_FLUSH;
fs/f2fs/data.c
691
io->bio->bi_opf |= REQ_META | REQ_PRIO | REQ_SYNC;
fs/f2fs/data.c
693
io->bio->bi_opf |= REQ_PREFLUSH | REQ_FUA;
fs/f2fs/data.c
695
__submit_merged_bio(io);
fs/f2fs/data.c
697
f2fs_up_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
711
struct f2fs_bio_info *io = sbi->write_io[btype] + temp;
fs/f2fs/data.c
714
f2fs_down_read_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
715
ret = __has_merged_page(io->bio, inode, folio, ino);
fs/f2fs/data.c
716
f2fs_up_read_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
809
static bool io_type_is_mergeable(struct f2fs_bio_info *io,
fs/f2fs/data.c
814
if (io->fio.op != fio->op)
fs/f2fs/data.c
816
return (io->fio.op_flags & mask) == (fio->op_flags & mask);
fs/f2fs/data.c
820
struct f2fs_bio_info *io,
fs/f2fs/data.c
827
return io_type_is_mergeable(io, fio);
fs/f2fs/data.c
833
struct f2fs_bio_info *io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
842
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
843
list_add_tail(&be->list, &io->bio_list);
fs/f2fs/data.c
844
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/data.c
863
struct f2fs_bio_info *io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
864
struct list_head *head = &io->bio_list;
fs/f2fs/data.c
867
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
890
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/data.c
911
struct f2fs_bio_info *io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
912
struct list_head *head = &io->bio_list;
fs/f2fs/data.c
918
f2fs_down_read(&io->bio_list_lock);
fs/f2fs/data.c
928
f2fs_up_read(&io->bio_list_lock);
fs/f2fs/data.c
935
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
948
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/data.c
962
struct f2fs_bio_info *io;
fs/f2fs/data.c
968
io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
974
if (list_empty(&io->bio_list))
fs/f2fs/data.c
977
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
978
list_splice_init(&io->bio_list, &list);
fs/f2fs/data.c
979
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/f2fs.h
5065
static inline void __f2fs_schedule_timeout(long timeout, bool io)
fs/f2fs/f2fs.h
5068
if (io)
fs/f2fs/f2fs.h
5079
static inline void f2fs_schedule_timeout_killable(long timeout, bool io)
fs/f2fs/f2fs.h
5086
__f2fs_schedule_timeout(DEFAULT_SCHEDULE_TIMEOUT, io);
fs/f2fs/iostat.c
104
for (io = 0; io < NR_PAGE_TYPE; io++) {
fs/f2fs/iostat.c
105
iostat_lat[idx][io].peak_lat =
fs/f2fs/iostat.c
106
jiffies_to_msecs(io_lat->peak_lat[idx][io]);
fs/f2fs/iostat.c
107
iostat_lat[idx][io].cnt = io_lat->bio_cnt[idx][io];
fs/f2fs/iostat.c
108
iostat_lat[idx][io].avg_lat = iostat_lat[idx][io].cnt ?
fs/f2fs/iostat.c
109
jiffies_to_msecs(io_lat->sum_lat[idx][io]) / iostat_lat[idx][io].cnt : 0;
fs/f2fs/iostat.c
110
io_lat->sum_lat[idx][io] = 0;
fs/f2fs/iostat.c
111
io_lat->peak_lat[idx][io] = 0;
fs/f2fs/iostat.c
112
io_lat->bio_cnt[idx][io] = 0;
fs/f2fs/iostat.c
97
int io, idx;
fs/f2fs/segment.c
3898
struct f2fs_bio_info *io;
fs/f2fs/segment.c
3902
io = sbi->write_io[fio->type] + fio->temp;
fs/f2fs/segment.c
3903
spin_lock(&io->io_lock);
fs/f2fs/segment.c
3904
list_add_tail(&fio->list, &io->io_list);
fs/f2fs/segment.c
3905
spin_unlock(&io->io_lock);
fs/fuse/cuse.c
101
return fuse_direct_io(&io, to, &pos, FUSE_DIO_CUSE);
fs/fuse/cuse.c
106
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(kiocb);
fs/fuse/cuse.c
112
return fuse_direct_io(&io, from, &pos,
fs/fuse/cuse.c
98
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(kiocb);
fs/fuse/dax.c
707
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/dax.c
710
ret = fuse_direct_io(&io, from, &iocb->ki_pos, FUSE_DIO_WRITE);
fs/fuse/dev.c
1603
list_add(&req->list, &fpq->io);
fs/fuse/dev.c
1935
list_move(&req->list, &fpq->io);
fs/fuse/dev.c
2156
list_for_each_entry_safe(req, next, &fpq->io, list) {
fs/fuse/dev.c
2229
WARN_ON(!list_empty(&fpq->io));
fs/fuse/dev.c
422
INIT_LIST_HEAD(&fpq->io);
fs/fuse/file.c
1171
struct kiocb *iocb = ia->io->iocb;
fs/fuse/file.c
1185
if (ia->io->async)
fs/fuse/file.c
1665
ssize_t fuse_direct_io(struct fuse_io_priv *io, struct iov_iter *iter,
fs/fuse/file.c
1670
struct file *file = io->iocb->ki_filp;
fs/fuse/file.c
1687
ia = fuse_io_alloc(io, max_pages);
fs/fuse/file.c
1714
io->should_dirty = !write && user_backed_iter(iter);
fs/fuse/file.c
1734
if (!io->async || nres < 0) {
fs/fuse/file.c
1735
fuse_release_user_pages(&ia->ap, nres, io->should_dirty);
fs/fuse/file.c
1755
ia = fuse_io_alloc(io, max_pages);
fs/fuse/file.c
1769
static ssize_t __fuse_direct_read(struct fuse_io_priv *io,
fs/fuse/file.c
1774
struct inode *inode = file_inode(io->iocb->ki_filp);
fs/fuse/file.c
1776
res = fuse_direct_io(io, iter, ppos, 0);
fs/fuse/file.c
1792
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/file.c
1794
res = __fuse_direct_read(&io, to, &iocb->ki_pos);
fs/fuse/file.c
1815
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/file.c
1817
res = fuse_direct_io(&io, from, &iocb->ki_pos,
fs/fuse/file.c
2739
struct fuse_io_priv *io;
fs/fuse/file.c
2755
io = kmalloc_obj(struct fuse_io_priv);
fs/fuse/file.c
2756
if (!io)
fs/fuse/file.c
2758
spin_lock_init(&io->lock);
fs/fuse/file.c
2759
kref_init(&io->refcnt);
fs/fuse/file.c
2760
io->reqs = 1;
fs/fuse/file.c
2761
io->bytes = -1;
fs/fuse/file.c
2762
io->size = 0;
fs/fuse/file.c
2763
io->offset = offset;
fs/fuse/file.c
2764
io->write = (iov_iter_rw(iter) == WRITE);
fs/fuse/file.c
2765
io->err = 0;
fs/fuse/file.c
2770
io->async = async;
fs/fuse/file.c
2771
io->iocb = iocb;
fs/fuse/file.c
2772
io->blocking = is_sync_kiocb(iocb);
fs/fuse/file.c
2775
if (io->async && !io->write && offset + count > i_size) {
fs/fuse/file.c
2785
if ((offset + count > i_size) && io->write)
fs/fuse/file.c
2786
io->blocking = true;
fs/fuse/file.c
2788
if (io->async && io->blocking) {
fs/fuse/file.c
2793
kref_get(&io->refcnt);
fs/fuse/file.c
2794
io->done = &wait;
fs/fuse/file.c
2798
ret = fuse_direct_io(io, iter, &pos, FUSE_DIO_WRITE);
fs/fuse/file.c
2801
ret = __fuse_direct_read(io, iter, &pos);
fs/fuse/file.c
2805
if (io->async) {
fs/fuse/file.c
2806
bool blocking = io->blocking;
fs/fuse/file.c
2808
fuse_aio_complete(io, ret < 0 ? ret : 0, -1);
fs/fuse/file.c
2815
ret = fuse_get_res_by_io(io);
fs/fuse/file.c
2818
kref_put(&io->refcnt, fuse_io_release);
fs/fuse/file.c
631
static ssize_t fuse_get_res_by_io(struct fuse_io_priv *io)
fs/fuse/file.c
633
if (io->err)
fs/fuse/file.c
634
return io->err;
fs/fuse/file.c
636
if (io->bytes >= 0 && io->write)
fs/fuse/file.c
639
return io->bytes < 0 ? io->size : io->bytes;
fs/fuse/file.c
644
struct fuse_io_priv *io = container_of(work, struct fuse_io_priv, work);
fs/fuse/file.c
645
struct address_space *mapping = io->iocb->ki_filp->f_mapping;
fs/fuse/file.c
646
ssize_t res = fuse_get_res_by_io(io);
fs/fuse/file.c
647
pgoff_t start = io->offset >> PAGE_SHIFT;
fs/fuse/file.c
648
pgoff_t end = (io->offset + res - 1) >> PAGE_SHIFT;
fs/fuse/file.c
651
io->iocb->ki_complete(io->iocb, res);
fs/fuse/file.c
652
kref_put(&io->refcnt, fuse_io_release);
fs/fuse/file.c
671
static void fuse_aio_complete(struct fuse_io_priv *io, int err, ssize_t pos)
fs/fuse/file.c
675
spin_lock(&io->lock);
fs/fuse/file.c
677
io->err = io->err ? : err;
fs/fuse/file.c
678
else if (pos >= 0 && (io->bytes < 0 || pos < io->bytes))
fs/fuse/file.c
679
io->bytes = pos;
fs/fuse/file.c
681
left = --io->reqs;
fs/fuse/file.c
682
if (!left && io->blocking)
fs/fuse/file.c
683
complete(io->done);
fs/fuse/file.c
684
spin_unlock(&io->lock);
fs/fuse/file.c
686
if (!left && !io->blocking) {
fs/fuse/file.c
687
struct inode *inode = file_inode(io->iocb->ki_filp);
fs/fuse/file.c
688
struct address_space *mapping = io->iocb->ki_filp->f_mapping;
fs/fuse/file.c
689
ssize_t res = fuse_get_res_by_io(io);
fs/fuse/file.c
700
if (io->write && res > 0 && mapping->nrpages) {
fs/fuse/file.c
706
INIT_WORK(&io->work, fuse_aio_invalidate_worker);
fs/fuse/file.c
707
queue_work(inode->i_sb->s_dio_done_wq, &io->work);
fs/fuse/file.c
711
io->iocb->ki_complete(io->iocb, res);
fs/fuse/file.c
714
kref_put(&io->refcnt, fuse_io_release);
fs/fuse/file.c
717
static struct fuse_io_args *fuse_io_alloc(struct fuse_io_priv *io,
fs/fuse/file.c
724
ia->io = io;
fs/fuse/file.c
744
struct fuse_io_priv *io = ia->io;
fs/fuse/file.c
750
} else if (io->write) {
fs/fuse/file.c
756
pos = ia->write.in.offset - io->offset +
fs/fuse/file.c
764
pos = ia->read.in.offset - io->offset + outsize;
fs/fuse/file.c
767
fuse_release_user_pages(&ia->ap, err ?: nres, io->should_dirty);
fs/fuse/file.c
769
fuse_aio_complete(io, err, pos);
fs/fuse/file.c
777
struct fuse_io_priv *io = ia->io;
fs/fuse/file.c
779
spin_lock(&io->lock);
fs/fuse/file.c
780
kref_get(&io->refcnt);
fs/fuse/file.c
781
io->size += num_bytes;
fs/fuse/file.c
782
io->reqs++;
fs/fuse/file.c
783
spin_unlock(&io->lock);
fs/fuse/file.c
786
ia->ap.args.may_block = io->should_dirty;
fs/fuse/file.c
797
struct file *file = ia->io->iocb->ki_filp;
fs/fuse/file.c
807
if (ia->io->async)
fs/fuse/fuse_dev_i.h
292
struct list_head io;
fs/fuse/fuse_i.h
1177
ssize_t fuse_direct_io(struct fuse_io_priv *io, struct iov_iter *iter,
fs/fuse/fuse_i.h
934
struct fuse_io_priv *io;
fs/fuse/req_timeout.c
98
if (fuse_request_expired(fch, &fpq->io) ||
fs/nfs/pnfs.c
2022
bool size = false, size_set = false, io = false, io_set = false, ret = false;
fs/nfs/pnfs.c
2043
io = true;
fs/nfs/pnfs.c
2058
io = true;
fs/nfs/pnfs.c
2063
if (size && io)
fs/nfs/pnfs.c
2065
} else if (size || io)
fs/nfs/pnfs.c
2068
dprintk("<-- %s size %d io %d ret %d\n", __func__, size, io, ret);
fs/orangefs/downcall.h
108
struct orangefs_io_response io;
fs/orangefs/file.c
245
if (type == ORANGEFS_IO_READ && new_op->downcall.resp.io.amt_complete) {
fs/orangefs/file.c
252
copy_amount = new_op->downcall.resp.io.amt_complete;
fs/orangefs/file.c
267
(int)new_op->downcall.resp.io.amt_complete);
fs/orangefs/file.c
269
ret = new_op->downcall.resp.io.amt_complete;
fs/orangefs/file.c
68
new_op->upcall.req.io.readahead_size = readahead_size;
fs/orangefs/file.c
69
new_op->upcall.req.io.io_type = type;
fs/orangefs/file.c
70
new_op->upcall.req.io.refn = orangefs_inode->refn;
fs/orangefs/file.c
90
new_op->upcall.req.io.buf_index = buffer_index;
fs/orangefs/file.c
91
new_op->upcall.req.io.count = total_size;
fs/orangefs/file.c
92
new_op->upcall.req.io.offset = *offset;
fs/orangefs/orangefs-utils.c
21
fsid = op->upcall.req.io.refn.fs_id;
fs/orangefs/upcall.h
231
struct orangefs_io_request_s io;
fs/orangefs/waitqueue.c
213
op->slot_to_free = op->upcall.req.io.buf_index;
fs/smb/client/cifsglob.h
259
} io;
fs/smb/client/cifsproto.h
489
free_rsp_buf(data->reparse.io.buftype, data->reparse.io.iov.iov_base);
fs/smb/client/inode.c
1196
} else if (data->reparse.io.buftype != CIFS_NO_BUFFER &&
fs/smb/client/inode.c
1197
data->reparse.io.iov.iov_base) {
fs/smb/client/inode.c
1198
iov = &data->reparse.io.iov;
fs/smb/client/reparse.c
1130
struct smb2_ioctl_rsp *io = rsp_iov->iov_base;
fs/smb/client/reparse.c
1131
*plen = le32_to_cpu(io->OutputCount);
fs/smb/client/reparse.c
1132
return (struct reparse_data_buffer *)((u8 *)io +
fs/smb/client/reparse.c
1133
le32_to_cpu(io->OutputOffset));
fs/smb/client/smb1ops.c
1256
TRANSACT_IOCTL_RSP *io = rsp_iov->iov_base;
fs/smb/client/smb1ops.c
1257
*plen = le16_to_cpu(io->ByteCount);
fs/smb/client/smb1ops.c
1258
return (struct reparse_data_buffer *)((__u8 *)&io->hdr.Protocol +
fs/smb/client/smb1ops.c
1259
le32_to_cpu(io->DataOffset));
fs/smb/client/smb2inode.c
1479
*rsp = data.reparse.io.iov;
fs/smb/client/smb2inode.c
1480
*rsp_buftype = data.reparse.io.buftype;
fs/smb/client/smb2inode.c
1481
memset(&data.reparse.io.iov, 0, sizeof(data.reparse.io.iov));
fs/smb/client/smb2inode.c
1482
data.reparse.io.buftype = CIFS_NO_BUFFER;
fs/smb/client/smb2inode.c
31
struct smb2_ioctl_rsp *io = iov->iov_base;
fs/smb/client/smb2inode.c
35
count = le32_to_cpu(io->OutputCount);
fs/smb/client/smb2inode.c
36
off = le32_to_cpu(io->OutputOffset);
fs/smb/client/smb2inode.c
41
buf = (struct reparse_data_buffer *)((u8 *)io + off);
fs/smb/client/smb2inode.c
706
idata->reparse.io.iov = *iov;
fs/smb/client/smb2inode.c
707
idata->reparse.io.buftype = resp_buftype[i + 1];
include/acpi/acrestyp.h
257
struct acpi_io_attribute io;
include/acpi/acrestyp.h
644
struct acpi_resource_io io;
include/linux/cgroup_subsys.h
25
SUBSYS(io)
include/linux/comedi/comedi_8255.h
48
int (*io)(struct comedi_device *dev, int dir, int port,
include/linux/comedi/comedilib.h
46
unsigned int chan, unsigned int *io);
include/linux/comedi/comedilib.h
48
unsigned int chan, unsigned int io);
include/linux/dma/edma.h
24
void __iomem *io;
include/linux/fb.h
703
__FB_GEN_DEFAULT_DEFERRED_OPS_RDWR(__prefix, __damage_range, io) \
include/linux/gameport.h
22
int io;
include/linux/misc/keba.h
21
struct resource io;
include/linux/misc/keba.h
35
struct resource io;
include/linux/misc/keba.h
47
struct resource io;
include/linux/misc/keba.h
57
struct resource io;
include/linux/misc/keba.h
68
struct resource io;
include/linux/platform_data/xtalk-bridge.h
13
struct resource io;
include/linux/usb.h
1976
struct usb_sg_request *io,
include/linux/usb.h
1985
void usb_sg_cancel(struct usb_sg_request *io);
include/linux/usb.h
1986
void usb_sg_wait(struct usb_sg_request *io);
include/linux/vfio_pci_core.h
199
void __iomem *io, char __user *buf,
include/linux/vfio_pci_core.h
211
bool test_mem, u##size val, void __iomem *io);
include/linux/vfio_pci_core.h
222
bool test_mem, u##size *val, void __iomem *io);
include/pcmcia/cistpl.h
461
cistpl_io_t io;
include/pcmcia/cistpl.h
481
u_char io;
include/pcmcia/ss.h
126
int (*set_io_map)(struct pcmcia_socket *s, struct pccard_io_map *io);
include/pcmcia/ss.h
139
io_window_t io[MAX_IO_WIN];
include/uapi/linux/kvm.h
269
} io;
io_uring/net.c
1042
if (copy_to_user(io->buf, &hdr, copy_len)) {
io_uring/net.c
1364
struct io_async_msghdr *io = req->async_data;
io_uring/net.c
1367
io_netmsg_iovec_free(io);
io_uring/net.c
345
struct io_async_msghdr *io = req->async_data;
io_uring/net.c
347
io_netmsg_iovec_free(io);
io_uring/net.c
997
static int io_recvmsg_multishot(struct socket *sock, struct io_sr_msg *io,
io_uring/rw.c
1001
iov_iter_advance(&io->iter, ret);
io_uring/rw.c
1002
if (!iov_iter_count(&io->iter))
io_uring/rw.c
1004
io->bytes_done += ret;
io_uring/rw.c
1005
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/rw.c
1013
req->cqe.res = iov_iter_count(&io->iter);
io_uring/rw.c
1020
ret = io_iter_do_read(rw, &io->iter);
io_uring/rw.c
1025
iov_iter_restore(&io->iter, &io->iter_state);
io_uring/rw.c
105
io_vec_reset_iovec(&io->vec, iov, io->iter.nr_segs);
io_uring/rw.c
111
struct io_async_rw *io, struct io_br_sel *sel,
io_uring/rw.c
1138
struct io_async_rw *io = req->async_data;
io_uring/rw.c
1144
ret = io_rw_import_reg_vec(req, io, ITER_SOURCE, issue_flags);
io_uring/rw.c
1152
req->cqe.res = iov_iter_count(&io->iter);
io_uring/rw.c
1182
ret2 = req->file->f_op->write_iter(kiocb, &io->iter);
io_uring/rw.c
1184
ret2 = loop_rw_iter(WRITE, rw, &io->iter);
io_uring/rw.c
120
return io_import_vec(ddir, req, io, sel->addr, sqe_len);
io_uring/rw.c
1211
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/rw.c
1212
io->bytes_done += ret2;
io_uring/rw.c
1222
iov_iter_restore(&io->iter, &io->iter_state);
io_uring/rw.c
1223
io_meta_restore(io, kiocb);
io_uring/rw.c
123
*sel = io_buffer_select(req, &sqe_len, io->buf_group, issue_flags);
io_uring/rw.c
129
return import_ubuf(ddir, sel->addr, sqe_len, &io->iter);
io_uring/rw.c
133
struct io_async_rw *io,
io_uring/rw.c
139
ret = __io_import_rw_buffer(rw, req, io, sel, issue_flags);
io_uring/rw.c
143
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/rw.c
218
static inline void io_meta_save_state(struct io_async_rw *io)
io_uring/rw.c
220
io->meta_state.seed = io->meta.seed;
io_uring/rw.c
221
iov_iter_save_state(&io->meta.iter, &io->meta_state.iter_meta);
io_uring/rw.c
224
static inline void io_meta_restore(struct io_async_rw *io, struct kiocb *kiocb)
io_uring/rw.c
227
io->meta.seed = io->meta_state.seed;
io_uring/rw.c
228
iov_iter_restore(&io->meta.iter, &io->meta_state.iter_meta);
io_uring/rw.c
236
struct io_async_rw *io;
io_uring/rw.c
246
io = req->async_data;
io_uring/rw.c
247
io->meta.flags = pi_attr.flags;
io_uring/rw.c
248
io->meta.app_tag = pi_attr.app_tag;
io_uring/rw.c
249
io->meta.seed = pi_attr.seed;
io_uring/rw.c
251
pi_attr.len, &io->meta.iter);
io_uring/rw.c
255
io_meta_save_state(io);
io_uring/rw.c
263
struct io_async_rw *io;
io_uring/rw.c
270
io = req->async_data;
io_uring/rw.c
275
io->buf_group = req->buf_index;
io_uring/rw.c
377
struct io_async_rw *io = req->async_data;
io_uring/rw.c
380
if (io->bytes_done)
io_uring/rw.c
383
ret = io_import_reg_buf(req, &io->iter, rw->addr, rw->len, ddir,
io_uring/rw.c
385
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/rw.c
400
struct io_async_rw *io,
io_uring/rw.c
407
ret = io_import_reg_vec(ddir, &io->iter, req, &io->vec,
io_uring/rw.c
411
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/rw.c
419
struct io_async_rw *io = req->async_data;
io_uring/rw.c
423
return io_prep_reg_iovec(req, &io->vec, uvec, rw->len);
io_uring/rw.c
501
struct io_async_rw *io = req->async_data;
io_uring/rw.c
517
io_meta_restore(io, &rw->kiocb);
io_uring/rw.c
518
iov_iter_restore(&io->iter, &io->iter_state);
io_uring/rw.c
564
struct io_async_rw *io = req->async_data;
io_uring/rw.c
567
if (req_has_async_data(req) && io->bytes_done > 0) {
io_uring/rw.c
569
res = io->bytes_done;
io_uring/rw.c
571
res += io->bytes_done;
io_uring/rw.c
801
struct io_async_rw *io = req->async_data;
io_uring/rw.c
802
struct wait_page_queue *wait = &io->wpq;
io_uring/rw.c
84
struct io_async_rw *io,
io_uring/rw.c
899
struct io_async_rw *io = req->async_data;
io_uring/rw.c
91
if (io->vec.iovec) {
io_uring/rw.c
911
kiocb->private = &io->meta;
io_uring/rw.c
92
nr_segs = io->vec.nr;
io_uring/rw.c
922
struct io_async_rw *io = req->async_data;
io_uring/rw.c
928
ret = io_rw_import_reg_vec(req, io, ITER_DEST, issue_flags);
io_uring/rw.c
93
iov = io->vec.iovec;
io_uring/rw.c
932
ret = io_import_rw_buffer(ITER_DEST, req, io, sel, issue_flags);
io_uring/rw.c
939
req->cqe.res = iov_iter_count(&io->iter);
io_uring/rw.c
957
ret = io_iter_do_read(rw, &io->iter);
io_uring/rw.c
96
iov = &io->fast_iov;
io_uring/rw.c
99
ret = __import_iovec(ddir, uvec, uvec_segs, nr_segs, &iov, &io->iter,
io_uring/rw.c
992
iov_iter_restore(&io->iter, &io->iter_state);
io_uring/rw.c
993
io_meta_restore(io, kiocb);
io_uring/timeout.c
154
struct io_timeout_data *io = req->async_data;
io_uring/timeout.c
156
if (hrtimer_try_to_cancel(&io->timer) != -1) {
io_uring/timeout.c
283
struct io_timeout_data *io = link->async_data;
io_uring/timeout.c
292
if (hrtimer_try_to_cancel(&io->timer) != -1) {
io_uring/timeout.c
329
struct io_timeout_data *io;
io_uring/timeout.c
343
io = req->async_data;
io_uring/timeout.c
344
if (hrtimer_try_to_cancel(&io->timer) == -1)
io_uring/timeout.c
443
struct io_timeout_data *io;
io_uring/timeout.c
458
io = req->async_data;
io_uring/timeout.c
459
if (hrtimer_try_to_cancel(&io->timer) == -1)
io_uring/timeout.c
461
hrtimer_setup(&io->timer, io_link_timeout_fn, io_timeout_get_clock(io), mode);
io_uring/timeout.c
462
hrtimer_start(&io->timer, ts, mode);
samples/seccomp/user-trap.c
38
struct iovec io = {
samples/seccomp/user-trap.c
43
msg.msg_iov = &io;
samples/seccomp/user-trap.c
69
struct iovec io = {
samples/seccomp/user-trap.c
74
msg.msg_iov = &io;
samples/user_events/example.c
42
struct iovec io[2];
samples/user_events/example.c
51
io[0].iov_base = &write;
samples/user_events/example.c
52
io[0].iov_len = sizeof(write);
samples/user_events/example.c
53
io[1].iov_base = &count;
samples/user_events/example.c
54
io[1].iov_len = sizeof(count);
samples/user_events/example.c
62
writev(data_fd, (const struct iovec *)io, 2);
sound/isa/cmi8328.c
388
gp->io = 0x200;
sound/isa/msnd/msnd.c
123
inb(dev->io + HP_RXL);
sound/isa/msnd/msnd.c
124
inb(dev->io + HP_CVR);
sound/isa/msnd/msnd.c
136
outb(inb(dev->io + HP_ICR) | HPICR_TREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
138
outb(dev->irqid, dev->io + HP_IRQM);
sound/isa/msnd/msnd.c
140
outb(inb(dev->io + HP_ICR) & ~HPICR_TREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
141
outb(inb(dev->io + HP_ICR) | HPICR_RREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
159
outb(inb(dev->io + HP_ICR) & ~HPICR_RREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
161
outb(HPIRQ_NONE, dev->io + HP_IRQM);
sound/isa/msnd/msnd.c
288
outb(HPBLKSEL_1, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
293
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
296
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
399
outb(HPBLKSEL_1, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
401
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
55
unsigned int io = dev->io;
sound/isa/msnd/msnd.c
59
if (inb(io + HP_ISR) & HPISR_TXDE)
sound/isa/msnd/msnd.c
67
unsigned int io = dev->io;
sound/isa/msnd/msnd.c
71
if (!(inb(io + HP_CVR) & HPCVR_HC))
sound/isa/msnd/msnd.c
81
outb(cmd, dev->io + HP_CVR);
sound/isa/msnd/msnd.c
94
unsigned int io = dev->io;
sound/isa/msnd/msnd.c
97
outb(high, io + HP_TXH);
sound/isa/msnd/msnd.c
98
outb(mid, io + HP_TXM);
sound/isa/msnd/msnd.c
99
outb(low, io + HP_TXL);
sound/isa/msnd/msnd.h
222
long io;
sound/isa/msnd/msnd_pinnacle.c
1144
io[idx] = pnp_port_start(pnp_dev, 0);
sound/isa/msnd/msnd_pinnacle.c
1156
chip->io = io[idx];
sound/isa/msnd/msnd_pinnacle.c
175
inb(chip->io + HP_RXL);
sound/isa/msnd/msnd_pinnacle.c
182
long io = chip->io;
sound/isa/msnd/msnd_pinnacle.c
185
outb(HPDSPRESET_ON, io + HP_DSPR);
sound/isa/msnd/msnd_pinnacle.c
189
*info = inb(io + HP_INFO);
sound/isa/msnd/msnd_pinnacle.c
191
outb(HPDSPRESET_OFF, io + HP_DSPR);
sound/isa/msnd/msnd_pinnacle.c
194
if (inb(io + HP_CVR) == HP_CVR_DEF)
sound/isa/msnd/msnd_pinnacle.c
213
if (!request_region(chip->io, DSP_NUMIO, "probing")) {
sound/isa/msnd/msnd_pinnacle.c
219
release_region(chip->io, DSP_NUMIO);
sound/isa/msnd/msnd_pinnacle.c
229
chip->io, chip->io + DSP_NUMIO - 1,
sound/isa/msnd/msnd_pinnacle.c
290
chip->io, chip->io + DSP_NUMIO - 1,
sound/isa/msnd/msnd_pinnacle.c
295
release_region(chip->io, DSP_NUMIO);
sound/isa/msnd/msnd_pinnacle.c
305
outb(chip->memid, chip->io + HP_MEMM);
sound/isa/msnd/msnd_pinnacle.c
307
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd_pinnacle.c
320
outb(HPBLKSEL_1, chip->io + HP_BLKS);
sound/isa/msnd/msnd_pinnacle.c
322
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd_pinnacle.c
373
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd_pinnacle.c
405
outb(HPPRORESET_ON, chip->io + HP_PROR);
sound/isa/msnd/msnd_pinnacle.c
407
outb(HPPRORESET_OFF, chip->io + HP_PROR);
sound/isa/msnd/msnd_pinnacle.c
418
outb(HPWAITSTATE_0, chip->io + HP_WAIT);
sound/isa/msnd/msnd_pinnacle.c
419
outb(HPBITMODE_16, chip->io + HP_BITM);
sound/isa/msnd/msnd_pinnacle.c
544
if (!devm_request_region(card->dev, chip->io, DSP_NUMIO,
sound/isa/msnd/msnd_pinnacle.c
628
static int snd_msnd_write_cfg_io0(struct snd_msnd *chip, int cfg, int num, u16 io)
sound/isa/msnd/msnd_pinnacle.c
632
if (snd_msnd_write_cfg(chip, cfg, IREG_IO0_BASEHI, HIBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
634
if (snd_msnd_write_cfg(chip, cfg, IREG_IO0_BASELO, LOBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
639
static int snd_msnd_write_cfg_io1(struct snd_msnd *chip, int cfg, int num, u16 io)
sound/isa/msnd/msnd_pinnacle.c
643
if (snd_msnd_write_cfg(chip, cfg, IREG_IO1_BASEHI, HIBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
645
if (snd_msnd_write_cfg(chip, cfg, IREG_IO1_BASELO, LOBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
729
static long io[SNDRV_CARDS] = SNDRV_DEFAULT_PORT;
sound/isa/msnd/msnd_pinnacle.c
768
module_param_hw_array(io, long, ioport, NULL, 0444);
sound/isa/msnd/msnd_pinnacle.c
769
MODULE_PARM_DESC(io, "IO port #");
sound/isa/msnd/msnd_pinnacle.c
789
if (io[i] == SNDRV_AUTO_PORT)
sound/isa/msnd/msnd_pinnacle.c
798
if (!(io[i] == 0x290 ||
sound/isa/msnd/msnd_pinnacle.c
799
io[i] == 0x260 ||
sound/isa/msnd/msnd_pinnacle.c
800
io[i] == 0x250 ||
sound/isa/msnd/msnd_pinnacle.c
801
io[i] == 0x240 ||
sound/isa/msnd/msnd_pinnacle.c
802
io[i] == 0x230 ||
sound/isa/msnd/msnd_pinnacle.c
803
io[i] == 0x220 ||
sound/isa/msnd/msnd_pinnacle.c
804
io[i] == 0x210 ||
sound/isa/msnd/msnd_pinnacle.c
805
io[i] == 0x3e0)) {
sound/isa/msnd/msnd_pinnacle.c
812
if (io[i] < 0x100 || io[i] > 0x3e0 || (io[i] % 0x10) != 0) {
sound/isa/msnd/msnd_pinnacle.c
926
io[idx], 0,
sound/isa/msnd/msnd_pinnacle.c
984
chip->io = io[idx];
sound/pci/als4000.c
766
gp->io = io_port;
sound/pci/au88x0/au88x0.c
167
chip->io = pci_resource_start(pci, 0);
sound/pci/au88x0/au88x0.c
226
card->shortname, chip->io, chip->irq);
sound/pci/au88x0/au88x0.h
173
unsigned long io;
sound/pci/azt3328.c
1789
gp->io = chip->game_io;
sound/pci/cmipci.c
2829
gp->io = io_port;
sound/pci/cs5530.c
68
static u8 snd_cs5530_mixer_read(unsigned long io, u8 reg)
sound/pci/cs5530.c
70
outb(reg, io + 4);
sound/pci/cs5530.c
72
reg = inb(io + 5);
sound/pci/ens1370.c
1788
gp->io = io_port;
sound/pci/ens1370.c
1805
int port = ensoniq->gameport->io;
sound/pci/es1938.c
1470
gp->io = chip->game_port;
sound/pci/es1968.c
2414
gp->io = JOYSTICK_ADDR;
sound/pci/es1968.c
2520
unsigned long io = chip->io_port + GPIO_DATA;
sound/pci/es1968.c
2521
u16 odir = inw(io + IO_DIR);
sound/pci/es1968.c
2526
io + IO_MASK);
sound/pci/es1968.c
2528
io + IO_DIR);
sound/pci/es1968.c
2531
io + IO_MASK);
sound/pci/es1968.c
2533
| (1 << gpio.clk) | (1 << gpio.wren), io + IO_DIR);
sound/pci/maestro3.c
1930
int io = chip->iobase;
sound/pci/maestro3.c
1935
tmp = inw(io + RING_BUS_CTRL_B) & ~SECOND_CODEC_ID_MASK;
sound/pci/maestro3.c
1940
outw(tmp | isremote, io + RING_BUS_CTRL_B);
sound/pci/maestro3.c
1941
outw((inw(io + SDO_OUT_DEST_CTRL) & ~COMMAND_ADDR_OUT) | isremote,
sound/pci/maestro3.c
1942
io + SDO_OUT_DEST_CTRL);
sound/pci/maestro3.c
1943
outw((inw(io + SDO_IN_DEST_CTRL) & ~STATUS_ADDR_IN) | isremote,
sound/pci/maestro3.c
1944
io + SDO_IN_DEST_CTRL);
sound/pci/maestro3.c
1971
int io = chip->iobase;
sound/pci/maestro3.c
1988
dir = inw(io + GPIO_DIRECTION);
sound/pci/maestro3.c
1994
outw(IO_SRAM_ENABLE, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
1997
outw(dir & ~GPO_PRIMARY_AC97 , io + GPIO_DIRECTION);
sound/pci/maestro3.c
1998
outw(~GPO_PRIMARY_AC97 , io + GPIO_MASK);
sound/pci/maestro3.c
1999
outw(0, io + GPIO_DATA);
sound/pci/maestro3.c
2000
outw(dir | GPO_PRIMARY_AC97, io + GPIO_DIRECTION);
sound/pci/maestro3.c
2004
outw(GPO_PRIMARY_AC97, io + GPIO_DATA);
sound/pci/maestro3.c
2007
outw(IO_SRAM_ENABLE | SERIAL_AC_LINK_ENABLE, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2008
outw(~0, io + GPIO_MASK);
sound/pci/maestro3.c
2027
tmp = inw(io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2028
outw(RAC_SDFS_ENABLE|LAC_SDFS_ENABLE, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2030
outw(tmp, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2221
int io = chip->iobase;
sound/pci/maestro3.c
2231
outw(~gpo, io + GPIO_MASK);
sound/pci/maestro3.c
2233
outw(inw(io + GPIO_DIRECTION) | gpo,
sound/pci/maestro3.c
2234
io + GPIO_DIRECTION);
sound/pci/maestro3.c
2237
io + GPIO_DATA);
sound/pci/maestro3.c
2239
outw(0xffff, io + GPIO_MASK);
sound/pci/maestro3.c
2245
unsigned long io = chip->iobase;
sound/pci/maestro3.c
2255
outw(0xffff, io + GPIO_MASK);
sound/pci/maestro3.c
2256
outw(0x0000, io + GPIO_DATA);
sound/pci/maestro3.c
2258
outw(~val, io + GPIO_MASK);
sound/pci/maestro3.c
2259
outw(inw(io + GPIO_DIRECTION) & ~val, io + GPIO_DIRECTION);
sound/pci/maestro3.c
2260
outw(val, io + GPIO_MASK);
sound/pci/maestro3.c
2262
outw(0xffff, io + GPIO_MASK);
sound/pci/maestro3.c
2269
unsigned long io = chip->iobase;
sound/pci/maestro3.c
2313
outb(0x00, io + HARDWARE_VOL_CTRL);
sound/pci/maestro3.c
2314
outb(0x88, io + SHADOW_MIX_REG_VOICE);
sound/pci/maestro3.c
2315
outb(0x88, io + HW_VOL_COUNTER_VOICE);
sound/pci/maestro3.c
2316
outb(0x88, io + SHADOW_MIX_REG_MASTER);
sound/pci/maestro3.c
2317
outb(0x88, io + HW_VOL_COUNTER_MASTER);
sound/pci/maestro3.c
2325
unsigned long io = chip->iobase;
sound/pci/maestro3.c
2333
outw(val, io + HOST_INT_CTRL);
sound/pci/maestro3.c
2334
outb(inb(io + ASSP_CONTROL_C) | ASSP_HOST_INT_ENABLE,
sound/pci/maestro3.c
2335
io + ASSP_CONTROL_C);
sound/pci/riptide/riptide.c
2002
gameport->io = joystick_port[dev];
sound/pci/riptide/riptide.c
2016
release_region(gameport->io, 8);
sound/pci/sis7019.c
1012
unsigned long io = sis->ioport;
sound/pci/sis7019.c
1021
outl(SIS_GCR_SOFTWARE_RESET, io + SIS_GCR);
sound/pci/sis7019.c
1023
outl(0, io + SIS_GCR);
sound/pci/sis7019.c
1028
while ((inw(io + SIS_AC97_SEMA) & SIS_AC97_SEMA_BUSY) && --count)
sound/pci/sis7019.c
1034
outl(SIS_AC97_CMD_CODEC_COLD_RESET, io + SIS_AC97_CMD);
sound/pci/sis7019.c
1038
while ((inw(io + SIS_AC97_STATUS) & SIS_AC97_STATUS_BUSY) && --count)
sound/pci/sis7019.c
1043
outl(SIS_AC97_SEMA_RELEASE, io + SIS_AC97_SEMA);
sound/pci/sis7019.c
1055
status = inl(io + SIS_AC97_STATUS);
sound/pci/sis7019.c
1086
outl(SIS_AC97_CONF_AUDIO_ALIVE, io + SIS_AC97_CONF);
sound/pci/sis7019.c
1090
SIS_AC97_CONF_CODEC_VRA_ENABLE, io + SIS_AC97_CONF);
sound/pci/sis7019.c
1094
outl(0, io + SIS_AC97_PSR);
sound/pci/sis7019.c
1098
outl(SIS_DMA_CSR_PCI_SETTINGS, io + SIS_DMA_CSR);
sound/pci/sis7019.c
1106
outl(0, io + SIS_PLAY_SYNC_GROUP_A);
sound/pci/sis7019.c
1107
outl(0, io + SIS_PLAY_SYNC_GROUP_B);
sound/pci/sis7019.c
1108
outl(0, io + SIS_PLAY_SYNC_GROUP_C);
sound/pci/sis7019.c
1109
outl(0, io + SIS_PLAY_SYNC_GROUP_D);
sound/pci/sis7019.c
1110
outl(0, io + SIS_MIXER_SYNC_GROUP);
sound/pci/sis7019.c
1123
outl(0xffff0000, io + SIS_WEVCR);
sound/pci/sis7019.c
1127
outl(0, io + SIS_WECCR);
sound/pci/sis7019.c
1133
SIS_GIER_AUDIO_RECORD_DMA_IRQ_ENABLE, io + SIS_GIER);
sound/pci/sis7019.c
295
unsigned long io = sis->ioport;
sound/pci/sis7019.c
305
intr = inl(io + SIS_GISR);
sound/pci/sis7019.c
312
status = inl(io + SIS_PISR_A);
sound/pci/sis7019.c
315
outl(status, io + SIS_PISR_A);
sound/pci/sis7019.c
318
status = inl(io + SIS_PISR_B);
sound/pci/sis7019.c
321
outl(status, io + SIS_PISR_B);
sound/pci/sis7019.c
324
status = inl(io + SIS_RISR);
sound/pci/sis7019.c
330
outl(status, io + SIS_RISR);
sound/pci/sis7019.c
333
outl(intr, io + SIS_GISR);
sound/pci/sis7019.c
334
intr = inl(io + SIS_GISR);
sound/pci/sis7019.c
556
unsigned long io = sis->ioport;
sound/pci/sis7019.c
606
outl(record, io + SIS_RECORD_START_REG);
sound/pci/sis7019.c
608
outl(play[0], io + SIS_PLAY_START_A_REG);
sound/pci/sis7019.c
610
outl(play[1], io + SIS_PLAY_START_B_REG);
sound/pci/sis7019.c
613
outl(record, io + SIS_RECORD_STOP_REG);
sound/pci/sis7019.c
615
outl(play[0], io + SIS_PLAY_STOP_A_REG);
sound/pci/sis7019.c
617
outl(play[1], io + SIS_PLAY_STOP_B_REG);
sound/pci/sis7019.c
877
unsigned long io = sis->ioport;
sound/pci/sis7019.c
897
while ((inw(io + SIS_AC97_SEMA) & SIS_AC97_SEMA_BUSY) && --count)
sound/pci/sis7019.c
907
status = inw(io + SIS_AC97_STATUS);
sound/pci/sis7019.c
919
outl(cmd, io + SIS_AC97_CMD);
sound/pci/sis7019.c
923
while ((inw(io + SIS_AC97_STATUS) & SIS_AC97_STATUS_BUSY) && --count)
sound/pci/sis7019.c
928
val = inl(io + SIS_AC97_CMD) >> 16;
sound/pci/sis7019.c
931
outl(SIS_AC97_SEMA_RELEASE, io + SIS_AC97_SEMA);
sound/pci/sonicvibes.c
1147
gp->io = sonic->game_port;
sound/pci/via82xx.c
1925
gp->io = JOYSTICK_ADDR;
sound/pci/ymfpci/ymfpci.c
130
gp->io = io_port;
sound/soc/kirkwood/kirkwood-dma.c
140
writel((unsigned int)-1, priv->io + KIRKWOOD_ERR_MASK);
sound/soc/kirkwood/kirkwood-dma.c
170
writel(0, priv->io + KIRKWOOD_ERR_MASK);
sound/soc/kirkwood/kirkwood-dma.c
189
kirkwood_dma_conf_mbus_windows(priv->io,
sound/soc/kirkwood/kirkwood-dma.c
192
kirkwood_dma_conf_mbus_windows(priv->io,
sound/soc/kirkwood/kirkwood-dma.c
210
writel(count, priv->io + KIRKWOOD_PLAY_BYTE_INT_COUNT);
sound/soc/kirkwood/kirkwood-dma.c
211
writel(runtime->dma_addr, priv->io + KIRKWOOD_PLAY_BUF_ADDR);
sound/soc/kirkwood/kirkwood-dma.c
212
writel(size, priv->io + KIRKWOOD_PLAY_BUF_SIZE);
sound/soc/kirkwood/kirkwood-dma.c
214
writel(count, priv->io + KIRKWOOD_REC_BYTE_INT_COUNT);
sound/soc/kirkwood/kirkwood-dma.c
215
writel(runtime->dma_addr, priv->io + KIRKWOOD_REC_BUF_ADDR);
sound/soc/kirkwood/kirkwood-dma.c
216
writel(size, priv->io + KIRKWOOD_REC_BUF_SIZE);
sound/soc/kirkwood/kirkwood-dma.c
232
readl(priv->io + KIRKWOOD_PLAY_BYTE_COUNT));
sound/soc/kirkwood/kirkwood-dma.c
235
readl(priv->io + KIRKWOOD_REC_BYTE_COUNT));
sound/soc/kirkwood/kirkwood-dma.c
46
mask = readl(priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-dma.c
47
status = readl(priv->io + KIRKWOOD_INT_CAUSE) & mask;
sound/soc/kirkwood/kirkwood-dma.c
49
cause = readl(priv->io + KIRKWOOD_ERR_CAUSE);
sound/soc/kirkwood/kirkwood-dma.c
53
writel(cause, priv->io + KIRKWOOD_ERR_CAUSE);
sound/soc/kirkwood/kirkwood-dma.c
65
writel(status, priv->io + KIRKWOOD_INT_CAUSE);
sound/soc/kirkwood/kirkwood-i2s.c
175
value = readl(priv->io+KIRKWOOD_I2S_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
178
writel(value, priv->io+KIRKWOOD_I2S_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
180
value = readl(priv->io+KIRKWOOD_I2S_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
183
writel(value, priv->io+KIRKWOOD_I2S_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
188
static inline void kirkwood_set_dco(void __iomem *io, unsigned long rate)
sound/soc/kirkwood/kirkwood-i2s.c
205
writel(value, io + KIRKWOOD_DCO_CTL);
sound/soc/kirkwood/kirkwood-i2s.c
210
value = readl(io + KIRKWOOD_DCO_SPCR_STATUS);
sound/soc/kirkwood/kirkwood-i2s.c
228
kirkwood_set_dco(priv->io, rate);
sound/soc/kirkwood/kirkwood-i2s.c
240
writel(clks_ctrl, priv->io + KIRKWOOD_CLOCKS_CTRL);
sound/soc/kirkwood/kirkwood-i2s.c
269
i2s_value = readl(priv->io+i2s_reg);
sound/soc/kirkwood/kirkwood-i2s.c
333
writel(i2s_value, priv->io+i2s_reg);
sound/soc/kirkwood/kirkwood-i2s.c
354
ctl = readl(priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
364
ctl = readl(priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
385
writel(value, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
389
value = readl(priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
391
writel(value, priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
395
writel(ctl, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
402
writel(ctl, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
404
value = readl(priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
406
writel(value, priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
410
writel(ctl, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
417
writel(ctl, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
425
writel(ctl, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
441
value = readl(priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
453
writel(value, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
456
value = readl(priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
458
writel(value, priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
461
writel(ctl, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
466
value = readl(priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
468
writel(value, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
470
value = readl(priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
472
writel(value, priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
475
value = readl(priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
477
writel(value, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
482
value = readl(priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
484
writel(value, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
489
value = readl(priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
491
writel(value, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
519
writel(0xffffffff, priv->io + KIRKWOOD_INT_CAUSE);
sound/soc/kirkwood/kirkwood-i2s.c
520
writel(0, priv->io + KIRKWOOD_INT_MASK);
sound/soc/kirkwood/kirkwood-i2s.c
522
reg_data = readl(priv->io + 0x1200);
sound/soc/kirkwood/kirkwood-i2s.c
525
writel(reg_data, priv->io + 0x1200);
sound/soc/kirkwood/kirkwood-i2s.c
529
reg_data = readl(priv->io + 0x1200);
sound/soc/kirkwood/kirkwood-i2s.c
532
writel(reg_data, priv->io + 0x1200);
sound/soc/kirkwood/kirkwood-i2s.c
535
value = readl(priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
537
writel(value, priv->io + KIRKWOOD_PLAYCTL);
sound/soc/kirkwood/kirkwood-i2s.c
539
value = readl(priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
541
writel(value, priv->io + KIRKWOOD_RECCTL);
sound/soc/kirkwood/kirkwood-i2s.c
655
priv->io = devm_platform_ioremap_resource_byname(pdev, "i2s_regs");
sound/soc/kirkwood/kirkwood-i2s.c
657
priv->io = devm_platform_ioremap_resource(pdev, 0);
sound/soc/kirkwood/kirkwood-i2s.c
658
if (IS_ERR(priv->io))
sound/soc/kirkwood/kirkwood-i2s.c
659
return PTR_ERR(priv->io);
sound/soc/kirkwood/kirkwood.h
133
void __iomem *io;
sound/soc/renesas/fsi.c
1100
static void fsi_pointer_update(struct fsi_stream *io, int size)
sound/soc/renesas/fsi.c
1102
io->buff_sample_pos += size;
sound/soc/renesas/fsi.c
1104
if (io->buff_sample_pos >=
sound/soc/renesas/fsi.c
1105
io->period_samples * (io->period_pos + 1)) {
sound/soc/renesas/fsi.c
1106
struct snd_pcm_substream *substream = io->substream;
sound/soc/renesas/fsi.c
1109
io->period_pos++;
sound/soc/renesas/fsi.c
1111
if (io->period_pos >= runtime->periods) {
sound/soc/renesas/fsi.c
1112
io->buff_sample_pos = 0;
sound/soc/renesas/fsi.c
1113
io->period_pos = 0;
sound/soc/renesas/fsi.c
1173
static u8 *fsi_pio_get_area(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1175
struct snd_pcm_runtime *runtime = io->substream->runtime;
sound/soc/renesas/fsi.c
1178
samples_to_bytes(runtime, io->buff_sample_pos);
sound/soc/renesas/fsi.c
1181
static int fsi_pio_transfer(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
1188
if (!fsi_stream_is_working(fsi, io))
sound/soc/renesas/fsi.c
1191
buf = fsi_pio_get_area(fsi, io);
sound/soc/renesas/fsi.c
1193
switch (io->sample_width) {
sound/soc/renesas/fsi.c
1204
fsi_pointer_update(io, samples);
sound/soc/renesas/fsi.c
1209
static int fsi_pio_pop(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1215
sample_residues = fsi_get_current_fifo_samples(fsi, io);
sound/soc/renesas/fsi.c
1216
sample_space = io->buff_sample_capa - io->buff_sample_pos;
sound/soc/renesas/fsi.c
1220
return fsi_pio_transfer(fsi, io,
sound/soc/renesas/fsi.c
1226
static int fsi_pio_push(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1232
sample_residues = io->buff_sample_capa - io->buff_sample_pos;
sound/soc/renesas/fsi.c
1233
sample_space = io->fifo_sample_capa -
sound/soc/renesas/fsi.c
1234
fsi_get_current_fifo_samples(fsi, io);
sound/soc/renesas/fsi.c
1238
return fsi_pio_transfer(fsi, io,
sound/soc/renesas/fsi.c
1244
static int fsi_pio_start_stop(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
1251
fsi_irq_enable(fsi, io);
sound/soc/renesas/fsi.c
1253
fsi_irq_disable(fsi, io);
sound/soc/renesas/fsi.c
1261
static int fsi_pio_push_init(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1271
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1274
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1279
static int fsi_pio_pop_init(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1284
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1331
static int fsi_dma_init(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1337
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1345
struct fsi_stream *io = (struct fsi_stream *)data;
sound/soc/renesas/fsi.c
1346
struct fsi_priv *fsi = fsi_stream_to_priv(io);
sound/soc/renesas/fsi.c
1348
fsi_pointer_update(io, io->period_samples);
sound/soc/renesas/fsi.c
1353
static int fsi_dma_transfer(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1355
struct snd_soc_dai *dai = fsi_get_dai(io->substream);
sound/soc/renesas/fsi.c
1356
struct snd_pcm_substream *substream = io->substream;
sound/soc/renesas/fsi.c
1358
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
1367
desc = dmaengine_prep_dma_cyclic(io->chan,
sound/soc/renesas/fsi.c
1379
desc->callback_param = io;
sound/soc/renesas/fsi.c
1386
dma_async_issue_pending(io->chan);
sound/soc/renesas/fsi.c
1410
static int fsi_dma_push_start_stop(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
1419
dmaengine_terminate_all(io->chan);
sound/soc/renesas/fsi.c
1427
static int fsi_dma_probe(struct fsi_priv *fsi, struct fsi_stream *io, struct device *dev)
sound/soc/renesas/fsi.c
1429
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
1436
io->chan = dma_request_channel(mask, shdma_chan_filter,
sound/soc/renesas/fsi.c
1437
(void *)io->dma_id);
sound/soc/renesas/fsi.c
1439
io->chan = dma_request_chan(dev, is_play ? "tx" : "rx");
sound/soc/renesas/fsi.c
1440
if (IS_ERR(io->chan))
sound/soc/renesas/fsi.c
1441
io->chan = NULL;
sound/soc/renesas/fsi.c
1443
if (io->chan) {
sound/soc/renesas/fsi.c
1457
ret = dmaengine_slave_config(io->chan, &cfg);
sound/soc/renesas/fsi.c
1459
dma_release_channel(io->chan);
sound/soc/renesas/fsi.c
1460
io->chan = NULL;
sound/soc/renesas/fsi.c
1464
if (!io->chan) {
sound/soc/renesas/fsi.c
1481
static int fsi_dma_remove(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1483
fsi_stream_stop(fsi, io);
sound/soc/renesas/fsi.c
1485
if (io->chan)
sound/soc/renesas/fsi.c
1486
dma_release_channel(io->chan);
sound/soc/renesas/fsi.c
1488
io->chan = NULL;
sound/soc/renesas/fsi.c
1504
struct fsi_stream *io,
sound/soc/renesas/fsi.c
1508
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
1514
shift >>= fsi_get_port_shift(fsi, io);
sound/soc/renesas/fsi.c
1543
io->fifo_sample_capa = fsi_frame2sample(fsi, frame_capa);
sound/soc/renesas/fsi.c
1559
struct fsi_stream *io,
sound/soc/renesas/fsi.c
1595
switch (io->sample_width) {
sound/soc/renesas/fsi.c
1597
data = BUSOP_GET(16, io->bus_option);
sound/soc/renesas/fsi.c
1600
data = BUSOP_GET(24, io->bus_option);
sound/soc/renesas/fsi.c
1603
fsi_format_bus_setup(fsi, io, data, dev);
sound/soc/renesas/fsi.c
1606
fsi_irq_disable(fsi, io);
sound/soc/renesas/fsi.c
1610
fsi_fifo_init(fsi, io, dev);
sound/soc/renesas/fsi.c
1663
struct fsi_stream *io = fsi_stream_get(fsi, substream);
sound/soc/renesas/fsi.c
1668
fsi_stream_init(fsi, io, substream);
sound/soc/renesas/fsi.c
1670
ret = fsi_hw_startup(fsi, io, dai->dev);
sound/soc/renesas/fsi.c
1672
ret = fsi_stream_start(fsi, io);
sound/soc/renesas/fsi.c
1674
ret = fsi_stream_transfer(io);
sound/soc/renesas/fsi.c
1677
fsi_stream_stop(fsi, io);
sound/soc/renesas/fsi.c
1678
fsi_stream_quit(fsi, io);
sound/soc/renesas/fsi.c
1828
struct fsi_stream *io = fsi_stream_get(fsi, substream);
sound/soc/renesas/fsi.c
1830
return fsi_sample2frame(fsi, io->buff_sample_pos);
sound/soc/renesas/fsi.c
2107
struct fsi_stream *io,
sound/soc/renesas/fsi.c
2110
if (!fsi_stream_is_working(fsi, io))
sound/soc/renesas/fsi.c
2113
fsi_stream_stop(fsi, io);
sound/soc/renesas/fsi.c
2118
struct fsi_stream *io,
sound/soc/renesas/fsi.c
2121
if (!fsi_stream_is_working(fsi, io))
sound/soc/renesas/fsi.c
2124
fsi_hw_startup(fsi, io, dev);
sound/soc/renesas/fsi.c
2125
fsi_stream_start(fsi, io);
sound/soc/renesas/fsi.c
268
int (*init)(struct fsi_priv *fsi, struct fsi_stream *io);
sound/soc/renesas/fsi.c
269
int (*quit)(struct fsi_priv *fsi, struct fsi_stream *io);
sound/soc/renesas/fsi.c
270
int (*probe)(struct fsi_priv *fsi, struct fsi_stream *io, struct device *dev);
sound/soc/renesas/fsi.c
271
int (*transfer)(struct fsi_priv *fsi, struct fsi_stream *io);
sound/soc/renesas/fsi.c
272
int (*remove)(struct fsi_priv *fsi, struct fsi_stream *io);
sound/soc/renesas/fsi.c
273
int (*start_stop)(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
276
#define fsi_stream_handler_call(io, func, args...) \
sound/soc/renesas/fsi.c
277
(!(io) ? -ENODEV : \
sound/soc/renesas/fsi.c
278
!((io)->handler->func) ? 0 : \
sound/soc/renesas/fsi.c
279
(io)->handler->func(args))
sound/soc/renesas/fsi.c
301
struct fsi_stream *io)
sound/soc/renesas/fsi.c
303
return &fsi->playback == io;
sound/soc/renesas/fsi.c
422
static u32 fsi_get_port_shift(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
424
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
447
struct fsi_stream *io)
sound/soc/renesas/fsi.c
453
return !!(io->substream && io->substream->runtime);
sound/soc/renesas/fsi.c
457
struct fsi_stream *io)
sound/soc/renesas/fsi.c
459
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
506
static struct fsi_priv *fsi_stream_to_priv(struct fsi_stream *io)
sound/soc/renesas/fsi.c
508
return io->priv;
sound/soc/renesas/fsi.c
512
struct fsi_stream *io,
sound/soc/renesas/fsi.c
520
io->substream = substream;
sound/soc/renesas/fsi.c
521
io->buff_sample_capa = fsi_frame2sample(fsi, runtime->buffer_size);
sound/soc/renesas/fsi.c
522
io->buff_sample_pos = 0;
sound/soc/renesas/fsi.c
523
io->period_samples = fsi_frame2sample(fsi, runtime->period_size);
sound/soc/renesas/fsi.c
524
io->period_pos = 0;
sound/soc/renesas/fsi.c
525
io->sample_width = samples_to_bytes(runtime, 1);
sound/soc/renesas/fsi.c
526
io->bus_option = 0;
sound/soc/renesas/fsi.c
527
io->oerr_num = -1; /* ignore 1st err */
sound/soc/renesas/fsi.c
528
io->uerr_num = -1; /* ignore 1st err */
sound/soc/renesas/fsi.c
529
fsi_stream_handler_call(io, init, fsi, io);
sound/soc/renesas/fsi.c
532
static void fsi_stream_quit(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
534
struct snd_soc_dai *dai = fsi_get_dai(io->substream);
sound/soc/renesas/fsi.c
539
if (io->oerr_num > 0)
sound/soc/renesas/fsi.c
540
dev_err(dai->dev, "over_run = %d\n", io->oerr_num);
sound/soc/renesas/fsi.c
542
if (io->uerr_num > 0)
sound/soc/renesas/fsi.c
543
dev_err(dai->dev, "under_run = %d\n", io->uerr_num);
sound/soc/renesas/fsi.c
545
fsi_stream_handler_call(io, quit, fsi, io);
sound/soc/renesas/fsi.c
546
io->substream = NULL;
sound/soc/renesas/fsi.c
547
io->buff_sample_capa = 0;
sound/soc/renesas/fsi.c
548
io->buff_sample_pos = 0;
sound/soc/renesas/fsi.c
549
io->period_samples = 0;
sound/soc/renesas/fsi.c
550
io->period_pos = 0;
sound/soc/renesas/fsi.c
551
io->sample_width = 0;
sound/soc/renesas/fsi.c
552
io->bus_option = 0;
sound/soc/renesas/fsi.c
553
io->oerr_num = 0;
sound/soc/renesas/fsi.c
554
io->uerr_num = 0;
sound/soc/renesas/fsi.c
557
static int fsi_stream_transfer(struct fsi_stream *io)
sound/soc/renesas/fsi.c
559
struct fsi_priv *fsi = fsi_stream_to_priv(io);
sound/soc/renesas/fsi.c
563
return fsi_stream_handler_call(io, transfer, fsi, io);
sound/soc/renesas/fsi.c
566
#define fsi_stream_start(fsi, io)\
sound/soc/renesas/fsi.c
567
fsi_stream_handler_call(io, start_stop, fsi, io, 1)
sound/soc/renesas/fsi.c
569
#define fsi_stream_stop(fsi, io)\
sound/soc/renesas/fsi.c
570
fsi_stream_handler_call(io, start_stop, fsi, io, 0)
sound/soc/renesas/fsi.c
574
struct fsi_stream *io;
sound/soc/renesas/fsi.c
577
io = &fsi->playback;
sound/soc/renesas/fsi.c
578
ret1 = fsi_stream_handler_call(io, probe, fsi, io, dev);
sound/soc/renesas/fsi.c
580
io = &fsi->capture;
sound/soc/renesas/fsi.c
581
ret2 = fsi_stream_handler_call(io, probe, fsi, io, dev);
sound/soc/renesas/fsi.c
593
struct fsi_stream *io;
sound/soc/renesas/fsi.c
596
io = &fsi->playback;
sound/soc/renesas/fsi.c
597
ret1 = fsi_stream_handler_call(io, remove, fsi, io);
sound/soc/renesas/fsi.c
599
io = &fsi->capture;
sound/soc/renesas/fsi.c
600
ret2 = fsi_stream_handler_call(io, remove, fsi, io);
sound/soc/renesas/fsi.c
613
static void fsi_format_bus_setup(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
617
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
661
static void fsi_irq_enable(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
663
u32 data = AB_IO(1, fsi_get_port_shift(fsi, io));
sound/soc/renesas/fsi.c
670
static void fsi_irq_disable(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
672
u32 data = AB_IO(1, fsi_get_port_shift(fsi, io));
sound/soc/renesas/rcar/adg.c
111
static u32 rsnd_adg_ssi_ws_timing_gen2(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/adg.c
113
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/adg.c
117
if (rsnd_ssi_is_pin_sharing(io)) {
sound/soc/renesas/rcar/adg.c
144
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/adg.c
206
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/adg.c
211
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/adg.c
220
_out = rsnd_adg_ssi_ws_timing_gen2(io);
sound/soc/renesas/rcar/adg.c
234
__rsnd_adg_get_timesel_ratio(priv, io,
sound/soc/renesas/rcar/adg.c
247
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/adg.c
256
rsnd_adg_get_timesel_ratio(priv, io,
sound/soc/renesas/rcar/adg.c
257
rsnd_src_get_in_rate(priv, io),
sound/soc/renesas/rcar/adg.c
258
rsnd_src_get_out_rate(priv, io),
sound/soc/renesas/rcar/adg.c
270
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/adg.c
284
rsnd_adg_get_timesel_ratio(priv, io,
sound/soc/renesas/rcar/cmd.c
100
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/cmd.c
109
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/cmd.c
119
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/cmd.c
146
int rsnd_cmd_attach(struct rsnd_dai_stream *io, int id)
sound/soc/renesas/rcar/cmd.c
148
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/cmd.c
151
return rsnd_dai_connect(mod, io, mod->type);
sound/soc/renesas/rcar/cmd.c
24
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/cmd.c
27
struct rsnd_mod *dvc = rsnd_io_to_mod_dvc(io);
sound/soc/renesas/rcar/cmd.c
28
struct rsnd_mod *mix = rsnd_io_to_mod_mix(io);
sound/soc/renesas/rcar/cmd.c
68
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/cmd.c
91
rsnd_mod_write(mod, CMD_BUSIF_MODE, rsnd_get_busif_shift(io, mod) | 1);
sound/soc/renesas/rcar/cmd.c
92
rsnd_mod_write(mod, CMD_BUSIF_DALIGN, rsnd_get_dalign(mod, io));
sound/soc/renesas/rcar/cmd.c
94
rsnd_adg_set_cmd_timsel_gen2(mod, io);
sound/soc/renesas/rcar/core.c
1036
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1041
rsnd_dai_call(cleanup, io, priv);
sound/soc/renesas/rcar/core.c
1043
rsnd_dai_stream_quit(io);
sound/soc/renesas/rcar/core.c
1051
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1053
return rsnd_dai_call(prepare, io, priv);
sound/soc/renesas/rcar/core.c
1086
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1091
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/core.c
1111
rsnd_flags_set(io, RSND_STREAM_TDM_SPLIT);
sound/soc/renesas/rcar/core.c
1112
dev_dbg(dev, "%s is part of TDM Split\n", io->name);
sound/soc/renesas/rcar/core.c
1123
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1126
if (!rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/core.c
1129
rsnd_parse_tdm_split_mode(priv, io, dai_np);
sound/soc/renesas/rcar/core.c
1133
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1139
if (!rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/core.c
1146
rsnd_flags_set(io, RSND_STREAM_HDMI0);
sound/soc/renesas/rcar/core.c
1147
dev_dbg(dev, "%s connected to HDMI0\n", io->name);
sound/soc/renesas/rcar/core.c
1152
rsnd_flags_set(io, RSND_STREAM_HDMI1);
sound/soc/renesas/rcar/core.c
1153
dev_dbg(dev, "%s connected to HDMI1\n", io->name);
sound/soc/renesas/rcar/core.c
1156
rsnd_parse_tdm_split_mode(priv, io, endpoint);
sound/soc/renesas/rcar/core.c
129
struct dma_chan *rsnd_mod_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
135
return mod->ops->dma_req(io, mod);
sound/soc/renesas/rcar/core.c
1422
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1425
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/core.c
1434
if (io->dmac_dev)
sound/soc/renesas/rcar/core.c
1435
dev = io->dmac_dev;
sound/soc/renesas/rcar/core.c
1660
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1661
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/core.c
1667
ret = rsnd_dai_call(hw_params, io, substream, hw_params);
sound/soc/renesas/rcar/core.c
1669
ret = rsnd_dai_call(hw_free, io, substream);
sound/soc/renesas/rcar/core.c
1680
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1692
io->converted_rate = 0;
sound/soc/renesas/rcar/core.c
1693
io->converted_chan = 0;
sound/soc/renesas/rcar/core.c
1695
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/core.c
170
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1705
io->converted_chan = params_channels(be_params);
sound/soc/renesas/rcar/core.c
1707
io->converted_rate = params_rate(be_params);
sound/soc/renesas/rcar/core.c
1709
if (io->converted_chan)
sound/soc/renesas/rcar/core.c
1710
dev_dbg(dev, "convert channels = %d\n", io->converted_chan);
sound/soc/renesas/rcar/core.c
1711
if (io->converted_rate) {
sound/soc/renesas/rcar/core.c
1723
struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/core.c
1725
dev_dbg(dev, "convert rate = %d\n", io->converted_rate);
sound/soc/renesas/rcar/core.c
1727
channel = io->converted_chan ? io->converted_chan :
sound/soc/renesas/rcar/core.c
1757
if (params_rate(hw_params) > io->converted_rate * k_down) {
sound/soc/renesas/rcar/core.c
1759
io->converted_rate * k_down;
sound/soc/renesas/rcar/core.c
1761
io->converted_rate * k_down;
sound/soc/renesas/rcar/core.c
1763
} else if (params_rate(hw_params) * k_up < io->converted_rate) {
sound/soc/renesas/rcar/core.c
1765
DIV_ROUND_UP(io->converted_rate, k_up);
sound/soc/renesas/rcar/core.c
1767
DIV_ROUND_UP(io->converted_rate, k_up);
sound/soc/renesas/rcar/core.c
1796
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1799
rsnd_dai_call(pointer, io, &pointer);
sound/soc/renesas/rcar/core.c
1854
if (!cfg->accept(cfg->io))
sound/soc/renesas/rcar/core.c
1868
cfg->update(cfg->io, cfg->mod);
sound/soc/renesas/rcar/core.c
1873
int rsnd_kctrl_accept_anytime(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
1920
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1923
int (*accept)(struct rsnd_dai_stream *io),
sound/soc/renesas/rcar/core.c
1924
void (*update)(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1973
cfg->io = io;
sound/soc/renesas/rcar/core.c
1992
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
1996
ret = rsnd_dai_call(probe, io, priv);
sound/soc/renesas/rcar/core.c
1998
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/core.c
2013
rsnd_dai_call(remove, io, priv);
sound/soc/renesas/rcar/core.c
2019
for_each_rsnd_mod(i, mod, io)
sound/soc/renesas/rcar/core.c
2020
rsnd_dai_disconnect(mod, io, i);
sound/soc/renesas/rcar/core.c
2021
rsnd_dai_connect(ssi_mod, io, RSND_MOD_SSI);
sound/soc/renesas/rcar/core.c
2026
rsnd_dai_call(fallback, io, priv);
sound/soc/renesas/rcar/core.c
2032
ret = rsnd_dai_call(probe, io, priv);
sound/soc/renesas/rcar/core.c
239
struct rsnd_dai_stream *io))
sound/soc/renesas/rcar/core.c
246
struct rsnd_dai_stream *io = &rdai->playback;
sound/soc/renesas/rcar/core.c
248
if (mod == io->mod[mod->type])
sound/soc/renesas/rcar/core.c
249
callback(mod, io);
sound/soc/renesas/rcar/core.c
251
io = &rdai->capture;
sound/soc/renesas/rcar/core.c
252
if (mod == io->mod[mod->type])
sound/soc/renesas/rcar/core.c
253
callback(mod, io);
sound/soc/renesas/rcar/core.c
257
int rsnd_io_is_working(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
260
if (io->substream)
sound/soc/renesas/rcar/core.c
261
return snd_pcm_running(io->substream);
sound/soc/renesas/rcar/core.c
266
int rsnd_runtime_channel_original_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
269
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
284
int rsnd_runtime_channel_after_ctu_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
287
int chan = rsnd_runtime_channel_original_with_params(io, params);
sound/soc/renesas/rcar/core.c
288
struct rsnd_mod *ctu_mod = rsnd_io_to_mod_ctu(io);
sound/soc/renesas/rcar/core.c
291
u32 converted_chan = rsnd_io_converted_chan(io);
sound/soc/renesas/rcar/core.c
300
if (rsnd_runtime_is_tdm_split(io)) {
sound/soc/renesas/rcar/core.c
301
struct device *dev = rsnd_priv_to_dev(rsnd_io_to_priv(io));
sound/soc/renesas/rcar/core.c
325
int rsnd_runtime_channel_for_ssi_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
328
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
329
int chan = rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/core.c
330
rsnd_runtime_channel_after_ctu_with_params(io, params) :
sound/soc/renesas/rcar/core.c
331
rsnd_runtime_channel_original_with_params(io, params);
sound/soc/renesas/rcar/core.c
334
if (rsnd_runtime_is_multi_ssi(io))
sound/soc/renesas/rcar/core.c
340
int rsnd_runtime_is_multi_ssi(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
342
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
344
int chan = rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/core.c
345
rsnd_runtime_channel_after_ctu(io) :
sound/soc/renesas/rcar/core.c
346
rsnd_runtime_channel_original(io);
sound/soc/renesas/rcar/core.c
351
int rsnd_runtime_is_tdm(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
353
return rsnd_runtime_channel_for_ssi(io) >= 6;
sound/soc/renesas/rcar/core.c
356
int rsnd_runtime_is_tdm_split(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
358
return !!rsnd_flags_has(io, RSND_STREAM_TDM_SPLIT);
sound/soc/renesas/rcar/core.c
364
u32 rsnd_get_adinr_bit(struct rsnd_mod *mod, struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
367
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
387
u32 rsnd_get_dalign(struct rsnd_mod *mod, struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
394
struct rsnd_mod *ssiu = rsnd_io_to_mod_ssiu(io);
sound/soc/renesas/rcar/core.c
396
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
420
if (rsnd_io_is_play(io)) {
sound/soc/renesas/rcar/core.c
421
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/core.c
425
struct rsnd_mod *cmd = rsnd_io_to_mod_cmd(io);
sound/soc/renesas/rcar/core.c
444
u32 rsnd_get_busif_shift(struct rsnd_dai_stream *io, struct rsnd_mod *mod)
sound/soc/renesas/rcar/core.c
456
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
459
rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/core.c
475
tmod = rsnd_io_to_mod(io, mods[i]);
sound/soc/renesas/rcar/core.c
483
if (rsnd_io_is_play(io))
sound/soc/renesas/rcar/core.c
495
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
503
struct rsnd_mod *mod = rsnd_io_to_mod(io, type);
sound/soc/renesas/rcar/core.c
546
static int rsnd_status_update(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
550
u32 *status = mod->ops->get_status(mod, io, type);
sound/soc/renesas/rcar/core.c
568
#define rsnd_dai_call(fn, io, param...) \
sound/soc/renesas/rcar/core.c
570
struct device *dev = rsnd_priv_to_dev(rsnd_io_to_priv(io)); \
sound/soc/renesas/rcar/core.c
572
int is_play = rsnd_io_is_play(io); \
sound/soc/renesas/rcar/core.c
575
for_each_rsnd_mod_arrays(i, mod, io, types, RSND_MOD_MAX) { \
sound/soc/renesas/rcar/core.c
577
int func_call = rsnd_status_update(io, mod, types[i], \
sound/soc/renesas/rcar/core.c
582
tmp = (mod)->ops->fn(mod, io, param); \
sound/soc/renesas/rcar/core.c
593
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
602
if (io->mod[type] == mod)
sound/soc/renesas/rcar/core.c
605
if (io->mod[type])
sound/soc/renesas/rcar/core.c
611
io->mod[type] = mod;
sound/soc/renesas/rcar/core.c
615
rsnd_io_is_play(io) ? "Playback" : "Capture");
sound/soc/renesas/rcar/core.c
621
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
624
io->mod[type] = NULL;
sound/soc/renesas/rcar/core.c
678
static void rsnd_dai_stream_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
681
io->substream = substream;
sound/soc/renesas/rcar/core.c
684
static void rsnd_dai_stream_quit(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
686
io->substream = NULL;
sound/soc/renesas/rcar/core.c
712
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
720
ret = rsnd_dai_call(init, io, priv);
sound/soc/renesas/rcar/core.c
724
ret = rsnd_dai_call(start, io, priv);
sound/soc/renesas/rcar/core.c
728
ret = rsnd_dai_call(irq, io, priv, 1);
sound/soc/renesas/rcar/core.c
732
ret = rsnd_dai_call(irq, io, priv, 0);
sound/soc/renesas/rcar/core.c
734
ret |= rsnd_dai_call(stop, io, priv);
sound/soc/renesas/rcar/core.c
736
ret |= rsnd_dai_call(quit, io, priv);
sound/soc/renesas/rcar/core.c
873
struct rsnd_dai_stream *io, char *unit)
sound/soc/renesas/rcar/core.c
904
if (!rsnd_flags_has(io, RSND_HW_RULE_ERR) && (p.min > p.max)) {
sound/soc/renesas/rcar/core.c
910
rsnd_flags_set(io, RSND_HW_RULE_ERR);
sound/soc/renesas/rcar/core.c
922
struct rsnd_dai_stream *io = rule->private;
sound/soc/renesas/rcar/core.c
923
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
932
ic.max = rsnd_runtime_channel_for_ssi_with_params(io, params);
sound/soc/renesas/rcar/core.c
936
&ic, ir, io, "ch");
sound/soc/renesas/rcar/core.c
945
struct rsnd_dai_stream *io = rule->private;
sound/soc/renesas/rcar/core.c
946
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
955
ic.max = rsnd_runtime_channel_for_ssi_with_params(io, params);
sound/soc/renesas/rcar/core.c
959
ir, &ic, io, "Hz");
sound/soc/renesas/rcar/core.c
979
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
985
rsnd_flags_del(io, RSND_HW_RULE_ERR);
sound/soc/renesas/rcar/core.c
987
rsnd_dai_stream_init(io, substream);
sound/soc/renesas/rcar/ctu.c
107
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
110
return rsnd_cmd_attach(io, rsnd_mod_id(mod));
sound/soc/renesas/rcar/ctu.c
113
static void rsnd_ctu_value_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
132
rsnd_mod_write(mod, CTU_ADINR, rsnd_runtime_channel_original(io));
sound/soc/renesas/rcar/ctu.c
150
static void rsnd_ctu_value_reset(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
170
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
181
rsnd_ctu_value_init(io, mod);
sound/soc/renesas/rcar/ctu.c
187
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
198
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
208
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU Pass",
sound/soc/renesas/rcar/ctu.c
217
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV0",
sound/soc/renesas/rcar/ctu.c
226
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV1",
sound/soc/renesas/rcar/ctu.c
235
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV2",
sound/soc/renesas/rcar/ctu.c
244
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV3",
sound/soc/renesas/rcar/ctu.c
253
ret = rsnd_kctrl_new_s(mod, io, rtd, "CTU Reset",
sound/soc/renesas/rcar/ctu.c
283
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/debugfs.c
19
struct rsnd_dai_stream *io = m->private;
sound/soc/renesas/rcar/debugfs.c
20
struct rsnd_mod *mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/debugfs.c
27
for_each_rsnd_mod(i, mod, io) {
sound/soc/renesas/rcar/debugfs.c
28
u32 *status = mod->ops->get_status(mod, io, mod->type);
sound/soc/renesas/rcar/debugfs.c
34
mod->ops->debug_info(m, io, mod);
sound/soc/renesas/rcar/dma.c
105
snd_dmaengine_pcm_close_release_chan(io->substream);
sound/soc/renesas/rcar/dma.c
113
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
129
dmaen->chan = rsnd_dmaen_request_channel(io,
sound/soc/renesas/rcar/dma.c
138
return snd_dmaengine_pcm_open(io->substream, dmaen->chan);
sound/soc/renesas/rcar/dma.c
142
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
157
if (rsnd_runtime_channel_original(io) == 1) {
sound/soc/renesas/rcar/dma.c
158
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/dma.c
177
cfg.direction = snd_pcm_substream_to_dma_direction(io->substream);
sound/soc/renesas/rcar/dma.c
191
return snd_dmaengine_pcm_trigger(io->substream, SNDRV_PCM_TRIGGER_START);
sound/soc/renesas/rcar/dma.c
220
static int rsnd_dmaen_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
224
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
229
chan = rsnd_dmaen_request_channel(io, mod_from, mod_to);
sound/soc/renesas/rcar/dma.c
249
io->dmac_dev = chan->device->dev;
sound/soc/renesas/rcar/dma.c
259
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
262
*pointer = snd_dmaengine_pcm_pointer(io->substream);
sound/soc/renesas/rcar/dma.c
319
static u32 rsnd_dmapp_get_id(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
322
struct rsnd_mod *ssi = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/dma.c
323
struct rsnd_mod *ssiu = rsnd_io_to_mod_ssiu(io);
sound/soc/renesas/rcar/dma.c
324
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/dma.c
325
struct rsnd_mod *dvc = rsnd_io_to_mod_dvc(io);
sound/soc/renesas/rcar/dma.c
348
struct device *dev = rsnd_priv_to_dev(rsnd_io_to_priv(io));
sound/soc/renesas/rcar/dma.c
359
static u32 rsnd_dmapp_get_chcr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
363
return (rsnd_dmapp_get_id(io, mod_from) << 24) +
sound/soc/renesas/rcar/dma.c
364
(rsnd_dmapp_get_id(io, mod_to) << 16);
sound/soc/renesas/rcar/dma.c
406
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
424
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
437
static int rsnd_dmapp_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
442
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
447
dmapp->chcr = rsnd_dmapp_get_chcr(io, mod_from, mod_to) | PDMACHCR_DE;
sound/soc/renesas/rcar/dma.c
459
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
501
rsnd_dma_addr_lookup(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
508
int is_ssi = !!(rsnd_io_to_mod_ssi(io) == mod) ||
sound/soc/renesas/rcar/dma.c
509
!!(rsnd_io_to_mod_ssiu(io) == mod);
sound/soc/renesas/rcar/dma.c
510
int use_src = !!rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/dma.c
511
int use_cmd = !!rsnd_io_to_mod_dvc(io) ||
sound/soc/renesas/rcar/dma.c
512
!!rsnd_io_to_mod_mix(io) ||
sound/soc/renesas/rcar/dma.c
513
!!rsnd_io_to_mod_ctu(io);
sound/soc/renesas/rcar/dma.c
523
if (is_ssi && rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/dma.c
585
rsnd_gen2_dma_addr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
589
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
594
int busif = rsnd_mod_id_sub(rsnd_io_to_mod_ssiu(io));
sound/soc/renesas/rcar/dma.c
644
return rsnd_dma_addr_lookup(io, mod, priv, &map, is_play, is_from);
sound/soc/renesas/rcar/dma.c
676
rsnd_rzg3e_dma_addr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
679
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
683
int busif = rsnd_mod_id_sub(rsnd_io_to_mod_ssiu(io));
sound/soc/renesas/rcar/dma.c
71
static struct dma_chan *rsnd_dmaen_request_channel(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
723
return rsnd_dma_addr_lookup(io, mod, priv, &map, is_play, is_from);
sound/soc/renesas/rcar/dma.c
735
rsnd_gen4_dma_addr(struct rsnd_dai_stream *io, struct rsnd_mod *mod,
sound/soc/renesas/rcar/dma.c
738
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
756
static dma_addr_t rsnd_dma_addr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
760
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
771
return rsnd_gen4_dma_addr(io, mod, is_play, is_from);
sound/soc/renesas/rcar/dma.c
773
return rsnd_rzg3e_dma_addr(io, mod, is_play, is_from);
sound/soc/renesas/rcar/dma.c
775
return rsnd_gen2_dma_addr(io, mod, is_play, is_from);
sound/soc/renesas/rcar/dma.c
780
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
786
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/dma.c
787
struct rsnd_mod *ctu = rsnd_io_to_mod_ctu(io);
sound/soc/renesas/rcar/dma.c
788
struct rsnd_mod *mix = rsnd_io_to_mod_mix(io);
sound/soc/renesas/rcar/dma.c
789
struct rsnd_mod *dvc = rsnd_io_to_mod_dvc(io);
sound/soc/renesas/rcar/dma.c
80
return rsnd_mod_dma_req(io, mod_from);
sound/soc/renesas/rcar/dma.c
807
struct rsnd_mod *ssiu = rsnd_io_to_mod_ssiu(io);
sound/soc/renesas/rcar/dma.c
811
if (this == rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/dma.c
815
ssi = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/dma.c
82
return rsnd_mod_dma_req(io, mod_to);
sound/soc/renesas/rcar/dma.c
824
nr += !!rsnd_io_to_mod(io, i);
sound/soc/renesas/rcar/dma.c
86
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
887
static int rsnd_dma_alloc(struct rsnd_dai_stream *io, struct rsnd_mod *mod,
sound/soc/renesas/rcar/dma.c
89
return snd_dmaengine_pcm_trigger(io->substream, SNDRV_PCM_TRIGGER_STOP);
sound/soc/renesas/rcar/dma.c
892
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
898
int (*attach)(struct rsnd_dai_stream *io, struct rsnd_dma *dma,
sound/soc/renesas/rcar/dma.c
900
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/dma.c
912
rsnd_dma_of_path(mod, io, is_play, &mod_from, &mod_to);
sound/soc/renesas/rcar/dma.c
93
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
951
ret = attach(io, dma, mod_from, mod_to);
sound/soc/renesas/rcar/dma.c
955
dma->src_addr = rsnd_dma_addr(io, mod_from, is_play, 1);
sound/soc/renesas/rcar/dma.c
956
dma->dst_addr = rsnd_dma_addr(io, mod_to, is_play, 0);
sound/soc/renesas/rcar/dma.c
963
int rsnd_dma_attach(struct rsnd_dai_stream *io, struct rsnd_mod *mod,
sound/soc/renesas/rcar/dma.c
967
int ret = rsnd_dma_alloc(io, mod, dma_mod);
sound/soc/renesas/rcar/dma.c
973
return rsnd_dai_connect(*dma_mod, io, (*dma_mod)->type);
sound/soc/renesas/rcar/dvc.c
102
adinr = rsnd_get_adinr_bit(mod, io) |
sound/soc/renesas/rcar/dvc.c
103
rsnd_runtime_channel_after_ctu(io);
sound/soc/renesas/rcar/dvc.c
136
rsnd_dvc_volume_parameter(io, mod);
sound/soc/renesas/rcar/dvc.c
142
static void rsnd_dvc_volume_update(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
171
rsnd_dvc_volume_parameter(io, mod);
sound/soc/renesas/rcar/dvc.c
178
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
181
return rsnd_cmd_attach(io, rsnd_mod_id(mod));
sound/soc/renesas/rcar/dvc.c
185
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
196
rsnd_dvc_volume_init(io, mod);
sound/soc/renesas/rcar/dvc.c
198
rsnd_dvc_volume_update(io, mod);
sound/soc/renesas/rcar/dvc.c
204
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
215
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
219
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/dvc.c
220
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/dvc.c
225
ret = rsnd_kctrl_new_m(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
236
ret = rsnd_kctrl_new_m(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
247
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
256
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
267
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
282
static struct dma_chan *rsnd_dvc_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
293
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
72
static void rsnd_dvc_volume_parameter(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
92
static void rsnd_dvc_volume_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
103
static void rsnd_mix_volume_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
111
rsnd_mod_write(mod, MIX_ADINR, rsnd_runtime_channel_after_ctu(io));
sound/soc/renesas/rcar/mix.c
119
rsnd_mix_volume_parameter(io, mod);
sound/soc/renesas/rcar/mix.c
124
static void rsnd_mix_volume_update(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
131
rsnd_mix_volume_parameter(io, mod);
sound/soc/renesas/rcar/mix.c
138
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
141
return rsnd_cmd_attach(io, rsnd_mod_id(mod));
sound/soc/renesas/rcar/mix.c
145
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
156
rsnd_mix_volume_init(io, mod);
sound/soc/renesas/rcar/mix.c
158
rsnd_mix_volume_update(io, mod);
sound/soc/renesas/rcar/mix.c
164
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
175
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
181
struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/mix.c
212
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
225
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
233
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
243
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
258
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
83
static void rsnd_mix_volume_parameter(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
260
u32 rsnd_get_adinr_bit(struct rsnd_mod *mod, struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
261
u32 rsnd_get_dalign(struct rsnd_mod *mod, struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
262
u32 rsnd_get_busif_shift(struct rsnd_dai_stream *io, struct rsnd_mod *mod);
sound/soc/renesas/rcar/rsnd.h
267
int rsnd_dma_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
297
struct dma_chan* (*dma_req)(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
300
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
303
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
306
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
309
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
312
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
315
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
318
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
321
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
324
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
328
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
331
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
334
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
337
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
340
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
343
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
351
struct rsnd_dai_stream *io, struct rsnd_mod *mod);
sound/soc/renesas/rcar/rsnd.h
436
struct dma_chan *rsnd_mod_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
440
struct rsnd_dai_stream *io));
sound/soc/renesas/rcar/rsnd.h
442
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
449
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
452
#define for_each_rsnd_mod(iterator, pos, io) \
sound/soc/renesas/rcar/rsnd.h
454
(pos = rsnd_mod_next(&iterator, io, NULL, 0)); iterator++)
sound/soc/renesas/rcar/rsnd.h
455
#define for_each_rsnd_mod_arrays(iterator, pos, io, array, size) \
sound/soc/renesas/rcar/rsnd.h
457
(pos = rsnd_mod_next(&iterator, io, array, size)); iterator++)
sound/soc/renesas/rcar/rsnd.h
458
#define for_each_rsnd_mod_array(iterator, pos, io, array) \
sound/soc/renesas/rcar/rsnd.h
459
for_each_rsnd_mod_arrays(iterator, pos, io, array, ARRAY_SIZE(array))
sound/soc/renesas/rcar/rsnd.h
470
#define rsnd_runtime_channel_original(io) \
sound/soc/renesas/rcar/rsnd.h
471
rsnd_runtime_channel_original_with_params(io, NULL)
sound/soc/renesas/rcar/rsnd.h
472
int rsnd_runtime_channel_original_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
474
#define rsnd_runtime_channel_after_ctu(io) \
sound/soc/renesas/rcar/rsnd.h
475
rsnd_runtime_channel_after_ctu_with_params(io, NULL)
sound/soc/renesas/rcar/rsnd.h
476
int rsnd_runtime_channel_after_ctu_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
478
#define rsnd_runtime_channel_for_ssi(io) \
sound/soc/renesas/rcar/rsnd.h
479
rsnd_runtime_channel_for_ssi_with_params(io, NULL)
sound/soc/renesas/rcar/rsnd.h
480
int rsnd_runtime_channel_for_ssi_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
482
int rsnd_runtime_is_multi_ssi(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
483
int rsnd_runtime_is_tdm(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
484
int rsnd_runtime_is_tdm_split(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
541
#define rsnd_io_to_mod(io, i) ((i) < RSND_MOD_MAX ? (io)->mod[(i)] : NULL)
sound/soc/renesas/rcar/rsnd.h
542
#define rsnd_io_to_mod_ssi(io) rsnd_io_to_mod((io), RSND_MOD_SSI)
sound/soc/renesas/rcar/rsnd.h
543
#define rsnd_io_to_mod_ssiu(io) rsnd_io_to_mod((io), RSND_MOD_SSIU)
sound/soc/renesas/rcar/rsnd.h
544
#define rsnd_io_to_mod_ssip(io) rsnd_io_to_mod((io), RSND_MOD_SSIP)
sound/soc/renesas/rcar/rsnd.h
545
#define rsnd_io_to_mod_src(io) rsnd_io_to_mod((io), RSND_MOD_SRC)
sound/soc/renesas/rcar/rsnd.h
546
#define rsnd_io_to_mod_ctu(io) rsnd_io_to_mod((io), RSND_MOD_CTU)
sound/soc/renesas/rcar/rsnd.h
547
#define rsnd_io_to_mod_mix(io) rsnd_io_to_mod((io), RSND_MOD_MIX)
sound/soc/renesas/rcar/rsnd.h
548
#define rsnd_io_to_mod_dvc(io) rsnd_io_to_mod((io), RSND_MOD_DVC)
sound/soc/renesas/rcar/rsnd.h
549
#define rsnd_io_to_mod_cmd(io) rsnd_io_to_mod((io), RSND_MOD_CMD)
sound/soc/renesas/rcar/rsnd.h
550
#define rsnd_io_to_rdai(io) ((io)->rdai)
sound/soc/renesas/rcar/rsnd.h
551
#define rsnd_io_to_priv(io) (rsnd_rdai_to_priv(rsnd_io_to_rdai(io)))
sound/soc/renesas/rcar/rsnd.h
552
#define rsnd_io_is_play(io) (&rsnd_io_to_rdai(io)->playback == io)
sound/soc/renesas/rcar/rsnd.h
553
#define rsnd_io_to_runtime(io) ((io)->substream ? \
sound/soc/renesas/rcar/rsnd.h
554
(io)->substream->runtime : NULL)
sound/soc/renesas/rcar/rsnd.h
555
#define rsnd_io_converted_rate(io) ((io)->converted_rate)
sound/soc/renesas/rcar/rsnd.h
556
#define rsnd_io_converted_chan(io) ((io)->converted_chan)
sound/soc/renesas/rcar/rsnd.h
557
int rsnd_io_is_working(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
609
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
635
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
639
struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
772
int (*accept)(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
773
void (*update)(struct rsnd_dai_stream *io, struct rsnd_mod *mod);
sound/soc/renesas/rcar/rsnd.h
774
struct rsnd_dai_stream *io;
sound/soc/renesas/rcar/rsnd.h
795
int rsnd_kctrl_accept_anytime(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
799
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
802
int (*accept)(struct rsnd_dai_stream *io),
sound/soc/renesas/rcar/rsnd.h
803
void (*update)(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
810
#define rsnd_kctrl_new_m(mod, io, rtd, name, accept, update, cfg, size, max) \
sound/soc/renesas/rcar/rsnd.h
811
rsnd_kctrl_new(mod, io, rtd, name, accept, update, rsnd_kctrl_init_m(cfg), \
sound/soc/renesas/rcar/rsnd.h
814
#define rsnd_kctrl_new_s(mod, io, rtd, name, accept, update, cfg, max) \
sound/soc/renesas/rcar/rsnd.h
815
rsnd_kctrl_new(mod, io, rtd, name, accept, update, rsnd_kctrl_init_s(cfg), \
sound/soc/renesas/rcar/rsnd.h
818
#define rsnd_kctrl_new_e(mod, io, rtd, name, accept, update, cfg, texts, size) \
sound/soc/renesas/rcar/rsnd.h
819
rsnd_kctrl_new(mod, io, rtd, name, accept, update, rsnd_kctrl_init_s(cfg), \
sound/soc/renesas/rcar/rsnd.h
834
int rsnd_ssi_use_busif(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
835
u32 rsnd_ssi_multi_secondaries_runtime(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
838
#define rsnd_ssi_is_pin_sharing(io) \
sound/soc/renesas/rcar/rsnd.h
839
__rsnd_ssi_is_pin_sharing(rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/rsnd.h
852
int rsnd_ssiu_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
873
#define rsnd_src_get_in_rate(priv, io) rsnd_src_get_rate(priv, io, 1)
sound/soc/renesas/rcar/rsnd.h
874
#define rsnd_src_get_out_rate(priv, io) rsnd_src_get_rate(priv, io, 0)
sound/soc/renesas/rcar/rsnd.h
876
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
932
int rsnd_cmd_attach(struct rsnd_dai_stream *io, int id);
sound/soc/renesas/rcar/src.c
101
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
109
return rsnd_io_converted_rate(io);
sound/soc/renesas/rcar/src.c
114
convert_rate = rsnd_io_converted_rate(io);
sound/soc/renesas/rcar/src.c
123
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
126
struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/src.c
127
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
129
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/src.c
147
rate = rsnd_src_convert_rate(io, src_mod);
sound/soc/renesas/rcar/src.c
209
static void rsnd_src_set_convert_rate(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
212
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
225
fin = rsnd_src_get_in_rate(priv, io);
sound/soc/renesas/rcar/src.c
226
fout = rsnd_src_get_out_rate(priv, io);
sound/soc/renesas/rcar/src.c
269
static void rsnd_src_init_convert_rate(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
272
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
275
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/src.c
290
fin = rsnd_src_get_in_rate(priv, io);
sound/soc/renesas/rcar/src.c
291
fout = rsnd_src_get_out_rate(priv, io);
sound/soc/renesas/rcar/src.c
293
chan = rsnd_runtime_channel_original(io);
sound/soc/renesas/rcar/src.c
313
adinr = rsnd_get_adinr_bit(mod, io) | chan;
sound/soc/renesas/rcar/src.c
328
route |= rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/src.c
386
tmp = rsnd_get_busif_shift(io, mod);
sound/soc/renesas/rcar/src.c
403
rsnd_mod_write(mod, SRC_BUSIF_DALIGN, rsnd_get_dalign(mod, io));
sound/soc/renesas/rcar/src.c
405
rsnd_adg_set_src_timesel_gen2(mod, io, fin, fout);
sound/soc/renesas/rcar/src.c
408
rsnd_src_set_convert_rate(io, mod);
sound/soc/renesas/rcar/src.c
417
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
494
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
504
val = (rsnd_io_to_mod_dvc(io) && !rsnd_src_sync_is_enabled(mod)) ?
sound/soc/renesas/rcar/src.c
513
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
522
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
538
rsnd_src_init_convert_rate(io, mod);
sound/soc/renesas/rcar/src.c
546
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
563
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/src.c
570
if (!rsnd_io_is_working(io))
sound/soc/renesas/rcar/src.c
580
snd_pcm_stop_xrun(io->substream);
sound/soc/renesas/rcar/src.c
592
static int rsnd_src_kctrl_accept_runtime(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/src.c
594
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
597
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/src.c
609
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
631
ret = rsnd_dma_attach(io, mod, &src->dma);
sound/soc/renesas/rcar/src.c
637
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
651
if (rsnd_io_to_mod_cmd(io) && !rsnd_io_is_play(io))
sound/soc/renesas/rcar/src.c
657
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/src.c
658
rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/src.c
667
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/src.c
668
rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/src.c
680
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
87
static struct dma_chan *rsnd_src_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
91
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/src.c
98
static u32 rsnd_src_convert_rate(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
1004
static struct dma_chan *rsnd_ssi_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
1008
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/ssi.c
1022
if (rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/ssi.c
1033
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
1036
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
1045
seq_printf(m, "multi secondary: %d\n", rsnd_ssi_is_multi_secondary(mod, io));
sound/soc/renesas/rcar/ssi.c
1046
seq_printf(m, "tdm: %d, %d\n", rsnd_runtime_is_tdm(io),
sound/soc/renesas/rcar/ssi.c
1047
rsnd_runtime_is_tdm_split(io));
sound/soc/renesas/rcar/ssi.c
1085
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
1087
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
1100
if (!rsnd_io_to_mod(io, type)) {
sound/soc/renesas/rcar/ssi.c
1101
rsnd_dai_connect(mod, io, type);
sound/soc/renesas/rcar/ssi.c
114
#define rsnd_ssi_is_parent(ssi, io) ((ssi) == rsnd_io_to_mod_ssip(io))
sound/soc/renesas/rcar/ssi.c
115
#define rsnd_ssi_is_multi_secondary(mod, io) \
sound/soc/renesas/rcar/ssi.c
116
(rsnd_ssi_multi_secondaries(io) & (1 << rsnd_mod_id(mod)))
sound/soc/renesas/rcar/ssi.c
117
#define rsnd_ssi_is_run_mods(mod, io) \
sound/soc/renesas/rcar/ssi.c
118
(rsnd_ssi_run_mods(io) & (1 << rsnd_mod_id(mod)))
sound/soc/renesas/rcar/ssi.c
121
int rsnd_ssi_use_busif(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
123
struct rsnd_mod *mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssi.c
132
if (rsnd_io_to_mod_src(io))
sound/soc/renesas/rcar/ssi.c
167
static u32 rsnd_ssi_multi_secondaries(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
178
struct rsnd_mod *mod = rsnd_io_to_mod(io, types[i]);
sound/soc/renesas/rcar/ssi.c
189
static u32 rsnd_ssi_run_mods(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
191
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssi.c
192
struct rsnd_mod *ssi_parent_mod = rsnd_io_to_mod_ssip(io);
sound/soc/renesas/rcar/ssi.c
195
mods = rsnd_ssi_multi_secondaries_runtime(io) |
sound/soc/renesas/rcar/ssi.c
204
u32 rsnd_ssi_multi_secondaries_runtime(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
206
if (rsnd_runtime_is_multi_ssi(io))
sound/soc/renesas/rcar/ssi.c
207
return rsnd_ssi_multi_secondaries(io);
sound/soc/renesas/rcar/ssi.c
266
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
268
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/ssi.c
270
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
272
int chan = rsnd_runtime_channel_for_ssi(io);
sound/soc/renesas/rcar/ssi.c
275
unsigned int rate = rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/ssi.c
276
rsnd_src_get_out_rate(priv, io) :
sound/soc/renesas/rcar/ssi.c
277
rsnd_src_get_in_rate(priv, io);
sound/soc/renesas/rcar/ssi.c
285
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
288
if (rsnd_runtime_is_tdm_split(io))
sound/soc/renesas/rcar/ssi.c
289
chan = rsnd_io_converted_chan(io);
sound/soc/renesas/rcar/ssi.c
344
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
346
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
366
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
368
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
371
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
379
is_tdm = rsnd_runtime_is_tdm(io);
sound/soc/renesas/rcar/ssi.c
380
is_tdm_split = rsnd_runtime_is_tdm_split(io);
sound/soc/renesas/rcar/ssi.c
412
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
415
if (rsnd_io_is_play(io))
sound/soc/renesas/rcar/ssi.c
473
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
479
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
482
ret = rsnd_ssi_master_clk_start(mod, io);
sound/soc/renesas/rcar/ssi.c
492
rsnd_ssi_config_init(mod, io);
sound/soc/renesas/rcar/ssi.c
503
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
509
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
517
rsnd_ssi_master_clk_stop(mod, io);
sound/soc/renesas/rcar/ssi.c
533
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
537
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
541
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/ssi.c
552
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
557
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
564
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssi.c
571
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
585
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
591
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
594
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
605
if (rsnd_io_is_play(io)) {
sound/soc/renesas/rcar/ssi.c
613
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssi.c
629
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
637
is_tdm = rsnd_runtime_is_tdm(io);
sound/soc/renesas/rcar/ssi.c
638
is_tdm_split = rsnd_runtime_is_tdm_split(io);
sound/soc/renesas/rcar/ssi.c
643
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
646
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
671
struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/ssi.c
673
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
685
if (!rsnd_io_is_working(io))
sound/soc/renesas/rcar/ssi.c
692
elapsed = rsnd_ssi_pio_interrupt(mod, io);
sound/soc/renesas/rcar/ssi.c
708
snd_pcm_period_elapsed(io->substream);
sound/soc/renesas/rcar/ssi.c
711
snd_pcm_stop_xrun(io->substream);
sound/soc/renesas/rcar/ssi.c
725
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
754
return &io->parent_ssi_status;
sound/soc/renesas/rcar/ssi.c
756
return rsnd_mod_get_status(mod, io, type);
sound/soc/renesas/rcar/ssi.c
763
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
765
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
774
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
781
rsnd_dai_connect(rsnd_ssi_mod_get(priv, 0), io, RSND_MOD_SSIP);
sound/soc/renesas/rcar/ssi.c
784
rsnd_dai_connect(rsnd_ssi_mod_get(priv, 3), io, RSND_MOD_SSIP);
sound/soc/renesas/rcar/ssi.c
787
rsnd_dai_connect(rsnd_ssi_mod_get(priv, 7), io, RSND_MOD_SSIP);
sound/soc/renesas/rcar/ssi.c
793
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
801
rsnd_ssi_parent_attach(mod, io);
sound/soc/renesas/rcar/ssi.c
807
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
818
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
850
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
854
struct rsnd_mod *pure_ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssi.c
874
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
876
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
891
if (rsnd_io_is_play(io))
sound/soc/renesas/rcar/ssi.c
917
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
920
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
923
if (!rsnd_ssi_is_parent(mod, io)) {
sound/soc/renesas/rcar/ssi.c
931
return rsnd_ssi_init(mod, io, priv);
sound/soc/renesas/rcar/ssi.c
935
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
939
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
962
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
971
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
974
ret = rsnd_ssi_common_probe(mod, io, priv);
sound/soc/renesas/rcar/ssi.c
979
ret = rsnd_dma_attach(io, mod, &io->dma);
sound/soc/renesas/rcar/ssi.c
985
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
140
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
150
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
153
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssiu.c
154
u32 ssis = rsnd_ssi_multi_secondaries_runtime(io);
sound/soc/renesas/rcar/ssiu.c
155
int use_busif = rsnd_ssi_use_busif(io);
sound/soc/renesas/rcar/ssiu.c
181
if (rsnd_ssi_is_pin_sharing(io)) {
sound/soc/renesas/rcar/ssiu.c
235
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
252
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
256
u32 has_hdmi0 = rsnd_flags_has(io, RSND_STREAM_HDMI0);
sound/soc/renesas/rcar/ssiu.c
257
u32 has_hdmi1 = rsnd_flags_has(io, RSND_STREAM_HDMI1);
sound/soc/renesas/rcar/ssiu.c
261
ret = rsnd_ssiu_init(mod, io, priv);
sound/soc/renesas/rcar/ssiu.c
272
if (rsnd_runtime_is_tdm(io))
sound/soc/renesas/rcar/ssiu.c
274
else if (rsnd_runtime_is_tdm_split(io))
sound/soc/renesas/rcar/ssiu.c
279
if (rsnd_ssi_use_busif(io)) {
sound/soc/renesas/rcar/ssiu.c
295
rsnd_get_adinr_bit(mod, io) |
sound/soc/renesas/rcar/ssiu.c
296
(rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/ssiu.c
297
rsnd_runtime_channel_after_ctu(io) :
sound/soc/renesas/rcar/ssiu.c
298
rsnd_runtime_channel_original(io)));
sound/soc/renesas/rcar/ssiu.c
300
rsnd_get_busif_shift(io, mod) | 1);
sound/soc/renesas/rcar/ssiu.c
302
rsnd_get_dalign(mod, io));
sound/soc/renesas/rcar/ssiu.c
311
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssiu.c
325
for_each_rsnd_mod_array(i, pos, io, rsnd_ssi_array) {
sound/soc/renesas/rcar/ssiu.c
342
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
347
if (!rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/ssiu.c
352
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssiu.c
359
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
365
if (!rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/ssiu.c
373
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssiu.c
395
static struct dma_chan *rsnd_ssiu_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
399
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/ssiu.c
421
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
452
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssiu.c
454
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssiu.c
471
rsnd_dai_connect(mod, io, mod->type);
sound/usb/usx2y/usb_stream.c
284
struct urb *io;
sound/usb/usx2y/usb_stream.c
288
io = sk->idle_outurb;
sound/usb/usx2y/usb_stream.c
289
od = io->iso_frame_desc;
sound/usb/usx2y/usb_stream.c
334
io->number_of_packets = p;
sound/usb/usx2y/usb_stream.c
335
io->transfer_buffer_length = lb;
tools/arch/s390/include/uapi/asm/kvm.h
195
struct kvm_s390_io_info io;
tools/include/uapi/linux/kvm.h
269
} io;
tools/lib/api/fs/fs.c
356
struct io io;
tools/lib/api/fs/fs.c
360
io.fd = open(filename, O_RDONLY);
tools/lib/api/fs/fs.c
361
if (io.fd < 0)
tools/lib/api/fs/fs.c
363
io__init(&io, io.fd, bf, sizeof(bf));
tools/lib/api/fs/fs.c
365
err = io__getdelim(&io, buf, sizep, /*delim=*/-1);
tools/lib/api/fs/fs.c
371
close(io.fd);
tools/lib/api/fs/fs.c
457
struct io io;
tools/lib/api/fs/fs.c
467
io.fd = open(path, O_RDONLY);
tools/lib/api/fs/fs.c
468
if (io.fd < 0)
tools/lib/api/fs/fs.c
471
io__init(&io, io.fd, bf, sizeof(bf));
tools/lib/api/fs/fs.c
472
switch (io__get_char(&io)) {
tools/lib/api/fs/fs.c
486
close(io.fd);
tools/lib/api/io.h
102
static inline int io__get_hex(struct io *io, __u64 *hex)
tools/lib/api/io.h
108
int ch = io__get_char(io);
tools/lib/api/io.h
131
static inline int io__get_dec(struct io *io, __u64 *dec)
tools/lib/api/io.h
137
int ch = io__get_char(io);
tools/lib/api/io.h
152
static inline ssize_t io__getdelim(struct io *io, char **line_out, size_t *line_len_out, int delim)
tools/lib/api/io.h
163
ch = io__get_char(io);
tools/lib/api/io.h
196
static inline ssize_t io__getline(struct io *io, char **line_out, size_t *line_len_out)
tools/lib/api/io.h
198
return io__getdelim(io, line_out, line_len_out, /*delim=*/'\n');
tools/lib/api/io.h
34
static inline void io__init(struct io *io, int fd,
tools/lib/api/io.h
37
io->fd = fd;
tools/lib/api/io.h
38
io->buf_len = buf_len;
tools/lib/api/io.h
39
io->buf = buf;
tools/lib/api/io.h
40
io->end = buf;
tools/lib/api/io.h
41
io->data = buf;
tools/lib/api/io.h
42
io->timeout_ms = 0;
tools/lib/api/io.h
43
io->eof = false;
tools/lib/api/io.h
47
static inline int io__fill_buffer(struct io *io)
tools/lib/api/io.h
51
if (io->eof)
tools/lib/api/io.h
54
if (io->timeout_ms != 0) {
tools/lib/api/io.h
57
.fd = io->fd,
tools/lib/api/io.h
62
n = poll(pfds, 1, io->timeout_ms);
tools/lib/api/io.h
70
io->eof = true;
tools/lib/api/io.h
74
n = read(io->fd, io->buf, io->buf_len);
tools/lib/api/io.h
77
io->eof = true;
tools/lib/api/io.h
80
io->data = &io->buf[0];
tools/lib/api/io.h
81
io->end = &io->buf[n];
tools/lib/api/io.h
86
static inline int io__get_char(struct io *io)
tools/lib/api/io.h
88
if (io->data == io->end) {
tools/lib/api/io.h
89
int ret = io__fill_buffer(io);
tools/lib/api/io.h
94
return *io->data++;
tools/lib/symbol/kallsyms.c
20
static void read_to_eol(struct io *io)
tools/lib/symbol/kallsyms.c
25
ch = io__get_char(io);
tools/lib/symbol/kallsyms.c
35
struct io io;
tools/lib/symbol/kallsyms.c
39
io.fd = open(filename, O_RDONLY, 0);
tools/lib/symbol/kallsyms.c
41
if (io.fd < 0)
tools/lib/symbol/kallsyms.c
44
io__init(&io, io.fd, bf, sizeof(bf));
tools/lib/symbol/kallsyms.c
47
while (!io.eof) {
tools/lib/symbol/kallsyms.c
54
if (io__get_hex(&io, &start) != ' ') {
tools/lib/symbol/kallsyms.c
55
read_to_eol(&io);
tools/lib/symbol/kallsyms.c
58
symbol_type = io__get_char(&io);
tools/lib/symbol/kallsyms.c
59
if (io__get_char(&io) != ' ') {
tools/lib/symbol/kallsyms.c
60
read_to_eol(&io);
tools/lib/symbol/kallsyms.c
64
ch = io__get_char(&io);
tools/lib/symbol/kallsyms.c
72
read_to_eol(&io);
tools/lib/symbol/kallsyms.c
79
close(io.fd);
tools/perf/builtin-ftrace.c
1428
struct io io;
tools/perf/builtin-ftrace.c
1483
io__init(&io, trace_fd, buf, sizeof(buf));
tools/perf/builtin-ftrace.c
1484
io.timeout_ms = -1;
tools/perf/builtin-ftrace.c
1486
while (!done && !io.eof) {
tools/perf/builtin-ftrace.c
1487
if (io__getline(&io, &line, &line_len) < 0)
tools/perf/builtin-ftrace.c
1505
io.timeout_ms = 0;
tools/perf/builtin-ftrace.c
1506
while (!io.eof) {
tools/perf/builtin-ftrace.c
1507
if (io__getline(&io, &line, &line_len) < 0)
tools/perf/tests/api-io.c
102
EXPECT_EQUAL(io.eof, false);
tools/perf/tests/api-io.c
104
ch = io__get_char(&io);
tools/perf/tests/api-io.c
106
EXPECT_EQUAL(io.eof, true);
tools/perf/tests/api-io.c
108
cleanup_test(path, &io);
tools/perf/tests/api-io.c
138
struct io io;
tools/perf/tests/api-io.c
142
if (setup_test(path, test_string, 4, &io))
tools/perf/tests/api-io.c
145
ch = io__get_hex(&io, &hex);
tools/perf/tests/api-io.c
149
ch = io__get_hex(&io, &hex);
tools/perf/tests/api-io.c
153
ch = io__get_hex(&io, &hex);
tools/perf/tests/api-io.c
157
EXPECT_EQUAL(io.eof, end_eof);
tools/perf/tests/api-io.c
159
cleanup_test(path, &io);
tools/perf/tests/api-io.c
219
struct io io;
tools/perf/tests/api-io.c
223
if (setup_test(path, test_string, 4, &io))
tools/perf/tests/api-io.c
226
ch = io__get_dec(&io, &dec);
tools/perf/tests/api-io.c
230
ch = io__get_dec(&io, &dec);
tools/perf/tests/api-io.c
234
ch = io__get_dec(&io, &dec);
tools/perf/tests/api-io.c
238
EXPECT_EQUAL(io.eof, end_eof);
tools/perf/tests/api-io.c
240
cleanup_test(path, &io);
tools/perf/tests/api-io.c
296
struct io io;
tools/perf/tests/api-io.c
310
if (setup_test(path, test_string, buf_size, &io))
tools/perf/tests/api-io.c
313
EXPECT_EQUAL((int)io__getline(&io, &line, &line_len), 513);
tools/perf/tests/api-io.c
318
EXPECT_EQUAL((int)io__getline(&io, &line, &line_len), 510);
tools/perf/tests/api-io.c
323
cleanup_test(path, &io);
tools/perf/tests/api-io.c
59
size_t buf_size, struct io *io)
tools/perf/tests/api-io.c
64
io->fd = open(path, O_RDONLY);
tools/perf/tests/api-io.c
65
if (io->fd < 0) {
tools/perf/tests/api-io.c
70
io->buf = malloc(buf_size);
tools/perf/tests/api-io.c
71
if (io->buf == NULL) {
tools/perf/tests/api-io.c
73
close(io->fd);
tools/perf/tests/api-io.c
77
io__init(io, io->fd, io->buf, buf_size);
tools/perf/tests/api-io.c
81
static void cleanup_test(char path[PATH_MAX], struct io *io)
tools/perf/tests/api-io.c
83
zfree(&io->buf);
tools/perf/tests/api-io.c
84
close(io->fd);
tools/perf/tests/api-io.c
91
struct io io;
tools/perf/tests/api-io.c
95
if (setup_test(path, test_string, buf_size, &io))
tools/perf/tests/api-io.c
99
ch = io__get_char(&io);
tools/perf/tests/tests-scripts.c
128
close(io.fd);
tools/perf/tests/tests-scripts.c
85
struct io io;
tools/perf/tests/tests-scripts.c
92
io__init(&io, openat(dir_fd, name, O_RDONLY), buf, sizeof(buf));
tools/perf/tests/tests-scripts.c
93
if (io.fd < 0)
tools/perf/tests/tests-scripts.c
96
while ((len = io__getline(&io, &line, &line_len)) > 0) {
tools/perf/util/addr2line.c
103
struct io io;
tools/perf/util/addr2line.c
110
io__init(&io, a2l->out, buf, sizeof(buf));
tools/perf/util/addr2line.c
111
ch = io__get_char(&io);
tools/perf/util/addr2line.c
127
io__getline(&io, &output, &output_len);
tools/perf/util/addr2line.c
136
ch = io__get_char(&io);
tools/perf/util/addr2line.c
148
static int read_addr2line_record(struct io *io,
tools/perf/util/addr2line.c
184
if (io__getline(io, &line, &line_len) < 0 || !line_len)
tools/perf/util/addr2line.c
220
ch = io__get_char(io);
tools/perf/util/addr2line.c
223
ch = io__get_char(io);
tools/perf/util/addr2line.c
230
if (first && (io__getline(io, &line, &line_len) < 0 || !line_len))
tools/perf/util/addr2line.c
241
if (io__getline(io, &line, &line_len) < 0 || !line_len)
tools/perf/util/addr2line.c
297
struct io io = { .eof = false };
tools/perf/util/addr2line.c
334
io__init(&io, a2l->out, buf, sizeof(buf));
tools/perf/util/addr2line.c
335
io.timeout_ms = symbol_conf.addr2line_timeout_ms;
tools/perf/util/addr2line.c
336
switch (read_addr2line_record(&io, cmd_a2l_style, dso_name, addr, /*first=*/true,
tools/perf/util/addr2line.c
351
switch (read_addr2line_record(&io, cmd_a2l_style, dso_name,
tools/perf/util/addr2line.c
396
while ((record_status = read_addr2line_record(&io,
tools/perf/util/addr2line.c
419
if (io.eof) {
tools/perf/util/drm_pmu.c
159
struct io io;
tools/perf/util/drm_pmu.c
166
io__init(&io, openat(fdinfo_dir_fd, fd_name, O_RDONLY), buf, sizeof(buf));
tools/perf/util/drm_pmu.c
167
if (io.fd == -1) {
tools/perf/util/drm_pmu.c
172
while (io__getline(&io, &line, &line_len) > 0) {
tools/perf/util/drm_pmu.c
244
if (io.fd != -1)
tools/perf/util/drm_pmu.c
245
close(io.fd);
tools/perf/util/drm_pmu.c
578
struct io io;
tools/perf/util/drm_pmu.c
583
io__init(&io, openat(fdinfo_dir_fd, fd_name, O_RDONLY), buf, sizeof(buf));
tools/perf/util/drm_pmu.c
584
if (io.fd == -1) {
tools/perf/util/drm_pmu.c
588
while (io__getline(&io, &line, &line_len) > 0) {
tools/perf/util/drm_pmu.c
603
close(io.fd);
tools/perf/util/hwmon_pmu.c
728
struct io io;
tools/perf/util/hwmon_pmu.c
748
io__init(&io, name_fd, buf2, sizeof(buf2));
tools/perf/util/hwmon_pmu.c
749
if (io__getline(&io, &line, &line_len) > 0 && line[line_len - 1] == '\n')
tools/perf/util/pmu.c
614
struct io io;
tools/perf/util/pmu.c
617
io__init(&io, val_fd, buf, sizeof(buf));
tools/perf/util/pmu.c
618
ret = io__getline(&io, &alias->terms, &line_len) < 0 ? -errno : 0;
tools/perf/util/pmu.c
819
struct io io;
tools/perf/util/pmu.c
826
io.fd = perf_pmu__pathname_fd(dirfd, pmu_name, *template, O_RDONLY);
tools/perf/util/pmu.c
827
if (io.fd < 0)
tools/perf/util/pmu.c
830
io__init(&io, io.fd, buf, sizeof(buf));
tools/perf/util/pmu.c
831
ret = io__getline(&io, &cpumask, &cpumask_len);
tools/perf/util/pmu.c
832
close(io.fd);
tools/perf/util/synthetic-events.c
2575
static union perf_event *__synthesize_schedstat_cpu(struct io *io, __u16 version,
tools/perf/util/synthetic-events.c
2595
if (io__get_char(io) != 'p' || io__get_char(io) != 'u')
tools/perf/util/synthetic-events.c
2598
if (io__get_dec(io, (__u64 *)cpu) != ' ')
tools/perf/util/synthetic-events.c
2604
ch = io__get_dec(io, &_tmp); \
tools/perf/util/synthetic-events.c
2628
static union perf_event *__synthesize_schedstat_domain(struct io *io, __u16 version,
tools/perf/util/synthetic-events.c
2637
if (io__get_char(io) != 'o' || io__get_char(io) != 'm' || io__get_char(io) != 'a' ||
tools/perf/util/synthetic-events.c
2638
io__get_char(io) != 'i' || io__get_char(io) != 'n')
tools/perf/util/synthetic-events.c
2641
ch = io__get_dec(io, &d_num);
tools/perf/util/synthetic-events.c
2644
while (io__get_char(io) != ' ')
tools/perf/util/synthetic-events.c
2649
while (io__get_char(io) != ' ')
tools/perf/util/synthetic-events.c
2666
ch = io__get_dec(io, &_tmp); \
tools/perf/util/synthetic-events.c
2702
struct io io;
tools/perf/util/synthetic-events.c
2707
io.fd = open(path, O_RDONLY, 0);
tools/perf/util/synthetic-events.c
2708
if (io.fd < 0) {
tools/perf/util/synthetic-events.c
2712
io__init(&io, io.fd, bf, sizeof(bf));
tools/perf/util/synthetic-events.c
2714
if (io__getline(&io, &line, &line_len) < 0 || !line_len)
tools/perf/util/synthetic-events.c
2728
if (io__getline(&io, &line, &line_len) < 0 || !line_len)
tools/perf/util/synthetic-events.c
2736
for (ch = io__get_char(&io); !io.eof; ch = io__get_char(&io)) {
tools/perf/util/synthetic-events.c
2740
event = __synthesize_schedstat_cpu(&io, version,
tools/perf/util/synthetic-events.c
2743
event = __synthesize_schedstat_domain(&io, version,
tools/perf/util/synthetic-events.c
2767
close(io.fd);
tools/perf/util/synthetic-events.c
294
static bool read_proc_maps_line(struct io *io, __u64 *start, __u64 *end,
tools/perf/util/synthetic-events.c
304
if (io__get_hex(io, start) != '-')
tools/perf/util/synthetic-events.c
306
if (io__get_hex(io, end) != ' ')
tools/perf/util/synthetic-events.c
311
ch = io__get_char(io);
tools/perf/util/synthetic-events.c
316
ch = io__get_char(io);
tools/perf/util/synthetic-events.c
321
ch = io__get_char(io);
tools/perf/util/synthetic-events.c
326
ch = io__get_char(io);
tools/perf/util/synthetic-events.c
333
if (io__get_char(io) != ' ')
tools/perf/util/synthetic-events.c
336
if (io__get_hex(io, offset) != ' ')
tools/perf/util/synthetic-events.c
339
if (io__get_hex(io, &temp) != ':')
tools/perf/util/synthetic-events.c
342
if (io__get_hex(io, &temp) != ' ')
tools/perf/util/synthetic-events.c
346
ch = io__get_dec(io, inode);
tools/perf/util/synthetic-events.c
352
ch = io__get_char(io);
tools/perf/util/synthetic-events.c
363
ch = io__get_char(io);
tools/perf/util/synthetic-events.c
437
struct io io;
tools/perf/util/synthetic-events.c
450
io.fd = open(bf, O_RDONLY, 0);
tools/perf/util/synthetic-events.c
451
if (io.fd < 0) {
tools/perf/util/synthetic-events.c
458
io__init(&io, io.fd, bf, sizeof(bf));
tools/perf/util/synthetic-events.c
463
while (!io.eof) {
tools/perf/util/synthetic-events.c
471
if (!read_proc_maps_line(&io,
tools/perf/util/synthetic-events.c
547
close(io.fd);
tools/perf/util/tool_pmu.c
114
static bool read_until_char(struct io *io, char e)
tools/perf/util/tool_pmu.c
119
c = io__get_char(io);
tools/perf/util/tool_pmu.c
129
struct io io;
tools/perf/util/tool_pmu.c
132
io__init(&io, fd, buf, sizeof(buf));
tools/perf/util/tool_pmu.c
136
if (!read_until_char(&io, '\n'))
tools/perf/util/tool_pmu.c
140
if (io__get_char(&io) != 'c') return -EINVAL;
tools/perf/util/tool_pmu.c
141
if (io__get_char(&io) != 'p') return -EINVAL;
tools/perf/util/tool_pmu.c
142
if (io__get_char(&io) != 'u') return -EINVAL;
tools/perf/util/tool_pmu.c
145
if (!read_until_char(&io, ' '))
tools/perf/util/tool_pmu.c
150
if (io__get_dec(&io, val) != ' ')
tools/perf/util/tool_pmu.c
162
struct io io;
tools/perf/util/tool_pmu.c
165
io__init(&io, fd, buf, sizeof(buf));
tools/perf/util/tool_pmu.c
166
if (io__get_dec(&io, val) != ' ')
tools/perf/util/tool_pmu.c
172
if (io__get_char(&io) != '(' || !read_until_char(&io, ')'))
tools/perf/util/tool_pmu.c
178
if (io__get_char(&io) != ' ' || io__get_char(&io) == -1)
tools/perf/util/tool_pmu.c
184
if (io__get_char(&io) != ' ')
tools/perf/util/tool_pmu.c
189
c = io__get_dec(&io, val);
tools/perf/util/tool_pmu.c
194
c = io__get_dec(&io, val);
tools/testing/selftests/bpf/prog_tests/token.c
155
struct iovec io = {
tools/testing/selftests/bpf/prog_tests/token.c
164
msg.msg_iov = &io;
tools/testing/selftests/bpf/prog_tests/token.c
190
struct iovec io = {
tools/testing/selftests/bpf/prog_tests/token.c
199
msg.msg_iov = &io;
tools/testing/selftests/kvm/coalesced_io_test.c
100
pio_value == io->pio_port + io->ring_size - 1)),
tools/testing/selftests/kvm/coalesced_io_test.c
105
want_pio ? (unsigned long long)io->pio_port : io->mmio_gpa,
tools/testing/selftests/kvm/coalesced_io_test.c
106
(want_pio ? io->pio_port : io->mmio_gpa) + io->ring_size - 1, run->exit_reason,
tools/testing/selftests/kvm/coalesced_io_test.c
109
run->io.port, run->io.direction, run->io.size, run->io.count, pio_value);
tools/testing/selftests/kvm/coalesced_io_test.c
113
struct kvm_coalesced_io *io,
tools/testing/selftests/kvm/coalesced_io_test.c
117
struct kvm_coalesced_mmio_ring *ring = io->ring;
tools/testing/selftests/kvm/coalesced_io_test.c
120
vcpu_run_and_verify_io_exit(vcpu, io, ring_start, expected_exit);
tools/testing/selftests/kvm/coalesced_io_test.c
122
TEST_ASSERT((ring->last + 1) % io->ring_size == ring->first,
tools/testing/selftests/kvm/coalesced_io_test.c
124
ring->first, ring->last, io->ring_size, ring_start);
tools/testing/selftests/kvm/coalesced_io_test.c
126
for (i = 0; i < io->ring_size - 1; i++) {
tools/testing/selftests/kvm/coalesced_io_test.c
127
u32 idx = (ring->first + i) % io->ring_size;
tools/testing/selftests/kvm/coalesced_io_test.c
132
TEST_ASSERT(entry->phys_addr == io->pio_port &&
tools/testing/selftests/kvm/coalesced_io_test.c
134
*(u32 *)entry->data == io->pio_port + i,
tools/testing/selftests/kvm/coalesced_io_test.c
136
io->pio_port, io->pio_port + i, i,
tools/testing/selftests/kvm/coalesced_io_test.c
141
TEST_ASSERT(entry->phys_addr == io->mmio_gpa &&
tools/testing/selftests/kvm/coalesced_io_test.c
144
io->mmio_gpa, io->mmio_gpa + i, i,
tools/testing/selftests/kvm/coalesced_io_test.c
151
struct kvm_coalesced_io *io, u32 ring_start)
tools/testing/selftests/kvm/coalesced_io_test.c
153
struct kvm_coalesced_mmio_ring *ring = io->ring;
tools/testing/selftests/kvm/coalesced_io_test.c
155
kvm_vm_register_coalesced_io(vcpu->vm, io->mmio_gpa, 8, false /* pio */);
tools/testing/selftests/kvm/coalesced_io_test.c
157
kvm_vm_register_coalesced_io(vcpu->vm, io->pio_port, 8, true /* pio */);
tools/testing/selftests/kvm/coalesced_io_test.c
160
vcpu_run_and_verify_coalesced_io(vcpu, io, ring_start, KVM_EXIT_MMIO);
tools/testing/selftests/kvm/coalesced_io_test.c
162
vcpu_run_and_verify_coalesced_io(vcpu, io, ring_start, KVM_EXIT_IO);
tools/testing/selftests/kvm/coalesced_io_test.c
177
kvm_vm_unregister_coalesced_io(vcpu->vm, io->mmio_gpa, 8, false /* pio */);
tools/testing/selftests/kvm/coalesced_io_test.c
178
vcpu_run_and_verify_io_exit(vcpu, io, ring_start, KVM_EXIT_MMIO);
tools/testing/selftests/kvm/coalesced_io_test.c
181
kvm_vm_unregister_coalesced_io(vcpu->vm, io->pio_port, 8, true /* pio */);
tools/testing/selftests/kvm/coalesced_io_test.c
182
vcpu_run_and_verify_io_exit(vcpu, io, ring_start, KVM_EXIT_IO);
tools/testing/selftests/kvm/coalesced_io_test.c
37
static void guest_code(struct kvm_coalesced_io *io)
tools/testing/selftests/kvm/coalesced_io_test.c
47
for (i = 0; i < io->ring_size - 1; i++) {
tools/testing/selftests/kvm/coalesced_io_test.c
50
outl(io->pio_port, io->pio_port + i);
tools/testing/selftests/kvm/coalesced_io_test.c
53
WRITE_ONCE(*io->mmio, io->mmio_gpa + i);
tools/testing/selftests/kvm/coalesced_io_test.c
57
outl(io->pio_port, io->pio_port + i);
tools/testing/selftests/kvm/coalesced_io_test.c
60
WRITE_ONCE(*io->mmio, io->mmio_gpa + i);
tools/testing/selftests/kvm/coalesced_io_test.c
64
WRITE_ONCE(*io->mmio, io->mmio_gpa + i);
tools/testing/selftests/kvm/coalesced_io_test.c
66
outl(io->pio_port, io->pio_port + i);
tools/testing/selftests/kvm/coalesced_io_test.c
72
struct kvm_coalesced_io *io,
tools/testing/selftests/kvm/coalesced_io_test.c
77
struct kvm_coalesced_mmio_ring *ring = io->ring;
tools/testing/selftests/kvm/coalesced_io_test.c
91
pio_value = *(u32 *)((void *)run + run->io.data_offset);
tools/testing/selftests/kvm/coalesced_io_test.c
96
run->mmio.phys_addr == io->mmio_gpa && run->mmio.len == 8 &&
tools/testing/selftests/kvm/coalesced_io_test.c
97
*(u64 *)run->mmio.data == io->mmio_gpa + io->ring_size - 1)) ||
tools/testing/selftests/kvm/coalesced_io_test.c
98
(want_pio && (run->exit_reason == KVM_EXIT_IO && run->io.port == io->pio_port &&
tools/testing/selftests/kvm/coalesced_io_test.c
99
run->io.direction == KVM_EXIT_IO_OUT && run->io.count == 1 &&
tools/testing/selftests/kvm/lib/x86/ucall.c
49
if (run->exit_reason == KVM_EXIT_IO && run->io.port == UCALL_PIO_PORT) {
tools/testing/selftests/kvm/x86/cr4_cpuid_sync_test.c
77
if (vcpu->run->io.port == MAGIC_HYPERCALL_PORT &&
tools/testing/selftests/kvm/x86/cr4_cpuid_sync_test.c
78
vcpu->run->io.direction == KVM_EXIT_IO_OUT) {
tools/testing/selftests/kvm/x86/nested_close_kvm_test.c
93
if (run->io.port == PORT_L0_EXIT)
tools/testing/selftests/kvm/x86/nested_tdp_fault_test.c
283
vcpu->run->io.port == TEST_IO_PORT &&
tools/testing/selftests/kvm/x86/nested_tdp_fault_test.c
284
vcpu->run->io.direction == KVM_EXIT_IO_IN) {
tools/testing/selftests/kvm/x86/triple_fault_event_test.c
93
TEST_ASSERT(run->io.port == ARBITRARY_IO_PORT,
tools/testing/selftests/kvm/x86/triple_fault_event_test.c
95
ARBITRARY_IO_PORT, run->io.port);
tools/testing/selftests/kvm/x86/userspace_io_test.c
73
TEST_ASSERT(run->io.port == 0x80,
tools/testing/selftests/kvm/x86/userspace_io_test.c
74
"Expected I/O at port 0x80, got port 0x%x", run->io.port);
tools/testing/selftests/kvm/x86/userspace_io_test.c
88
memset((void *)run + run->io.data_offset, 0xaa, PAGE_SIZE);
tools/testing/selftests/kvm/x86/vmx_invalid_nested_guest_state.c
79
TEST_ASSERT(run->io.port == ARBITRARY_IO_PORT,
tools/testing/selftests/kvm/x86/vmx_invalid_nested_guest_state.c
81
ARBITRARY_IO_PORT, run->io.port);
tools/testing/selftests/landlock/common.h
143
struct iovec io = {
tools/testing/selftests/landlock/common.h
148
.msg_iov = &io,
tools/testing/selftests/landlock/common.h
177
struct iovec io = {
tools/testing/selftests/landlock/common.h
182
.msg_iov = &io,
tools/testing/selftests/ublk/batch.c
371
struct ublk_io *io = &q->ios[i];
tools/testing/selftests/ublk/batch.c
379
elem->buf_addr = (__u64)io->buf_addr;
tools/testing/selftests/ublk/batch.c
529
struct ublk_io *io = &q->ios[tag];
tools/testing/selftests/ublk/batch.c
542
elem->buf_addr = (__u64) (uintptr_t) io->buf_addr;
tools/testing/selftests/ublk/file_backed.c
173
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/file_backed.c
176
io->result = cqe->res;
tools/testing/selftests/ublk/file_backed.c
184
if (!io->result || data_len < io->result)
tools/testing/selftests/ublk/file_backed.c
185
io->result = data_len;
tools/testing/selftests/ublk/file_backed.c
190
io->tgt_ios += 1;
tools/testing/selftests/ublk/file_backed.c
193
ublk_complete_io(t, q, tag, io->result);
tools/testing/selftests/ublk/file_backed.c
71
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/file_backed.c
75
void *addr = io->buf_addr;
tools/testing/selftests/ublk/file_backed.c
86
io->integrity_buf,
tools/testing/selftests/ublk/kublk.c
655
static void ublk_user_copy(const struct ublk_io *io, __u8 match_ublk_op)
tools/testing/selftests/ublk/kublk.c
657
const struct ublk_queue *q = ublk_io_to_queue(io);
tools/testing/selftests/ublk/kublk.c
658
const struct ublksrv_io_desc *iod = ublk_get_iod(q, io->tag);
tools/testing/selftests/ublk/kublk.c
659
__u64 off = ublk_user_copy_offset(q->q_id, io->tag);
tools/testing/selftests/ublk/kublk.c
662
void *addr = io->buf_addr;
tools/testing/selftests/ublk/kublk.c
687
off = ublk_user_copy_offset(q->q_id, io->tag);
tools/testing/selftests/ublk/kublk.c
690
copied = pread(q->ublk_fd, io->integrity_buf, len, off);
tools/testing/selftests/ublk/kublk.c
692
copied = pwrite(q->ublk_fd, io->integrity_buf, len, off);
tools/testing/selftests/ublk/kublk.c
698
int ublk_queue_io_cmd(struct ublk_thread *t, struct ublk_io *io)
tools/testing/selftests/ublk/kublk.c
700
struct ublk_queue *q = ublk_io_to_queue(io);
tools/testing/selftests/ublk/kublk.c
707
if (!(io->flags & UBLKS_IO_FREE))
tools/testing/selftests/ublk/kublk.c
714
if (!(io->flags &
tools/testing/selftests/ublk/kublk.c
718
if (io->flags & UBLKS_IO_NEED_GET_DATA)
tools/testing/selftests/ublk/kublk.c
720
else if (io->flags & UBLKS_IO_NEED_COMMIT_RQ_COMP) {
tools/testing/selftests/ublk/kublk.c
722
ublk_user_copy(io, UBLK_IO_OP_READ);
tools/testing/selftests/ublk/kublk.c
725
} else if (io->flags & UBLKS_IO_NEED_FETCH_RQ)
tools/testing/selftests/ublk/kublk.c
734
__func__, t->idx, io->tag);
tools/testing/selftests/ublk/kublk.c
741
cmd->result = io->result;
tools/testing/selftests/ublk/kublk.c
752
cmd->tag = io->tag;
tools/testing/selftests/ublk/kublk.c
755
cmd->addr = (__u64) (uintptr_t) io->buf_addr;
tools/testing/selftests/ublk/kublk.c
760
ublk_set_auto_buf_reg(t, q, sqe[0], io->tag);
tools/testing/selftests/ublk/kublk.c
762
user_data = build_user_data(io->tag, _IOC_NR(cmd_op), 0, q->q_id, 0);
tools/testing/selftests/ublk/kublk.c
765
io->flags = 0;
tools/testing/selftests/ublk/kublk.c
770
__func__, t->idx, q->q_id, io->tag, cmd_op,
tools/testing/selftests/ublk/kublk.c
771
io->flags, !!(t->state & UBLKS_T_STOPPING));
tools/testing/selftests/ublk/kublk.c
778
struct ublk_io *io;
tools/testing/selftests/ublk/kublk.c
798
io = &q->ios[tag];
tools/testing/selftests/ublk/kublk.c
799
io->buf_index = j++;
tools/testing/selftests/ublk/kublk.c
802
ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.c
811
io = &q->ios[i];
tools/testing/selftests/ublk/kublk.c
812
io->buf_index = i;
tools/testing/selftests/ublk/kublk.c
815
ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.c
851
struct ublk_io *io = &q->ios[tag];
tools/testing/selftests/ublk/kublk.c
857
io->flags &= ~UBLKS_IO_NEED_FETCH_RQ;
tools/testing/selftests/ublk/kublk.c
864
ublk_user_copy(io, UBLK_IO_OP_WRITE);
tools/testing/selftests/ublk/kublk.c
869
io->flags |= UBLKS_IO_NEED_GET_DATA | UBLKS_IO_FREE;
tools/testing/selftests/ublk/kublk.c
870
ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.c
880
io->flags = UBLKS_IO_FREE;
tools/testing/selftests/ublk/kublk.h
271
extern int ublk_queue_io_cmd(struct ublk_thread *t, struct ublk_io *io);
tools/testing/selftests/ublk/kublk.h
375
static inline struct ublk_queue *ublk_io_to_queue(const struct ublk_io *io)
tools/testing/selftests/ublk/kublk.h
377
return container_of(io, struct ublk_queue, ios[io->tag]);
tools/testing/selftests/ublk/kublk.h
458
static inline void ublk_mark_io_done(struct ublk_io *io, int res)
tools/testing/selftests/ublk/kublk.h
460
io->flags |= (UBLKS_IO_NEED_COMMIT_RQ_COMP | UBLKS_IO_FREE);
tools/testing/selftests/ublk/kublk.h
461
io->result = res;
tools/testing/selftests/ublk/kublk.h
498
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/kublk.h
502
return --io->tgt_ios == 0;
tools/testing/selftests/ublk/kublk.h
587
struct ublk_io *io = &q->ios[tag];
tools/testing/selftests/ublk/kublk.h
589
ublk_mark_io_done(io, res);
tools/testing/selftests/ublk/kublk.h
590
return ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.h
600
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/kublk.h
603
io->tgt_ios = queued;
tools/testing/selftests/ublk/kublk.h
604
io->result = 0;
tools/testing/selftests/ublk/null.c
102
if (!io->result)
tools/testing/selftests/ublk/null.c
103
io->result = cqe->res;
tools/testing/selftests/ublk/null.c
111
io->tgt_ios += 1;
tools/testing/selftests/ublk/null.c
114
ublk_complete_io(t, q, tag, io->result);
tools/testing/selftests/ublk/null.c
99
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/stripe.c
135
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/stripe.c
137
void *base = io->buf_addr;
tools/testing/selftests/ublk/stripe.c
140
io->private_data = s;
tools/testing/selftests/ublk/stripe.c
240
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/stripe.c
244
if (!io->result)
tools/testing/selftests/ublk/stripe.c
245
io->result = res;
tools/testing/selftests/ublk/stripe.c
252
io->tgt_ios += 1;
tools/testing/selftests/ublk/stripe.c
257
struct stripe_array *s = io->private_data;
tools/testing/selftests/ublk/stripe.c
260
io->result = -EIO;
tools/testing/selftests/ublk/stripe.c
267
int res = io->result;
tools/testing/selftests/ublk/stripe.c
274
free_stripe_array(io->private_data);
tools/testing/selftests/ublk/stripe.c
275
io->private_data = NULL;
tools/testing/selftests/user_events/ftrace_test.c
308
struct iovec io[3];
tools/testing/selftests/user_events/ftrace_test.c
321
io[0].iov_base = ®.write_index;
tools/testing/selftests/user_events/ftrace_test.c
322
io[0].iov_len = sizeof(reg.write_index);
tools/testing/selftests/user_events/ftrace_test.c
323
io[1].iov_base = &field1;
tools/testing/selftests/user_events/ftrace_test.c
324
io[1].iov_len = sizeof(field1);
tools/testing/selftests/user_events/ftrace_test.c
325
io[2].iov_base = &field2;
tools/testing/selftests/user_events/ftrace_test.c
326
io[2].iov_len = sizeof(field2);
tools/testing/selftests/user_events/ftrace_test.c
334
io[0].iov_base = &field2;
tools/testing/selftests/user_events/ftrace_test.c
335
io[0].iov_len = sizeof(field2);
tools/testing/selftests/user_events/ftrace_test.c
336
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
338
io[0].iov_base = ®.write_index;
tools/testing/selftests/user_events/ftrace_test.c
339
io[0].iov_len = sizeof(reg.write_index);
tools/testing/selftests/user_events/ftrace_test.c
342
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
354
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
360
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
366
struct iovec io[1];
tools/testing/selftests/user_events/ftrace_test.c
375
io[0].iov_base = ®.write_index;
tools/testing/selftests/user_events/ftrace_test.c
376
io[0].iov_len = sizeof(reg.write_index);
tools/testing/selftests/user_events/ftrace_test.c
392
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 1));
tools/testing/selftests/user_events/ftrace_test.c
399
struct iovec io[2];
tools/testing/selftests/user_events/ftrace_test.c
412
io[0].iov_base = ®.write_index;
tools/testing/selftests/user_events/ftrace_test.c
413
io[0].iov_len = sizeof(reg.write_index);
tools/testing/selftests/user_events/ftrace_test.c
414
io[1].iov_base = anon;
tools/testing/selftests/user_events/ftrace_test.c
415
io[1].iov_len = l;
tools/testing/selftests/user_events/ftrace_test.c
426
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 2));
tools/testing/selftests/user_events/ftrace_test.c
430
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 2));
tools/testing/selftests/user_events/ftrace_test.c
436
struct iovec io[3];
tools/testing/selftests/user_events/ftrace_test.c
452
io[0].iov_base = ®.write_index;
tools/testing/selftests/user_events/ftrace_test.c
453
io[0].iov_len = sizeof(reg.write_index);
tools/testing/selftests/user_events/ftrace_test.c
454
io[1].iov_base = &loc;
tools/testing/selftests/user_events/ftrace_test.c
455
io[1].iov_len = sizeof(loc);
tools/testing/selftests/user_events/ftrace_test.c
456
io[2].iov_base = data;
tools/testing/selftests/user_events/ftrace_test.c
458
io[2].iov_len = bytes;
tools/testing/selftests/user_events/ftrace_test.c
461
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 1));
tools/testing/selftests/user_events/ftrace_test.c
474
ASSERT_NE(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
480
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
485
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
490
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
495
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));
tools/testing/selftests/user_events/ftrace_test.c
501
ASSERT_EQ(-1, writev(self->data_fd, (const struct iovec *)io, 3));