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
425
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
4252
struct kvmhv_nestedv2_io *io;
arch/powerpc/kvm/book3s_hv.c
4262
io = &vcpu->arch.nestedv2_io;
arch/powerpc/kvm/book3s_hv.c
4273
kvmppc_gse_put_u64(io->vcpu_run_input, KVMPPC_GSID_LPCR, lpcr);
arch/powerpc/kvm/book3s_hv.c
4292
kvmppc_gsm_reset(io->vcpu_message);
arch/powerpc/kvm/book3s_hv.c
4293
kvmppc_gsm_reset(io->vcore_message);
arch/powerpc/kvm/book3s_hv.c
4294
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
205
psw_bits(lc->mcck_new_psw).io = 0;
arch/s390/kvm/interrupt.c
1080
static int __do_deliver_io(struct kvm_vcpu *vcpu, struct kvm_s390_io_info *io)
arch/s390/kvm/interrupt.c
1086
vcpu->arch.sie_block->subchannel_id = io->subchannel_id;
arch/s390/kvm/interrupt.c
1087
vcpu->arch.sie_block->subchannel_nr = io->subchannel_nr;
arch/s390/kvm/interrupt.c
1088
vcpu->arch.sie_block->io_int_parm = io->io_int_parm;
arch/s390/kvm/interrupt.c
1089
vcpu->arch.sie_block->io_int_word = io->io_int_word;
arch/s390/kvm/interrupt.c
1093
rc = put_guest_lc(vcpu, io->subchannel_id, (u16 *)__LC_SUBCHANNEL_ID);
arch/s390/kvm/interrupt.c
1094
rc |= put_guest_lc(vcpu, io->subchannel_nr, (u16 *)__LC_SUBCHANNEL_NR);
arch/s390/kvm/interrupt.c
1095
rc |= put_guest_lc(vcpu, io->io_int_parm, (u32 *)__LC_IO_INT_PARM);
arch/s390/kvm/interrupt.c
1096
rc |= put_guest_lc(vcpu, io->io_int_word, (u32 *)__LC_IO_INT_WORD);
arch/s390/kvm/interrupt.c
1113
struct kvm_s390_io_info io;
arch/s390/kvm/interrupt.c
1130
inti->io.subchannel_id >> 8,
arch/s390/kvm/interrupt.c
1131
inti->io.subchannel_id >> 1 & 0x3,
arch/s390/kvm/interrupt.c
1132
inti->io.subchannel_nr);
arch/s390/kvm/interrupt.c
1137
((__u32)inti->io.subchannel_id << 16) |
arch/s390/kvm/interrupt.c
1138
inti->io.subchannel_nr,
arch/s390/kvm/interrupt.c
1139
((__u64)inti->io.io_int_parm << 32) |
arch/s390/kvm/interrupt.c
1140
inti->io.io_int_word);
arch/s390/kvm/interrupt.c
1149
rc = __do_deliver_io(vcpu, &(inti->io));
arch/s390/kvm/interrupt.c
1160
memset(&io, 0, sizeof(io));
arch/s390/kvm/interrupt.c
1161
io.io_int_word = isc_to_int_word(isc);
arch/s390/kvm/interrupt.c
1165
((__u32)io.subchannel_id << 16) |
arch/s390/kvm/interrupt.c
1166
io.subchannel_nr,
arch/s390/kvm/interrupt.c
1167
((__u64)io.io_int_parm << 32) |
arch/s390/kvm/interrupt.c
1168
io.io_int_word);
arch/s390/kvm/interrupt.c
1169
rc = __do_deliver_io(vcpu, &io);
arch/s390/kvm/interrupt.c
1665
if (schid && (id != iter->io.subchannel_id ||
arch/s390/kvm/interrupt.c
1666
nr != iter->io.subchannel_nr))
arch/s390/kvm/interrupt.c
1746
if (int_word_to_isc(inti->io.io_int_word) <= isc) {
arch/s390/kvm/interrupt.c
1755
tmp_inti->io.io_int_word = isc_to_int_word(isc);
arch/s390/kvm/interrupt.c
1857
isc = int_word_to_isc(inti->io.io_int_word);
arch/s390/kvm/interrupt.c
1884
inti->io.subchannel_id >> 8,
arch/s390/kvm/interrupt.c
1885
inti->io.subchannel_id >> 1 & 0x3,
arch/s390/kvm/interrupt.c
1886
inti->io.subchannel_nr);
arch/s390/kvm/interrupt.c
1997
inti->io.subchannel_id = s390int->parm >> 16;
arch/s390/kvm/interrupt.c
1998
inti->io.subchannel_nr = s390int->parm & 0x0000ffffu;
arch/s390/kvm/interrupt.c
1999
inti->io.io_int_parm = s390int->parm64 >> 32;
arch/s390/kvm/interrupt.c
2000
inti->io.io_int_word = s390int->parm64 & 0x00000000ffffffffull;
arch/s390/kvm/interrupt.c
2167
irq->u.io = inti->io;
arch/s390/kvm/interrupt.c
2229
irq->u.io.io_int_word = isc_to_int_word(i);
arch/s390/kvm/interrupt.c
2345
target = (void *) &inti->io;
arch/s390/kvm/interrupt.c
2346
source = &uptr->u.io;
arch/s390/kvm/interrupt.c
2347
size = sizeof(inti->io);
arch/s390/kvm/priv.c
460
tpi_data[0] = inti->io.subchannel_id << 16 | inti->io.subchannel_nr;
arch/s390/kvm/priv.c
461
tpi_data[1] = inti->io.io_int_parm;
arch/s390/kvm/priv.c
462
tpi_data[2] = inti->io.io_int_word;
arch/s390/kvm/priv.c
528
vcpu->run->s390_tsch.subchannel_id = inti->io.subchannel_id;
arch/s390/kvm/priv.c
529
vcpu->run->s390_tsch.subchannel_nr = inti->io.subchannel_nr;
arch/s390/kvm/priv.c
530
vcpu->run->s390_tsch.io_int_parm = inti->io.io_int_parm;
arch/s390/kvm/priv.c
531
vcpu->run->s390_tsch.io_int_word = inti->io.io_int_word;
arch/x86/include/asm/floppy.h
193
static int vdma_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/x86/include/asm/floppy.h
196
virtual_dma_port = io;
arch/x86/include/asm/floppy.h
204
static int hard_dma_setup(char *addr, unsigned long size, int mode, int io)
arch/x86/include/asm/floppy.h
227
int (*_dma_setup)(char *addr, unsigned long size, int mode, int io);
arch/x86/include/asm/floppy.h
42
#define fd_dma_setup(addr, size, mode, io) SW._dma_setup(addr, size, mode, io)
arch/x86/kvm/x86.c
8436
vcpu->run->io.direction = in ? KVM_EXIT_IO_IN : KVM_EXIT_IO_OUT;
arch/x86/kvm/x86.c
8437
vcpu->run->io.size = size;
arch/x86/kvm/x86.c
8438
vcpu->run->io.data_offset = KVM_PIO_PAGE_OFFSET * PAGE_SIZE;
arch/x86/kvm/x86.c
8439
vcpu->run->io.count = count;
arch/x86/kvm/x86.c
8440
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
1206
__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
1789
ec->data_addr = resource->data.io.minimum;
drivers/acpi/ec.c
1791
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
1079
struct ublk_io *io)
drivers/block/ublk_drv.c
1082
refcount_set(&io->ref, UBLK_REFCOUNT_INIT);
drivers/block/ublk_drv.c
1085
static inline bool ublk_get_req_ref(struct ublk_io *io)
drivers/block/ublk_drv.c
1087
return refcount_inc_not_zero(&io->ref);
drivers/block/ublk_drv.c
1090
static inline void ublk_put_req_ref(struct ublk_io *io, struct request *req)
drivers/block/ublk_drv.c
1092
if (!refcount_dec_and_test(&io->ref))
drivers/block/ublk_drv.c
1096
__ublk_complete_rq(req, io, false, NULL);
drivers/block/ublk_drv.c
1099
static inline bool ublk_sub_req_ref(struct ublk_io *io)
drivers/block/ublk_drv.c
1101
unsigned sub_refs = UBLK_REFCOUNT_INIT - io->task_registered_buffers;
drivers/block/ublk_drv.c
1103
io->task_registered_buffers = 0;
drivers/block/ublk_drv.c
1104
return refcount_sub_and_test(sub_refs, &io->ref);
drivers/block/ublk_drv.c
1357
const struct ublk_io *io)
drivers/block/ublk_drv.c
1373
import_ubuf(dir, u64_to_user_ptr(io->buf.addr), rq_bytes, &iter);
drivers/block/ublk_drv.c
1381
const struct ublk_io *io)
drivers/block/ublk_drv.c
1392
WARN_ON_ONCE(io->res > rq_bytes);
drivers/block/ublk_drv.c
1394
import_ubuf(dir, u64_to_user_ptr(io->buf.addr), io->res, &iter);
drivers/block/ublk_drv.c
1434
struct ublk_io *io = &ubq->ios[req->tag];
drivers/block/ublk_drv.c
1463
iod->addr = io->buf.addr;
drivers/block/ublk_drv.c
1482
static inline void __ublk_complete_rq(struct request *req, struct ublk_io *io,
drivers/block/ublk_drv.c
1490
if (!io->res && req_op(req) == REQ_OP_READ)
drivers/block/ublk_drv.c
1491
io->res = -EIO;
drivers/block/ublk_drv.c
1493
if (io->res < 0) {
drivers/block/ublk_drv.c
1494
res = errno_to_blk_status(io->res);
drivers/block/ublk_drv.c
1509
unmapped_bytes = ublk_unmap_io(need_map, req, io);
drivers/block/ublk_drv.c
1516
if (unlikely(unmapped_bytes < io->res))
drivers/block/ublk_drv.c
1517
io->res = unmapped_bytes;
drivers/block/ublk_drv.c
1533
requeue = blk_update_request(req, BLK_STS_OK, io->res);
drivers/block/ublk_drv.c
1548
static struct io_uring_cmd *__ublk_prep_compl_io_cmd(struct ublk_io *io,
drivers/block/ublk_drv.c
1552
struct io_uring_cmd *cmd = io->cmd;
drivers/block/ublk_drv.c
1555
io->flags |= UBLK_IO_FLAG_OWNED_BY_SRV;
drivers/block/ublk_drv.c
1561
io->flags &= ~UBLK_IO_FLAG_ACTIVE;
drivers/block/ublk_drv.c
1563
io->req = req;
drivers/block/ublk_drv.c
1567
static void ublk_complete_io_cmd(struct ublk_io *io, struct request *req,
drivers/block/ublk_drv.c
1570
struct io_uring_cmd *cmd = __ublk_prep_compl_io_cmd(io, req);
drivers/block/ublk_drv.c
1609
struct request *req, struct ublk_io *io,
drivers/block/ublk_drv.c
1614
io->task_registered_buffers = 1;
drivers/block/ublk_drv.c
1615
io->buf_ctx_handle = io_uring_cmd_ctx_handle(cmd);
drivers/block/ublk_drv.c
1616
io->flags |= UBLK_IO_FLAG_AUTO_BUF_REG;
drivers/block/ublk_drv.c
1618
ublk_init_req_ref(ubq, io);
drivers/block/ublk_drv.c
1619
__ublk_prep_compl_io_cmd(io, req);
drivers/block/ublk_drv.c
1625
struct ublk_io *io, struct io_uring_cmd *cmd,
drivers/block/ublk_drv.c
1631
io->buf.auto_reg.index, issue_flags);
drivers/block/ublk_drv.c
1633
if (io->buf.auto_reg.flags & UBLK_AUTO_BUF_REG_FALLBACK) {
drivers/block/ublk_drv.c
1650
struct request *req, struct ublk_io *io,
drivers/block/ublk_drv.c
1654
enum auto_buf_reg_res res = ublk_auto_buf_register(ubq, req, io, cmd,
drivers/block/ublk_drv.c
1658
ublk_auto_buf_io_setup(ubq, req, io, cmd, res);
drivers/block/ublk_drv.c
1664
struct ublk_io *io)
drivers/block/ublk_drv.c
1666
unsigned mapped_bytes = ublk_map_io(ubq, req, io);
drivers/block/ublk_drv.c
1695
struct ublk_io *io = &ubq->ios[tag];
drivers/block/ublk_drv.c
1698
__func__, ubq->q_id, req->tag, io->flags,
drivers/block/ublk_drv.c
1710
if (unlikely(current != io->task || current->flags & PF_EXITING)) {
drivers/block/ublk_drv.c
1721
io->flags |= UBLK_IO_FLAG_NEED_GET_DATA;
drivers/block/ublk_drv.c
1723
__func__, ubq->q_id, req->tag, io->flags);
drivers/block/ublk_drv.c
1724
ublk_complete_io_cmd(io, req, UBLK_IO_RES_NEED_GET_DATA,
drivers/block/ublk_drv.c
1729
if (!ublk_start_io(ubq, req, io))
drivers/block/ublk_drv.c
1733
ublk_auto_buf_dispatch(ubq, req, io, io->cmd, issue_flags);
drivers/block/ublk_drv.c
1735
ublk_init_req_ref(ubq, io);
drivers/block/ublk_drv.c
1736
ublk_complete_io_cmd(io, req, UBLK_IO_RES_OK, issue_flags);
drivers/block/ublk_drv.c
1745
struct ublk_io *io = &ubq->ios[tag];
drivers/block/ublk_drv.c
1750
if (!ublk_start_io(ubq, req, io))
drivers/block/ublk_drv.c
1754
res = ublk_auto_buf_register(ubq, req, io, cmd,
drivers/block/ublk_drv.c
1761
ublk_io_lock(io);
drivers/block/ublk_drv.c
1762
ublk_auto_buf_io_setup(ubq, req, io, cmd, res);
drivers/block/ublk_drv.c
1763
ublk_io_unlock(io);
drivers/block/ublk_drv.c
1860
struct ublk_io *io = &ubq->ios[tag_buf[i]];
drivers/block/ublk_drv.c
1863
ublk_io_lock(io);
drivers/block/ublk_drv.c
1864
if (io->flags & UBLK_IO_FLAG_AUTO_BUF_REG)
drivers/block/ublk_drv.c
1865
index = io->buf.auto_reg.index;
drivers/block/ublk_drv.c
1866
io->flags &= ~(UBLK_IO_FLAG_OWNED_BY_SRV | UBLK_IO_FLAG_AUTO_BUF_REG);
drivers/block/ublk_drv.c
1867
io->flags |= UBLK_IO_FLAG_ACTIVE;
drivers/block/ublk_drv.c
1868
ublk_io_unlock(io);
drivers/block/ublk_drv.c
2022
static void ublk_queue_cmd_list(struct ublk_io *io, struct rq_list *l)
drivers/block/ublk_drv.c
2024
struct io_uring_cmd *cmd = io->cmd;
drivers/block/ublk_drv.c
2151
static inline bool ublk_belong_to_same_batch(const struct ublk_io *io,
drivers/block/ublk_drv.c
2154
return (io_uring_cmd_ctx_handle(io->cmd) ==
drivers/block/ublk_drv.c
2156
(io->task == io2->task);
drivers/block/ublk_drv.c
2176
struct ublk_io *io = NULL;
drivers/block/ublk_drv.c
2188
if (io && !ublk_belong_to_same_batch(io, this_io) &&
drivers/block/ublk_drv.c
2190
ublk_queue_cmd_list(io, &submit_list);
drivers/block/ublk_drv.c
2191
io = this_io;
drivers/block/ublk_drv.c
2196
ublk_queue_cmd_list(io, &submit_list);
drivers/block/ublk_drv.c
2283
struct ublk_io *io = &ubq->ios[i];
drivers/block/ublk_drv.c
2289
io->flags &= UBLK_IO_FLAG_CANCELED;
drivers/block/ublk_drv.c
2290
io->cmd = NULL;
drivers/block/ublk_drv.c
2291
io->buf.addr = 0;
drivers/block/ublk_drv.c
2299
if (io->task) {
drivers/block/ublk_drv.c
2300
put_task_struct(io->task);
drivers/block/ublk_drv.c
2301
io->task = NULL;
drivers/block/ublk_drv.c
2304
WARN_ON_ONCE(refcount_read(&io->ref));
drivers/block/ublk_drv.c
2305
WARN_ON_ONCE(io->task_registered_buffers);
drivers/block/ublk_drv.c
2407
struct ublk_io *io = &ubq->ios[j];
drivers/block/ublk_drv.c
2408
unsigned int refs = refcount_read(&io->ref) +
drivers/block/ublk_drv.c
2409
io->task_registered_buffers;
drivers/block/ublk_drv.c
2419
refcount_set(&io->ref, 0);
drivers/block/ublk_drv.c
2420
io->task_registered_buffers = 0;
drivers/block/ublk_drv.c
2581
static void __ublk_fail_req(struct ublk_device *ub, struct ublk_io *io,
drivers/block/ublk_drv.c
2585
io->flags & UBLK_IO_FLAG_ACTIVE);
drivers/block/ublk_drv.c
2590
io->res = -EIO;
drivers/block/ublk_drv.c
2591
__ublk_complete_rq(req, io, ublk_dev_need_map_io(ub), NULL);
drivers/block/ublk_drv.c
2626
struct ublk_io *io = &ubq->ios[i];
drivers/block/ublk_drv.c
2628
if (io->flags & UBLK_IO_FLAG_OWNED_BY_SRV)
drivers/block/ublk_drv.c
2629
__ublk_fail_req(ub, io, io->req);
drivers/block/ublk_drv.c
2665
struct ublk_io *io = &ubq->ios[tag];
drivers/block/ublk_drv.c
2670
if (!(io->flags & UBLK_IO_FLAG_ACTIVE))
drivers/block/ublk_drv.c
2688
done = !!(io->flags & UBLK_IO_FLAG_CANCELED);
drivers/block/ublk_drv.c
2690
io->flags |= UBLK_IO_FLAG_CANCELED;
drivers/block/ublk_drv.c
2694
io_uring_cmd_done(io->cmd, UBLK_IO_RES_ABORT, issue_flags);
drivers/block/ublk_drv.c
2778
struct ublk_io *io;
drivers/block/ublk_drv.c
2787
io = &ubq->ios[pdu->tag];
drivers/block/ublk_drv.c
2788
if (WARN_ON_ONCE(task && task != io->task))
drivers/block/ublk_drv.c
2793
WARN_ON_ONCE(io->cmd != cmd);
drivers/block/ublk_drv.c
2976
static inline int ublk_set_auto_buf_reg(struct ublk_io *io, struct io_uring_cmd *cmd)
drivers/block/ublk_drv.c
2987
io->buf.auto_reg = buf;
drivers/block/ublk_drv.c
2991
static void ublk_clear_auto_buf_reg(struct ublk_io *io,
drivers/block/ublk_drv.c
2995
if (io->flags & UBLK_IO_FLAG_AUTO_BUF_REG) {
drivers/block/ublk_drv.c
2996
io->flags &= ~UBLK_IO_FLAG_AUTO_BUF_REG;
drivers/block/ublk_drv.c
3008
if (io->buf_ctx_handle == io_uring_cmd_ctx_handle(cmd))
drivers/block/ublk_drv.c
3009
*buf_idx = io->buf.auto_reg.index;
drivers/block/ublk_drv.c
3013
static int ublk_handle_auto_buf_reg(struct ublk_io *io,
drivers/block/ublk_drv.c
3017
ublk_clear_auto_buf_reg(io, cmd, buf_idx);
drivers/block/ublk_drv.c
3018
return ublk_set_auto_buf_reg(io, cmd);
drivers/block/ublk_drv.c
3023
ublk_fill_io_cmd(struct ublk_io *io, struct io_uring_cmd *cmd)
drivers/block/ublk_drv.c
3025
struct request *req = io->req;
drivers/block/ublk_drv.c
3027
io->cmd = cmd;
drivers/block/ublk_drv.c
3028
io->flags |= UBLK_IO_FLAG_ACTIVE;
drivers/block/ublk_drv.c
3030
io->flags &= ~UBLK_IO_FLAG_OWNED_BY_SRV;
drivers/block/ublk_drv.c
3036
ublk_config_io_buf(const struct ublk_device *ub, struct ublk_io *io,
drivers/block/ublk_drv.c
3041
return ublk_handle_auto_buf_reg(io, cmd, buf_idx);
drivers/block/ublk_drv.c
3043
io->buf.addr = buf_addr;
drivers/block/ublk_drv.c
3066
struct ublk_io *io = &ubq->ios[rq->tag];
drivers/block/ublk_drv.c
3072
if (current == io->task && io->task_registered_buffers)
drivers/block/ublk_drv.c
3073
io->task_registered_buffers--;
drivers/block/ublk_drv.c
3075
ublk_put_req_ref(io, rq);
drivers/block/ublk_drv.c
3081
struct ublk_io *io,
drivers/block/ublk_drv.c
3090
req = __ublk_check_and_get_req(ub, q_id, tag, io);
drivers/block/ublk_drv.c
3097
ublk_put_req_ref(io, req);
drivers/block/ublk_drv.c
3107
u16 q_id, u16 tag, struct ublk_io *io,
drivers/block/ublk_drv.c
3111
struct request *req = io->req;
drivers/block/ublk_drv.c
3118
new_registered_buffers = io->task_registered_buffers + 1;
drivers/block/ublk_drv.c
3120
return ublk_register_io_buf(cmd, ub, q_id, tag, io, index,
drivers/block/ublk_drv.c
3131
io->task_registered_buffers = new_registered_buffers;
drivers/block/ublk_drv.c
3162
struct ublk_io *io, u16 q_id)
drivers/block/ublk_drv.c
3169
if (io->flags & UBLK_IO_FLAG_ACTIVE)
drivers/block/ublk_drv.c
3172
WARN_ON_ONCE(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV);
drivers/block/ublk_drv.c
3174
ublk_fill_io_cmd(io, cmd);
drivers/block/ublk_drv.c
3177
WRITE_ONCE(io->task, NULL);
drivers/block/ublk_drv.c
3179
WRITE_ONCE(io->task, get_task_struct(current));
drivers/block/ublk_drv.c
3185
struct ublk_io *io, __u64 buf_addr, u16 q_id)
drivers/block/ublk_drv.c
3195
ret = __ublk_fetch(cmd, ub, io, q_id);
drivers/block/ublk_drv.c
3197
ret = ublk_config_io_buf(ub, io, cmd, buf_addr, NULL);
drivers/block/ublk_drv.c
3205
struct ublk_io *io, __u64 buf_addr)
drivers/block/ublk_drv.c
3207
struct request *req = io->req;
drivers/block/ublk_drv.c
3229
struct ublk_io *io)
drivers/block/ublk_drv.c
3232
return ublk_sub_req_ref(io);
drivers/block/ublk_drv.c
3236
static bool ublk_get_data(const struct ublk_queue *ubq, struct ublk_io *io,
drivers/block/ublk_drv.c
3244
io->flags &= ~UBLK_IO_FLAG_NEED_GET_DATA;
drivers/block/ublk_drv.c
3246
ublk_get_iod(ubq, req->tag)->addr = io->buf.addr;
drivers/block/ublk_drv.c
3248
__func__, ubq->q_id, req->tag, io->flags,
drivers/block/ublk_drv.c
3251
return ublk_start_io(ubq, req, io);
drivers/block/ublk_drv.c
3263
struct ublk_io *io = NULL;
drivers/block/ublk_drv.c
3298
io = &ubq->ios[tag];
drivers/block/ublk_drv.c
3304
ret = ublk_fetch(cmd, ub, io, addr, q_id);
drivers/block/ublk_drv.c
3312
if (READ_ONCE(io->task) != current) {
drivers/block/ublk_drv.c
3318
return ublk_register_io_buf(cmd, ub, q_id, tag, io,
drivers/block/ublk_drv.c
3325
if (!(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV)) {
drivers/block/ublk_drv.c
3334
if ((!!(io->flags & UBLK_IO_FLAG_NEED_GET_DATA))
drivers/block/ublk_drv.c
3340
return ublk_daemon_register_io_buf(cmd, ub, q_id, tag, io, addr,
drivers/block/ublk_drv.c
3343
ret = ublk_check_commit_and_fetch(ub, io, addr);
drivers/block/ublk_drv.c
3346
io->res = result;
drivers/block/ublk_drv.c
3347
req = ublk_fill_io_cmd(io, cmd);
drivers/block/ublk_drv.c
3348
ret = ublk_config_io_buf(ub, io, cmd, addr, &buf_idx);
drivers/block/ublk_drv.c
3351
compl = ublk_need_complete_req(ub, io);
drivers/block/ublk_drv.c
3356
__ublk_complete_rq(req, io, ublk_dev_need_map_io(ub), NULL);
drivers/block/ublk_drv.c
3367
req = ublk_fill_io_cmd(io, cmd);
drivers/block/ublk_drv.c
3368
ret = ublk_config_io_buf(ub, io, cmd, addr, NULL);
drivers/block/ublk_drv.c
3370
if (likely(ublk_get_data(ubq, io, req))) {
drivers/block/ublk_drv.c
3371
__ublk_prep_compl_io_cmd(io, req);
drivers/block/ublk_drv.c
3383
__func__, cmd_op, tag, ret, io ? io->flags : 0);
drivers/block/ublk_drv.c
3388
u16 q_id, u16 tag, struct ublk_io *io)
drivers/block/ublk_drv.c
339
u16 q_id, u16 tag, struct ublk_io *io);
drivers/block/ublk_drv.c
3400
if (!ublk_get_req_ref(io))
drivers/block/ublk_drv.c
3411
ublk_put_req_ref(io, req);
drivers/block/ublk_drv.c
3547
struct ublk_io *io = &ubq->ios[elem->tag];
drivers/block/ublk_drv.c
355
static inline void ublk_io_lock(struct ublk_io *io)
drivers/block/ublk_drv.c
3562
ublk_io_lock(io);
drivers/block/ublk_drv.c
3563
io->flags = 0;
drivers/block/ublk_drv.c
3564
ublk_io_unlock(io);
drivers/block/ublk_drv.c
357
spin_lock(&io->lock);
drivers/block/ublk_drv.c
3585
struct ublk_io *io = &ubq->ios[elem->tag];
drivers/block/ublk_drv.c
360
static inline void ublk_io_unlock(struct ublk_io *io)
drivers/block/ublk_drv.c
3600
ublk_io_lock(io);
drivers/block/ublk_drv.c
3601
ret = __ublk_fetch(data->cmd, data->ub, io, ubq->q_id);
drivers/block/ublk_drv.c
3603
io->buf = buf;
drivers/block/ublk_drv.c
3604
ublk_io_unlock(io);
drivers/block/ublk_drv.c
362
spin_unlock(&io->lock);
drivers/block/ublk_drv.c
3633
struct ublk_io *io,
drivers/block/ublk_drv.c
3636
if (!(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV))
drivers/block/ublk_drv.c
3649
struct ublk_io *io = &ubq->ios[elem->tag];
drivers/block/ublk_drv.c
3664
ublk_io_lock(io);
drivers/block/ublk_drv.c
3665
ret = ublk_batch_commit_io_check(ubq, io, &buf);
drivers/block/ublk_drv.c
3667
io->res = elem->result;
drivers/block/ublk_drv.c
3668
io->buf = buf;
drivers/block/ublk_drv.c
3669
req = ublk_fill_io_cmd(io, data->cmd);
drivers/block/ublk_drv.c
3672
ublk_clear_auto_buf_reg(io, data->cmd, &buf_idx);
drivers/block/ublk_drv.c
3673
compl = ublk_need_complete_req(data->ub, io);
drivers/block/ublk_drv.c
3675
ublk_io_unlock(io);
drivers/block/ublk_drv.c
3689
__ublk_complete_rq(req, io, ublk_dev_need_map_io(data->ub), data->iob);
drivers/block/ublk_drv.c
3844
struct ublk_io *io;
drivers/block/ublk_drv.c
3859
io = &ubq->ios[tag];
drivers/block/ublk_drv.c
3860
return ublk_register_io_buf(cmd, ub, q_id, tag, io, index,
drivers/block/ublk_drv.c
3939
struct ublk_io *io;
drivers/block/ublk_drv.c
3971
io = &ubq->ios[tag];
drivers/block/ublk_drv.c
3972
on_daemon = current == READ_ONCE(io->task);
drivers/block/ublk_drv.c
3975
if (!(io->flags & UBLK_IO_FLAG_OWNED_BY_SRV))
drivers/block/ublk_drv.c
3978
req = io->req;
drivers/block/ublk_drv.c
3982
req = __ublk_check_and_get_req(ub, q_id, tag, io);
drivers/block/ublk_drv.c
4011
ublk_put_req_ref(io, req);
drivers/block/ublk_drv.c
4052
struct ublk_io *io = &ubq->ios[i];
drivers/block/ublk_drv.c
4053
if (io->task)
drivers/block/ublk_drv.c
4054
put_task_struct(io->task);
drivers/block/ublk_drv.c
4055
WARN_ON_ONCE(refcount_read(&io->ref));
drivers/block/ublk_drv.c
4056
WARN_ON_ONCE(io->task_registered_buffers);
drivers/block/ublk_drv.c
618
struct ublk_io *io = &ubq->ios[req->tag];
drivers/block/ublk_drv.c
665
iod->addr = io->buf.addr;
drivers/block/ublk_drv.c
696
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
1126
} else if ((smi_info->io.irq) && (!smi_info->interrupt_disabled)) {
drivers/char/ipmi/ipmi_si_intf.c
1154
if (smi_info->io.si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1156
smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG,
drivers/char/ipmi/ipmi_si_intf.c
1185
if (new_smi->io.irq_setup) {
drivers/char/ipmi/ipmi_si_intf.c
1186
new_smi->io.irq_handler_data = new_smi;
drivers/char/ipmi/ipmi_si_intf.c
1187
new_smi->io.irq_setup(&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
1199
else if (new_smi->io.si_info->type != SI_BT && !new_smi->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
1206
dev_notice(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1220
data->addr_src = smi->io.addr_source;
drivers/char/ipmi/ipmi_si_intf.c
1221
data->dev = smi->io.dev;
drivers/char/ipmi/ipmi_si_intf.c
1222
data->addr_info = smi->io.addr_info;
drivers/char/ipmi/ipmi_si_intf.c
1223
get_device(smi->io.dev);
drivers/char/ipmi/ipmi_si_intf.c
1268
void ipmi_irq_finish_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1270
if (io->si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1272
io->outputb(io, IPMI_BT_INTMASK_REG,
drivers/char/ipmi/ipmi_si_intf.c
1276
void ipmi_irq_start_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1278
if (io->si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1280
io->outputb(io, IPMI_BT_INTMASK_REG, 0);
drivers/char/ipmi/ipmi_si_intf.c
1283
static void std_irq_cleanup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1285
ipmi_irq_start_cleanup(io);
drivers/char/ipmi/ipmi_si_intf.c
1286
free_irq(io->irq, io->irq_handler_data);
drivers/char/ipmi/ipmi_si_intf.c
1289
int ipmi_std_irq_setup(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1293
if (!io->irq)
drivers/char/ipmi/ipmi_si_intf.c
1296
rv = request_irq(io->irq,
drivers/char/ipmi/ipmi_si_intf.c
1300
io->irq_handler_data);
drivers/char/ipmi/ipmi_si_intf.c
1302
dev_warn(io->dev, "%s unable to claim interrupt %d, running polled\n",
drivers/char/ipmi/ipmi_si_intf.c
1303
SI_DEVICE_NAME, io->irq);
drivers/char/ipmi/ipmi_si_intf.c
1304
io->irq = 0;
drivers/char/ipmi/ipmi_si_intf.c
1306
io->irq_cleanup = std_irq_cleanup;
drivers/char/ipmi/ipmi_si_intf.c
1307
ipmi_irq_finish_setup(io);
drivers/char/ipmi/ipmi_si_intf.c
1308
dev_info(io->dev, "Using irq %d\n", io->irq);
drivers/char/ipmi/ipmi_si_intf.c
1379
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1408
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1421
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1456
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
1468
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1504
dev_err(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1514
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1530
if (!smi_info->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
1540
dev_err(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1550
dev_warn(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1649
return sysfs_emit(buf, "%s\n", si_to_str[smi_info->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1658
int enabled = smi_info->io.irq && !smi_info->interrupt_disabled;
drivers/char/ipmi/ipmi_si_intf.c
1684
si_to_str[smi_info->io.si_info->type],
drivers/char/ipmi/ipmi_si_intf.c
1685
addr_space_to_str[smi_info->io.addr_space],
drivers/char/ipmi/ipmi_si_intf.c
1686
smi_info->io.addr_data,
drivers/char/ipmi/ipmi_si_intf.c
1687
smi_info->io.regspacing,
drivers/char/ipmi/ipmi_si_intf.c
1688
smi_info->io.regsize,
drivers/char/ipmi/ipmi_si_intf.c
1689
smi_info->io.regshift,
drivers/char/ipmi/ipmi_si_intf.c
1690
smi_info->io.irq,
drivers/char/ipmi/ipmi_si_intf.c
1691
smi_info->io.slave_addr);
drivers/char/ipmi/ipmi_si_intf.c
1838
smi_info->io.si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
1882
if (e->io.addr_space != info->io.addr_space)
drivers/char/ipmi/ipmi_si_intf.c
1884
if (e->io.addr_data == info->io.addr_data) {
drivers/char/ipmi/ipmi_si_intf.c
1890
if (info->io.slave_addr && !e->io.slave_addr)
drivers/char/ipmi/ipmi_si_intf.c
1891
e->io.slave_addr = info->io.slave_addr;
drivers/char/ipmi/ipmi_si_intf.c
1899
int ipmi_si_add_smi(struct si_sm_io *io)
drivers/char/ipmi/ipmi_si_intf.c
1909
if (io->addr_source != SI_HARDCODED && io->addr_source != SI_HOTMOD &&
drivers/char/ipmi/ipmi_si_intf.c
1910
ipmi_si_hardcode_match(io->addr_space, io->addr_data)) {
drivers/char/ipmi/ipmi_si_intf.c
1911
dev_info(io->dev,
drivers/char/ipmi/ipmi_si_intf.c
1916
if (!io->io_setup) {
drivers/char/ipmi/ipmi_si_intf.c
1918
io->addr_space == IPMI_IO_ADDR_SPACE) {
drivers/char/ipmi/ipmi_si_intf.c
1919
io->io_setup = ipmi_si_port_setup;
drivers/char/ipmi/ipmi_si_intf.c
1920
} else if (io->addr_space == IPMI_MEM_ADDR_SPACE) {
drivers/char/ipmi/ipmi_si_intf.c
1921
io->io_setup = ipmi_si_mem_setup;
drivers/char/ipmi/ipmi_si_intf.c
1932
new_smi->io = *io;
drivers/char/ipmi/ipmi_si_intf.c
1937
if (new_smi->io.addr_source == SI_ACPI &&
drivers/char/ipmi/ipmi_si_intf.c
1938
dup->io.addr_source == SI_SMBIOS) {
drivers/char/ipmi/ipmi_si_intf.c
1940
dev_info(dup->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1942
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1945
dev_info(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
1947
ipmi_addr_src_to_str(new_smi->io.addr_source),
drivers/char/ipmi/ipmi_si_intf.c
1948
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1956
ipmi_addr_src_to_str(new_smi->io.addr_source),
drivers/char/ipmi/ipmi_si_intf.c
1957
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
1979
ipmi_addr_src_to_str(new_smi->io.addr_source),
drivers/char/ipmi/ipmi_si_intf.c
1980
si_to_str[new_smi->io.si_info->type],
drivers/char/ipmi/ipmi_si_intf.c
1981
addr_space_to_str[new_smi->io.addr_space],
drivers/char/ipmi/ipmi_si_intf.c
1982
new_smi->io.addr_data,
drivers/char/ipmi/ipmi_si_intf.c
1983
new_smi->io.slave_addr, new_smi->io.irq);
drivers/char/ipmi/ipmi_si_intf.c
1985
switch (new_smi->io.si_info->type) {
drivers/char/ipmi/ipmi_si_intf.c
2007
if (!new_smi->io.dev) {
drivers/char/ipmi/ipmi_si_intf.c
2019
new_smi->io.io_size = new_smi->handlers->init_data(new_smi->si_sm,
drivers/char/ipmi/ipmi_si_intf.c
2020
&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
2023
rv = new_smi->io.io_setup(&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
2025
dev_err(new_smi->io.dev, "Could not set up I/O space\n");
drivers/char/ipmi/ipmi_si_intf.c
2031
if (new_smi->io.addr_source)
drivers/char/ipmi/ipmi_si_intf.c
2032
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2044
if (new_smi->io.addr_source)
drivers/char/ipmi/ipmi_si_intf.c
2045
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2078
if (new_smi->io.irq) {
drivers/char/ipmi/ipmi_si_intf.c
2083
dev_set_drvdata(new_smi->io.dev, new_smi);
drivers/char/ipmi/ipmi_si_intf.c
2084
rv = device_add_group(new_smi->io.dev, &ipmi_si_dev_attr_group);
drivers/char/ipmi/ipmi_si_intf.c
2086
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2095
new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2096
new_smi->io.slave_addr);
drivers/char/ipmi/ipmi_si_intf.c
2098
dev_err(new_smi->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
2107
dev_info(new_smi->io.dev, "IPMI %s interface initialized\n",
drivers/char/ipmi/ipmi_si_intf.c
2108
si_to_str[new_smi->io.si_info->type]);
drivers/char/ipmi/ipmi_si_intf.c
2110
WARN_ON(new_smi->io.dev->init_name != NULL);
drivers/char/ipmi/ipmi_si_intf.c
2113
if (rv && new_smi->io.io_cleanup) {
drivers/char/ipmi/ipmi_si_intf.c
2114
new_smi->io.io_cleanup(&new_smi->io);
drivers/char/ipmi/ipmi_si_intf.c
2115
new_smi->io.io_cleanup = NULL;
drivers/char/ipmi/ipmi_si_intf.c
2131
return (e1->io.addr_space == e2->io.addr_space &&
drivers/char/ipmi/ipmi_si_intf.c
2132
e1->io.addr_data == e2->io.addr_data);
drivers/char/ipmi/ipmi_si_intf.c
2165
if (!e->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
2175
if (e2->io.irq && ipmi_smi_info_same(e, e2)) {
drivers/char/ipmi/ipmi_si_intf.c
2190
if (e->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
2199
if (!e2->io.irq)
drivers/char/ipmi/ipmi_si_intf.c
2254
device_remove_group(smi_info->io.dev, &ipmi_si_dev_attr_group);
drivers/char/ipmi/ipmi_si_intf.c
2257
if (smi_info->io.dev)
drivers/char/ipmi/ipmi_si_intf.c
2258
dev_set_drvdata(smi_info->io.dev, NULL);
drivers/char/ipmi/ipmi_si_intf.c
2265
if (smi_info->io.irq_cleanup) {
drivers/char/ipmi/ipmi_si_intf.c
2266
smi_info->io.irq_cleanup(&smi_info->io);
drivers/char/ipmi/ipmi_si_intf.c
2267
smi_info->io.irq_cleanup = NULL;
drivers/char/ipmi/ipmi_si_intf.c
2293
if (smi_info->io.io_cleanup) {
drivers/char/ipmi/ipmi_si_intf.c
2294
smi_info->io.io_cleanup(&smi_info->io);
drivers/char/ipmi/ipmi_si_intf.c
2295
smi_info->io.io_cleanup = NULL;
drivers/char/ipmi/ipmi_si_intf.c
2324
if (e->io.dev == dev) {
drivers/char/ipmi/ipmi_si_intf.c
2341
if (e->io.addr_space != addr_space)
drivers/char/ipmi/ipmi_si_intf.c
2343
if (e->io.si_info->type != si_type)
drivers/char/ipmi/ipmi_si_intf.c
2345
if (e->io.addr_data == addr) {
drivers/char/ipmi/ipmi_si_intf.c
2346
dev = get_device(e->io.dev);
drivers/char/ipmi/ipmi_si_intf.c
278
dev_dbg(smi_info->io.dev, "**%s: %ptSp\n", msg, &t);
drivers/char/ipmi/ipmi_si_intf.c
438
if ((smi_info->io.irq) && (!smi_info->interrupt_disabled)) {
drivers/char/ipmi/ipmi_si_intf.c
448
if ((smi_info->io.irq) && (smi_info->interrupt_disabled)) {
drivers/char/ipmi/ipmi_si_intf.c
523
if (((smi_info->io.irq && !smi_info->interrupt_disabled) ||
drivers/char/ipmi/ipmi_si_intf.c
529
smi_info->io.irq && !smi_info->interrupt_disabled &&
drivers/char/ipmi/ipmi_si_intf.c
540
u8 irqstate = smi_info->io.inputb(&smi_info->io, IPMI_BT_INTMASK_REG);
drivers/char/ipmi/ipmi_si_intf.c
548
smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG,
drivers/char/ipmi/ipmi_si_intf.c
551
smi_info->io.outputb(&smi_info->io, IPMI_BT_INTMASK_REG, 0);
drivers/char/ipmi/ipmi_si_intf.c
611
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
703
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
711
if (smi_info->io.si_info->type == SI_BT)
drivers/char/ipmi/ipmi_si_intf.c
741
dev_warn_ratelimited(smi_info->io.dev,
drivers/char/ipmi/ipmi_si_intf.c
872
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 = irq_of_parse_and_map(pdev->dev.of_node, 0);
drivers/char/ipmi/ipmi_si_platform.c
280
io.dev = &pdev->dev;
drivers/char/ipmi/ipmi_si_platform.c
283
io.addr_data, io.regsize, io.regspacing, io.irq);
drivers/char/ipmi/ipmi_si_platform.c
285
return ipmi_si_add_smi(&io);
drivers/char/ipmi/ipmi_si_platform.c
296
static int find_slave_address(struct si_sm_io *io, int slave_addr)
drivers/char/ipmi/ipmi_si_platform.c
300
slave_addr = ipmi_dmi_get_slave_addr(io->si_info->type,
drivers/char/ipmi/ipmi_si_platform.c
301
io->addr_space,
drivers/char/ipmi/ipmi_si_platform.c
302
io->addr_data);
drivers/char/ipmi/ipmi_si_platform.c
311
struct si_sm_io io;
drivers/char/ipmi/ipmi_si_platform.c
324
memset(&io, 0, sizeof(io));
drivers/char/ipmi/ipmi_si_platform.c
325
io.addr_source = SI_ACPI;
drivers/char/ipmi/ipmi_si_platform.c
328
io.addr_info.acpi_info.acpi_handle = handle;
drivers/char/ipmi/ipmi_si_platform.c
339
io.si_info = &ipmi_kcs_si_info;
drivers/char/ipmi/ipmi_si_platform.c
342
io.si_info = &ipmi_smic_si_info;
drivers/char/ipmi/ipmi_si_platform.c
345
io.si_info = &ipmi_bt_si_info;
drivers/char/ipmi/ipmi_si_platform.c
354
io.dev = dev;
drivers/char/ipmi/ipmi_si_platform.c
355
io.regsize = DEFAULT_REGSIZE;
drivers/char/ipmi/ipmi_si_platform.c
356
io.regshift = 0;
drivers/char/ipmi/ipmi_si_platform.c
358
res = ipmi_get_info_from_resources(pdev, &io);
drivers/char/ipmi/ipmi_si_platform.c
365
io.irq = tmp;
drivers/char/ipmi/ipmi_si_platform.c
366
io.irq_setup = acpi_gpe_irq_setup;
drivers/char/ipmi/ipmi_si_platform.c
371
io.irq = irq;
drivers/char/ipmi/ipmi_si_platform.c
372
io.irq_setup = ipmi_std_irq_setup;
drivers/char/ipmi/ipmi_si_platform.c
376
io.slave_addr = find_slave_address(&io, io.slave_addr);
drivers/char/ipmi/ipmi_si_platform.c
379
res, io.regsize, io.regspacing, io.irq);
drivers/char/ipmi/ipmi_si_platform.c
383
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
1143
#define INVERTER(_id, cname, pname, io, is, if) \
drivers/clk/rockchip/clk.h
1150
.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
286
unsigned long io = dev->iobase;
drivers/comedi/drivers/pcl726.c
293
outb(s->state & 0xff, io + PCL727_DO_LSB_REG);
drivers/comedi/drivers/pcl726.c
295
outb((s->state >> 8), io + PCL727_DO_MSB_REG);
drivers/comedi/drivers/pcl726.c
298
outb(s->state & 0xff, io + PCL726_DO_LSB_REG);
drivers/comedi/drivers/pcl726.c
300
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
248
ll_region->vaddr.io = pcim_iomap_table(pdev)[ll_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
249
if (!ll_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
252
ll_region->vaddr.io += ll_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
257
dt_region->vaddr.io = pcim_iomap_table(pdev)[dt_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
258
if (!dt_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
261
dt_region->vaddr.io += dt_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
273
ll_region->vaddr.io = pcim_iomap_table(pdev)[ll_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
274
if (!ll_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
277
ll_region->vaddr.io += ll_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
282
dt_region->vaddr.io = pcim_iomap_table(pdev)[dt_block->bar];
drivers/dma/dw-edma/dw-edma-pcie.c
283
if (!dt_region->vaddr.io)
drivers/dma/dw-edma/dw-edma-pcie.c
286
dt_region->vaddr.io += dt_block->off;
drivers/dma/dw-edma/dw-edma-pcie.c
313
chip->ll_region_wr[i].vaddr.io, &chip->ll_region_wr[i].paddr);
drivers/dma/dw-edma/dw-edma-pcie.c
318
chip->dt_region_wr[i].vaddr.io, &chip->dt_region_wr[i].paddr);
drivers/dma/dw-edma/dw-edma-pcie.c
325
chip->ll_region_rd[i].vaddr.io, &chip->ll_region_rd[i].paddr);
drivers/dma/dw-edma/dw-edma-pcie.c
330
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
107
if (yu_arm_gpio_lock_param.io)
drivers/gpio/gpio-mlxbf2.c
118
yu_arm_gpio_lock_param.io = devm_ioremap(dev, res->start, size);
drivers/gpio/gpio-mlxbf2.c
119
if (!yu_arm_gpio_lock_param.io)
drivers/gpio/gpio-mlxbf2.c
139
arm_gpio_lock_val = readl(yu_arm_gpio_lock_param.io);
drivers/gpio/gpio-mlxbf2.c
150
writel(YU_ARM_GPIO_LOCK_ACQUIRE, yu_arm_gpio_lock_param.io);
drivers/gpio/gpio-mlxbf2.c
162
writel(YU_ARM_GPIO_LOCK_RELEASE, yu_arm_gpio_lock_param.io);
drivers/gpio/gpio-mlxbf2.c
81
void __iomem *io;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
13501
struct dmub_rb_cmd_fused_io *io = &command.fused_io;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
13503
io->header.type = DMUB_CMD__FUSED_IO;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
13504
io->header.sub_type = DMUB_CMD__FUSED_IO_ABORT;
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
13505
io->header.payload_bytes = sizeof(*io) - sizeof(io->header);
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
13506
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/display/intel_fbdev_fb.c
71
(unsigned long)(mem->io.start +
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
1090
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
1320
if (!resource_size(&mr->io))
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1327
saved_io = mr->io;
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1328
if (resource_size(&mr->io) == mr->total) {
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1329
resource_size_t io_size = resource_size(&mr->io);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1335
mr->io = DEFINE_RES_MEM(mr->io.start, io_size);
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1395
mr->io = saved_io;
drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c
1397
resource_size(&mr->io) >> PAGE_SHIFT);
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
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_gpu_error.c
1215
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
1055
return PTR_ERR(tmp_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1109
writel(timer, priv->timer->io +
drivers/i2c/busses/i2c-mlxbf.c
1120
writel(timer, priv->timer->io +
drivers/i2c/busses/i2c-mlxbf.c
1127
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_TIMER_THOLD);
drivers/i2c/busses/i2c-mlxbf.c
1133
writel(timer, priv->timer->io +
drivers/i2c/busses/i2c-mlxbf.c
1138
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_TIMER_TSETUP_DATA);
drivers/i2c/busses/i2c-mlxbf.c
1144
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_THIGH_MAX_TBUF);
drivers/i2c/busses/i2c-mlxbf.c
1148
writel(timer, priv->timer->io + MLXBF_I2C_SMBUS_SCL_LOW_TIMEOUT);
drivers/i2c/busses/i2c-mlxbf.c
1266
if (gpio_res->io)
drivers/i2c/busses/i2c-mlxbf.c
1275
gpio_res->io = devm_ioremap(dev, params->start, size);
drivers/i2c/busses/i2c-mlxbf.c
1276
if (!gpio_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1297
if (gpio_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1300
devm_iounmap(dev, gpio_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1331
if (corepll_res->io)
drivers/i2c/busses/i2c-mlxbf.c
1340
corepll_res->io = devm_ioremap(dev, params->start, size);
drivers/i2c/busses/i2c-mlxbf.c
1341
if (!corepll_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1361
if (corepll_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1364
devm_iounmap(dev, corepll_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1416
config_reg = readl(gpio_res->io + MLXBF_I2C_GPIO_0_FUNC_EN_0);
drivers/i2c/busses/i2c-mlxbf.c
1419
writel(config_reg, gpio_res->io + MLXBF_I2C_GPIO_0_FUNC_EN_0);
drivers/i2c/busses/i2c-mlxbf.c
1421
config_reg = readl(gpio_res->io + MLXBF_I2C_GPIO_0_FORCE_OE_EN);
drivers/i2c/busses/i2c-mlxbf.c
1424
writel(config_reg, gpio_res->io + MLXBF_I2C_GPIO_0_FORCE_OE_EN);
drivers/i2c/busses/i2c-mlxbf.c
1438
corepll_val = readl(corepll_res->io + MLXBF_I2C_CORE_PLL_REG1);
drivers/i2c/busses/i2c-mlxbf.c
1467
corepll_reg1_val = readl(corepll_res->io + MLXBF_I2C_CORE_PLL_REG1);
drivers/i2c/busses/i2c-mlxbf.c
1468
corepll_reg2_val = readl(corepll_res->io + MLXBF_I2C_CORE_PLL_REG2);
drivers/i2c/busses/i2c-mlxbf.c
1554
slave_reg = readl(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1576
writel(slave_reg, priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1611
slave_reg = readl(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1632
writel(slave_reg, priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1675
if (coalesce_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1686
coalesce_res->io = ioremap(params->start, size);
drivers/i2c/busses/i2c-mlxbf.c
1687
if (!coalesce_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1712
if (coalesce_res->io) {
drivers/i2c/busses/i2c-mlxbf.c
1717
iounmap(coalesce_res->io);
drivers/i2c/busses/i2c-mlxbf.c
1736
writel(0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_FSM);
drivers/i2c/busses/i2c-mlxbf.c
1745
writel(~0, priv->slv_cause->io + MLXBF_I2C_CAUSE_OR_CLEAR);
drivers/i2c/busses/i2c-mlxbf.c
1748
writel(int_reg, priv->slv_cause->io + MLXBF_I2C_CAUSE_OR_EVTEN0);
drivers/i2c/busses/i2c-mlxbf.c
1751
writel(0x1, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_READY);
drivers/i2c/busses/i2c-mlxbf.c
1777
coalesce0_reg = readl(priv->coalesce->io + MLXBF_I2C_CAUSE_COALESCE_0);
drivers/i2c/busses/i2c-mlxbf.c
1784
cause_reg = readl(priv->slv_cause->io + MLXBF_I2C_CAUSE_ARBITER);
drivers/i2c/busses/i2c-mlxbf.c
1791
writel(~0x0, priv->slv_cause->io + MLXBF_I2C_CAUSE_OR_CLEAR);
drivers/i2c/busses/i2c-mlxbf.c
1829
data32 = ioread32be(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
1892
writel(control32, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_GW);
drivers/i2c/busses/i2c-mlxbf.c
1898
readl_poll_timeout_atomic(priv->slv_cause->io + MLXBF_I2C_CAUSE_ARBITER,
drivers/i2c/busses/i2c-mlxbf.c
1904
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_RS_MASTER_BYTES);
drivers/i2c/busses/i2c-mlxbf.c
1905
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_PEC);
drivers/i2c/busses/i2c-mlxbf.c
1906
writel(0x1, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_READY);
drivers/i2c/busses/i2c-mlxbf.c
1960
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_RS_MASTER_BYTES);
drivers/i2c/busses/i2c-mlxbf.c
1961
writel(0x0, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_PEC);
drivers/i2c/busses/i2c-mlxbf.c
1962
writel(0x1, priv->slv->io + MLXBF_I2C_SMBUS_SLAVE_READY);
drivers/i2c/busses/i2c-mlxbf.c
1997
rw_bytes_reg = readl(priv->slv->io +
drivers/i2c/busses/i2c-mlxbf.c
2277
priv->timer->io = priv->smbus->io;
drivers/i2c/busses/i2c-mlxbf.c
2278
priv->mst->io = priv->smbus->io + MLXBF_I2C_MST_ADDR_OFFSET;
drivers/i2c/busses/i2c-mlxbf.c
2279
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
147
ret = hci->io->init(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
229
hci->io->cleanup(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
255
ret = hci->io->queue_xfer(hci, xfer, n);
drivers/i3c/master/mipi-i3c-hci/core.c
260
if (hci->io->dequeue_xfer(hci, xfer, n)) {
drivers/i3c/master/mipi-i3c-hci/core.c
267
if (hci->io->handle_error) {
drivers/i3c/master/mipi-i3c-hci/core.c
273
return hci->io->handle_error(hci, xfer, n);
drivers/i3c/master/mipi-i3c-hci/core.c
556
return hci->io->request_ibi(hci, dev, req);
drivers/i3c/master/mipi-i3c-hci/core.c
564
hci->io->free_ibi(hci, dev);
drivers/i3c/master/mipi-i3c-hci/core.c
593
hci->io->recycle_ibi_slot(hci, dev, slot);
drivers/i3c/master/mipi-i3c-hci/core.c
652
if (hci->io->irq_handler(hci))
drivers/i3c/master/mipi-i3c-hci/core.c
726
if (hci->io) {
drivers/i3c/master/mipi-i3c-hci/core.c
727
ret = i3c_hci_set_io_mode(hci, hci->io == &mipi_i3c_hci_dma);
drivers/i3c/master/mipi-i3c-hci/core.c
733
hci->io = &mipi_i3c_hci_dma;
drivers/i3c/master/mipi-i3c-hci/core.c
739
if (!hci->io && hci->PIO_regs) {
drivers/i3c/master/mipi-i3c-hci/core.c
742
hci->io = &mipi_i3c_hci_pio;
drivers/i3c/master/mipi-i3c-hci/core.c
747
if (!hci->io) {
drivers/i3c/master/mipi-i3c-hci/core.c
775
hci->io->suspend(hci);
drivers/i3c/master/mipi-i3c-hci/core.c
793
hci->io->resume(hci);
drivers/i3c/master/mipi-i3c-hci/hci.h
50
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
168
priv->io = kzalloc_obj(*priv->io);
drivers/input/serio/apbps2.c
169
if (!priv->io)
drivers/input/serio/apbps2.c
172
priv->io->id.type = SERIO_8042;
drivers/input/serio/apbps2.c
173
priv->io->open = apbps2_open;
drivers/input/serio/apbps2.c
174
priv->io->close = apbps2_close;
drivers/input/serio/apbps2.c
175
priv->io->write = apbps2_write;
drivers/input/serio/apbps2.c
176
priv->io->port_data = priv;
drivers/input/serio/apbps2.c
177
strscpy(priv->io->name, "APBPS2 PS/2", sizeof(priv->io->name));
drivers/input/serio/apbps2.c
178
snprintf(priv->io->phys, sizeof(priv->io->phys),
drivers/input/serio/apbps2.c
183
serio_register_port(priv->io);
drivers/input/serio/apbps2.c
194
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/input/touchscreen/mk712.c
49
module_param_hw_named(io, mk712_io, uint, ioport, 0);
drivers/input/touchscreen/mk712.c
50
MODULE_PARM_DESC(io, "I/O base address of MK712 touchscreen controller");
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/isdn/hardware/mISDN/mISDNinfineon.c
258
IOFUNC_IO(ISAC, inf_hw, isac.a.io)
drivers/isdn/hardware/mISDN/mISDNinfineon.c
259
IOFUNC_IO(IPAC, inf_hw, hscx.a.io)
drivers/isdn/hardware/mISDN/mISDNinfineon.c
260
IOFUNC_IND(ISAC, inf_hw, isac.a.io)
drivers/isdn/hardware/mISDN/mISDNinfineon.c
261
IOFUNC_IND(IPAC, inf_hw, hscx.a.io)
drivers/isdn/hardware/mISDN/mISDNinfineon.c
724
hw->isac.a.io.ale = (u32)hw->cfg.start + DIVA_ISAC_ALE;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
725
hw->isac.a.io.port = (u32)hw->cfg.start + DIVA_ISAC_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
727
hw->hscx.a.io.ale = (u32)hw->cfg.start + DIVA_HSCX_ALE;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
728
hw->hscx.a.io.port = (u32)hw->cfg.start + DIVA_HSCX_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
750
hw->isac.a.io.ale = (u32)hw->cfg.start + TIGER_IPAC_ALE;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
751
hw->isac.a.io.port = (u32)hw->cfg.start + TIGER_IPAC_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
753
hw->hscx.a.io.ale = (u32)hw->cfg.start + TIGER_IPAC_ALE;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
754
hw->hscx.a.io.port = (u32)hw->cfg.start + TIGER_IPAC_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
765
hw->isac.a.io.ale = (u32)hw->addr.start;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
766
hw->isac.a.io.port = (u32)hw->addr.start + 1;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
768
hw->hscx.a.io.ale = (u32)hw->addr.start;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
769
hw->hscx.a.io.port = (u32)hw->addr.start + 1;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
775
hw->isac.a.io.ale = (u32)hw->addr.start + NICCY_ISAC_ALE;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
776
hw->isac.a.io.port = (u32)hw->addr.start + NICCY_ISAC_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
778
hw->hscx.a.io.ale = (u32)hw->addr.start + NICCY_HSCX_ALE;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
779
hw->hscx.a.io.port = (u32)hw->addr.start + NICCY_HSCX_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
784
hw->isac.a.io.ale = (u32)hw->addr.start;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
785
hw->isac.a.io.port = hw->isac.a.io.ale + 4;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
787
hw->hscx.a.io.ale = hw->isac.a.io.ale;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
788
hw->hscx.a.io.port = hw->isac.a.io.port;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
794
hw->isac.a.io.ale = (u32)hw->addr.start + 0x08;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
795
hw->isac.a.io.port = hw->isac.a.io.ale + 4;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
797
hw->hscx.a.io.ale = hw->isac.a.io.ale;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
798
hw->hscx.a.io.port = hw->isac.a.io.port;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
804
hw->isac.a.io.ale = (u32)hw->addr.start + 0x10;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
805
hw->isac.a.io.port = hw->isac.a.io.ale + 4;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
807
hw->hscx.a.io.ale = hw->isac.a.io.ale;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
808
hw->hscx.a.io.port = hw->isac.a.io.port;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
81
struct _ioport io;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
814
hw->isac.a.io.ale = (u32)hw->addr.start + 0x20;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
815
hw->isac.a.io.port = hw->isac.a.io.ale + 4;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
817
hw->hscx.a.io.ale = hw->isac.a.io.ale;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
818
hw->hscx.a.io.port = hw->isac.a.io.port;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
825
hw->isac.a.io.port = (u32)hw->addr.start;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
827
hw->hscx.a.io.port = hw->isac.a.io.port;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
833
hw->isac.a.io.ale = (u32)hw->addr.start;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
834
hw->isac.a.io.port = (u32)hw->addr.start + GAZEL_IPAC_DATA_PORT;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
836
hw->hscx.a.io.ale = hw->isac.a.io.ale;
drivers/isdn/hardware/mISDN/mISDNinfineon.c
837
hw->hscx.a.io.port = hw->isac.a.io.port;
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
1405
struct io *io;
drivers/md/bcache/super.c
1421
for (io = dc->io; io < dc->io + RECENT_IO; io++) {
drivers/md/bcache/super.c
1422
list_add(&io->lru, &dc->io_lru);
drivers/md/bcache/super.c
1423
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
1136
static int dm_crypt_integrity_io_alloc(struct dm_crypt_io *io, struct bio *bio)
drivers/md/dm-crypt.c
1142
if (!bio_sectors(bio) || !io->cc->tuple_size)
drivers/md/dm-crypt.c
1149
tag_len = io->cc->tuple_size * (bio_sectors(bio) >> io->cc->sector_shift);
drivers/md/dm-crypt.c
1153
ret = bio_integrity_add_page(bio, virt_to_page(io->integrity_metadata),
drivers/md/dm-crypt.c
1154
tag_len, offset_in_page(io->integrity_metadata));
drivers/md/dm-crypt.c
1273
struct dm_crypt_io *io = container_of(ctx, struct dm_crypt_io, ctx);
drivers/md/dm-crypt.c
1275
return &io->integrity_metadata[*org_tag_of_dmreq(cc, dmreq) *
drivers/md/dm-crypt.c
1524
struct dm_crypt_io *io = dm_per_bio_data(base_bio, cc->per_bio_data_size);
drivers/md/dm-crypt.c
1526
if ((struct skcipher_request *)(io + 1) != req)
drivers/md/dm-crypt.c
1533
struct dm_crypt_io *io = dm_per_bio_data(base_bio, cc->per_bio_data_size);
drivers/md/dm-crypt.c
1535
if ((struct aead_request *)(io + 1) != req)
drivers/md/dm-crypt.c
1665
static struct bio *crypt_alloc_buffer(struct dm_crypt_io *io, unsigned int size)
drivers/md/dm-crypt.c
1667
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1678
clone = bio_alloc_bioset(cc->dev->bdev, nr_iovecs, io->base_bio->bi_opf,
drivers/md/dm-crypt.c
1680
clone->bi_private = io;
drivers/md/dm-crypt.c
1682
clone->bi_ioprio = io->base_bio->bi_ioprio;
drivers/md/dm-crypt.c
1683
clone->bi_iter.bi_sector = cc->start + io->sector;
drivers/md/dm-crypt.c
1724
if (dm_crypt_integrity_io_alloc(io, clone)) {
drivers/md/dm-crypt.c
1753
static void crypt_io_init(struct dm_crypt_io *io, struct crypt_config *cc,
drivers/md/dm-crypt.c
1756
io->cc = cc;
drivers/md/dm-crypt.c
1757
io->base_bio = bio;
drivers/md/dm-crypt.c
1758
io->sector = sector;
drivers/md/dm-crypt.c
1759
io->error = 0;
drivers/md/dm-crypt.c
1760
io->ctx.aead_recheck = false;
drivers/md/dm-crypt.c
1761
io->ctx.aead_failed = false;
drivers/md/dm-crypt.c
1762
io->ctx.r.req = NULL;
drivers/md/dm-crypt.c
1763
io->integrity_metadata = NULL;
drivers/md/dm-crypt.c
1764
io->integrity_metadata_from_pool = false;
drivers/md/dm-crypt.c
1765
atomic_set(&io->io_pending, 0);
drivers/md/dm-crypt.c
1768
static void crypt_inc_pending(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1770
atomic_inc(&io->io_pending);
drivers/md/dm-crypt.c
1773
static void kcryptd_queue_read(struct dm_crypt_io *io);
drivers/md/dm-crypt.c
1779
static void crypt_dec_pending(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1781
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1782
struct bio *base_bio = io->base_bio;
drivers/md/dm-crypt.c
1783
blk_status_t error = io->error;
drivers/md/dm-crypt.c
1785
if (!atomic_dec_and_test(&io->io_pending))
drivers/md/dm-crypt.c
1788
if (likely(!io->ctx.aead_recheck) && unlikely(io->ctx.aead_failed) &&
drivers/md/dm-crypt.c
1790
io->ctx.aead_recheck = true;
drivers/md/dm-crypt.c
1791
io->ctx.aead_failed = false;
drivers/md/dm-crypt.c
1792
io->error = 0;
drivers/md/dm-crypt.c
1793
kcryptd_queue_read(io);
drivers/md/dm-crypt.c
1797
if (io->ctx.r.req)
drivers/md/dm-crypt.c
1798
crypt_free_req(cc, io->ctx.r.req, base_bio);
drivers/md/dm-crypt.c
1800
if (unlikely(io->integrity_metadata_from_pool))
drivers/md/dm-crypt.c
1801
mempool_free(io->integrity_metadata, &io->cc->tag_pool);
drivers/md/dm-crypt.c
1803
kfree(io->integrity_metadata);
drivers/md/dm-crypt.c
1829
struct dm_crypt_io *io = clone->bi_private;
drivers/md/dm-crypt.c
1830
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1834
if (io->ctx.aead_recheck && !error) {
drivers/md/dm-crypt.c
1835
kcryptd_queue_crypt(io);
drivers/md/dm-crypt.c
1842
if (rw == WRITE || io->ctx.aead_recheck)
drivers/md/dm-crypt.c
1848
kcryptd_queue_crypt(io);
drivers/md/dm-crypt.c
1853
io->error = error;
drivers/md/dm-crypt.c
1855
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1860
static int kcryptd_io_read(struct dm_crypt_io *io, gfp_t gfp)
drivers/md/dm-crypt.c
1862
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1865
if (io->ctx.aead_recheck) {
drivers/md/dm-crypt.c
1868
crypt_inc_pending(io);
drivers/md/dm-crypt.c
1869
clone = crypt_alloc_buffer(io, io->base_bio->bi_iter.bi_size);
drivers/md/dm-crypt.c
1871
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1874
crypt_convert_init(cc, &io->ctx, clone, clone, io->sector);
drivers/md/dm-crypt.c
1875
io->saved_bi_iter = clone->bi_iter;
drivers/md/dm-crypt.c
1876
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1886
clone = bio_alloc_clone(cc->dev->bdev, io->base_bio, gfp, &cc->bs);
drivers/md/dm-crypt.c
1890
clone->bi_iter.bi_sector = cc->start + io->sector;
drivers/md/dm-crypt.c
1891
clone->bi_private = io;
drivers/md/dm-crypt.c
1894
crypt_inc_pending(io);
drivers/md/dm-crypt.c
1896
if (dm_crypt_integrity_io_alloc(io, clone)) {
drivers/md/dm-crypt.c
1897
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1902
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1908
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
1910
crypt_inc_pending(io);
drivers/md/dm-crypt.c
1911
if (kcryptd_io_read(io, GFP_NOIO))
drivers/md/dm-crypt.c
1912
io->error = BLK_STS_RESOURCE;
drivers/md/dm-crypt.c
1913
crypt_dec_pending(io);
drivers/md/dm-crypt.c
1916
static void kcryptd_queue_read(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1918
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1920
INIT_WORK(&io->work, kcryptd_io_read_work);
drivers/md/dm-crypt.c
1921
queue_work(cc->io_queue, &io->work);
drivers/md/dm-crypt.c
1924
static void kcryptd_io_write(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
1926
struct bio *clone = io->ctx.bio_out;
drivers/md/dm-crypt.c
1928
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
1936
struct dm_crypt_io *io;
drivers/md/dm-crypt.c
1975
io = crypt_io_from_node(rb_first(&write_tree));
drivers/md/dm-crypt.c
1976
rb_erase(&io->rb_node, &write_tree);
drivers/md/dm-crypt.c
1977
kcryptd_io_write(io);
drivers/md/dm-crypt.c
1985
static void kcryptd_crypt_write_io_submit(struct dm_crypt_io *io, int async)
drivers/md/dm-crypt.c
1987
struct bio *clone = io->ctx.bio_out;
drivers/md/dm-crypt.c
1988
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
1993
if (unlikely(io->error)) {
drivers/md/dm-crypt.c
1996
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2001
BUG_ON(io->ctx.iter_out.bi_size);
drivers/md/dm-crypt.c
2005
dm_submit_bio_remap(io->base_bio, clone);
drivers/md/dm-crypt.c
2014
sector = io->sector;
drivers/md/dm-crypt.c
2022
rb_link_node(&io->rb_node, parent, rbp);
drivers/md/dm-crypt.c
2023
rb_insert_color(&io->rb_node, &cc->write_tree);
drivers/md/dm-crypt.c
2050
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
2051
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2052
struct convert_context *ctx = &io->ctx;
drivers/md/dm-crypt.c
2059
r = crypt_convert(cc, &io->ctx, false, false);
drivers/md/dm-crypt.c
2061
io->error = r;
drivers/md/dm-crypt.c
2071
kcryptd_crypt_write_io_submit(io, 0);
drivers/md/dm-crypt.c
2073
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2076
static void kcryptd_crypt_write_convert(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2078
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2079
struct convert_context *ctx = &io->ctx;
drivers/md/dm-crypt.c
2087
crypt_inc_pending(io);
drivers/md/dm-crypt.c
2088
crypt_convert_init(cc, ctx, NULL, io->base_bio, io->sector);
drivers/md/dm-crypt.c
2090
clone = crypt_alloc_buffer(io, io->base_bio->bi_iter.bi_size);
drivers/md/dm-crypt.c
2092
io->error = BLK_STS_IOERR;
drivers/md/dm-crypt.c
2096
io->ctx.bio_out = clone;
drivers/md/dm-crypt.c
2097
io->ctx.iter_out = clone->bi_iter;
drivers/md/dm-crypt.c
2100
bio_copy_data(clone, io->base_bio);
drivers/md/dm-crypt.c
2101
io->ctx.bio_in = clone;
drivers/md/dm-crypt.c
2102
io->ctx.iter_in = clone->bi_iter;
drivers/md/dm-crypt.c
2105
crypt_inc_pending(io);
drivers/md/dm-crypt.c
2114
INIT_WORK(&io->work, kcryptd_crypt_write_continue);
drivers/md/dm-crypt.c
2115
queue_work(cc->crypt_queue, &io->work);
drivers/md/dm-crypt.c
2119
io->error = r;
drivers/md/dm-crypt.c
2129
kcryptd_crypt_write_io_submit(io, 0);
drivers/md/dm-crypt.c
2132
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2135
static void kcryptd_crypt_read_done(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2137
if (io->ctx.aead_recheck) {
drivers/md/dm-crypt.c
2138
if (!io->error) {
drivers/md/dm-crypt.c
2139
io->ctx.bio_in->bi_iter = io->saved_bi_iter;
drivers/md/dm-crypt.c
2140
bio_copy_data(io->base_bio, io->ctx.bio_in);
drivers/md/dm-crypt.c
2142
crypt_free_buffer_pages(io->cc, io->ctx.bio_in);
drivers/md/dm-crypt.c
2143
bio_put(io->ctx.bio_in);
drivers/md/dm-crypt.c
2145
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2150
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
2151
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2154
wait_for_completion(&io->ctx.restart);
drivers/md/dm-crypt.c
2155
reinit_completion(&io->ctx.restart);
drivers/md/dm-crypt.c
2157
r = crypt_convert(cc, &io->ctx, false, false);
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
2167
static void kcryptd_crypt_read_convert(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2169
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2172
crypt_inc_pending(io);
drivers/md/dm-crypt.c
2174
if (io->ctx.aead_recheck) {
drivers/md/dm-crypt.c
2175
r = crypt_convert(cc, &io->ctx,
drivers/md/dm-crypt.c
2178
crypt_convert_init(cc, &io->ctx, io->base_bio, io->base_bio,
drivers/md/dm-crypt.c
2179
io->sector);
drivers/md/dm-crypt.c
2181
r = crypt_convert(cc, &io->ctx,
drivers/md/dm-crypt.c
2189
INIT_WORK(&io->work, kcryptd_crypt_read_continue);
drivers/md/dm-crypt.c
2190
queue_work(cc->crypt_queue, &io->work);
drivers/md/dm-crypt.c
2194
io->error = r;
drivers/md/dm-crypt.c
2196
if (atomic_dec_and_test(&io->ctx.cc_pending))
drivers/md/dm-crypt.c
2197
kcryptd_crypt_read_done(io);
drivers/md/dm-crypt.c
2199
crypt_dec_pending(io);
drivers/md/dm-crypt.c
2206
struct dm_crypt_io *io = container_of(ctx, struct dm_crypt_io, ctx);
drivers/md/dm-crypt.c
2207
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2232
io->error = BLK_STS_PROTECTION;
drivers/md/dm-crypt.c
2234
io->error = BLK_STS_IOERR;
drivers/md/dm-crypt.c
2236
crypt_free_req(cc, req_of_dmreq(cc, dmreq), io->base_bio);
drivers/md/dm-crypt.c
2245
if (bio_data_dir(io->base_bio) == READ) {
drivers/md/dm-crypt.c
2246
kcryptd_crypt_read_done(io);
drivers/md/dm-crypt.c
2255
kcryptd_crypt_write_io_submit(io, 1);
drivers/md/dm-crypt.c
2260
struct dm_crypt_io *io = container_of(work, struct dm_crypt_io, work);
drivers/md/dm-crypt.c
2262
if (bio_data_dir(io->base_bio) == READ)
drivers/md/dm-crypt.c
2263
kcryptd_crypt_read_convert(io);
drivers/md/dm-crypt.c
2265
kcryptd_crypt_write_convert(io);
drivers/md/dm-crypt.c
2268
static void kcryptd_queue_crypt(struct dm_crypt_io *io)
drivers/md/dm-crypt.c
2270
struct crypt_config *cc = io->cc;
drivers/md/dm-crypt.c
2272
if ((bio_data_dir(io->base_bio) == READ && test_bit(DM_CRYPT_NO_READ_WORKQUEUE, &cc->flags)) ||
drivers/md/dm-crypt.c
2273
(bio_data_dir(io->base_bio) == WRITE && test_bit(DM_CRYPT_NO_WRITE_WORKQUEUE, &cc->flags))) {
drivers/md/dm-crypt.c
2280
INIT_WORK(&io->work, kcryptd_crypt);
drivers/md/dm-crypt.c
2281
queue_work(system_bh_wq, &io->work);
drivers/md/dm-crypt.c
2284
kcryptd_crypt(&io->work);
drivers/md/dm-crypt.c
2289
INIT_WORK(&io->work, kcryptd_crypt);
drivers/md/dm-crypt.c
2290
queue_work(cc->crypt_queue, &io->work);
drivers/md/dm-crypt.c
286
static void kcryptd_queue_crypt(struct dm_crypt_io *io);
drivers/md/dm-crypt.c
3457
struct dm_crypt_io *io;
drivers/md/dm-crypt.c
3503
io = dm_per_bio_data(bio, cc->per_bio_data_size);
drivers/md/dm-crypt.c
3504
crypt_io_init(io, cc, bio, dm_target_offset(ti, bio->bi_iter.bi_sector));
drivers/md/dm-crypt.c
3510
io->integrity_metadata = NULL;
drivers/md/dm-crypt.c
3512
io->integrity_metadata = kmalloc(tag_len, GFP_NOIO | __GFP_NORETRY | __GFP_NOMEMALLOC | __GFP_NOWARN);
drivers/md/dm-crypt.c
3514
if (unlikely(!io->integrity_metadata)) {
drivers/md/dm-crypt.c
3517
io->integrity_metadata = mempool_alloc(&cc->tag_pool, GFP_NOIO);
drivers/md/dm-crypt.c
3518
io->integrity_metadata_from_pool = true;
drivers/md/dm-crypt.c
3523
io->ctx.r.req_aead = (struct aead_request *)(io + 1);
drivers/md/dm-crypt.c
3525
io->ctx.r.req = (struct skcipher_request *)(io + 1);
drivers/md/dm-crypt.c
3527
if (bio_data_dir(io->base_bio) == READ) {
drivers/md/dm-crypt.c
3528
if (kcryptd_io_read(io, CRYPT_MAP_READ_GFP))
drivers/md/dm-crypt.c
3529
kcryptd_queue_read(io);
drivers/md/dm-crypt.c
3531
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
1830
io_req.client = ic->io;
drivers/md/dm-integrity.c
2899
struct journal_io *io = context;
drivers/md/dm-integrity.c
2900
struct journal_completion *comp = io->comp;
drivers/md/dm-integrity.c
2903
remove_range(ic, &io->range);
drivers/md/dm-integrity.c
2904
mempool_free(io, &ic->journal_io_mempool);
drivers/md/dm-integrity.c
2946
struct journal_io *io;
drivers/md/dm-integrity.c
2981
io = mempool_alloc(&ic->journal_io_mempool, GFP_NOIO);
drivers/md/dm-integrity.c
2982
io->comp = ∁
drivers/md/dm-integrity.c
2983
io->range.logical_sector = sec;
drivers/md/dm-integrity.c
2984
io->range.n_sectors = (k - j) << ic->sb->log2_sectors_per_block;
drivers/md/dm-integrity.c
2987
add_new_range_and_wait(ic, &io->range);
drivers/md/dm-integrity.c
3010
remove_range_unlocked(ic, &io->range);
drivers/md/dm-integrity.c
3012
mempool_free(io, &ic->journal_io_mempool);
drivers/md/dm-integrity.c
3054
complete_copy_from_journal, io);
drivers/md/dm-integrity.c
3217
io_req.client = ic->io;
drivers/md/dm-integrity.c
4971
ic->io = dm_io_client_create();
drivers/md/dm-integrity.c
4972
if (IS_ERR(ic->io)) {
drivers/md/dm-integrity.c
4973
r = PTR_ERR(ic->io);
drivers/md/dm-integrity.c
4974
ic->io = NULL;
drivers/md/dm-integrity.c
5380
if (ic->io)
drivers/md/dm-integrity.c
5381
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
108
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-fec.c
178
static int fec_is_erasure(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
181
if (unlikely(verity_hash(v, io, data, 1 << v->data_dev_block_bits,
drivers/md/dm-verity-fec.c
182
io->tmp_digest)))
drivers/md/dm-verity-fec.c
185
return memcmp(io->tmp_digest, want_digest, v->digest_size) != 0;
drivers/md/dm-verity-fec.c
192
static int fec_read_bufs(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
200
struct dm_verity_fec_io *fio = io->fec_io;
drivers/md/dm-verity-fec.c
205
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-fec.c
260
verity_hash_for_block(v, io, block, want_digest,
drivers/md/dm-verity-fec.c
271
fec_is_erasure(v, io, want_digest, bbuf))
drivers/md/dm-verity-fec.c
349
static int fec_decode_rsb(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
359
r = fec_read_bufs(v, io, rsb, offset, pos,
drivers/md/dm-verity-fec.c
364
r = fec_decode_bufs(v, io, fio, rsb, r, pos, neras);
drivers/md/dm-verity-fec.c
372
r = verity_hash(v, io, fio->output, 1 << v->data_dev_block_bits,
drivers/md/dm-verity-fec.c
373
io->tmp_digest);
drivers/md/dm-verity-fec.c
377
if (memcmp(io->tmp_digest, want_digest, v->digest_size)) {
drivers/md/dm-verity-fec.c
387
int verity_fec_decode(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-fec.c
398
fio = io->fec_io;
drivers/md/dm-verity-fec.c
400
fio = io->fec_io = fec_alloc_and_init_io(v);
drivers/md/dm-verity-fec.c
434
r = fec_decode_rsb(v, io, fio, rsb, offset, want_digest, false);
drivers/md/dm-verity-fec.c
436
r = fec_decode_rsb(v, io, fio, rsb, offset, want_digest, true);
drivers/md/dm-verity-fec.c
451
void __verity_fec_finish_io(struct dm_verity_io *io)
drivers/md/dm-verity-fec.c
454
struct dm_verity_fec *f = io->v->fec;
drivers/md/dm-verity-fec.c
455
struct dm_verity_fec_io *fio = io->fec_io;
drivers/md/dm-verity-fec.c
467
io->fec_io = NULL;
drivers/md/dm-verity-fec.c
67
#define fec_for_each_buffer(io, __i) \
drivers/md/dm-verity-fec.c
68
for (__i = 0; __i < (io)->nbufs; __i++)
drivers/md/dm-verity-fec.c
71
#define fec_for_each_buffer_rs_block(io, __i, __j) \
drivers/md/dm-verity-fec.c
72
fec_for_each_buffer(io, __i) \
drivers/md/dm-verity-fec.c
99
static int fec_decode_bufs(struct dm_verity *v, struct dm_verity_io *io,
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
1074
if (v->io)
drivers/md/dm-verity-target.c
1075
dm_io_client_destroy(v->io);
drivers/md/dm-verity-target.c
1136
struct dm_verity_io *io;
drivers/md/dm-verity-target.c
1147
io = kmalloc(v->ti->per_io_data_size, GFP_KERNEL);
drivers/md/dm-verity-target.c
1149
if (!io)
drivers/md/dm-verity-target.c
1157
r = verity_hash(v, io, zero_data, 1 << v->data_dev_block_bits,
drivers/md/dm-verity-target.c
1161
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
1618
v->io = dm_io_client_create();
drivers/md/dm-verity-target.c
1619
if (IS_ERR(v->io)) {
drivers/md/dm-verity-target.c
1620
r = PTR_ERR(v->io);
drivers/md/dm-verity-target.c
1621
v->io = NULL;
drivers/md/dm-verity-target.c
240
static int verity_verify_level(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
250
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
254
if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
276
if (verity_fec_decode(v, io, DM_VERITY_BLOCK_TYPE_METADATA,
drivers/md/dm-verity-target.c
296
r = verity_hash(v, io, data, 1 << v->hash_dev_block_bits,
drivers/md/dm-verity-target.c
297
io->tmp_digest);
drivers/md/dm-verity-target.c
301
if (likely(memcmp(io->tmp_digest, want_digest,
drivers/md/dm-verity-target.c
304
else if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
311
} else if (verity_fec_decode(v, io, DM_VERITY_BLOCK_TYPE_METADATA,
drivers/md/dm-verity-target.c
318
io->had_mismatch = true;
drivers/md/dm-verity-target.c
319
bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
341
int verity_hash_for_block(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
354
r = verity_verify_level(v, io, block, 0, true, digest);
drivers/md/dm-verity-target.c
362
r = verity_verify_level(v, io, block, i, false, digest);
drivers/md/dm-verity-target.c
375
static noinline int verity_recheck(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
392
io_req.client = v->io;
drivers/md/dm-verity-target.c
400
r = verity_hash(v, io, buffer, 1 << v->data_dev_block_bits,
drivers/md/dm-verity-target.c
401
io->tmp_digest);
drivers/md/dm-verity-target.c
405
if (memcmp(io->tmp_digest, want_digest, v->digest_size)) {
drivers/md/dm-verity-target.c
419
struct dm_verity_io *io,
drivers/md/dm-verity-target.c
427
if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
434
if (verity_recheck(v, io, want_digest, blkno, data) == 0) {
drivers/md/dm-verity-target.c
439
if (verity_fec_decode(v, io, DM_VERITY_BLOCK_TYPE_DATA, want_digest,
drivers/md/dm-verity-target.c
446
io->had_mismatch = true;
drivers/md/dm-verity-target.c
453
static void verity_clear_pending_blocks(struct dm_verity_io *io)
drivers/md/dm-verity-target.c
457
for (i = io->num_pending - 1; i >= 0; i--) {
drivers/md/dm-verity-target.c
458
kunmap_local(io->pending_blocks[i].data);
drivers/md/dm-verity-target.c
459
io->pending_blocks[i].data = NULL;
drivers/md/dm-verity-target.c
461
io->num_pending = 0;
drivers/md/dm-verity-target.c
465
struct dm_verity_io *io,
drivers/md/dm-verity-target.c
471
if (io->num_pending == 2) {
drivers/md/dm-verity-target.c
474
io->pending_blocks[0].data,
drivers/md/dm-verity-target.c
475
io->pending_blocks[1].data, block_size,
drivers/md/dm-verity-target.c
476
io->pending_blocks[0].real_digest,
drivers/md/dm-verity-target.c
477
io->pending_blocks[1].real_digest);
drivers/md/dm-verity-target.c
479
for (i = 0; i < io->num_pending; i++) {
drivers/md/dm-verity-target.c
480
r = verity_hash(v, io, io->pending_blocks[i].data,
drivers/md/dm-verity-target.c
482
io->pending_blocks[i].real_digest);
drivers/md/dm-verity-target.c
488
for (i = 0; i < io->num_pending; i++) {
drivers/md/dm-verity-target.c
489
struct pending_block *block = &io->pending_blocks[i];
drivers/md/dm-verity-target.c
496
r = verity_handle_data_hash_mismatch(v, io, bio, block);
drivers/md/dm-verity-target.c
501
verity_clear_pending_blocks(io);
drivers/md/dm-verity-target.c
508
static int verity_verify_io(struct dm_verity_io *io)
drivers/md/dm-verity-target.c
510
struct dm_verity *v = io->v;
drivers/md/dm-verity-target.c
515
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
519
io->num_pending = 0;
drivers/md/dm-verity-target.c
521
if (static_branch_unlikely(&use_bh_wq_enabled) && io->in_bh) {
drivers/md/dm-verity-target.c
526
iter_copy = io->iter;
drivers/md/dm-verity-target.c
529
iter = &io->iter;
drivers/md/dm-verity-target.c
531
for (b = 0; b < io->n_blocks;
drivers/md/dm-verity-target.c
533
sector_t blkno = io->block + b;
drivers/md/dm-verity-target.c
543
block = &io->pending_blocks[io->num_pending];
drivers/md/dm-verity-target.c
545
r = verity_hash_for_block(v, io, blkno, block->want_digest,
drivers/md/dm-verity-target.c
576
if (++io->num_pending == max_pending) {
drivers/md/dm-verity-target.c
577
r = verity_verify_pending_blocks(v, io, bio);
drivers/md/dm-verity-target.c
583
if (io->num_pending) {
drivers/md/dm-verity-target.c
584
r = verity_verify_pending_blocks(v, io, bio);
drivers/md/dm-verity-target.c
592
verity_clear_pending_blocks(io);
drivers/md/dm-verity-target.c
613
static void verity_finish_io(struct dm_verity_io *io, blk_status_t status)
drivers/md/dm-verity-target.c
615
struct dm_verity *v = io->v;
drivers/md/dm-verity-target.c
616
struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_io_data_size);
drivers/md/dm-verity-target.c
618
bio->bi_end_io = io->orig_bi_end_io;
drivers/md/dm-verity-target.c
621
verity_fec_finish_io(io);
drivers/md/dm-verity-target.c
625
!io->had_mismatch &&
drivers/md/dm-verity-target.c
646
struct dm_verity_io *io = container_of(w, struct dm_verity_io, work);
drivers/md/dm-verity-target.c
648
io->in_bh = false;
drivers/md/dm-verity-target.c
650
verity_finish_io(io, errno_to_blk_status(verity_verify_io(io)));
drivers/md/dm-verity-target.c
655
struct dm_verity_io *io = container_of(w, struct dm_verity_io, work);
drivers/md/dm-verity-target.c
658
io->in_bh = true;
drivers/md/dm-verity-target.c
659
err = verity_verify_io(io);
drivers/md/dm-verity-target.c
662
INIT_WORK(&io->work, verity_work);
drivers/md/dm-verity-target.c
663
queue_work(io->v->verify_wq, &io->work);
drivers/md/dm-verity-target.c
667
verity_finish_io(io, errno_to_blk_status(err));
drivers/md/dm-verity-target.c
679
struct dm_verity_io *io = bio->bi_private;
drivers/md/dm-verity-target.c
681
unsigned int bytes = io->n_blocks << io->v->data_dev_block_bits;
drivers/md/dm-verity-target.c
684
(!verity_fec_is_enabled(io->v) ||
drivers/md/dm-verity-target.c
687
verity_finish_io(io, bio->bi_status);
drivers/md/dm-verity-target.c
691
if (static_branch_unlikely(&use_bh_wq_enabled) && io->v->use_bh_wq &&
drivers/md/dm-verity-target.c
694
INIT_WORK(&io->work, verity_bh_work);
drivers/md/dm-verity-target.c
695
queue_work(system_bh_wq, &io->work);
drivers/md/dm-verity-target.c
697
verity_bh_work(&io->work);
drivers/md/dm-verity-target.c
700
INIT_WORK(&io->work, verity_work);
drivers/md/dm-verity-target.c
701
queue_work(io->v->verify_wq, &io->work);
drivers/md/dm-verity-target.c
748
static void verity_submit_prefetch(struct dm_verity *v, struct dm_verity_io *io,
drivers/md/dm-verity-target.c
751
sector_t block = io->block;
drivers/md/dm-verity-target.c
752
unsigned int n_blocks = io->n_blocks;
drivers/md/dm-verity-target.c
788
struct dm_verity_io *io;
drivers/md/dm-verity-target.c
808
io = dm_per_bio_data(bio, ti->per_io_data_size);
drivers/md/dm-verity-target.c
809
io->v = v;
drivers/md/dm-verity-target.c
810
io->orig_bi_end_io = bio->bi_end_io;
drivers/md/dm-verity-target.c
811
io->block = bio->bi_iter.bi_sector >> (v->data_dev_block_bits - SECTOR_SHIFT);
drivers/md/dm-verity-target.c
812
io->n_blocks = bio->bi_iter.bi_size >> v->data_dev_block_bits;
drivers/md/dm-verity-target.c
813
io->had_mismatch = false;
drivers/md/dm-verity-target.c
816
bio->bi_private = io;
drivers/md/dm-verity-target.c
817
io->iter = bio->bi_iter;
drivers/md/dm-verity-target.c
819
verity_fec_init_io(io);
drivers/md/dm-verity-target.c
821
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
1001
io = md->requeue_list;
drivers/md/dm.c
1005
while (io) {
drivers/md/dm.c
1006
struct dm_io *next = io->next;
drivers/md/dm.c
1008
dm_io_rewind(io, &md->disk->bio_split);
drivers/md/dm.c
1010
io->next = NULL;
drivers/md/dm.c
1011
__dm_io_complete(io, false);
drivers/md/dm.c
1012
io = next;
drivers/md/dm.c
1025
static inline void dm_io_complete(struct dm_io *io)
drivers/md/dm.c
1035
__dm_io_complete(io, dm_io_flagged(io, DM_IO_WAS_SPLIT));
drivers/md/dm.c
1042
static inline void __dm_io_dec_pending(struct dm_io *io)
drivers/md/dm.c
1044
if (atomic_dec_and_test(&io->io_count))
drivers/md/dm.c
1045
dm_io_complete(io);
drivers/md/dm.c
1048
static void dm_io_set_error(struct dm_io *io, blk_status_t error)
drivers/md/dm.c
1053
spin_lock_irqsave(&io->lock, flags);
drivers/md/dm.c
1054
if (!(io->status == BLK_STS_DM_REQUEUE &&
drivers/md/dm.c
1055
__noflush_suspending(io->md))) {
drivers/md/dm.c
1056
io->status = error;
drivers/md/dm.c
1058
spin_unlock_irqrestore(&io->lock, flags);
drivers/md/dm.c
1061
static void dm_io_dec_pending(struct dm_io *io, blk_status_t error)
drivers/md/dm.c
1064
dm_io_set_error(io, error);
drivers/md/dm.c
1066
__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
1089
struct dm_io *io = tio->io;
drivers/md/dm.c
1090
struct mapped_device *md = io->md;
drivers/md/dm.c
110
if (io->magic == DM_IO_MAGIC)
drivers/md/dm.c
1103
dm_zone_endio(io, bio);
drivers/md/dm.c
111
return (struct bio *)((char *)io + DM_IO_BIO_OFFSET);
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
1139
dm_io_dec_pending(io, error);
drivers/md/dm.c
1318
struct dm_io *io = tio->io;
drivers/md/dm.c
1343
dm_io_set_flag(io, DM_IO_WAS_SPLIT);
drivers/md/dm.c
1344
io->sectors = n_sectors;
drivers/md/dm.c
1345
io->sector_offset = bio_sectors(io->orig_bio);
drivers/md/dm.c
1361
struct dm_io *io = tio->io;
drivers/md/dm.c
1367
bio_clone_blkg_association(tgt_clone, io->orig_bio);
drivers/md/dm.c
1373
dm_start_io_acct(io, clone);
drivers/md/dm.c
1375
trace_block_bio_remap(tgt_clone, disk_devt(io->md->disk),
drivers/md/dm.c
1401
struct dm_io *io = tio->io;
drivers/md/dm.c
1402
struct mapped_device *md = io->md;
drivers/md/dm.c
1432
dm_start_io_acct(io, clone);
drivers/md/dm.c
1444
dm_io_dec_pending(io, BLK_STS_IOERR);
drivers/md/dm.c
1446
dm_io_dec_pending(io, BLK_STS_DM_REQUEUE);
drivers/md/dm.c
1456
struct dm_io *io = ci->io;
drivers/md/dm.c
1463
dm_io_set_flag(io, DM_IO_WAS_SPLIT);
drivers/md/dm.c
1464
io->sectors = len;
drivers/md/dm.c
1465
io->sector_offset = bio_sectors(ci->bio);
drivers/md/dm.c
1480
mutex_lock(&ci->io->md->table_devices_lock);
drivers/md/dm.c
1490
mutex_unlock(&ci->io->md->table_devices_lock);
drivers/md/dm.c
1534
if ((ci->io->orig_bio->bi_opf & (REQ_IDLE | REQ_SYNC)) ==
drivers/md/dm.c
1543
bio_init(&flush_bio, ci->io->md->disk->part0, NULL, 0, opf);
drivers/md/dm.c
1547
ci->io->tio.clone.bi_iter.bi_size = 0;
drivers/md/dm.c
1557
atomic_add(ti->num_flush_bios, &ci->io->io_count);
drivers/md/dm.c
1560
atomic_sub(ti->num_flush_bios - bios, &ci->io->io_count);
drivers/md/dm.c
1581
atomic_add(1, &ci->io->io_count);
drivers/md/dm.c
1592
atomic_sub(1, &ci->io->io_count);
drivers/md/dm.c
1606
atomic_add(num_bios, &ci->io->io_count);
drivers/md/dm.c
1612
atomic_sub(num_bios - bios + 1, &ci->io->io_count);
drivers/md/dm.c
1690
static void dm_queue_poll_io(struct bio *bio, struct dm_io *io)
drivers/md/dm.c
1700
io->data = bio->bi_private;
drivers/md/dm.c
1705
io->next = NULL;
drivers/md/dm.c
1711
io->data = (*head)->data;
drivers/md/dm.c
1712
io->next = *head;
drivers/md/dm.c
1715
*head = io;
drivers/md/dm.c
1768
static void init_clone_info(struct clone_info *ci, struct dm_io *io,
drivers/md/dm.c
1772
ci->io = io;
drivers/md/dm.c
1821
struct mapped_device *md = ci->io->md;
drivers/md/dm.c
1848
atomic_add(nr_zones, &ci->io->io_count);
drivers/md/dm.c
1884
atomic_sub(nr_zones - num_bios, &ci->io->io_count);
drivers/md/dm.c
1898
atomic_add(1, &ci->io->io_count);
drivers/md/dm.c
1900
atomic_sub(1 - bios, &ci->io->io_count);
drivers/md/dm.c
1924
atomic_sub(1, &ci->io->io_count);
drivers/md/dm.c
1951
struct dm_io *io;
drivers/md/dm.c
1993
io = alloc_io(md, bio, GFP_NOWAIT);
drivers/md/dm.c
1994
if (unlikely(!io)) {
drivers/md/dm.c
2000
io = alloc_io(md, bio, GFP_NOIO);
drivers/md/dm.c
2002
init_clone_info(&ci, io, map, bio, is_abnormal);
drivers/md/dm.c
2021
io->requeue_flush_with_data = true;
drivers/md/dm.c
2041
bio_trim(bio, io->sectors, ci.sector_count);
drivers/md/dm.c
2059
atomic_dec(&io->io_count);
drivers/md/dm.c
2060
dm_io_dec_pending(io, error);
drivers/md/dm.c
2062
dm_queue_poll_io(bio, io);
drivers/md/dm.c
2095
static bool dm_poll_dm_io(struct dm_io *io, struct io_comp_batch *iob,
drivers/md/dm.c
2098
WARN_ON_ONCE(!dm_tio_is_normal(&io->tio));
drivers/md/dm.c
2101
if (atomic_read(&io->io_count) > 1)
drivers/md/dm.c
2102
bio_poll(&io->tio.clone, iob, flags);
drivers/md/dm.c
2105
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
868
static void dm_requeue_add_io(struct dm_io *io, bool first_stage)
drivers/md/dm.c
870
struct mapped_device *md = io->md;
drivers/md/dm.c
875
md->requeue_list = io;
drivers/md/dm.c
876
io->next = next;
drivers/md/dm.c
878
bio_list_add_head(&md->deferred, io->orig_bio);
drivers/md/dm.c
894
static bool dm_handle_requeue(struct dm_io *io, bool first_stage)
drivers/md/dm.c
896
struct bio *bio = io->orig_bio;
drivers/md/dm.c
897
bool handle_requeue = (io->status == BLK_STS_DM_REQUEUE);
drivers/md/dm.c
898
bool handle_polled_eagain = ((io->status == BLK_STS_AGAIN) &&
drivers/md/dm.c
900
struct mapped_device *md = io->md;
drivers/md/dm.c
923
dm_requeue_add_io(io, first_stage);
drivers/md/dm.c
930
io->status = BLK_STS_IOERR;
drivers/md/dm.c
941
static void __dm_io_complete(struct dm_io *io, bool first_stage)
drivers/md/dm.c
943
struct bio *bio = io->orig_bio;
drivers/md/dm.c
944
struct mapped_device *md = io->md;
drivers/md/dm.c
949
requeued = dm_handle_requeue(io, first_stage);
drivers/md/dm.c
953
io_error = io->status;
drivers/md/dm.c
954
if (dm_io_flagged(io, DM_IO_ACCOUNTED))
drivers/md/dm.c
955
dm_end_io_acct(io);
drivers/md/dm.c
961
__dm_start_io_acct(io);
drivers/md/dm.c
962
dm_end_io_acct(io);
drivers/md/dm.c
964
requeue_flush_with_data = io->requeue_flush_with_data;
drivers/md/dm.c
965
free_io(io);
drivers/md/dm.c
997
struct dm_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/arcnet/arc-rimi.c
307
static int io; /* use the insmod io= irq= node= options */
drivers/net/arcnet/arc-rimi.c
312
module_param(io, int, 0);
drivers/net/arcnet/arc-rimi.c
331
dev->mem_start = io;
drivers/net/arcnet/arc-rimi.c
376
io = ints[1];
drivers/net/arcnet/com20020-isa.c
123
static int io = 0x0; /* <--- EDIT THESE LINES FOR YOUR CONFIGURATION */
drivers/net/arcnet/com20020-isa.c
132
module_param_hw(io, int, ioport, 0);
drivers/net/arcnet/com20020-isa.c
166
dev->base_addr = io;
drivers/net/arcnet/com20020-isa.c
218
io = ints[1];
drivers/net/arcnet/com90io.c
346
static int io; /* use the insmod io= irq= shmem= options */
drivers/net/arcnet/com90io.c
350
module_param_hw(io, int, ioport, 0);
drivers/net/arcnet/com90io.c
372
io = ints[1];
drivers/net/arcnet/com90io.c
392
dev->base_addr = io;
drivers/net/arcnet/com90xx.c
107
if (!io && !irq && !shmem && !*device && com90xx_skip_probe)
drivers/net/arcnet/com90xx.c
126
if (io)
drivers/net/arcnet/com90xx.c
127
ports[numports++] = io;
drivers/net/arcnet/com90xx.c
706
io = ints[1];
drivers/net/arcnet/com90xx.c
86
static int io; /* use the insmod io= irq= shmem= options */
drivers/net/arcnet/com90xx.c
91
module_param_hw(io, int, ioport, 0);
drivers/net/ethernet/8390/ne.c
70
static int io[MAX_NE_CARDS];
drivers/net/ethernet/8390/ne.c
76
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/net/ethernet/8390/ne.c
80
MODULE_PARM_DESC(io, "I/O base address(es),required");
drivers/net/ethernet/8390/ne.c
804
dev->base_addr = io[this_dev];
drivers/net/ethernet/8390/ne.c
820
io[this_dev] = dev->base_addr;
drivers/net/ethernet/8390/ne.c
931
if (io[0] == 0)
drivers/net/ethernet/8390/ne.c
953
io[this_dev]) {
drivers/net/ethernet/8390/ne.c
966
io[this_dev] = dev->base_addr;
drivers/net/ethernet/8390/smc-ultra.c
561
static int io[MAX_ULTRA_CARDS];
drivers/net/ethernet/8390/smc-ultra.c
564
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/net/ethernet/8390/smc-ultra.c
567
MODULE_PARM_DESC(io, "I/O base address(es)");
drivers/net/ethernet/8390/smc-ultra.c
581
if (io[this_dev] == 0) {
drivers/net/ethernet/8390/smc-ultra.c
589
dev->base_addr = io[this_dev];
drivers/net/ethernet/8390/smc-ultra.c
595
printk(KERN_WARNING "smc-ultra.c: No SMC Ultra card found (i/o = 0x%x).\n", io[this_dev]);
drivers/net/ethernet/8390/wd.c
502
static int io[MAX_WD_CARDS];
drivers/net/ethernet/8390/wd.c
507
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/net/ethernet/8390/wd.c
512
MODULE_PARM_DESC(io, "I/O base address(es)");
drivers/net/ethernet/8390/wd.c
529
if (io[this_dev] == 0) {
drivers/net/ethernet/8390/wd.c
537
dev->base_addr = io[this_dev];
drivers/net/ethernet/8390/wd.c
545
printk(KERN_WARNING "wd.c: No wd80x3 card found (i/o = 0x%x).\n", io[this_dev]);
drivers/net/ethernet/alteon/acenic.c
2386
struct tx_desc __iomem *io = (__force struct tx_desc __iomem *) desc;
drivers/net/ethernet/alteon/acenic.c
2387
writel(addr >> 32, &io->addr.addrhi);
drivers/net/ethernet/alteon/acenic.c
2388
writel(addr & 0xffffffff, &io->addr.addrlo);
drivers/net/ethernet/alteon/acenic.c
2389
writel(flagsize, &io->flagsize);
drivers/net/ethernet/alteon/acenic.c
2390
writel(vlan_tag, &io->vlanres);
drivers/net/ethernet/amd/lance.c
318
static int io[MAX_CARDS];
drivers/net/ethernet/amd/lance.c
322
module_param_hw_array(io, int, ioport, NULL, 0);
drivers/net/ethernet/amd/lance.c
326
MODULE_PARM_DESC(io, "LANCE/PCnet I/O base address(es),required");
drivers/net/ethernet/amd/lance.c
337
if (io[this_dev] == 0) {
drivers/net/ethernet/amd/lance.c
347
dev->base_addr = io[this_dev];
drivers/net/ethernet/broadcom/bnx2.c
329
struct drv_ctl_io *io = &info->data.io;
drivers/net/ethernet/broadcom/bnx2.c
333
bnx2_reg_wr_ind(bp, io->offset, io->data);
drivers/net/ethernet/broadcom/bnx2.c
336
io->data = bnx2_reg_rd_ind(bp, io->offset);
drivers/net/ethernet/broadcom/bnx2.c
339
bnx2_ctx_wr(bp, io->cid_addr, io->offset, io->data);
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
14657
u32 index = ctl->data.io.offset;
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
14658
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/cirrus/cs89x0.c
1656
int io;
drivers/net/ethernet/cirrus/cs89x0.c
1663
io = dev->base_addr;
drivers/net/ethernet/cirrus/cs89x0.c
1666
cs89_dbg(0, info, "cs89x0_probe(0x%x)\n", io);
drivers/net/ethernet/cirrus/cs89x0.c
1668
if (io > 0x1ff) { /* Check a single specified location. */
drivers/net/ethernet/cirrus/cs89x0.c
1669
err = cs89x0_ioport_probe(dev, io, 0);
drivers/net/ethernet/cirrus/cs89x0.c
1670
} else if (io != 0) { /* Don't probe at all. */
drivers/net/ethernet/cirrus/cs89x0.c
1696
static int io;
drivers/net/ethernet/cirrus/cs89x0.c
1706
module_param_hw(io, int, ioport, 0);
drivers/net/ethernet/cirrus/cs89x0.c
1714
MODULE_PARM_DESC(io, "cs89x0 I/O base address");
drivers/net/ethernet/cirrus/cs89x0.c
1776
dev->base_addr = io;
drivers/net/ethernet/cirrus/cs89x0.c
1802
if (io == 0) {
drivers/net/ethernet/cirrus/cs89x0.c
1807
} else if (io <= 0x1ff) {
drivers/net/ethernet/cirrus/cs89x0.c
1820
ret = cs89x0_ioport_probe(dev, io, 1);
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/smsc/smc9194.c
1507
module_param_hw(io, int, ioport, 0);
drivers/net/ethernet/smsc/smc9194.c
1510
MODULE_PARM_DESC(io, "SMC 99194 I/O base address");
drivers/net/ethernet/smsc/smc9194.c
1516
if (io == 0)
drivers/net/ethernet/smsc/smc9194.c
686
static int io;
drivers/net/ethernet/smsc/smc9194.c
702
io = dev->base_addr;
drivers/net/ethernet/smsc/smc9194.c
706
if (io > 0x1ff) { /* Check a single specified location. */
drivers/net/ethernet/smsc/smc9194.c
707
err = smc_probe(dev, io);
drivers/net/ethernet/smsc/smc9194.c
708
} else if (io != 0) { /* Don't probe at all. */
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
2151
rtlpriv->io.pci_mem_start =
drivers/net/wireless/realtek/rtlwifi/pci.c
2154
if (rtlpriv->io.pci_mem_start == 0) {
drivers/net/wireless/realtek/rtlwifi/pci.c
2163
rtlpriv->io.pci_mem_start);
drivers/net/wireless/realtek/rtlwifi/pci.c
2244
if (rtlpriv->io.pci_mem_start != 0)
drivers/net/wireless/realtek/rtlwifi/pci.c
2245
pci_iounmap(pdev, (void __iomem *)rtlpriv->io.pci_mem_start);
drivers/net/wireless/realtek/rtlwifi/pci.c
2298
if (rtlpriv->io.pci_mem_start != 0) {
drivers/net/wireless/realtek/rtlwifi/pci.c
2299
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/nvme/host/ioctl.c
208
struct nvme_user_io io;
drivers/nvme/host/ioctl.c
213
if (copy_from_user(&io, uio, sizeof(io)))
drivers/nvme/host/ioctl.c
215
if (io.flags)
drivers/nvme/host/ioctl.c
218
switch (io.opcode) {
drivers/nvme/host/ioctl.c
227
length = (io.nblocks + 1) << ns->head->lba_shift;
drivers/nvme/host/ioctl.c
229
if ((io.control & NVME_RW_PRINFO_PRACT) &&
drivers/nvme/host/ioctl.c
235
if (nvme_to_user_ptr(io.metadata))
drivers/nvme/host/ioctl.c
240
meta_len = (io.nblocks + 1) * ns->head->ms;
drivers/nvme/host/ioctl.c
241
metadata = nvme_to_user_ptr(io.metadata);
drivers/nvme/host/ioctl.c
248
if ((io.metadata & 3) || !io.metadata)
drivers/nvme/host/ioctl.c
253
c.rw.opcode = io.opcode;
drivers/nvme/host/ioctl.c
254
c.rw.flags = io.flags;
drivers/nvme/host/ioctl.c
256
c.rw.slba = cpu_to_le64(io.slba);
drivers/nvme/host/ioctl.c
257
c.rw.length = cpu_to_le16(io.nblocks);
drivers/nvme/host/ioctl.c
258
c.rw.control = cpu_to_le16(io.control);
drivers/nvme/host/ioctl.c
259
c.rw.dsmgmt = cpu_to_le32(io.dsmgmt);
drivers/nvme/host/ioctl.c
260
c.rw.reftag = cpu_to_le32(io.reftag);
drivers/nvme/host/ioctl.c
261
c.rw.lbat = cpu_to_le16(io.apptag);
drivers/nvme/host/ioctl.c
262
c.rw.lbatm = cpu_to_le16(io.appmask);
drivers/nvme/host/ioctl.c
264
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
1285
if (resource_size(&pcie->io) != 0) {
drivers/pci/controller/pci-mvebu.c
1426
mvebu_mbus_get_pcie_io_aperture(&pcie->io);
drivers/pci/controller/pci-mvebu.c
1428
if (resource_size(&pcie->io) != 0) {
drivers/pci/controller/pci-mvebu.c
1429
pcie->realio.flags = pcie->io.flags;
drivers/pci/controller/pci-mvebu.c
1433
resource_size(&pcie->io) - 1);
drivers/pci/controller/pci-mvebu.c
1436
ret = devm_pci_remap_iospace(dev, &pcie->realio, pcie->io.start);
drivers/pci/controller/pci-mvebu.c
539
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
519
u16 io;
drivers/pci/probe.c
530
pci_read_config_word(bridge, PCI_IO_BASE, &io);
drivers/pci/probe.c
531
if (!io) {
drivers/pci/probe.c
533
pci_read_config_word(bridge, PCI_IO_BASE, &io);
drivers/pci/probe.c
536
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/i82092.c
389
pccard_io_map io = { 0, 0, 0, 0, 1 };
drivers/pcmcia/i82092.c
393
io.map = i;
drivers/pcmcia/i82092.c
394
i82092aa_set_io_map(sock, &io);
drivers/pcmcia/i82092.c
551
struct pccard_io_map *io)
drivers/pcmcia/i82092.c
558
map = io->map;
drivers/pcmcia/i82092.c
564
if ((io->start > 0xffff) || (io->stop > 0xffff)
drivers/pcmcia/i82092.c
565
|| (io->stop < io->start))
drivers/pcmcia/i82092.c
573
indirect_write16(sock, I365_IO(map)+I365_W_START, io->start);
drivers/pcmcia/i82092.c
574
indirect_write16(sock, I365_IO(map)+I365_W_STOP, io->stop);
drivers/pcmcia/i82092.c
578
if (io->flags & (MAP_16BIT|MAP_AUTOSZ))
drivers/pcmcia/i82092.c
584
if (io->flags & MAP_ACTIVE)
drivers/pcmcia/i82092aa.h
19
static int i82092aa_set_io_map(struct pcmcia_socket *socket, struct pccard_io_map *io);
drivers/pcmcia/i82365.c
1032
static int i365_set_io_map(u_short sock, struct pccard_io_map *io)
drivers/pcmcia/i82365.c
1037
"%#llx-%#llx)\n", sock, io->map, io->flags, io->speed,
drivers/pcmcia/i82365.c
1038
(unsigned long long)io->start, (unsigned long long)io->stop);
drivers/pcmcia/i82365.c
1039
map = io->map;
drivers/pcmcia/i82365.c
1040
if ((map > 1) || (io->start > 0xffff) || (io->stop > 0xffff) ||
drivers/pcmcia/i82365.c
1041
(io->stop < io->start)) return -EINVAL;
drivers/pcmcia/i82365.c
1045
i365_set_pair(sock, I365_IO(map)+I365_W_START, io->start);
drivers/pcmcia/i82365.c
1046
i365_set_pair(sock, I365_IO(map)+I365_W_STOP, io->stop);
drivers/pcmcia/i82365.c
1048
if (io->speed) ioctl |= I365_IOCTL_WAIT(map);
drivers/pcmcia/i82365.c
1049
if (io->flags & MAP_0WS) ioctl |= I365_IOCTL_0WS(map);
drivers/pcmcia/i82365.c
1050
if (io->flags & MAP_16BIT) ioctl |= I365_IOCTL_16BIT(map);
drivers/pcmcia/i82365.c
1051
if (io->flags & MAP_AUTOSZ) ioctl |= I365_IOCTL_IOCS16(map);
drivers/pcmcia/i82365.c
1054
if (io->flags & MAP_ACTIVE)
drivers/pcmcia/i82365.c
1186
static int pcic_set_io_map(struct pcmcia_socket *s, struct pccard_io_map *io)
drivers/pcmcia/i82365.c
1192
LOCKED(i365_set_io_map(sock, io));
drivers/pcmcia/i82365.c
1208
pccard_io_map io = { 0, 0, 0, 0, 1 };
drivers/pcmcia/i82365.c
1212
io.map = i;
drivers/pcmcia/i82365.c
1213
pcic_set_io_map(s, &io);
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
728
if (!s->io[i].res)
drivers/pcmcia/rsrc_nonstatic.c
734
if ((s->io[i].res->start & (align-1)) == *base)
drivers/pcmcia/rsrc_nonstatic.c
739
struct resource *res = s->io[i].res;
drivers/pcmcia/rsrc_nonstatic.c
750
res = s->io[i].res = __nonstatic_find_io_region(s,
drivers/pcmcia/rsrc_nonstatic.c
757
s->io[i].res->flags =
drivers/pcmcia/rsrc_nonstatic.c
760
s->io[i].InUse = num;
drivers/pcmcia/rsrc_nonstatic.c
771
ret = adjust_resource(s->io[i].res, res->start,
drivers/pcmcia/rsrc_nonstatic.c
776
s->io[i].InUse += num;
drivers/pcmcia/rsrc_nonstatic.c
789
ret = adjust_resource(s->io[i].res,
drivers/pcmcia/rsrc_nonstatic.c
795
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/tcic.c
694
static int tcic_set_io_map(struct pcmcia_socket *sock, struct pccard_io_map *io)
drivers/pcmcia/tcic.c
701
"%#llx-%#llx)\n", psock, io->map, io->flags, io->speed,
drivers/pcmcia/tcic.c
702
(unsigned long long)io->start, (unsigned long long)io->stop);
drivers/pcmcia/tcic.c
703
if ((io->map > 1) || (io->start > 0xffff) || (io->stop > 0xffff) ||
drivers/pcmcia/tcic.c
704
(io->stop < io->start)) return -EINVAL;
drivers/pcmcia/tcic.c
706
addr = TCIC_IWIN(psock, io->map);
drivers/pcmcia/tcic.c
708
base = io->start; len = io->stop - io->start;
drivers/pcmcia/tcic.c
717
ioctl |= (io->flags & MAP_ACTIVE) ? TCIC_ICTL_ENA : 0;
drivers/pcmcia/tcic.c
718
ioctl |= to_cycles(io->speed) & TCIC_ICTL_WSCNT_MASK;
drivers/pcmcia/tcic.c
719
if (!(io->flags & MAP_AUTOSZ)) {
drivers/pcmcia/tcic.c
721
ioctl |= (io->flags & MAP_16BIT) ? TCIC_ICTL_BW_16 : TCIC_ICTL_BW_8;
drivers/pcmcia/tcic.c
780
pccard_io_map io = { 0, 0, 0, 0, 1 };
drivers/pcmcia/tcic.c
784
io.map = i;
drivers/pcmcia/tcic.c
785
tcic_set_io_map(s, &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-glymur.c
83
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-glymur.c
89
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-kaanapali.c
83
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-kaanapali.c
89
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-milos.c
86
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-milos.c
92
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-msm.c
98
MSM_ACCESSOR(io)
drivers/pinctrl/qcom/pinctrl-sm8650.c
86
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-sm8650.c
92
.io_reg = io, \
drivers/pinctrl/qcom/pinctrl-sm8750.c
84
#define UFS_RESET(pg_name, ctl, io) \
drivers/pinctrl/qcom/pinctrl-sm8750.c
90
.io_reg = io, \
drivers/platform/x86/fujitsu-tablet.c
430
fujitsu.io_base = res->data.io.minimum;
drivers/platform/x86/fujitsu-tablet.c
431
fujitsu.io_length = res->data.io.address_length;
drivers/platform/x86/sony-laptop.c
4209
struct acpi_resource_io *io = &resource->data.io;
drivers/platform/x86/sony-laptop.c
4213
memcpy(&ioport->io1, io, sizeof(*io));
drivers/platform/x86/sony-laptop.c
4218
memcpy(&ioport->io2, io, sizeof(*io));
drivers/platform/x86/sony-laptop.c
4338
memcpy(&resource->res1.data.io, &ioport->io1,
drivers/platform/x86/sony-laptop.c
4343
memcpy(&resource->res2.data.io, &ioport->io2,
drivers/platform/x86/sony-laptop.c
4362
memcpy(&resource->res1.data.io, &ioport->io1,
drivers/platform/x86/sony-laptop.c
4470
struct sony_pic_ioport *io, *tmp_io;
drivers/platform/x86/sony-laptop.c
4493
list_for_each_entry_safe(io, tmp_io, &spic_dev.ioports, list) {
drivers/platform/x86/sony-laptop.c
4494
list_del(&io->list);
drivers/platform/x86/sony-laptop.c
4495
kfree(io);
drivers/platform/x86/sony-laptop.c
4510
struct sony_pic_ioport *io, *tmp_io;
drivers/platform/x86/sony-laptop.c
4537
list_for_each_entry_reverse(io, &spic_dev.ioports, list) {
drivers/platform/x86/sony-laptop.c
4538
if (request_region(io->io1.minimum, io->io1.address_length,
drivers/platform/x86/sony-laptop.c
4541
io->io1.minimum, io->io1.maximum,
drivers/platform/x86/sony-laptop.c
4542
io->io1.address_length);
drivers/platform/x86/sony-laptop.c
4544
if (io->io2.minimum) {
drivers/platform/x86/sony-laptop.c
4545
if (request_region(io->io2.minimum,
drivers/platform/x86/sony-laptop.c
4546
io->io2.address_length,
drivers/platform/x86/sony-laptop.c
4549
io->io2.minimum, io->io2.maximum,
drivers/platform/x86/sony-laptop.c
4550
io->io2.address_length);
drivers/platform/x86/sony-laptop.c
4551
spic_dev.cur_ioport = io;
drivers/platform/x86/sony-laptop.c
4557
io->io2.minimum, io->io2.maximum,
drivers/platform/x86/sony-laptop.c
4558
io->io2.address_length);
drivers/platform/x86/sony-laptop.c
4559
release_region(io->io1.minimum,
drivers/platform/x86/sony-laptop.c
4560
io->io1.address_length);
drivers/platform/x86/sony-laptop.c
4564
spic_dev.cur_ioport = io;
drivers/platform/x86/sony-laptop.c
4638
list_for_each_entry_safe(io, tmp_io, &spic_dev.ioports, list) {
drivers/platform/x86/sony-laptop.c
4639
list_del(&io->list);
drivers/platform/x86/sony-laptop.c
4640
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
1872
void __iomem *io;
drivers/resctrl/mpam_devices.c
1874
io = devm_platform_get_and_ioremap_resource(pdev, 0,
drivers/resctrl/mpam_devices.c
1876
if (IS_ERR(io)) {
drivers/resctrl/mpam_devices.c
1878
return ERR_CAST(io);
drivers/resctrl/mpam_devices.c
1881
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
2443
struct efct_hw_io *io = NULL;
drivers/scsi/elx/efct/efct_hw.c
2446
io = efct_hw_io_lookup(hw, rid);
drivers/scsi/elx/efct/efct_hw.c
2447
if (!io) {
drivers/scsi/elx/efct/efct_hw.c
2453
if (!io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2457
io->xbusy = false;
drivers/scsi/elx/efct/efct_hw.c
2463
if (io->done) {
drivers/scsi/elx/efct/efct_hw.c
2464
efct_hw_done_t done = io->done;
drivers/scsi/elx/efct/efct_hw.c
2465
void *arg = io->arg;
drivers/scsi/elx/efct/efct_hw.c
2471
int status = io->saved_status;
drivers/scsi/elx/efct/efct_hw.c
2472
u32 len = io->saved_len;
drivers/scsi/elx/efct/efct_hw.c
2473
u32 ext = io->saved_ext;
drivers/scsi/elx/efct/efct_hw.c
2475
io->done = NULL;
drivers/scsi/elx/efct/efct_hw.c
2476
io->status_saved = false;
drivers/scsi/elx/efct/efct_hw.c
2478
done(io, len, status, ext, arg);
drivers/scsi/elx/efct/efct_hw.c
2482
if (io->state == EFCT_HW_IO_STATE_INUSE ||
drivers/scsi/elx/efct/efct_hw.c
2483
io->state == EFCT_HW_IO_STATE_WAIT_FREE) {
drivers/scsi/elx/efct/efct_hw.c
2489
if (io->state == EFCT_HW_IO_STATE_WAIT_FREE) {
drivers/scsi/elx/efct/efct_hw.c
2490
io->state = EFCT_HW_IO_STATE_FREE;
drivers/scsi/elx/efct/efct_hw.c
2491
list_del_init(&io->list_entry);
drivers/scsi/elx/efct/efct_hw.c
2492
efct_hw_io_free_move_correct_list(hw, io);
drivers/scsi/elx/efct/efct_hw.c
2638
struct efc_disc_io *io = arg;
drivers/scsi/elx/efct/efct_hw.c
2640
efc_disc_io_complete(io, length, status, ext_status);
drivers/scsi/elx/efct/efct_hw.c
2645
efct_fill_els_params(struct efc_disc_io *io, struct sli_els_params *params)
drivers/scsi/elx/efct/efct_hw.c
2647
u8 *cmd = io->req.virt;
drivers/scsi/elx/efct/efct_hw.c
2650
params->s_id = io->s_id;
drivers/scsi/elx/efct/efct_hw.c
2651
params->d_id = io->d_id;
drivers/scsi/elx/efct/efct_hw.c
2652
params->ox_id = io->iparam.els.ox_id;
drivers/scsi/elx/efct/efct_hw.c
2653
params->rpi = io->rpi;
drivers/scsi/elx/efct/efct_hw.c
2654
params->vpi = io->vpi;
drivers/scsi/elx/efct/efct_hw.c
2655
params->rpi_registered = io->rpi_registered;
drivers/scsi/elx/efct/efct_hw.c
2656
params->xmit_len = io->xmit_len;
drivers/scsi/elx/efct/efct_hw.c
2657
params->rsp_len = io->rsp_len;
drivers/scsi/elx/efct/efct_hw.c
2658
params->timeout = io->iparam.els.timeout;
drivers/scsi/elx/efct/efct_hw.c
2662
efct_fill_ct_params(struct efc_disc_io *io, struct sli_ct_params *params)
drivers/scsi/elx/efct/efct_hw.c
2664
params->r_ctl = io->iparam.ct.r_ctl;
drivers/scsi/elx/efct/efct_hw.c
2665
params->type = io->iparam.ct.type;
drivers/scsi/elx/efct/efct_hw.c
2666
params->df_ctl = io->iparam.ct.df_ctl;
drivers/scsi/elx/efct/efct_hw.c
2667
params->d_id = io->d_id;
drivers/scsi/elx/efct/efct_hw.c
2668
params->ox_id = io->iparam.ct.ox_id;
drivers/scsi/elx/efct/efct_hw.c
2669
params->rpi = io->rpi;
drivers/scsi/elx/efct/efct_hw.c
2670
params->vpi = io->vpi;
drivers/scsi/elx/efct/efct_hw.c
2671
params->rpi_registered = io->rpi_registered;
drivers/scsi/elx/efct/efct_hw.c
2672
params->xmit_len = io->xmit_len;
drivers/scsi/elx/efct/efct_hw.c
2673
params->rsp_len = io->rsp_len;
drivers/scsi/elx/efct/efct_hw.c
2674
params->timeout = io->iparam.ct.timeout;
drivers/scsi/elx/efct/efct_hw.c
2694
efct_els_hw_srrs_send(struct efc *efc, struct efc_disc_io *io)
drivers/scsi/elx/efct/efct_hw.c
2699
struct efc_dma *send = &io->req;
drivers/scsi/elx/efct/efct_hw.c
2700
struct efc_dma *receive = &io->rsp;
drivers/scsi/elx/efct/efct_hw.c
2703
u32 len = io->xmit_len;
drivers/scsi/elx/efct/efct_hw.c
2720
hio->arg = io;
drivers/scsi/elx/efct/efct_hw.c
2740
if (io->io_type == EFC_DISC_IO_ELS_REQ ||
drivers/scsi/elx/efct/efct_hw.c
2741
io->io_type == EFC_DISC_IO_CT_REQ) {
drivers/scsi/elx/efct/efct_hw.c
2758
switch (io->io_type) {
drivers/scsi/elx/efct/efct_hw.c
2763
efct_fill_els_params(io, &els_params);
drivers/scsi/elx/efct/efct_hw.c
2778
efct_fill_els_params(io, &els_params);
drivers/scsi/elx/efct/efct_hw.c
2792
efct_fill_ct_params(io, &ct_params);
drivers/scsi/elx/efct/efct_hw.c
2806
efct_fill_ct_params(io, &ct_params);
drivers/scsi/elx/efct/efct_hw.c
2817
efc_log_err(hw->os, "bad SRRS type %#x\n", io->io_type);
drivers/scsi/elx/efct/efct_hw.c
2846
struct efct_hw_io *io, union efct_hw_io_param_u *iparam,
drivers/scsi/elx/efct/efct_hw.c
2852
if (!io) {
drivers/scsi/elx/efct/efct_hw.c
2853
pr_err("bad parm hw=%p io=%p\n", hw, io);
drivers/scsi/elx/efct/efct_hw.c
2865
io->type = type;
drivers/scsi/elx/efct/efct_hw.c
2866
io->done = cb;
drivers/scsi/elx/efct/efct_hw.c
2867
io->arg = arg;
drivers/scsi/elx/efct/efct_hw.c
2875
struct fcp_txrdy *xfer = io->xfer_rdy.virt;
drivers/scsi/elx/efct/efct_hw.c
2883
if (io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2887
iparam->fcp_tgt.xri = io->indicator;
drivers/scsi/elx/efct/efct_hw.c
2888
iparam->fcp_tgt.tag = io->reqtag;
drivers/scsi/elx/efct/efct_hw.c
2890
if (sli_fcp_treceive64_wqe(&hw->sli, io->wqe.wqebuf,
drivers/scsi/elx/efct/efct_hw.c
2891
&io->def_sgl, io->first_data_sge,
drivers/scsi/elx/efct/efct_hw.c
2902
if (io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2907
iparam->fcp_tgt.xri = io->indicator;
drivers/scsi/elx/efct/efct_hw.c
2908
iparam->fcp_tgt.tag = io->reqtag;
drivers/scsi/elx/efct/efct_hw.c
2910
if (sli_fcp_tsend64_wqe(&hw->sli, io->wqe.wqebuf,
drivers/scsi/elx/efct/efct_hw.c
2911
&io->def_sgl, io->first_data_sge,
drivers/scsi/elx/efct/efct_hw.c
2922
if (io->xbusy)
drivers/scsi/elx/efct/efct_hw.c
2927
iparam->fcp_tgt.xri = io->indicator;
drivers/scsi/elx/efct/efct_hw.c
2928
iparam->fcp_tgt.tag = io->reqtag;
drivers/scsi/elx/efct/efct_hw.c
2930
if (sli_fcp_trsp64_wqe(&hw->sli, io->wqe.wqebuf,
drivers/scsi/elx/efct/efct_hw.c
2931
&io->def_sgl, SLI4_CQ_DEFAULT,
drivers/scsi/elx/efct/efct_hw.c
2945
io->xbusy = true;
drivers/scsi/elx/efct/efct_hw.c
2951
hw->tcmd_wq_submit[io->wq->instance]++;
drivers/scsi/elx/efct/efct_hw.c
2952
io->wq->use_count++;
drivers/scsi/elx/efct/efct_hw.c
2953
rc = efct_hw_wq_write(io->wq, &io->wqe);
drivers/scsi/elx/efct/efct_hw.c
2961
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
3429
if (hw->io) {
drivers/scsi/elx/efct/efct_hw.c
3431
if (hw->io[i] && hw->io[i]->sgl &&
drivers/scsi/elx/efct/efct_hw.c
3432
hw->io[i]->sgl->virt) {
drivers/scsi/elx/efct/efct_hw.c
3434
hw->io[i]->sgl->size,
drivers/scsi/elx/efct/efct_hw.c
3435
hw->io[i]->sgl->virt,
drivers/scsi/elx/efct/efct_hw.c
3436
hw->io[i]->sgl->phys);
drivers/scsi/elx/efct/efct_hw.c
3438
kfree(hw->io[i]);
drivers/scsi/elx/efct/efct_hw.c
3439
hw->io[i] = NULL;
drivers/scsi/elx/efct/efct_hw.c
3441
kfree(hw->io);
drivers/scsi/elx/efct/efct_hw.c
3442
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
394
efct_scsi_recv_cmd(io, lun, cmnd->fc_cdb,
drivers/scsi/elx/efct/efct_unsol.c
402
efct_process_abts(struct efct_io *io, struct fc_frame_header *hdr)
drivers/scsi/elx/efct/efct_unsol.c
404
struct efct_node *node = io->node;
drivers/scsi/elx/efct/efct_unsol.c
405
struct efct *efct = io->efct;
drivers/scsi/elx/efct/efct_unsol.c
425
io->display_name = "abts";
drivers/scsi/elx/efct/efct_unsol.c
426
io->init_task_tag = ox_id;
drivers/scsi/elx/efct/efct_unsol.c
434
io->abort_rx_id = rx_id;
drivers/scsi/elx/efct/efct_unsol.c
437
io->tmf_cmd = EFCT_SCSI_TMF_ABORT_TASK;
drivers/scsi/elx/efct/efct_unsol.c
438
efct_scsi_recv_tmf(io, abortio->tgt_io.lun,
drivers/scsi/elx/efct/efct_unsol.c
457
efct_bls_send_rjt(io, hdr);
drivers/scsi/elx/efct/efct_unsol.c
467
struct efct_io *io = NULL;
drivers/scsi/elx/efct/efct_unsol.c
470
io = efct_scsi_io_alloc(node);
drivers/scsi/elx/efct/efct_unsol.c
471
if (io) {
drivers/scsi/elx/efct/efct_unsol.c
472
io->hw_priv = seq->hw_priv;
drivers/scsi/elx/efct/efct_unsol.c
474
io->seq_init = 1;
drivers/scsi/elx/efct/efct_unsol.c
477
io->efct = efct;
drivers/scsi/elx/efct/efct_unsol.c
478
io->node = node;
drivers/scsi/elx/efct/efct_unsol.c
479
io->cmd_tgt = true;
drivers/scsi/elx/efct/efct_unsol.c
481
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
401
int i, ib, ob, io, oo;
drivers/tee/qcomtee/core.c
443
io = ob;
drivers/tee/qcomtee/core.c
445
if (qcomtee_object_id_get(oic, u[i].o, &msg->args[io].o)) {
drivers/tee/qcomtee/core.c
447
for (io--; io >= ob; io--)
drivers/tee/qcomtee/core.c
448
qcomtee_object_id_put(oic, msg->args[io].o);
drivers/tee/qcomtee/core.c
453
io++;
drivers/tee/qcomtee/core.c
456
oo = io;
drivers/tee/qcomtee/core.c
461
qcomtee_msg_init(msg, object_id, op, ib, ob, io, oo);
drivers/tee/qcomtee/core.c
484
int i, ib, ob, io, oo;
drivers/tee/qcomtee/core.c
510
io = ob;
drivers/tee/qcomtee/core.c
512
io++;
drivers/tee/qcomtee/core.c
514
oo = io;
drivers/tee/qcomtee/core.c
579
int i, ib, ob, io, oo;
drivers/tee/qcomtee/core.c
598
io = ob;
drivers/tee/qcomtee/core.c
600
io++;
drivers/tee/qcomtee/core.c
602
oo = io;
drivers/tee/qcomtee/core.c
605
for (oo--; oo >= io; oo--)
drivers/thunderbolt/nhi.c
179
void __iomem *io = ring->nhi->iobase;
drivers/thunderbolt/nhi.c
180
io += ring->is_tx ? REG_TX_RING_BASE : REG_RX_RING_BASE;
drivers/thunderbolt/nhi.c
181
io += ring->hop * 16;
drivers/thunderbolt/nhi.c
182
return io;
drivers/thunderbolt/nhi.c
187
void __iomem *io = ring->nhi->iobase;
drivers/thunderbolt/nhi.c
188
io += ring->is_tx ? REG_TX_OPTIONS_BASE : REG_RX_OPTIONS_BASE;
drivers/thunderbolt/nhi.c
189
io += ring->hop * 32;
drivers/thunderbolt/nhi.c
190
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
191
res = kuart->auxdev->io;
drivers/tty/serial/8250/8250_keba.c
210
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
1151
void __iomem *io;
drivers/vfio/pci/nvgrace-gpu/main.c
1162
io = pci_iomap(pdev, 0, 0);
drivers/vfio/pci/nvgrace-gpu/main.c
1163
if (!io) {
drivers/vfio/pci/nvgrace-gpu/main.c
1168
ret = nvgrace_gpu_wait_device_ready(io);
drivers/vfio/pci/nvgrace-gpu/main.c
1170
pci_iounmap(pdev, io);
drivers/vfio/pci/nvgrace-gpu/main.c
245
static int nvgrace_gpu_wait_device_ready(void __iomem *io)
drivers/vfio/pci/nvgrace-gpu/main.c
250
if ((ioread32(io + C2C_LINK_BAR0_OFFSET) == STATUS_READY) &&
drivers/vfio/pci/nvgrace-gpu/main.c
251
(ioread32(io + HBM_TRAINING_BAR0_OFFSET) == STATUS_READY))
drivers/vfio/pci/vfio_pci_core.c
1073
void __iomem *io;
drivers/vfio/pci/vfio_pci_core.c
1087
io = pci_map_rom(pdev, &size);
drivers/vfio/pci/vfio_pci_core.c
1088
if (io) {
drivers/vfio/pci/vfio_pci_core.c
1093
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
205
void __iomem *io;
drivers/vfio/pci/vfio_pci_rdwr.c
214
io = pci_iomap(pdev, bar, 0);
drivers/vfio/pci/vfio_pci_rdwr.c
215
if (!io) {
drivers/vfio/pci/vfio_pci_rdwr.c
220
vdev->barmap[bar] = io;
drivers/vfio/pci/vfio_pci_rdwr.c
234
void __iomem *io;
drivers/vfio/pci/vfio_pci_rdwr.c
258
io = pci_map_rom(pdev, &x_start);
drivers/vfio/pci/vfio_pci_rdwr.c
260
io = ioremap(pdev->rom, pdev->romlen);
drivers/vfio/pci/vfio_pci_rdwr.c
263
if (!io)
drivers/vfio/pci/vfio_pci_rdwr.c
283
io = vdev->barmap[bar];
drivers/vfio/pci/vfio_pci_rdwr.c
291
done = vfio_pci_core_do_io_rw(vdev, res->flags & IORESOURCE_MEM, io, buf, pos,
drivers/vfio/pci/vfio_pci_rdwr.c
299
pci_unmap_rom(pdev, io);
drivers/vfio/pci/vfio_pci_rdwr.c
301
iounmap(io);
drivers/vfio/pci/vfio_pci_rdwr.c
43
bool test_mem, u##size val, void __iomem *io) \
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/video/fbdev/aty/atyfb_base.c
2987
int io, breg = PCI_BASE_ADDRESS_0 + (i << 2);
drivers/video/fbdev/aty/atyfb_base.c
2993
io = (rp->flags & IORESOURCE_IO);
drivers/video/fbdev/aty/atyfb_base.c
2999
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
290
struct snp_req_resp io;
drivers/virt/coco/sev-guest/sev-guest.c
315
io.req_data = USER_SOCKPTR((void __user *)input.req_data);
drivers/virt/coco/sev-guest/sev-guest.c
316
io.resp_data = USER_SOCKPTR((void __user *)input.resp_data);
drivers/virt/coco/sev-guest/sev-guest.c
317
ret = get_ext_report(snp_dev, &input, &io);
drivers/virt/coco/sev-guest/sev-guest.c
520
struct snp_req_resp io = {
drivers/virt/coco/sev-guest/sev-guest.c
525
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
143
wdt->io_base = res->data.io.minimum;
drivers/watchdog/ni903x_wdt.c
144
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
3517
struct list_head *io = &cur_trans->io_bgs;
fs/btrfs/block-group.c
3590
list_add_tail(&cache->io_list, io);
fs/btrfs/block-group.c
3681
struct list_head *io = &cur_trans->io_bgs;
fs/btrfs/block-group.c
3739
list_add_tail(&cache->io_list, io);
fs/btrfs/block-group.c
3786
while (!list_empty(io)) {
fs/btrfs/block-group.c
3787
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/fscache.c
104
struct erofs_fscache_io *io = kzalloc_obj(*io);
fs/erofs/fscache.c
106
if (!io)
fs/erofs/fscache.c
108
io->end_io = erofs_fscache_req_end_io;
fs/erofs/fscache.c
109
io->private = req;
fs/erofs/fscache.c
111
refcount_set(&io->ref, 1);
fs/erofs/fscache.c
112
return io;
fs/erofs/fscache.c
120
loff_t pstart, struct erofs_fscache_io *io)
fs/erofs/fscache.c
123
struct netfs_cache_resources *cres = &io->cres;
fs/erofs/fscache.c
124
struct iov_iter *iter = &io->iter;
fs/erofs/fscache.c
145
refcount_inc(&io->ref);
fs/erofs/fscache.c
147
io->end_io, io);
fs/erofs/fscache.c
164
struct erofs_fscache_io io;
fs/erofs/fscache.c
171
struct erofs_fscache_bio *io = priv;
fs/erofs/fscache.c
174
io->bio.bi_status = errno_to_blk_status(transferred_or_error);
fs/erofs/fscache.c
175
bio_endio(&io->bio);
fs/erofs/fscache.c
176
BUILD_BUG_ON(offsetof(struct erofs_fscache_bio, io) != 0);
fs/erofs/fscache.c
177
erofs_fscache_io_put(&io->io);
fs/erofs/fscache.c
182
struct erofs_fscache_bio *io;
fs/erofs/fscache.c
184
io = kmalloc_obj(*io, GFP_KERNEL | __GFP_NOFAIL);
fs/erofs/fscache.c
185
bio_init(&io->bio, NULL, io->bvecs, BIO_MAX_VECS, REQ_OP_READ);
fs/erofs/fscache.c
186
io->io.private = mdev->m_dif->fscache->cookie;
fs/erofs/fscache.c
187
io->io.end_io = erofs_fscache_bio_endio;
fs/erofs/fscache.c
188
refcount_set(&io->io.ref, 1);
fs/erofs/fscache.c
189
return &io->bio;
fs/erofs/fscache.c
194
struct erofs_fscache_bio *io = container_of(bio,
fs/erofs/fscache.c
198
iov_iter_bvec(&io->io.iter, ITER_DEST, io->bvecs, bio->bi_vcnt,
fs/erofs/fscache.c
200
ret = erofs_fscache_read_io_async(io->io.private,
fs/erofs/fscache.c
201
bio->bi_iter.bi_sector << 9, &io->io);
fs/erofs/fscache.c
202
erofs_fscache_io_put(&io->io);
fs/erofs/fscache.c
214
struct erofs_fscache_io *io;
fs/erofs/fscache.c
223
io = erofs_fscache_req_io_alloc(req);
fs/erofs/fscache.c
224
if (!io) {
fs/erofs/fscache.c
228
iov_iter_xarray(&io->iter, ITER_DEST, &folio->mapping->i_pages,
fs/erofs/fscache.c
231
ret = erofs_fscache_read_io_async(ctx->cookie, folio_pos(folio), io);
fs/erofs/fscache.c
235
erofs_fscache_req_io_put(io);
fs/erofs/fscache.c
246
struct erofs_fscache_io *io;
fs/erofs/fscache.c
301
io = erofs_fscache_req_io_alloc(req);
fs/erofs/fscache.c
302
if (!io)
fs/erofs/fscache.c
304
iov_iter_xarray(&io->iter, ITER_DEST, &mapping->i_pages, pos, count);
fs/erofs/fscache.c
306
mdev.m_pa + (pos - map.m_la), io);
fs/erofs/fscache.c
307
erofs_fscache_req_io_put(io);
fs/erofs/fscache.c
32
static bool erofs_fscache_io_put(struct erofs_fscache_io *io)
fs/erofs/fscache.c
34
if (!refcount_dec_and_test(&io->ref))
fs/erofs/fscache.c
36
if (io->cres.ops)
fs/erofs/fscache.c
37
io->cres.ops->end_operation(&io->cres);
fs/erofs/fscache.c
38
kfree(io);
fs/erofs/fscache.c
84
static void erofs_fscache_req_io_put(struct erofs_fscache_io *io)
fs/erofs/fscache.c
86
struct erofs_fscache_rq *req = io->private;
fs/erofs/fscache.c
88
if (erofs_fscache_io_put(io))
fs/erofs/fscache.c
94
struct erofs_fscache_io *io = priv;
fs/erofs/fscache.c
95
struct erofs_fscache_rq *req = io->private;
fs/erofs/fscache.c
99
erofs_fscache_req_io_put(io);
fs/erofs/zdata.c
1394
static int z_erofs_decompress_queue(const struct z_erofs_decompressqueue *io,
fs/erofs/zdata.c
1398
.sb = io->sb,
fs/erofs/zdata.c
1402
.pcl = io->head,
fs/erofs/zdata.c
1410
err = z_erofs_decompress_pcluster(&be, io->eio) ?: err;
fs/erofs/zdata.c
1444
static void z_erofs_decompress_kickoff(struct z_erofs_decompressqueue *io,
fs/erofs/zdata.c
1447
struct erofs_sb_info *const sbi = EROFS_SB(io->sb);
fs/erofs/zdata.c
1451
if (io->sync) {
fs/erofs/zdata.c
1452
if (!atomic_add_return(bios, &io->pending_bios))
fs/erofs/zdata.c
1453
complete(&io->u.done);
fs/erofs/zdata.c
1457
if (atomic_add_return(bios, &io->pending_bios))
fs/erofs/zdata.c
1467
INIT_WORK(&io->u.work, z_erofs_decompressqueue_work);
fs/erofs/zdata.c
1468
queue_work(z_erofs_workqueue, &io->u.work);
fs/erofs/zdata.c
1470
kthread_queue_work(worker, &io->u.kthread_work);
fs/erofs/zdata.c
1474
queue_work(z_erofs_workqueue, &io->u.work);
fs/erofs/zdata.c
1482
z_erofs_decompressqueue_work(&io->u.work);
fs/erofs/zdata.c
1799
struct z_erofs_decompressqueue io[NR_JOBQUEUES];
fs/erofs/zdata.c
1811
z_erofs_submit_queue(f, io, &force_fg, !!rabytes);
fs/erofs/zdata.c
1814
err = z_erofs_decompress_queue(&io[JQ_BYPASS], &f->pagepool);
fs/erofs/zdata.c
1819
wait_for_completion_io(&io[JQ_SUBMIT].u.done);
fs/erofs/zdata.c
1822
return z_erofs_decompress_queue(&io[JQ_SUBMIT], &f->pagepool) ?: err;
fs/ext4/ext4.h
3858
extern void ext4_io_submit_init(struct ext4_io_submit *io,
fs/ext4/ext4.h
3861
extern void ext4_io_submit(struct ext4_io_submit *io);
fs/ext4/ext4.h
3862
int ext4_bio_write_folio(struct ext4_io_submit *io, struct folio *page,
fs/ext4/page-io.c
398
void ext4_io_submit(struct ext4_io_submit *io)
fs/ext4/page-io.c
400
struct bio *bio = io->io_bio;
fs/ext4/page-io.c
403
if (io->io_wbc->sync_mode == WB_SYNC_ALL)
fs/ext4/page-io.c
404
io->io_bio->bi_opf |= REQ_SYNC;
fs/ext4/page-io.c
405
blk_crypto_submit_bio(io->io_bio);
fs/ext4/page-io.c
407
io->io_bio = NULL;
fs/ext4/page-io.c
410
void ext4_io_submit_init(struct ext4_io_submit *io,
fs/ext4/page-io.c
413
io->io_wbc = wbc;
fs/ext4/page-io.c
414
io->io_bio = NULL;
fs/ext4/page-io.c
415
io->io_end = NULL;
fs/ext4/page-io.c
418
static void io_submit_init_bio(struct ext4_io_submit *io,
fs/ext4/page-io.c
431
bio->bi_private = ext4_get_io_end(io->io_end);
fs/ext4/page-io.c
432
io->io_bio = bio;
fs/ext4/page-io.c
433
io->io_next_block = bh->b_blocknr;
fs/ext4/page-io.c
434
wbc_init_bio(io->io_wbc, bio);
fs/ext4/page-io.c
437
static void io_submit_add_bh(struct ext4_io_submit *io,
fs/ext4/page-io.c
443
if (io->io_bio && (bh->b_blocknr != io->io_next_block ||
fs/ext4/page-io.c
444
!fscrypt_mergeable_bio_bh(io->io_bio, bh))) {
fs/ext4/page-io.c
446
ext4_io_submit(io);
fs/ext4/page-io.c
448
if (io->io_bio == NULL) {
fs/ext4/page-io.c
449
io_submit_init_bio(io, bh);
fs/ext4/page-io.c
450
io->io_bio->bi_write_hint = inode->i_write_hint;
fs/ext4/page-io.c
452
if (!bio_add_folio(io->io_bio, io_folio, bh->b_size, bh_offset(bh)))
fs/ext4/page-io.c
454
wbc_account_cgroup_owner(io->io_wbc, folio, bh->b_size);
fs/ext4/page-io.c
455
io->io_next_block++;
fs/ext4/page-io.c
458
int ext4_bio_write_folio(struct ext4_io_submit *io, struct folio *folio,
fs/ext4/page-io.c
467
struct writeback_control *wbc = io->io_wbc;
fs/ext4/page-io.c
556
if (io->io_bio)
fs/ext4/page-io.c
564
(io->io_bio || wbc->sync_mode == WB_SYNC_ALL)) {
fs/ext4/page-io.c
566
if (io->io_bio)
fs/ext4/page-io.c
567
ext4_io_submit(io);
fs/ext4/page-io.c
596
io_submit_add_bh(io, inode, folio, io_folio, bh);
fs/f2fs/data.c
1007
struct f2fs_bio_info *io = sbi->write_io[btype] + fio->temp;
fs/f2fs/data.c
1014
f2fs_down_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
1017
if (f2fs_sb_has_blkzoned(sbi) && btype < META && io->zone_pending_bio) {
fs/f2fs/data.c
1018
wait_for_completion_io(&io->zone_wait);
fs/f2fs/data.c
1019
bio_put(io->zone_pending_bio);
fs/f2fs/data.c
1020
io->zone_pending_bio = NULL;
fs/f2fs/data.c
1021
io->bi_private = NULL;
fs/f2fs/data.c
1026
spin_lock(&io->io_lock);
fs/f2fs/data.c
1027
if (list_empty(&io->io_list)) {
fs/f2fs/data.c
1028
spin_unlock(&io->io_lock);
fs/f2fs/data.c
1031
fio = list_first_entry(&io->io_list,
fs/f2fs/data.c
1034
spin_unlock(&io->io_lock);
fs/f2fs/data.c
1052
if (io->bio &&
fs/f2fs/data.c
1053
(!io_is_mergeable(sbi, io->bio, io, fio, io->last_block_in_bio,
fs/f2fs/data.c
1055
!f2fs_crypt_mergeable_bio(io->bio, fio_inode(fio),
fs/f2fs/data.c
1057
__submit_merged_bio(io);
fs/f2fs/data.c
1059
if (io->bio == NULL) {
fs/f2fs/data.c
1060
io->bio = __bio_alloc(fio, BIO_MAX_VECS);
fs/f2fs/data.c
1061
f2fs_set_bio_crypt_ctx(io->bio, fio_inode(fio),
fs/f2fs/data.c
1063
io->fio = *fio;
fs/f2fs/data.c
1066
if (!bio_add_folio(io->bio, bio_folio, folio_size(bio_folio), 0)) {
fs/f2fs/data.c
1067
__submit_merged_bio(io);
fs/f2fs/data.c
1075
io->last_block_in_bio = fio->new_blkaddr;
fs/f2fs/data.c
1081
bio_get(io->bio);
fs/f2fs/data.c
1082
reinit_completion(&io->zone_wait);
fs/f2fs/data.c
1083
io->bi_private = io->bio->bi_private;
fs/f2fs/data.c
1084
io->bio->bi_private = io;
fs/f2fs/data.c
1085
io->bio->bi_end_io = f2fs_zone_write_end_io;
fs/f2fs/data.c
1086
io->zone_pending_bio = io->bio;
fs/f2fs/data.c
1087
__submit_merged_bio(io);
fs/f2fs/data.c
1095
__submit_merged_bio(io);
fs/f2fs/data.c
1096
f2fs_up_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
412
struct f2fs_bio_info *io = (struct f2fs_bio_info *)bio->bi_private;
fs/f2fs/data.c
414
bio->bi_private = io->bi_private;
fs/f2fs/data.c
415
complete(&io->zone_wait);
fs/f2fs/data.c
569
static void __submit_merged_bio(struct f2fs_bio_info *io)
fs/f2fs/data.c
571
struct f2fs_io_info *fio = &io->fio;
fs/f2fs/data.c
573
if (!io->bio)
fs/f2fs/data.c
577
trace_f2fs_prepare_read_bio(io->sbi->sb, fio->type, io->bio);
fs/f2fs/data.c
578
f2fs_submit_read_bio(io->sbi, io->bio, fio->type);
fs/f2fs/data.c
580
trace_f2fs_prepare_write_bio(io->sbi->sb, fio->type, io->bio);
fs/f2fs/data.c
581
f2fs_submit_write_bio(io->sbi, io->bio, fio->type);
fs/f2fs/data.c
583
io->bio = NULL;
fs/f2fs/data.c
637
struct f2fs_bio_info *io = &sbi->write_io[i][j];
fs/f2fs/data.c
639
init_f2fs_rwsem_trace(&io->io_rwsem, sbi,
fs/f2fs/data.c
641
io->sbi = sbi;
fs/f2fs/data.c
642
io->bio = NULL;
fs/f2fs/data.c
643
io->last_block_in_bio = 0;
fs/f2fs/data.c
644
spin_lock_init(&io->io_lock);
fs/f2fs/data.c
645
INIT_LIST_HEAD(&io->io_list);
fs/f2fs/data.c
646
INIT_LIST_HEAD(&io->bio_list);
fs/f2fs/data.c
647
init_f2fs_rwsem(&io->bio_list_lock);
fs/f2fs/data.c
649
init_completion(&io->zone_wait);
fs/f2fs/data.c
650
io->zone_pending_bio = NULL;
fs/f2fs/data.c
651
io->bi_private = NULL;
fs/f2fs/data.c
663
struct f2fs_bio_info *io = sbi->write_io[btype] + temp;
fs/f2fs/data.c
666
f2fs_down_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
668
if (!io->bio)
fs/f2fs/data.c
673
io->fio.type = META_FLUSH;
fs/f2fs/data.c
674
io->bio->bi_opf |= REQ_META | REQ_PRIO | REQ_SYNC;
fs/f2fs/data.c
676
io->bio->bi_opf |= REQ_PREFLUSH | REQ_FUA;
fs/f2fs/data.c
678
__submit_merged_bio(io);
fs/f2fs/data.c
680
f2fs_up_write_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
694
struct f2fs_bio_info *io = sbi->write_io[btype] + temp;
fs/f2fs/data.c
697
f2fs_down_read_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
698
ret = __has_merged_page(io->bio, inode, folio, ino);
fs/f2fs/data.c
699
f2fs_up_read_trace(&io->io_rwsem, &lc);
fs/f2fs/data.c
792
static bool io_type_is_mergeable(struct f2fs_bio_info *io,
fs/f2fs/data.c
797
if (io->fio.op != fio->op)
fs/f2fs/data.c
799
return (io->fio.op_flags & mask) == (fio->op_flags & mask);
fs/f2fs/data.c
803
struct f2fs_bio_info *io,
fs/f2fs/data.c
810
return io_type_is_mergeable(io, fio);
fs/f2fs/data.c
816
struct f2fs_bio_info *io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
825
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
826
list_add_tail(&be->list, &io->bio_list);
fs/f2fs/data.c
827
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/data.c
846
struct f2fs_bio_info *io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
847
struct list_head *head = &io->bio_list;
fs/f2fs/data.c
850
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
873
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/data.c
894
struct f2fs_bio_info *io = sbi->write_io[DATA] + temp;
fs/f2fs/data.c
895
struct list_head *head = &io->bio_list;
fs/f2fs/data.c
901
f2fs_down_read(&io->bio_list_lock);
fs/f2fs/data.c
911
f2fs_up_read(&io->bio_list_lock);
fs/f2fs/data.c
918
f2fs_down_write(&io->bio_list_lock);
fs/f2fs/data.c
931
f2fs_up_write(&io->bio_list_lock);
fs/f2fs/f2fs.h
5034
static inline void __f2fs_schedule_timeout(long timeout, bool io)
fs/f2fs/f2fs.h
5037
if (io)
fs/f2fs/f2fs.h
5048
static inline void f2fs_schedule_timeout_killable(long timeout, bool io)
fs/f2fs/f2fs.h
5055
__f2fs_schedule_timeout(DEFAULT_SCHEDULE_TIMEOUT, io);
fs/f2fs/iostat.c
100
iostat_lat[idx][io].cnt = io_lat->bio_cnt[idx][io];
fs/f2fs/iostat.c
101
iostat_lat[idx][io].avg_lat = iostat_lat[idx][io].cnt ?
fs/f2fs/iostat.c
102
jiffies_to_msecs(io_lat->sum_lat[idx][io]) / iostat_lat[idx][io].cnt : 0;
fs/f2fs/iostat.c
103
io_lat->sum_lat[idx][io] = 0;
fs/f2fs/iostat.c
104
io_lat->peak_lat[idx][io] = 0;
fs/f2fs/iostat.c
105
io_lat->bio_cnt[idx][io] = 0;
fs/f2fs/iostat.c
90
int io, idx;
fs/f2fs/iostat.c
97
for (io = 0; io < NR_PAGE_TYPE; io++) {
fs/f2fs/iostat.c
98
iostat_lat[idx][io].peak_lat =
fs/f2fs/iostat.c
99
jiffies_to_msecs(io_lat->peak_lat[idx][io]);
fs/f2fs/segment.c
3889
struct f2fs_bio_info *io;
fs/f2fs/segment.c
3893
io = sbi->write_io[fio->type] + fio->temp;
fs/f2fs/segment.c
3894
spin_lock(&io->io_lock);
fs/f2fs/segment.c
3895
list_add_tail(&fio->list, &io->io_list);
fs/f2fs/segment.c
3896
spin_unlock(&io->io_lock);
fs/fuse/cuse.c
100
return fuse_direct_io(&io, to, &pos, FUSE_DIO_CUSE);
fs/fuse/cuse.c
105
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(kiocb);
fs/fuse/cuse.c
111
return fuse_direct_io(&io, from, &pos,
fs/fuse/cuse.c
97
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
106
if (fuse_request_expired(fc, &fpq->io) ||
fs/fuse/dev.c
1493
list_add(&req->list, &fpq->io);
fs/fuse/dev.c
2242
list_move(&req->list, &fpq->io);
fs/fuse/dev.c
2476
list_for_each_entry_safe(req, next, &fpq->io, list) {
fs/fuse/dev.c
2545
WARN_ON(!list_empty(&fpq->io));
fs/fuse/file.c
1145
struct kiocb *iocb = ia->io->iocb;
fs/fuse/file.c
1159
if (ia->io->async)
fs/fuse/file.c
1641
ssize_t fuse_direct_io(struct fuse_io_priv *io, struct iov_iter *iter,
fs/fuse/file.c
1646
struct file *file = io->iocb->ki_filp;
fs/fuse/file.c
1663
ia = fuse_io_alloc(io, max_pages);
fs/fuse/file.c
1690
io->should_dirty = !write && user_backed_iter(iter);
fs/fuse/file.c
1710
if (!io->async || nres < 0) {
fs/fuse/file.c
1711
fuse_release_user_pages(&ia->ap, nres, io->should_dirty);
fs/fuse/file.c
1731
ia = fuse_io_alloc(io, max_pages);
fs/fuse/file.c
1754
static ssize_t __fuse_direct_read(struct fuse_io_priv *io,
fs/fuse/file.c
1759
struct inode *inode = file_inode(io->iocb->ki_filp);
fs/fuse/file.c
1761
res = fuse_direct_io(io, iter, ppos, 0);
fs/fuse/file.c
1777
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/file.c
1779
res = __fuse_direct_read(&io, to, &iocb->ki_pos);
fs/fuse/file.c
1798
struct fuse_io_priv io = FUSE_IO_PRIV_SYNC(iocb);
fs/fuse/file.c
1800
res = fuse_direct_io(&io, from, &iocb->ki_pos,
fs/fuse/file.c
2828
struct fuse_io_priv *io;
fs/fuse/file.c
2837
io = kmalloc_obj(struct fuse_io_priv);
fs/fuse/file.c
2838
if (!io)
fs/fuse/file.c
2840
spin_lock_init(&io->lock);
fs/fuse/file.c
2841
kref_init(&io->refcnt);
fs/fuse/file.c
2842
io->reqs = 1;
fs/fuse/file.c
2843
io->bytes = -1;
fs/fuse/file.c
2844
io->size = 0;
fs/fuse/file.c
2845
io->offset = offset;
fs/fuse/file.c
2846
io->write = (iov_iter_rw(iter) == WRITE);
fs/fuse/file.c
2847
io->err = 0;
fs/fuse/file.c
2852
io->async = ff->fm->fc->async_dio;
fs/fuse/file.c
2853
io->iocb = iocb;
fs/fuse/file.c
2854
io->blocking = is_sync_kiocb(iocb);
fs/fuse/file.c
2857
if (io->async && !io->write && offset + count > i_size) {
fs/fuse/file.c
2867
if ((offset + count > i_size) && io->write)
fs/fuse/file.c
2868
io->blocking = true;
fs/fuse/file.c
2870
if (io->async && io->blocking) {
fs/fuse/file.c
2875
kref_get(&io->refcnt);
fs/fuse/file.c
2876
io->done = &wait;
fs/fuse/file.c
2880
ret = fuse_direct_io(io, iter, &pos, FUSE_DIO_WRITE);
fs/fuse/file.c
2883
ret = __fuse_direct_read(io, iter, &pos);
fs/fuse/file.c
2887
if (io->async) {
fs/fuse/file.c
2888
bool blocking = io->blocking;
fs/fuse/file.c
2890
fuse_aio_complete(io, ret < 0 ? ret : 0, -1);
fs/fuse/file.c
2897
ret = fuse_get_res_by_io(io);
fs/fuse/file.c
2900
kref_put(&io->refcnt, fuse_io_release);
fs/fuse/file.c
621
static ssize_t fuse_get_res_by_io(struct fuse_io_priv *io)
fs/fuse/file.c
623
if (io->err)
fs/fuse/file.c
624
return io->err;
fs/fuse/file.c
626
if (io->bytes >= 0 && io->write)
fs/fuse/file.c
629
return io->bytes < 0 ? io->size : io->bytes;
fs/fuse/file.c
648
static void fuse_aio_complete(struct fuse_io_priv *io, int err, ssize_t pos)
fs/fuse/file.c
652
spin_lock(&io->lock);
fs/fuse/file.c
654
io->err = io->err ? : err;
fs/fuse/file.c
655
else if (pos >= 0 && (io->bytes < 0 || pos < io->bytes))
fs/fuse/file.c
656
io->bytes = pos;
fs/fuse/file.c
658
left = --io->reqs;
fs/fuse/file.c
659
if (!left && io->blocking)
fs/fuse/file.c
660
complete(io->done);
fs/fuse/file.c
661
spin_unlock(&io->lock);
fs/fuse/file.c
663
if (!left && !io->blocking) {
fs/fuse/file.c
664
ssize_t res = fuse_get_res_by_io(io);
fs/fuse/file.c
667
struct inode *inode = file_inode(io->iocb->ki_filp);
fs/fuse/file.c
676
io->iocb->ki_complete(io->iocb, res);
fs/fuse/file.c
679
kref_put(&io->refcnt, fuse_io_release);
fs/fuse/file.c
682
static struct fuse_io_args *fuse_io_alloc(struct fuse_io_priv *io,
fs/fuse/file.c
689
ia->io = io;
fs/fuse/file.c
710
struct fuse_io_priv *io = ia->io;
fs/fuse/file.c
716
} else if (io->write) {
fs/fuse/file.c
722
pos = ia->write.in.offset - io->offset +
fs/fuse/file.c
730
pos = ia->read.in.offset - io->offset + outsize;
fs/fuse/file.c
733
fuse_release_user_pages(&ia->ap, err ?: nres, io->should_dirty);
fs/fuse/file.c
735
fuse_aio_complete(io, err, pos);
fs/fuse/file.c
743
struct fuse_io_priv *io = ia->io;
fs/fuse/file.c
745
spin_lock(&io->lock);
fs/fuse/file.c
746
kref_get(&io->refcnt);
fs/fuse/file.c
747
io->size += num_bytes;
fs/fuse/file.c
748
io->reqs++;
fs/fuse/file.c
749
spin_unlock(&io->lock);
fs/fuse/file.c
752
ia->ap.args.may_block = io->should_dirty;
fs/fuse/file.c
763
struct file *file = ia->io->iocb->ki_filp;
fs/fuse/file.c
773
if (ia->io->async)
fs/fuse/fuse_i.h
1175
struct fuse_io_priv *io;
fs/fuse/fuse_i.h
1458
ssize_t fuse_direct_io(struct fuse_io_priv *io, struct iov_iter *iter,
fs/fuse/fuse_i.h
572
struct list_head io;
fs/fuse/inode.c
965
INIT_LIST_HEAD(&fpq->io);
fs/nfs/pnfs.c
2010
bool size = false, size_set = false, io = false, io_set = false, ret = false;
fs/nfs/pnfs.c
2031
io = true;
fs/nfs/pnfs.c
2046
io = true;
fs/nfs/pnfs.c
2051
if (size && io)
fs/nfs/pnfs.c
2053
} else if (size || io)
fs/nfs/pnfs.c
2056
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
261
} io;
fs/smb/client/cifsproto.h
491
free_rsp_buf(data->reparse.io.buftype, data->reparse.io.iov.iov_base);
fs/smb/client/inode.c
1175
} else if (data->reparse.io.buftype != CIFS_NO_BUFFER &&
fs/smb/client/inode.c
1176
data->reparse.io.iov.iov_base) {
fs/smb/client/inode.c
1177
iov = &data->reparse.io.iov;
fs/smb/client/reparse.c
1115
struct smb2_ioctl_rsp *io = rsp_iov->iov_base;
fs/smb/client/reparse.c
1116
*plen = le32_to_cpu(io->OutputCount);
fs/smb/client/reparse.c
1117
return (struct reparse_data_buffer *)((u8 *)io +
fs/smb/client/reparse.c
1118
le32_to_cpu(io->OutputOffset));
fs/smb/client/smb1ops.c
1252
TRANSACT_IOCTL_RSP *io = rsp_iov->iov_base;
fs/smb/client/smb1ops.c
1253
*plen = le16_to_cpu(io->ByteCount);
fs/smb/client/smb1ops.c
1254
return (struct reparse_data_buffer *)((__u8 *)&io->hdr.Protocol +
fs/smb/client/smb1ops.c
1255
le32_to_cpu(io->DataOffset));
fs/smb/client/smb2inode.c
1542
*rsp = data.reparse.io.iov;
fs/smb/client/smb2inode.c
1543
*rsp_buftype = data.reparse.io.buftype;
fs/smb/client/smb2inode.c
1544
memset(&data.reparse.io.iov, 0, sizeof(data.reparse.io.iov));
fs/smb/client/smb2inode.c
1545
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
817
idata->reparse.io.iov = *iov;
fs/smb/client/smb2inode.c
818
idata->reparse.io.buftype = resp_buftype[i + 1];
include/acpi/acrestyp.h
257
struct acpi_io_attribute io;
include/acpi/acrestyp.h
643
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
1975
struct usb_sg_request *io,
include/linux/usb.h
1984
void usb_sg_cancel(struct usb_sg_request *io);
include/linux/usb.h
1985
void usb_sg_wait(struct usb_sg_request *io);
include/linux/vfio_pci_core.h
195
void __iomem *io, char __user *buf,
include/linux/vfio_pci_core.h
207
bool test_mem, u##size val, void __iomem *io);
include/linux/vfio_pci_core.h
218
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
268
} io;
io_uring/net.c
1006
if (copy_to_user(io->buf, &hdr, copy_len)) {
io_uring/net.c
1316
struct io_async_msghdr *io = req->async_data;
io_uring/net.c
1319
io_netmsg_iovec_free(io);
io_uring/net.c
1776
struct io_async_msghdr *io;
io_uring/net.c
1785
io = io_msg_alloc_async(req);
io_uring/net.c
1786
if (unlikely(!io))
io_uring/net.c
1789
return move_addr_to_kernel(conn->addr, conn->addr_len, &io->addr);
io_uring/net.c
1795
struct io_async_msghdr *io = req->async_data;
io_uring/net.c
1809
ret = __sys_connect_file(req->file, &io->addr, connect->addr_len,
io_uring/net.c
1848
struct io_async_msghdr *io;
io_uring/net.c
1856
io = io_msg_alloc_async(req);
io_uring/net.c
1857
if (unlikely(!io))
io_uring/net.c
1859
return move_addr_to_kernel(uaddr, bind->addr_len, &io->addr);
io_uring/net.c
1865
struct io_async_msghdr *io = req->async_data;
io_uring/net.c
1873
ret = __sys_bind_socket(sock, &io->addr, bind->addr_len);
io_uring/net.c
344
struct io_async_msghdr *io = req->async_data;
io_uring/net.c
346
io_netmsg_iovec_free(io);
io_uring/net.c
961
static int io_recvmsg_multishot(struct socket *sock, struct io_sr_msg *io,
io_uring/rw.c
1007
req->cqe.res = iov_iter_count(&io->iter);
io_uring/rw.c
1014
ret = io_iter_do_read(rw, &io->iter);
io_uring/rw.c
1019
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
1130
struct io_async_rw *io = req->async_data;
io_uring/rw.c
1136
ret = io_rw_import_reg_vec(req, io, ITER_SOURCE, issue_flags);
io_uring/rw.c
1144
req->cqe.res = iov_iter_count(&io->iter);
io_uring/rw.c
1174
ret2 = req->file->f_op->write_iter(kiocb, &io->iter);
io_uring/rw.c
1176
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
1203
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/rw.c
1204
io->bytes_done += ret2;
io_uring/rw.c
1214
iov_iter_restore(&io->iter, &io->iter_state);
io_uring/rw.c
1215
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
796
struct io_async_rw *io = req->async_data;
io_uring/rw.c
797
struct wait_page_queue *wait = &io->wpq;
io_uring/rw.c
84
struct io_async_rw *io,
io_uring/rw.c
893
struct io_async_rw *io = req->async_data;
io_uring/rw.c
905
kiocb->private = &io->meta;
io_uring/rw.c
91
if (io->vec.iovec) {
io_uring/rw.c
916
struct io_async_rw *io = req->async_data;
io_uring/rw.c
92
nr_segs = io->vec.nr;
io_uring/rw.c
922
ret = io_rw_import_reg_vec(req, io, ITER_DEST, issue_flags);
io_uring/rw.c
926
ret = io_import_rw_buffer(ITER_DEST, req, io, sel, issue_flags);
io_uring/rw.c
93
iov = io->vec.iovec;
io_uring/rw.c
933
req->cqe.res = iov_iter_count(&io->iter);
io_uring/rw.c
951
ret = io_iter_do_read(rw, &io->iter);
io_uring/rw.c
96
iov = &io->fast_iov;
io_uring/rw.c
986
iov_iter_restore(&io->iter, &io->iter_state);
io_uring/rw.c
987
io_meta_restore(io, kiocb);
io_uring/rw.c
99
ret = __import_iovec(ddir, uvec, uvec_segs, nr_segs, &iov, &io->iter,
io_uring/rw.c
995
iov_iter_advance(&io->iter, ret);
io_uring/rw.c
996
if (!iov_iter_count(&io->iter))
io_uring/rw.c
998
io->bytes_done += ret;
io_uring/rw.c
999
iov_iter_save_state(&io->iter, &io->iter_state);
io_uring/timeout.c
115
struct io_timeout_data *io = req->async_data;
io_uring/timeout.c
117
if (hrtimer_try_to_cancel(&io->timer) != -1) {
io_uring/timeout.c
244
struct io_timeout_data *io = link->async_data;
io_uring/timeout.c
249
if (hrtimer_try_to_cancel(&io->timer) != -1) {
io_uring/timeout.c
286
struct io_timeout_data *io;
io_uring/timeout.c
300
io = req->async_data;
io_uring/timeout.c
301
if (hrtimer_try_to_cancel(&io->timer) == -1)
io_uring/timeout.c
401
struct io_timeout_data *io;
io_uring/timeout.c
416
io = req->async_data;
io_uring/timeout.c
417
if (hrtimer_try_to_cancel(&io->timer) == -1)
io_uring/timeout.c
419
hrtimer_setup(&io->timer, io_link_timeout_fn, io_timeout_get_clock(io), mode);
io_uring/timeout.c
420
hrtimer_start(&io->timer, timespec64_to_ktime(*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
139
outb(inb(dev->io + HP_ICR) | HPICR_TREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
141
outb(dev->irqid, dev->io + HP_IRQM);
sound/isa/msnd/msnd.c
143
outb(inb(dev->io + HP_ICR) & ~HPICR_TREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
144
outb(inb(dev->io + HP_ICR) | HPICR_RREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
170
outb(inb(dev->io + HP_ICR) & ~HPICR_RREQ, dev->io + HP_ICR);
sound/isa/msnd/msnd.c
172
outb(HPIRQ_NONE, dev->io + HP_IRQM);
sound/isa/msnd/msnd.c
268
outb(HPBLKSEL_1, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
273
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
276
outb(HPBLKSEL_0, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
379
outb(HPBLKSEL_1, chip->io + HP_BLKS);
sound/isa/msnd/msnd.c
381
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
1068
io[idx] = pnp_port_start(pnp_dev, 0);
sound/isa/msnd/msnd_pinnacle.c
1080
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
531
if (!devm_request_region(card->dev, chip->io, DSP_NUMIO,
sound/isa/msnd/msnd_pinnacle.c
615
static int snd_msnd_write_cfg_io0(struct snd_msnd *chip, int cfg, int num, u16 io)
sound/isa/msnd/msnd_pinnacle.c
619
if (snd_msnd_write_cfg(chip, cfg, IREG_IO0_BASEHI, HIBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
621
if (snd_msnd_write_cfg(chip, cfg, IREG_IO0_BASELO, LOBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
626
static int snd_msnd_write_cfg_io1(struct snd_msnd *chip, int cfg, int num, u16 io)
sound/isa/msnd/msnd_pinnacle.c
630
if (snd_msnd_write_cfg(chip, cfg, IREG_IO1_BASEHI, HIBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
632
if (snd_msnd_write_cfg(chip, cfg, IREG_IO1_BASELO, LOBYTE(io)))
sound/isa/msnd/msnd_pinnacle.c
716
static long io[SNDRV_CARDS] = SNDRV_DEFAULT_PORT;
sound/isa/msnd/msnd_pinnacle.c
755
module_param_hw_array(io, long, ioport, NULL, 0444);
sound/isa/msnd/msnd_pinnacle.c
756
MODULE_PARM_DESC(io, "IO port #");
sound/isa/msnd/msnd_pinnacle.c
776
if (io[i] == SNDRV_AUTO_PORT)
sound/isa/msnd/msnd_pinnacle.c
785
if (!(io[i] == 0x290 ||
sound/isa/msnd/msnd_pinnacle.c
786
io[i] == 0x260 ||
sound/isa/msnd/msnd_pinnacle.c
787
io[i] == 0x250 ||
sound/isa/msnd/msnd_pinnacle.c
788
io[i] == 0x240 ||
sound/isa/msnd/msnd_pinnacle.c
789
io[i] == 0x230 ||
sound/isa/msnd/msnd_pinnacle.c
790
io[i] == 0x220 ||
sound/isa/msnd/msnd_pinnacle.c
791
io[i] == 0x210 ||
sound/isa/msnd/msnd_pinnacle.c
792
io[i] == 0x3e0)) {
sound/isa/msnd/msnd_pinnacle.c
799
if (io[i] < 0x100 || io[i] > 0x3e0 || (io[i] % 0x10) != 0) {
sound/isa/msnd/msnd_pinnacle.c
913
io[idx], 0,
sound/isa/msnd/msnd_pinnacle.c
971
chip->io = io[idx];
sound/pci/als4000.c
770
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
2823
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
2401
gp->io = JOYSTICK_ADDR;
sound/pci/es1968.c
2507
unsigned long io = chip->io_port + GPIO_DATA;
sound/pci/es1968.c
2508
u16 odir = inw(io + IO_DIR);
sound/pci/es1968.c
2513
io + IO_MASK);
sound/pci/es1968.c
2515
io + IO_DIR);
sound/pci/es1968.c
2518
io + IO_MASK);
sound/pci/es1968.c
2520
| (1 << gpio.clk) | (1 << gpio.wren), io + IO_DIR);
sound/pci/maestro3.c
1913
int io = chip->iobase;
sound/pci/maestro3.c
1918
tmp = inw(io + RING_BUS_CTRL_B) & ~SECOND_CODEC_ID_MASK;
sound/pci/maestro3.c
1923
outw(tmp | isremote, io + RING_BUS_CTRL_B);
sound/pci/maestro3.c
1924
outw((inw(io + SDO_OUT_DEST_CTRL) & ~COMMAND_ADDR_OUT) | isremote,
sound/pci/maestro3.c
1925
io + SDO_OUT_DEST_CTRL);
sound/pci/maestro3.c
1926
outw((inw(io + SDO_IN_DEST_CTRL) & ~STATUS_ADDR_IN) | isremote,
sound/pci/maestro3.c
1927
io + SDO_IN_DEST_CTRL);
sound/pci/maestro3.c
1954
int io = chip->iobase;
sound/pci/maestro3.c
1971
dir = inw(io + GPIO_DIRECTION);
sound/pci/maestro3.c
1977
outw(IO_SRAM_ENABLE, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
1980
outw(dir & ~GPO_PRIMARY_AC97 , io + GPIO_DIRECTION);
sound/pci/maestro3.c
1981
outw(~GPO_PRIMARY_AC97 , io + GPIO_MASK);
sound/pci/maestro3.c
1982
outw(0, io + GPIO_DATA);
sound/pci/maestro3.c
1983
outw(dir | GPO_PRIMARY_AC97, io + GPIO_DIRECTION);
sound/pci/maestro3.c
1987
outw(GPO_PRIMARY_AC97, io + GPIO_DATA);
sound/pci/maestro3.c
1990
outw(IO_SRAM_ENABLE | SERIAL_AC_LINK_ENABLE, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
1991
outw(~0, io + GPIO_MASK);
sound/pci/maestro3.c
2010
tmp = inw(io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2011
outw(RAC_SDFS_ENABLE|LAC_SDFS_ENABLE, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2013
outw(tmp, io + RING_BUS_CTRL_A);
sound/pci/maestro3.c
2204
int io = chip->iobase;
sound/pci/maestro3.c
2214
outw(~gpo, io + GPIO_MASK);
sound/pci/maestro3.c
2216
outw(inw(io + GPIO_DIRECTION) | gpo,
sound/pci/maestro3.c
2217
io + GPIO_DIRECTION);
sound/pci/maestro3.c
2220
io + GPIO_DATA);
sound/pci/maestro3.c
2222
outw(0xffff, io + GPIO_MASK);
sound/pci/maestro3.c
2228
unsigned long io = chip->iobase;
sound/pci/maestro3.c
2238
outw(0xffff, io + GPIO_MASK);
sound/pci/maestro3.c
2239
outw(0x0000, io + GPIO_DATA);
sound/pci/maestro3.c
2241
outw(~val, io + GPIO_MASK);
sound/pci/maestro3.c
2242
outw(inw(io + GPIO_DIRECTION) & ~val, io + GPIO_DIRECTION);
sound/pci/maestro3.c
2243
outw(val, io + GPIO_MASK);
sound/pci/maestro3.c
2245
outw(0xffff, io + GPIO_MASK);
sound/pci/maestro3.c
2252
unsigned long io = chip->iobase;
sound/pci/maestro3.c
2296
outb(0x00, io + HARDWARE_VOL_CTRL);
sound/pci/maestro3.c
2297
outb(0x88, io + SHADOW_MIX_REG_VOICE);
sound/pci/maestro3.c
2298
outb(0x88, io + HW_VOL_COUNTER_VOICE);
sound/pci/maestro3.c
2299
outb(0x88, io + SHADOW_MIX_REG_MASTER);
sound/pci/maestro3.c
2300
outb(0x88, io + HW_VOL_COUNTER_MASTER);
sound/pci/maestro3.c
2308
unsigned long io = chip->iobase;
sound/pci/maestro3.c
2316
outw(val, io + HOST_INT_CTRL);
sound/pci/maestro3.c
2317
outb(inb(io + ASSP_CONTROL_C) | ASSP_HOST_INT_ENABLE,
sound/pci/maestro3.c
2318
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
1029
static void fsi_pointer_update(struct fsi_stream *io, int size)
sound/soc/renesas/fsi.c
1031
io->buff_sample_pos += size;
sound/soc/renesas/fsi.c
1033
if (io->buff_sample_pos >=
sound/soc/renesas/fsi.c
1034
io->period_samples * (io->period_pos + 1)) {
sound/soc/renesas/fsi.c
1035
struct snd_pcm_substream *substream = io->substream;
sound/soc/renesas/fsi.c
1038
io->period_pos++;
sound/soc/renesas/fsi.c
1040
if (io->period_pos >= runtime->periods) {
sound/soc/renesas/fsi.c
1041
io->buff_sample_pos = 0;
sound/soc/renesas/fsi.c
1042
io->period_pos = 0;
sound/soc/renesas/fsi.c
1102
static u8 *fsi_pio_get_area(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1104
struct snd_pcm_runtime *runtime = io->substream->runtime;
sound/soc/renesas/fsi.c
1107
samples_to_bytes(runtime, io->buff_sample_pos);
sound/soc/renesas/fsi.c
1110
static int fsi_pio_transfer(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
1117
if (!fsi_stream_is_working(fsi, io))
sound/soc/renesas/fsi.c
1120
buf = fsi_pio_get_area(fsi, io);
sound/soc/renesas/fsi.c
1122
switch (io->sample_width) {
sound/soc/renesas/fsi.c
1133
fsi_pointer_update(io, samples);
sound/soc/renesas/fsi.c
1138
static int fsi_pio_pop(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1144
sample_residues = fsi_get_current_fifo_samples(fsi, io);
sound/soc/renesas/fsi.c
1145
sample_space = io->buff_sample_capa - io->buff_sample_pos;
sound/soc/renesas/fsi.c
1149
return fsi_pio_transfer(fsi, io,
sound/soc/renesas/fsi.c
1155
static int fsi_pio_push(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1161
sample_residues = io->buff_sample_capa - io->buff_sample_pos;
sound/soc/renesas/fsi.c
1162
sample_space = io->fifo_sample_capa -
sound/soc/renesas/fsi.c
1163
fsi_get_current_fifo_samples(fsi, io);
sound/soc/renesas/fsi.c
1167
return fsi_pio_transfer(fsi, io,
sound/soc/renesas/fsi.c
1173
static int fsi_pio_start_stop(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
1180
fsi_irq_enable(fsi, io);
sound/soc/renesas/fsi.c
1182
fsi_irq_disable(fsi, io);
sound/soc/renesas/fsi.c
1190
static int fsi_pio_push_init(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1200
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1203
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1208
static int fsi_pio_pop_init(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1213
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1260
static int fsi_dma_init(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1266
io->bus_option = BUSOP_SET(24, PACKAGE_24BITBUS_BACK) |
sound/soc/renesas/fsi.c
1274
struct fsi_stream *io = (struct fsi_stream *)data;
sound/soc/renesas/fsi.c
1275
struct fsi_priv *fsi = fsi_stream_to_priv(io);
sound/soc/renesas/fsi.c
1277
fsi_pointer_update(io, io->period_samples);
sound/soc/renesas/fsi.c
1282
static int fsi_dma_transfer(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1284
struct snd_soc_dai *dai = fsi_get_dai(io->substream);
sound/soc/renesas/fsi.c
1285
struct snd_pcm_substream *substream = io->substream;
sound/soc/renesas/fsi.c
1287
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
1296
desc = dmaengine_prep_dma_cyclic(io->chan,
sound/soc/renesas/fsi.c
1308
desc->callback_param = io;
sound/soc/renesas/fsi.c
1315
dma_async_issue_pending(io->chan);
sound/soc/renesas/fsi.c
1339
static int fsi_dma_push_start_stop(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
1348
dmaengine_terminate_all(io->chan);
sound/soc/renesas/fsi.c
1356
static int fsi_dma_probe(struct fsi_priv *fsi, struct fsi_stream *io, struct device *dev)
sound/soc/renesas/fsi.c
1358
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
1365
io->chan = dma_request_channel(mask, shdma_chan_filter,
sound/soc/renesas/fsi.c
1366
(void *)io->dma_id);
sound/soc/renesas/fsi.c
1368
io->chan = dma_request_chan(dev, is_play ? "tx" : "rx");
sound/soc/renesas/fsi.c
1369
if (IS_ERR(io->chan))
sound/soc/renesas/fsi.c
1370
io->chan = NULL;
sound/soc/renesas/fsi.c
1372
if (io->chan) {
sound/soc/renesas/fsi.c
1386
ret = dmaengine_slave_config(io->chan, &cfg);
sound/soc/renesas/fsi.c
1388
dma_release_channel(io->chan);
sound/soc/renesas/fsi.c
1389
io->chan = NULL;
sound/soc/renesas/fsi.c
1393
if (!io->chan) {
sound/soc/renesas/fsi.c
1410
static int fsi_dma_remove(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
1412
fsi_stream_stop(fsi, io);
sound/soc/renesas/fsi.c
1414
if (io->chan)
sound/soc/renesas/fsi.c
1415
dma_release_channel(io->chan);
sound/soc/renesas/fsi.c
1417
io->chan = NULL;
sound/soc/renesas/fsi.c
1433
struct fsi_stream *io,
sound/soc/renesas/fsi.c
1437
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
1443
shift >>= fsi_get_port_shift(fsi, io);
sound/soc/renesas/fsi.c
1472
io->fifo_sample_capa = fsi_frame2sample(fsi, frame_capa);
sound/soc/renesas/fsi.c
1488
struct fsi_stream *io,
sound/soc/renesas/fsi.c
1519
switch (io->sample_width) {
sound/soc/renesas/fsi.c
1521
data = BUSOP_GET(16, io->bus_option);
sound/soc/renesas/fsi.c
1524
data = BUSOP_GET(24, io->bus_option);
sound/soc/renesas/fsi.c
1527
fsi_format_bus_setup(fsi, io, data, dev);
sound/soc/renesas/fsi.c
1530
fsi_irq_disable(fsi, io);
sound/soc/renesas/fsi.c
1534
fsi_fifo_init(fsi, io, dev);
sound/soc/renesas/fsi.c
1575
struct fsi_stream *io = fsi_stream_get(fsi, substream);
sound/soc/renesas/fsi.c
1580
fsi_stream_init(fsi, io, substream);
sound/soc/renesas/fsi.c
1582
ret = fsi_hw_startup(fsi, io, dai->dev);
sound/soc/renesas/fsi.c
1584
ret = fsi_stream_start(fsi, io);
sound/soc/renesas/fsi.c
1586
ret = fsi_stream_transfer(io);
sound/soc/renesas/fsi.c
1591
fsi_stream_stop(fsi, io);
sound/soc/renesas/fsi.c
1592
fsi_stream_quit(fsi, io);
sound/soc/renesas/fsi.c
1754
struct fsi_stream *io = fsi_stream_get(fsi, substream);
sound/soc/renesas/fsi.c
1756
return fsi_sample2frame(fsi, io->buff_sample_pos);
sound/soc/renesas/fsi.c
2033
struct fsi_stream *io,
sound/soc/renesas/fsi.c
2036
if (!fsi_stream_is_working(fsi, io))
sound/soc/renesas/fsi.c
2039
fsi_stream_stop(fsi, io);
sound/soc/renesas/fsi.c
2044
struct fsi_stream *io,
sound/soc/renesas/fsi.c
2047
if (!fsi_stream_is_working(fsi, io))
sound/soc/renesas/fsi.c
2050
fsi_hw_startup(fsi, io, dev);
sound/soc/renesas/fsi.c
2051
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
300
struct fsi_stream *io)
sound/soc/renesas/fsi.c
302
return &fsi->playback == io;
sound/soc/renesas/fsi.c
421
static u32 fsi_get_port_shift(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
423
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
446
struct fsi_stream *io)
sound/soc/renesas/fsi.c
448
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
492
struct fsi_stream *io)
sound/soc/renesas/fsi.c
498
return !!(io->substream && io->substream->runtime);
sound/soc/renesas/fsi.c
501
static struct fsi_priv *fsi_stream_to_priv(struct fsi_stream *io)
sound/soc/renesas/fsi.c
503
return io->priv;
sound/soc/renesas/fsi.c
507
struct fsi_stream *io,
sound/soc/renesas/fsi.c
515
io->substream = substream;
sound/soc/renesas/fsi.c
516
io->buff_sample_capa = fsi_frame2sample(fsi, runtime->buffer_size);
sound/soc/renesas/fsi.c
517
io->buff_sample_pos = 0;
sound/soc/renesas/fsi.c
518
io->period_samples = fsi_frame2sample(fsi, runtime->period_size);
sound/soc/renesas/fsi.c
519
io->period_pos = 0;
sound/soc/renesas/fsi.c
520
io->sample_width = samples_to_bytes(runtime, 1);
sound/soc/renesas/fsi.c
521
io->bus_option = 0;
sound/soc/renesas/fsi.c
522
io->oerr_num = -1; /* ignore 1st err */
sound/soc/renesas/fsi.c
523
io->uerr_num = -1; /* ignore 1st err */
sound/soc/renesas/fsi.c
524
fsi_stream_handler_call(io, init, fsi, io);
sound/soc/renesas/fsi.c
527
static void fsi_stream_quit(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
529
struct snd_soc_dai *dai = fsi_get_dai(io->substream);
sound/soc/renesas/fsi.c
534
if (io->oerr_num > 0)
sound/soc/renesas/fsi.c
535
dev_err(dai->dev, "over_run = %d\n", io->oerr_num);
sound/soc/renesas/fsi.c
537
if (io->uerr_num > 0)
sound/soc/renesas/fsi.c
538
dev_err(dai->dev, "under_run = %d\n", io->uerr_num);
sound/soc/renesas/fsi.c
540
fsi_stream_handler_call(io, quit, fsi, io);
sound/soc/renesas/fsi.c
541
io->substream = NULL;
sound/soc/renesas/fsi.c
542
io->buff_sample_capa = 0;
sound/soc/renesas/fsi.c
543
io->buff_sample_pos = 0;
sound/soc/renesas/fsi.c
544
io->period_samples = 0;
sound/soc/renesas/fsi.c
545
io->period_pos = 0;
sound/soc/renesas/fsi.c
546
io->sample_width = 0;
sound/soc/renesas/fsi.c
547
io->bus_option = 0;
sound/soc/renesas/fsi.c
548
io->oerr_num = 0;
sound/soc/renesas/fsi.c
549
io->uerr_num = 0;
sound/soc/renesas/fsi.c
552
static int fsi_stream_transfer(struct fsi_stream *io)
sound/soc/renesas/fsi.c
554
struct fsi_priv *fsi = fsi_stream_to_priv(io);
sound/soc/renesas/fsi.c
558
return fsi_stream_handler_call(io, transfer, fsi, io);
sound/soc/renesas/fsi.c
561
#define fsi_stream_start(fsi, io)\
sound/soc/renesas/fsi.c
562
fsi_stream_handler_call(io, start_stop, fsi, io, 1)
sound/soc/renesas/fsi.c
564
#define fsi_stream_stop(fsi, io)\
sound/soc/renesas/fsi.c
565
fsi_stream_handler_call(io, start_stop, fsi, io, 0)
sound/soc/renesas/fsi.c
569
struct fsi_stream *io;
sound/soc/renesas/fsi.c
572
io = &fsi->playback;
sound/soc/renesas/fsi.c
573
ret1 = fsi_stream_handler_call(io, probe, fsi, io, dev);
sound/soc/renesas/fsi.c
575
io = &fsi->capture;
sound/soc/renesas/fsi.c
576
ret2 = fsi_stream_handler_call(io, probe, fsi, io, dev);
sound/soc/renesas/fsi.c
588
struct fsi_stream *io;
sound/soc/renesas/fsi.c
591
io = &fsi->playback;
sound/soc/renesas/fsi.c
592
ret1 = fsi_stream_handler_call(io, remove, fsi, io);
sound/soc/renesas/fsi.c
594
io = &fsi->capture;
sound/soc/renesas/fsi.c
595
ret2 = fsi_stream_handler_call(io, remove, fsi, io);
sound/soc/renesas/fsi.c
608
static void fsi_format_bus_setup(struct fsi_priv *fsi, struct fsi_stream *io,
sound/soc/renesas/fsi.c
612
int is_play = fsi_stream_is_play(fsi, io);
sound/soc/renesas/fsi.c
656
static void fsi_irq_enable(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
658
u32 data = AB_IO(1, fsi_get_port_shift(fsi, io));
sound/soc/renesas/fsi.c
665
static void fsi_irq_disable(struct fsi_priv *fsi, struct fsi_stream *io)
sound/soc/renesas/fsi.c
667
u32 data = AB_IO(1, fsi_get_port_shift(fsi, io));
sound/soc/renesas/rcar/adg.c
102
if (rsnd_ssi_is_pin_sharing(io)) {
sound/soc/renesas/rcar/adg.c
129
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/adg.c
191
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/adg.c
196
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/adg.c
205
_out = rsnd_adg_ssi_ws_timing_gen2(io);
sound/soc/renesas/rcar/adg.c
219
__rsnd_adg_get_timesel_ratio(priv, io,
sound/soc/renesas/rcar/adg.c
232
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/adg.c
241
rsnd_adg_get_timesel_ratio(priv, io,
sound/soc/renesas/rcar/adg.c
242
rsnd_src_get_in_rate(priv, io),
sound/soc/renesas/rcar/adg.c
243
rsnd_src_get_out_rate(priv, io),
sound/soc/renesas/rcar/adg.c
255
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/adg.c
269
rsnd_adg_get_timesel_ratio(priv, io,
sound/soc/renesas/rcar/adg.c
96
static u32 rsnd_adg_ssi_ws_timing_gen2(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/adg.c
98
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(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
1020
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1025
rsnd_dai_call(cleanup, io, priv);
sound/soc/renesas/rcar/core.c
1027
rsnd_dai_stream_quit(io);
sound/soc/renesas/rcar/core.c
1035
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1037
return rsnd_dai_call(prepare, io, priv);
sound/soc/renesas/rcar/core.c
1066
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1071
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/core.c
1091
rsnd_flags_set(io, RSND_STREAM_TDM_SPLIT);
sound/soc/renesas/rcar/core.c
1092
dev_dbg(dev, "%s is part of TDM Split\n", io->name);
sound/soc/renesas/rcar/core.c
1103
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1106
if (!rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/core.c
1109
rsnd_parse_tdm_split_mode(priv, io, dai_np);
sound/soc/renesas/rcar/core.c
1113
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1119
if (!rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/core.c
1126
rsnd_flags_set(io, RSND_STREAM_HDMI0);
sound/soc/renesas/rcar/core.c
1127
dev_dbg(dev, "%s connected to HDMI0\n", io->name);
sound/soc/renesas/rcar/core.c
1132
rsnd_flags_set(io, RSND_STREAM_HDMI1);
sound/soc/renesas/rcar/core.c
1133
dev_dbg(dev, "%s connected to HDMI1\n", io->name);
sound/soc/renesas/rcar/core.c
1136
rsnd_parse_tdm_split_mode(priv, io, endpoint);
sound/soc/renesas/rcar/core.c
127
struct dma_chan *rsnd_mod_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1301
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1304
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/core.c
1313
if (io->dmac_dev)
sound/soc/renesas/rcar/core.c
1314
dev = io->dmac_dev;
sound/soc/renesas/rcar/core.c
133
return mod->ops->dma_req(io, mod);
sound/soc/renesas/rcar/core.c
1539
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1540
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/core.c
1546
ret = rsnd_dai_call(hw_params, io, substream, hw_params);
sound/soc/renesas/rcar/core.c
1548
ret = rsnd_dai_call(hw_free, io, substream);
sound/soc/renesas/rcar/core.c
1559
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1571
io->converted_rate = 0;
sound/soc/renesas/rcar/core.c
1572
io->converted_chan = 0;
sound/soc/renesas/rcar/core.c
1574
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/core.c
1584
io->converted_chan = params_channels(be_params);
sound/soc/renesas/rcar/core.c
1586
io->converted_rate = params_rate(be_params);
sound/soc/renesas/rcar/core.c
1588
if (io->converted_chan)
sound/soc/renesas/rcar/core.c
1589
dev_dbg(dev, "convert channels = %d\n", io->converted_chan);
sound/soc/renesas/rcar/core.c
1590
if (io->converted_rate) {
sound/soc/renesas/rcar/core.c
1602
struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/core.c
1604
dev_dbg(dev, "convert rate = %d\n", io->converted_rate);
sound/soc/renesas/rcar/core.c
1606
channel = io->converted_chan ? io->converted_chan :
sound/soc/renesas/rcar/core.c
1636
if (params_rate(hw_params) > io->converted_rate * k_down) {
sound/soc/renesas/rcar/core.c
1638
io->converted_rate * k_down;
sound/soc/renesas/rcar/core.c
1640
io->converted_rate * k_down;
sound/soc/renesas/rcar/core.c
1642
} else if (params_rate(hw_params) * k_up < io->converted_rate) {
sound/soc/renesas/rcar/core.c
1644
DIV_ROUND_UP(io->converted_rate, k_up);
sound/soc/renesas/rcar/core.c
1646
DIV_ROUND_UP(io->converted_rate, k_up);
sound/soc/renesas/rcar/core.c
1675
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
1678
rsnd_dai_call(pointer, io, &pointer);
sound/soc/renesas/rcar/core.c
168
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1733
if (!cfg->accept(cfg->io))
sound/soc/renesas/rcar/core.c
1747
cfg->update(cfg->io, cfg->mod);
sound/soc/renesas/rcar/core.c
1752
int rsnd_kctrl_accept_anytime(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
1799
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1802
int (*accept)(struct rsnd_dai_stream *io),
sound/soc/renesas/rcar/core.c
1803
void (*update)(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
1852
cfg->io = io;
sound/soc/renesas/rcar/core.c
1871
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
1875
ret = rsnd_dai_call(probe, io, priv);
sound/soc/renesas/rcar/core.c
1877
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/core.c
1892
rsnd_dai_call(remove, io, priv);
sound/soc/renesas/rcar/core.c
1898
for_each_rsnd_mod(i, mod, io)
sound/soc/renesas/rcar/core.c
1899
rsnd_dai_disconnect(mod, io, i);
sound/soc/renesas/rcar/core.c
1900
rsnd_dai_connect(ssi_mod, io, RSND_MOD_SSI);
sound/soc/renesas/rcar/core.c
1905
rsnd_dai_call(fallback, io, priv);
sound/soc/renesas/rcar/core.c
1911
ret = rsnd_dai_call(probe, io, priv);
sound/soc/renesas/rcar/core.c
224
struct rsnd_dai_stream *io))
sound/soc/renesas/rcar/core.c
231
struct rsnd_dai_stream *io = &rdai->playback;
sound/soc/renesas/rcar/core.c
233
if (mod == io->mod[mod->type])
sound/soc/renesas/rcar/core.c
234
callback(mod, io);
sound/soc/renesas/rcar/core.c
236
io = &rdai->capture;
sound/soc/renesas/rcar/core.c
237
if (mod == io->mod[mod->type])
sound/soc/renesas/rcar/core.c
238
callback(mod, io);
sound/soc/renesas/rcar/core.c
242
int rsnd_io_is_working(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
245
if (io->substream)
sound/soc/renesas/rcar/core.c
246
return snd_pcm_running(io->substream);
sound/soc/renesas/rcar/core.c
251
int rsnd_runtime_channel_original_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
254
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
269
int rsnd_runtime_channel_after_ctu_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
272
int chan = rsnd_runtime_channel_original_with_params(io, params);
sound/soc/renesas/rcar/core.c
273
struct rsnd_mod *ctu_mod = rsnd_io_to_mod_ctu(io);
sound/soc/renesas/rcar/core.c
276
u32 converted_chan = rsnd_io_converted_chan(io);
sound/soc/renesas/rcar/core.c
285
if (rsnd_runtime_is_tdm_split(io)) {
sound/soc/renesas/rcar/core.c
286
struct device *dev = rsnd_priv_to_dev(rsnd_io_to_priv(io));
sound/soc/renesas/rcar/core.c
310
int rsnd_runtime_channel_for_ssi_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
313
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
314
int chan = rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/core.c
315
rsnd_runtime_channel_after_ctu_with_params(io, params) :
sound/soc/renesas/rcar/core.c
316
rsnd_runtime_channel_original_with_params(io, params);
sound/soc/renesas/rcar/core.c
319
if (rsnd_runtime_is_multi_ssi(io))
sound/soc/renesas/rcar/core.c
325
int rsnd_runtime_is_multi_ssi(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
327
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(io) :
sound/soc/renesas/rcar/core.c
331
rsnd_runtime_channel_original(io);
sound/soc/renesas/rcar/core.c
336
int rsnd_runtime_is_tdm(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
338
return rsnd_runtime_channel_for_ssi(io) >= 6;
sound/soc/renesas/rcar/core.c
341
int rsnd_runtime_is_tdm_split(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
343
return !!rsnd_flags_has(io, RSND_STREAM_TDM_SPLIT);
sound/soc/renesas/rcar/core.c
349
u32 rsnd_get_adinr_bit(struct rsnd_mod *mod, struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
352
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
372
u32 rsnd_get_dalign(struct rsnd_mod *mod, struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
379
struct rsnd_mod *ssiu = rsnd_io_to_mod_ssiu(io);
sound/soc/renesas/rcar/core.c
381
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
405
if (rsnd_io_is_play(io)) {
sound/soc/renesas/rcar/core.c
406
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/core.c
410
struct rsnd_mod *cmd = rsnd_io_to_mod_cmd(io);
sound/soc/renesas/rcar/core.c
429
u32 rsnd_get_busif_shift(struct rsnd_dai_stream *io, struct rsnd_mod *mod)
sound/soc/renesas/rcar/core.c
441
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/core.c
444
rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/core.c
460
tmod = rsnd_io_to_mod(io, mods[i]);
sound/soc/renesas/rcar/core.c
468
if (rsnd_io_is_play(io))
sound/soc/renesas/rcar/core.c
480
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
488
struct rsnd_mod *mod = rsnd_io_to_mod(io, type);
sound/soc/renesas/rcar/core.c
531
static int rsnd_status_update(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
535
u32 *status = mod->ops->get_status(mod, io, type);
sound/soc/renesas/rcar/core.c
553
#define rsnd_dai_call(fn, io, param...) \
sound/soc/renesas/rcar/core.c
555
struct device *dev = rsnd_priv_to_dev(rsnd_io_to_priv(io)); \
sound/soc/renesas/rcar/core.c
557
int is_play = rsnd_io_is_play(io); \
sound/soc/renesas/rcar/core.c
560
for_each_rsnd_mod_arrays(i, mod, io, types, RSND_MOD_MAX) { \
sound/soc/renesas/rcar/core.c
562
int func_call = rsnd_status_update(io, mod, types[i], \
sound/soc/renesas/rcar/core.c
567
tmp = (mod)->ops->fn(mod, io, param); \
sound/soc/renesas/rcar/core.c
578
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
587
if (io->mod[type] == mod)
sound/soc/renesas/rcar/core.c
590
if (io->mod[type])
sound/soc/renesas/rcar/core.c
596
io->mod[type] = mod;
sound/soc/renesas/rcar/core.c
600
rsnd_io_is_play(io) ? "Playback" : "Capture");
sound/soc/renesas/rcar/core.c
606
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
609
io->mod[type] = NULL;
sound/soc/renesas/rcar/core.c
663
static void rsnd_dai_stream_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/core.c
666
io->substream = substream;
sound/soc/renesas/rcar/core.c
669
static void rsnd_dai_stream_quit(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/core.c
671
io->substream = NULL;
sound/soc/renesas/rcar/core.c
697
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
705
ret = rsnd_dai_call(init, io, priv);
sound/soc/renesas/rcar/core.c
709
ret = rsnd_dai_call(start, io, priv);
sound/soc/renesas/rcar/core.c
713
ret = rsnd_dai_call(irq, io, priv, 1);
sound/soc/renesas/rcar/core.c
717
ret = rsnd_dai_call(irq, io, priv, 0);
sound/soc/renesas/rcar/core.c
719
ret |= rsnd_dai_call(stop, io, priv);
sound/soc/renesas/rcar/core.c
721
ret |= rsnd_dai_call(quit, io, priv);
sound/soc/renesas/rcar/core.c
858
struct rsnd_dai_stream *io, char *unit)
sound/soc/renesas/rcar/core.c
889
if (!rsnd_flags_has(io, RSND_HW_RULE_ERR) && (p.min > p.max)) {
sound/soc/renesas/rcar/core.c
895
rsnd_flags_set(io, RSND_HW_RULE_ERR);
sound/soc/renesas/rcar/core.c
907
struct rsnd_dai_stream *io = rule->private;
sound/soc/renesas/rcar/core.c
908
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
917
ic.max = rsnd_runtime_channel_for_ssi_with_params(io, params);
sound/soc/renesas/rcar/core.c
921
&ic, ir, io, "ch");
sound/soc/renesas/rcar/core.c
930
struct rsnd_dai_stream *io = rule->private;
sound/soc/renesas/rcar/core.c
931
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/core.c
940
ic.max = rsnd_runtime_channel_for_ssi_with_params(io, params);
sound/soc/renesas/rcar/core.c
944
ir, &ic, io, "Hz");
sound/soc/renesas/rcar/core.c
963
struct rsnd_dai_stream *io = rsnd_rdai_to_io(rdai, substream);
sound/soc/renesas/rcar/core.c
969
rsnd_flags_del(io, RSND_HW_RULE_ERR);
sound/soc/renesas/rcar/core.c
971
rsnd_dai_stream_init(io, substream);
sound/soc/renesas/rcar/ctu.c
108
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
111
return rsnd_cmd_attach(io, rsnd_mod_id(mod));
sound/soc/renesas/rcar/ctu.c
114
static void rsnd_ctu_value_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
133
rsnd_mod_write(mod, CTU_ADINR, rsnd_runtime_channel_original(io));
sound/soc/renesas/rcar/ctu.c
151
static void rsnd_ctu_value_reset(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
171
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
182
rsnd_ctu_value_init(io, mod);
sound/soc/renesas/rcar/ctu.c
188
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
199
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ctu.c
209
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU Pass",
sound/soc/renesas/rcar/ctu.c
218
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV0",
sound/soc/renesas/rcar/ctu.c
227
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV1",
sound/soc/renesas/rcar/ctu.c
236
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV2",
sound/soc/renesas/rcar/ctu.c
245
ret = rsnd_kctrl_new_m(mod, io, rtd, "CTU SV3",
sound/soc/renesas/rcar/ctu.c
254
ret = rsnd_kctrl_new_s(mod, io, rtd, "CTU Reset",
sound/soc/renesas/rcar/ctu.c
284
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
102
snd_dmaengine_pcm_close_release_chan(io->substream);
sound/soc/renesas/rcar/dma.c
110
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
126
dmaen->chan = rsnd_dmaen_request_channel(io,
sound/soc/renesas/rcar/dma.c
135
return snd_dmaengine_pcm_open(io->substream, dmaen->chan);
sound/soc/renesas/rcar/dma.c
139
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
154
if (rsnd_runtime_channel_original(io) == 1) {
sound/soc/renesas/rcar/dma.c
155
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/dma.c
174
cfg.direction = snd_pcm_substream_to_dma_direction(io->substream);
sound/soc/renesas/rcar/dma.c
188
return snd_dmaengine_pcm_trigger(io->substream, SNDRV_PCM_TRIGGER_START);
sound/soc/renesas/rcar/dma.c
217
static int rsnd_dmaen_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
221
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
226
chan = rsnd_dmaen_request_channel(io, mod_from, mod_to);
sound/soc/renesas/rcar/dma.c
246
io->dmac_dev = chan->device->dev;
sound/soc/renesas/rcar/dma.c
256
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
259
*pointer = snd_dmaengine_pcm_pointer(io->substream);
sound/soc/renesas/rcar/dma.c
316
static u32 rsnd_dmapp_get_id(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
319
struct rsnd_mod *ssi = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/dma.c
320
struct rsnd_mod *ssiu = rsnd_io_to_mod_ssiu(io);
sound/soc/renesas/rcar/dma.c
321
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/dma.c
322
struct rsnd_mod *dvc = rsnd_io_to_mod_dvc(io);
sound/soc/renesas/rcar/dma.c
345
struct device *dev = rsnd_priv_to_dev(rsnd_io_to_priv(io));
sound/soc/renesas/rcar/dma.c
356
static u32 rsnd_dmapp_get_chcr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
360
return (rsnd_dmapp_get_id(io, mod_from) << 24) +
sound/soc/renesas/rcar/dma.c
361
(rsnd_dmapp_get_id(io, mod_to) << 16);
sound/soc/renesas/rcar/dma.c
403
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
421
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
434
static int rsnd_dmapp_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
439
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
444
dmapp->chcr = rsnd_dmapp_get_chcr(io, mod_from, mod_to) | PDMACHCR_DE;
sound/soc/renesas/rcar/dma.c
456
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
519
rsnd_gen2_dma_addr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
523
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
527
int is_ssi = !!(rsnd_io_to_mod_ssi(io) == mod) ||
sound/soc/renesas/rcar/dma.c
528
!!(rsnd_io_to_mod_ssiu(io) == mod);
sound/soc/renesas/rcar/dma.c
529
int use_src = !!rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/dma.c
530
int use_cmd = !!rsnd_io_to_mod_dvc(io) ||
sound/soc/renesas/rcar/dma.c
531
!!rsnd_io_to_mod_mix(io) ||
sound/soc/renesas/rcar/dma.c
532
!!rsnd_io_to_mod_ctu(io);
sound/soc/renesas/rcar/dma.c
534
int busif = rsnd_mod_id_sub(rsnd_io_to_mod_ssiu(io));
sound/soc/renesas/rcar/dma.c
585
if (is_ssi && rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/dma.c
602
rsnd_gen4_dma_addr(struct rsnd_dai_stream *io, struct rsnd_mod *mod,
sound/soc/renesas/rcar/dma.c
605
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
623
static dma_addr_t rsnd_dma_addr(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
627
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
638
return rsnd_gen4_dma_addr(io, mod, is_play, is_from);
sound/soc/renesas/rcar/dma.c
640
return rsnd_gen2_dma_addr(io, mod, is_play, is_from);
sound/soc/renesas/rcar/dma.c
645
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
651
struct rsnd_mod *src = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/dma.c
652
struct rsnd_mod *ctu = rsnd_io_to_mod_ctu(io);
sound/soc/renesas/rcar/dma.c
653
struct rsnd_mod *mix = rsnd_io_to_mod_mix(io);
sound/soc/renesas/rcar/dma.c
654
struct rsnd_mod *dvc = rsnd_io_to_mod_dvc(io);
sound/soc/renesas/rcar/dma.c
672
struct rsnd_mod *ssiu = rsnd_io_to_mod_ssiu(io);
sound/soc/renesas/rcar/dma.c
676
if (this == rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/dma.c
68
static struct dma_chan *rsnd_dmaen_request_channel(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
680
ssi = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/dma.c
689
nr += !!rsnd_io_to_mod(io, i);
sound/soc/renesas/rcar/dma.c
752
static int rsnd_dma_alloc(struct rsnd_dai_stream *io, struct rsnd_mod *mod,
sound/soc/renesas/rcar/dma.c
757
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/dma.c
763
int (*attach)(struct rsnd_dai_stream *io, struct rsnd_dma *dma,
sound/soc/renesas/rcar/dma.c
765
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/dma.c
77
return rsnd_mod_dma_req(io, mod_from);
sound/soc/renesas/rcar/dma.c
777
rsnd_dma_of_path(mod, io, is_play, &mod_from, &mod_to);
sound/soc/renesas/rcar/dma.c
79
return rsnd_mod_dma_req(io, mod_to);
sound/soc/renesas/rcar/dma.c
816
ret = attach(io, dma, mod_from, mod_to);
sound/soc/renesas/rcar/dma.c
820
dma->src_addr = rsnd_dma_addr(io, mod_from, is_play, 1);
sound/soc/renesas/rcar/dma.c
821
dma->dst_addr = rsnd_dma_addr(io, mod_to, is_play, 0);
sound/soc/renesas/rcar/dma.c
828
int rsnd_dma_attach(struct rsnd_dai_stream *io, struct rsnd_mod *mod,
sound/soc/renesas/rcar/dma.c
83
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dma.c
832
int ret = rsnd_dma_alloc(io, mod, dma_mod);
sound/soc/renesas/rcar/dma.c
838
return rsnd_dai_connect(*dma_mod, io, (*dma_mod)->type);
sound/soc/renesas/rcar/dma.c
86
return snd_dmaengine_pcm_trigger(io->substream, SNDRV_PCM_TRIGGER_STOP);
sound/soc/renesas/rcar/dma.c
90
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
103
adinr = rsnd_get_adinr_bit(mod, io) |
sound/soc/renesas/rcar/dvc.c
104
rsnd_runtime_channel_after_ctu(io);
sound/soc/renesas/rcar/dvc.c
137
rsnd_dvc_volume_parameter(io, mod);
sound/soc/renesas/rcar/dvc.c
143
static void rsnd_dvc_volume_update(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
172
rsnd_dvc_volume_parameter(io, mod);
sound/soc/renesas/rcar/dvc.c
179
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
182
return rsnd_cmd_attach(io, rsnd_mod_id(mod));
sound/soc/renesas/rcar/dvc.c
186
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
197
rsnd_dvc_volume_init(io, mod);
sound/soc/renesas/rcar/dvc.c
199
rsnd_dvc_volume_update(io, mod);
sound/soc/renesas/rcar/dvc.c
205
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
216
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
220
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/dvc.c
221
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/dvc.c
226
ret = rsnd_kctrl_new_m(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
237
ret = rsnd_kctrl_new_m(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
248
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
257
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
268
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/dvc.c
283
static struct dma_chan *rsnd_dvc_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
294
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
73
static void rsnd_dvc_volume_parameter(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/dvc.c
93
static void rsnd_dvc_volume_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
104
static void rsnd_mix_volume_init(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
112
rsnd_mod_write(mod, MIX_ADINR, rsnd_runtime_channel_after_ctu(io));
sound/soc/renesas/rcar/mix.c
120
rsnd_mix_volume_parameter(io, mod);
sound/soc/renesas/rcar/mix.c
125
static void rsnd_mix_volume_update(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
132
rsnd_mix_volume_parameter(io, mod);
sound/soc/renesas/rcar/mix.c
139
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
142
return rsnd_cmd_attach(io, rsnd_mod_id(mod));
sound/soc/renesas/rcar/mix.c
146
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
157
rsnd_mix_volume_init(io, mod);
sound/soc/renesas/rcar/mix.c
159
rsnd_mix_volume_update(io, mod);
sound/soc/renesas/rcar/mix.c
165
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
176
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
182
struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/mix.c
213
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
226
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
234
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
244
ret = rsnd_kctrl_new_e(mod, io, rtd,
sound/soc/renesas/rcar/mix.c
259
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/mix.c
84
static void rsnd_mix_volume_parameter(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
256
u32 rsnd_get_adinr_bit(struct rsnd_mod *mod, struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
257
u32 rsnd_get_dalign(struct rsnd_mod *mod, struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
258
u32 rsnd_get_busif_shift(struct rsnd_dai_stream *io, struct rsnd_mod *mod);
sound/soc/renesas/rcar/rsnd.h
263
int rsnd_dma_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
291
struct dma_chan* (*dma_req)(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
294
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
297
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
322
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
325
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
345
struct rsnd_dai_stream *io, struct rsnd_mod *mod);
sound/soc/renesas/rcar/rsnd.h
426
struct dma_chan *rsnd_mod_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
430
struct rsnd_dai_stream *io));
sound/soc/renesas/rcar/rsnd.h
432
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
439
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
442
#define for_each_rsnd_mod(iterator, pos, io) \
sound/soc/renesas/rcar/rsnd.h
444
(pos = rsnd_mod_next(&iterator, io, NULL, 0)); iterator++)
sound/soc/renesas/rcar/rsnd.h
445
#define for_each_rsnd_mod_arrays(iterator, pos, io, array, size) \
sound/soc/renesas/rcar/rsnd.h
447
(pos = rsnd_mod_next(&iterator, io, array, size)); iterator++)
sound/soc/renesas/rcar/rsnd.h
448
#define for_each_rsnd_mod_array(iterator, pos, io, array) \
sound/soc/renesas/rcar/rsnd.h
449
for_each_rsnd_mod_arrays(iterator, pos, io, array, ARRAY_SIZE(array))
sound/soc/renesas/rcar/rsnd.h
460
#define rsnd_runtime_channel_original(io) \
sound/soc/renesas/rcar/rsnd.h
461
rsnd_runtime_channel_original_with_params(io, NULL)
sound/soc/renesas/rcar/rsnd.h
462
int rsnd_runtime_channel_original_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
464
#define rsnd_runtime_channel_after_ctu(io) \
sound/soc/renesas/rcar/rsnd.h
465
rsnd_runtime_channel_after_ctu_with_params(io, NULL)
sound/soc/renesas/rcar/rsnd.h
466
int rsnd_runtime_channel_after_ctu_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
468
#define rsnd_runtime_channel_for_ssi(io) \
sound/soc/renesas/rcar/rsnd.h
469
rsnd_runtime_channel_for_ssi_with_params(io, NULL)
sound/soc/renesas/rcar/rsnd.h
470
int rsnd_runtime_channel_for_ssi_with_params(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
472
int rsnd_runtime_is_multi_ssi(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
473
int rsnd_runtime_is_tdm(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
474
int rsnd_runtime_is_tdm_split(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
512
#define rsnd_io_to_mod(io, i) ((i) < RSND_MOD_MAX ? (io)->mod[(i)] : NULL)
sound/soc/renesas/rcar/rsnd.h
513
#define rsnd_io_to_mod_ssi(io) rsnd_io_to_mod((io), RSND_MOD_SSI)
sound/soc/renesas/rcar/rsnd.h
514
#define rsnd_io_to_mod_ssiu(io) rsnd_io_to_mod((io), RSND_MOD_SSIU)
sound/soc/renesas/rcar/rsnd.h
515
#define rsnd_io_to_mod_ssip(io) rsnd_io_to_mod((io), RSND_MOD_SSIP)
sound/soc/renesas/rcar/rsnd.h
516
#define rsnd_io_to_mod_src(io) rsnd_io_to_mod((io), RSND_MOD_SRC)
sound/soc/renesas/rcar/rsnd.h
517
#define rsnd_io_to_mod_ctu(io) rsnd_io_to_mod((io), RSND_MOD_CTU)
sound/soc/renesas/rcar/rsnd.h
518
#define rsnd_io_to_mod_mix(io) rsnd_io_to_mod((io), RSND_MOD_MIX)
sound/soc/renesas/rcar/rsnd.h
519
#define rsnd_io_to_mod_dvc(io) rsnd_io_to_mod((io), RSND_MOD_DVC)
sound/soc/renesas/rcar/rsnd.h
520
#define rsnd_io_to_mod_cmd(io) rsnd_io_to_mod((io), RSND_MOD_CMD)
sound/soc/renesas/rcar/rsnd.h
521
#define rsnd_io_to_rdai(io) ((io)->rdai)
sound/soc/renesas/rcar/rsnd.h
522
#define rsnd_io_to_priv(io) (rsnd_rdai_to_priv(rsnd_io_to_rdai(io)))
sound/soc/renesas/rcar/rsnd.h
523
#define rsnd_io_is_play(io) (&rsnd_io_to_rdai(io)->playback == io)
sound/soc/renesas/rcar/rsnd.h
524
#define rsnd_io_to_runtime(io) ((io)->substream ? \
sound/soc/renesas/rcar/rsnd.h
525
(io)->substream->runtime : NULL)
sound/soc/renesas/rcar/rsnd.h
526
#define rsnd_io_converted_rate(io) ((io)->converted_rate)
sound/soc/renesas/rcar/rsnd.h
527
#define rsnd_io_converted_chan(io) ((io)->converted_chan)
sound/soc/renesas/rcar/rsnd.h
528
int rsnd_io_is_working(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
580
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
604
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
608
struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
721
int (*accept)(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
722
void (*update)(struct rsnd_dai_stream *io, struct rsnd_mod *mod);
sound/soc/renesas/rcar/rsnd.h
723
struct rsnd_dai_stream *io;
sound/soc/renesas/rcar/rsnd.h
744
int rsnd_kctrl_accept_anytime(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
748
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
751
int (*accept)(struct rsnd_dai_stream *io),
sound/soc/renesas/rcar/rsnd.h
752
void (*update)(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
759
#define rsnd_kctrl_new_m(mod, io, rtd, name, accept, update, cfg, size, max) \
sound/soc/renesas/rcar/rsnd.h
760
rsnd_kctrl_new(mod, io, rtd, name, accept, update, rsnd_kctrl_init_m(cfg), \
sound/soc/renesas/rcar/rsnd.h
763
#define rsnd_kctrl_new_s(mod, io, rtd, name, accept, update, cfg, max) \
sound/soc/renesas/rcar/rsnd.h
764
rsnd_kctrl_new(mod, io, rtd, name, accept, update, rsnd_kctrl_init_s(cfg), \
sound/soc/renesas/rcar/rsnd.h
767
#define rsnd_kctrl_new_e(mod, io, rtd, name, accept, update, cfg, texts, size) \
sound/soc/renesas/rcar/rsnd.h
768
rsnd_kctrl_new(mod, io, rtd, name, accept, update, rsnd_kctrl_init_s(cfg), \
sound/soc/renesas/rcar/rsnd.h
781
int rsnd_ssi_use_busif(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
782
u32 rsnd_ssi_multi_secondaries_runtime(struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/rsnd.h
785
#define rsnd_ssi_is_pin_sharing(io) \
sound/soc/renesas/rcar/rsnd.h
786
__rsnd_ssi_is_pin_sharing(rsnd_io_to_mod_ssi(io))
sound/soc/renesas/rcar/rsnd.h
799
int rsnd_ssiu_attach(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
816
#define rsnd_src_get_in_rate(priv, io) rsnd_src_get_rate(priv, io, 1)
sound/soc/renesas/rcar/rsnd.h
817
#define rsnd_src_get_out_rate(priv, io) rsnd_src_get_rate(priv, io, 0)
sound/soc/renesas/rcar/rsnd.h
819
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/rsnd.h
869
int rsnd_cmd_attach(struct rsnd_dai_stream *io, int id);
sound/soc/renesas/rcar/src.c
102
return rsnd_io_converted_rate(io);
sound/soc/renesas/rcar/src.c
107
convert_rate = rsnd_io_converted_rate(io);
sound/soc/renesas/rcar/src.c
116
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
119
struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io);
sound/soc/renesas/rcar/src.c
120
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
122
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/src.c
140
rate = rsnd_src_convert_rate(io, src_mod);
sound/soc/renesas/rcar/src.c
202
static void rsnd_src_set_convert_rate(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
205
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
218
fin = rsnd_src_get_in_rate(priv, io);
sound/soc/renesas/rcar/src.c
219
fout = rsnd_src_get_out_rate(priv, io);
sound/soc/renesas/rcar/src.c
262
static void rsnd_src_init_convert_rate(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
265
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
268
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/src.c
283
fin = rsnd_src_get_in_rate(priv, io);
sound/soc/renesas/rcar/src.c
284
fout = rsnd_src_get_out_rate(priv, io);
sound/soc/renesas/rcar/src.c
286
chan = rsnd_runtime_channel_original(io);
sound/soc/renesas/rcar/src.c
306
adinr = rsnd_get_adinr_bit(mod, io) | chan;
sound/soc/renesas/rcar/src.c
321
route |= rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/src.c
379
tmp = rsnd_get_busif_shift(io, mod);
sound/soc/renesas/rcar/src.c
396
rsnd_mod_write(mod, SRC_BUSIF_DALIGN, rsnd_get_dalign(mod, io));
sound/soc/renesas/rcar/src.c
398
rsnd_adg_set_src_timesel_gen2(mod, io, fin, fout);
sound/soc/renesas/rcar/src.c
401
rsnd_src_set_convert_rate(io, mod);
sound/soc/renesas/rcar/src.c
410
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
487
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
497
val = (rsnd_io_to_mod_dvc(io) && !rsnd_src_sync_is_enabled(mod)) ?
sound/soc/renesas/rcar/src.c
506
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
515
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
531
rsnd_src_init_convert_rate(io, mod);
sound/soc/renesas/rcar/src.c
539
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
556
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/src.c
563
if (!rsnd_io_is_working(io))
sound/soc/renesas/rcar/src.c
573
snd_pcm_stop_xrun(io->substream);
sound/soc/renesas/rcar/src.c
585
static int rsnd_src_kctrl_accept_runtime(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/src.c
587
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/src.c
590
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/src.c
602
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
624
ret = rsnd_dma_attach(io, mod, &src->dma);
sound/soc/renesas/rcar/src.c
630
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
644
if (rsnd_io_to_mod_cmd(io) && !rsnd_io_is_play(io))
sound/soc/renesas/rcar/src.c
650
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/src.c
651
rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/src.c
660
ret = rsnd_kctrl_new_s(mod, io, rtd,
sound/soc/renesas/rcar/src.c
661
rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/src.c
673
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
80
static struct dma_chan *rsnd_src_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
84
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/src.c
91
static u32 rsnd_src_convert_rate(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/src.c
94
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
1005
static struct dma_chan *rsnd_ssi_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
1009
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/ssi.c
1023
if (rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/ssi.c
1034
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
1037
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
1046
seq_printf(m, "multi secondary: %d\n", rsnd_ssi_is_multi_secondary(mod, io));
sound/soc/renesas/rcar/ssi.c
1047
seq_printf(m, "tdm: %d, %d\n", rsnd_runtime_is_tdm(io),
sound/soc/renesas/rcar/ssi.c
1048
rsnd_runtime_is_tdm_split(io));
sound/soc/renesas/rcar/ssi.c
1086
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
1088
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
1101
if (!rsnd_io_to_mod(io, type)) {
sound/soc/renesas/rcar/ssi.c
1102
rsnd_dai_connect(mod, io, type);
sound/soc/renesas/rcar/ssi.c
115
#define rsnd_ssi_is_parent(ssi, io) ((ssi) == rsnd_io_to_mod_ssip(io))
sound/soc/renesas/rcar/ssi.c
116
#define rsnd_ssi_is_multi_secondary(mod, io) \
sound/soc/renesas/rcar/ssi.c
117
(rsnd_ssi_multi_secondaries(io) & (1 << rsnd_mod_id(mod)))
sound/soc/renesas/rcar/ssi.c
118
#define rsnd_ssi_is_run_mods(mod, io) \
sound/soc/renesas/rcar/ssi.c
119
(rsnd_ssi_run_mods(io) & (1 << rsnd_mod_id(mod)))
sound/soc/renesas/rcar/ssi.c
122
int rsnd_ssi_use_busif(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
124
struct rsnd_mod *mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssi.c
133
if (rsnd_io_to_mod_src(io))
sound/soc/renesas/rcar/ssi.c
168
static u32 rsnd_ssi_multi_secondaries(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
179
struct rsnd_mod *mod = rsnd_io_to_mod(io, types[i]);
sound/soc/renesas/rcar/ssi.c
190
static u32 rsnd_ssi_run_mods(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
192
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssi.c
193
struct rsnd_mod *ssi_parent_mod = rsnd_io_to_mod_ssip(io);
sound/soc/renesas/rcar/ssi.c
196
mods = rsnd_ssi_multi_secondaries_runtime(io) |
sound/soc/renesas/rcar/ssi.c
205
u32 rsnd_ssi_multi_secondaries_runtime(struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
207
if (rsnd_runtime_is_multi_ssi(io))
sound/soc/renesas/rcar/ssi.c
208
return rsnd_ssi_multi_secondaries(io);
sound/soc/renesas/rcar/ssi.c
267
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
269
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/ssi.c
271
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
273
int chan = rsnd_runtime_channel_for_ssi(io);
sound/soc/renesas/rcar/ssi.c
276
unsigned int rate = rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/ssi.c
277
rsnd_src_get_out_rate(priv, io) :
sound/soc/renesas/rcar/ssi.c
278
rsnd_src_get_in_rate(priv, io);
sound/soc/renesas/rcar/ssi.c
286
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
289
if (rsnd_runtime_is_tdm_split(io))
sound/soc/renesas/rcar/ssi.c
290
chan = rsnd_io_converted_chan(io);
sound/soc/renesas/rcar/ssi.c
345
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
347
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
367
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
369
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
372
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
380
is_tdm = rsnd_runtime_is_tdm(io);
sound/soc/renesas/rcar/ssi.c
381
is_tdm_split = rsnd_runtime_is_tdm_split(io);
sound/soc/renesas/rcar/ssi.c
413
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
416
if (rsnd_io_is_play(io))
sound/soc/renesas/rcar/ssi.c
474
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
480
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
483
ret = rsnd_ssi_master_clk_start(mod, io);
sound/soc/renesas/rcar/ssi.c
493
rsnd_ssi_config_init(mod, io);
sound/soc/renesas/rcar/ssi.c
504
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
510
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
518
rsnd_ssi_master_clk_stop(mod, io);
sound/soc/renesas/rcar/ssi.c
534
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
538
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
542
struct rsnd_priv *priv = rsnd_io_to_priv(io);
sound/soc/renesas/rcar/ssi.c
553
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
558
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
565
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssi.c
572
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
586
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
592
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
595
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
606
if (rsnd_io_is_play(io)) {
sound/soc/renesas/rcar/ssi.c
614
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssi.c
630
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
638
is_tdm = rsnd_runtime_is_tdm(io);
sound/soc/renesas/rcar/ssi.c
639
is_tdm_split = rsnd_runtime_is_tdm_split(io);
sound/soc/renesas/rcar/ssi.c
644
if (rsnd_ssi_is_parent(mod, io))
sound/soc/renesas/rcar/ssi.c
647
if (!rsnd_ssi_is_run_mods(mod, io))
sound/soc/renesas/rcar/ssi.c
672
struct rsnd_dai_stream *io);
sound/soc/renesas/rcar/ssi.c
674
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
686
if (!rsnd_io_is_working(io))
sound/soc/renesas/rcar/ssi.c
693
elapsed = rsnd_ssi_pio_interrupt(mod, io);
sound/soc/renesas/rcar/ssi.c
709
snd_pcm_period_elapsed(io->substream);
sound/soc/renesas/rcar/ssi.c
712
snd_pcm_stop_xrun(io->substream);
sound/soc/renesas/rcar/ssi.c
726
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
755
return &io->parent_ssi_status;
sound/soc/renesas/rcar/ssi.c
757
return rsnd_mod_get_status(mod, io, type);
sound/soc/renesas/rcar/ssi.c
764
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
766
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssi.c
775
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
782
rsnd_dai_connect(rsnd_ssi_mod_get(priv, 0), io, RSND_MOD_SSIP);
sound/soc/renesas/rcar/ssi.c
785
rsnd_dai_connect(rsnd_ssi_mod_get(priv, 3), io, RSND_MOD_SSIP);
sound/soc/renesas/rcar/ssi.c
788
rsnd_dai_connect(rsnd_ssi_mod_get(priv, 7), io, RSND_MOD_SSIP);
sound/soc/renesas/rcar/ssi.c
794
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
802
rsnd_ssi_parent_attach(mod, io);
sound/soc/renesas/rcar/ssi.c
808
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
819
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
851
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
855
struct rsnd_mod *pure_ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssi.c
875
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssi.c
877
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
892
if (rsnd_io_is_play(io))
sound/soc/renesas/rcar/ssi.c
918
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
921
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
924
if (!rsnd_ssi_is_parent(mod, io)) {
sound/soc/renesas/rcar/ssi.c
932
return rsnd_ssi_init(mod, io, priv);
sound/soc/renesas/rcar/ssi.c
936
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
940
struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io);
sound/soc/renesas/rcar/ssi.c
963
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssi.c
972
if (rsnd_ssi_is_multi_secondary(mod, io))
sound/soc/renesas/rcar/ssi.c
975
ret = rsnd_ssi_common_probe(mod, io, priv);
sound/soc/renesas/rcar/ssi.c
980
ret = rsnd_dma_attach(io, mod, &io->dma);
sound/soc/renesas/rcar/ssi.c
986
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
133
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
143
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
146
struct rsnd_dai *rdai = rsnd_io_to_rdai(io);
sound/soc/renesas/rcar/ssiu.c
147
u32 ssis = rsnd_ssi_multi_secondaries_runtime(io);
sound/soc/renesas/rcar/ssiu.c
148
int use_busif = rsnd_ssi_use_busif(io);
sound/soc/renesas/rcar/ssiu.c
173
if (rsnd_ssi_is_pin_sharing(io)) {
sound/soc/renesas/rcar/ssiu.c
227
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
244
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
248
u32 has_hdmi0 = rsnd_flags_has(io, RSND_STREAM_HDMI0);
sound/soc/renesas/rcar/ssiu.c
249
u32 has_hdmi1 = rsnd_flags_has(io, RSND_STREAM_HDMI1);
sound/soc/renesas/rcar/ssiu.c
253
ret = rsnd_ssiu_init(mod, io, priv);
sound/soc/renesas/rcar/ssiu.c
264
if (rsnd_runtime_is_tdm(io))
sound/soc/renesas/rcar/ssiu.c
266
else if (rsnd_runtime_is_tdm_split(io))
sound/soc/renesas/rcar/ssiu.c
271
if (rsnd_ssi_use_busif(io)) {
sound/soc/renesas/rcar/ssiu.c
287
rsnd_get_adinr_bit(mod, io) |
sound/soc/renesas/rcar/ssiu.c
288
(rsnd_io_is_play(io) ?
sound/soc/renesas/rcar/ssiu.c
289
rsnd_runtime_channel_after_ctu(io) :
sound/soc/renesas/rcar/ssiu.c
290
rsnd_runtime_channel_original(io)));
sound/soc/renesas/rcar/ssiu.c
292
rsnd_get_busif_shift(io, mod) | 1);
sound/soc/renesas/rcar/ssiu.c
294
rsnd_get_dalign(mod, io));
sound/soc/renesas/rcar/ssiu.c
303
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssiu.c
317
for_each_rsnd_mod_array(i, pos, io, rsnd_ssi_array) {
sound/soc/renesas/rcar/ssiu.c
334
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
339
if (!rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/ssiu.c
344
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssiu.c
351
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
357
if (!rsnd_ssi_use_busif(io))
sound/soc/renesas/rcar/ssiu.c
365
if (rsnd_ssi_multi_secondaries_runtime(io))
sound/soc/renesas/rcar/ssiu.c
387
static struct dma_chan *rsnd_ssiu_dma_req(struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
391
int is_play = rsnd_io_is_play(io);
sound/soc/renesas/rcar/ssiu.c
413
struct rsnd_dai_stream *io,
sound/soc/renesas/rcar/ssiu.c
444
struct rsnd_dai_stream *io)
sound/soc/renesas/rcar/ssiu.c
446
struct rsnd_mod *ssi_mod = rsnd_io_to_mod_ssi(io);
sound/soc/renesas/rcar/ssiu.c
463
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
268
} io;
tools/lib/api/fs/fs.c
350
struct io io;
tools/lib/api/fs/fs.c
354
io.fd = open(filename, O_RDONLY);
tools/lib/api/fs/fs.c
355
if (io.fd < 0)
tools/lib/api/fs/fs.c
357
io__init(&io, io.fd, bf, sizeof(bf));
tools/lib/api/fs/fs.c
359
err = io__getdelim(&io, buf, sizep, /*delim=*/-1);
tools/lib/api/fs/fs.c
365
close(io.fd);
tools/lib/api/fs/fs.c
450
struct io io;
tools/lib/api/fs/fs.c
460
io.fd = open(path, O_RDONLY);
tools/lib/api/fs/fs.c
461
if (io.fd < 0)
tools/lib/api/fs/fs.c
464
io__init(&io, io.fd, bf, sizeof(bf));
tools/lib/api/fs/fs.c
465
switch (io__get_char(&io)) {
tools/lib/api/fs/fs.c
479
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
76
close(io.fd);
tools/perf/builtin-ftrace.c
1427
struct io io;
tools/perf/builtin-ftrace.c
1482
io__init(&io, trace_fd, buf, sizeof(buf));
tools/perf/builtin-ftrace.c
1483
io.timeout_ms = -1;
tools/perf/builtin-ftrace.c
1485
while (!done && !io.eof) {
tools/perf/builtin-ftrace.c
1486
if (io__getline(&io, &line, &line_len) < 0)
tools/perf/builtin-ftrace.c
1504
io.timeout_ms = 0;
tools/perf/builtin-ftrace.c
1505
while (!io.eof) {
tools/perf/builtin-ftrace.c
1506
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
100
ch = io__get_char(&io);
tools/perf/tests/tests-scripts.c
108
ch = io__get_char(&io);
tools/perf/tests/tests-scripts.c
113
close(io.fd);
tools/perf/tests/tests-scripts.c
116
close(io.fd);
tools/perf/tests/tests-scripts.c
80
struct io io;
tools/perf/tests/tests-scripts.c
84
io__init(&io, openat(dir_fd, name, O_RDONLY), buf, sizeof(buf));
tools/perf/tests/tests-scripts.c
85
if (io.fd < 0)
tools/perf/tests/tests-scripts.c
89
if (io__get_char(&io) != '#')
tools/perf/tests/tests-scripts.c
91
if (io__get_char(&io) != '!')
tools/perf/tests/tests-scripts.c
94
ch = io__get_char(&io);
tools/perf/util/addr2line.c
106
struct io io;
tools/perf/util/addr2line.c
113
io__init(&io, a2l->out, buf, sizeof(buf));
tools/perf/util/addr2line.c
114
ch = io__get_char(&io);
tools/perf/util/addr2line.c
130
io__getline(&io, &output, &output_len);
tools/perf/util/addr2line.c
139
ch = io__get_char(&io);
tools/perf/util/addr2line.c
151
static int read_addr2line_record(struct io *io,
tools/perf/util/addr2line.c
187
if (io__getline(io, &line, &line_len) < 0 || !line_len)
tools/perf/util/addr2line.c
223
ch = io__get_char(io);
tools/perf/util/addr2line.c
226
ch = io__get_char(io);
tools/perf/util/addr2line.c
233
if (first && (io__getline(io, &line, &line_len) < 0 || !line_len))
tools/perf/util/addr2line.c
244
if (io__getline(io, &line, &line_len) < 0 || !line_len)
tools/perf/util/addr2line.c
300
struct io io = { .eof = false };
tools/perf/util/addr2line.c
337
io__init(&io, a2l->out, buf, sizeof(buf));
tools/perf/util/addr2line.c
338
io.timeout_ms = addr2line_timeout_ms;
tools/perf/util/addr2line.c
339
switch (read_addr2line_record(&io, cmd_a2l_style, dso_name, addr, /*first=*/true,
tools/perf/util/addr2line.c
354
switch (read_addr2line_record(&io, cmd_a2l_style, dso_name,
tools/perf/util/addr2line.c
399
while ((record_status = read_addr2line_record(&io,
tools/perf/util/addr2line.c
422
if (io.eof) {
tools/perf/util/drm_pmu.c
163
struct io io;
tools/perf/util/drm_pmu.c
170
io__init(&io, openat(fdinfo_dir_fd, fd_name, O_RDONLY), buf, sizeof(buf));
tools/perf/util/drm_pmu.c
171
if (io.fd == -1) {
tools/perf/util/drm_pmu.c
176
while (io__getline(&io, &line, &line_len) > 0) {
tools/perf/util/drm_pmu.c
248
if (io.fd != -1)
tools/perf/util/drm_pmu.c
249
close(io.fd);
tools/perf/util/drm_pmu.c
582
struct io io;
tools/perf/util/drm_pmu.c
587
io__init(&io, openat(fdinfo_dir_fd, fd_name, O_RDONLY), buf, sizeof(buf));
tools/perf/util/drm_pmu.c
588
if (io.fd == -1) {
tools/perf/util/drm_pmu.c
592
while (io__getline(&io, &line, &line_len) > 0) {
tools/perf/util/drm_pmu.c
607
close(io.fd);
tools/perf/util/hwmon_pmu.c
724
struct io io;
tools/perf/util/hwmon_pmu.c
744
io__init(&io, name_fd, buf2, sizeof(buf2));
tools/perf/util/hwmon_pmu.c
745
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
2538
static union perf_event *__synthesize_schedstat_cpu(struct io *io, __u16 version,
tools/perf/util/synthetic-events.c
2558
if (io__get_char(io) != 'p' || io__get_char(io) != 'u')
tools/perf/util/synthetic-events.c
2561
if (io__get_dec(io, (__u64 *)cpu) != ' ')
tools/perf/util/synthetic-events.c
2567
ch = io__get_dec(io, &_tmp); \
tools/perf/util/synthetic-events.c
2591
static union perf_event *__synthesize_schedstat_domain(struct io *io, __u16 version,
tools/perf/util/synthetic-events.c
2600
if (io__get_char(io) != 'o' || io__get_char(io) != 'm' || io__get_char(io) != 'a' ||
tools/perf/util/synthetic-events.c
2601
io__get_char(io) != 'i' || io__get_char(io) != 'n')
tools/perf/util/synthetic-events.c
2604
ch = io__get_dec(io, &d_num);
tools/perf/util/synthetic-events.c
2607
while (io__get_char(io) != ' ')
tools/perf/util/synthetic-events.c
2612
while (io__get_char(io) != ' ')
tools/perf/util/synthetic-events.c
2629
ch = io__get_dec(io, &_tmp); \
tools/perf/util/synthetic-events.c
2665
struct io io;
tools/perf/util/synthetic-events.c
2670
io.fd = open(path, O_RDONLY, 0);
tools/perf/util/synthetic-events.c
2671
if (io.fd < 0) {
tools/perf/util/synthetic-events.c
2675
io__init(&io, io.fd, bf, sizeof(bf));
tools/perf/util/synthetic-events.c
2677
if (io__getline(&io, &line, &line_len) < 0 || !line_len)
tools/perf/util/synthetic-events.c
2691
if (io__getline(&io, &line, &line_len) < 0 || !line_len)
tools/perf/util/synthetic-events.c
2699
for (ch = io__get_char(&io); !io.eof; ch = io__get_char(&io)) {
tools/perf/util/synthetic-events.c
2703
event = __synthesize_schedstat_cpu(&io, version,
tools/perf/util/synthetic-events.c
2706
event = __synthesize_schedstat_domain(&io, version,
tools/perf/util/synthetic-events.c
2730
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
112
static bool read_until_char(struct io *io, char e)
tools/perf/util/tool_pmu.c
117
c = io__get_char(io);
tools/perf/util/tool_pmu.c
127
struct io io;
tools/perf/util/tool_pmu.c
130
io__init(&io, fd, buf, sizeof(buf));
tools/perf/util/tool_pmu.c
134
if (!read_until_char(&io, '\n'))
tools/perf/util/tool_pmu.c
138
if (io__get_char(&io) != 'c') return -EINVAL;
tools/perf/util/tool_pmu.c
139
if (io__get_char(&io) != 'p') return -EINVAL;
tools/perf/util/tool_pmu.c
140
if (io__get_char(&io) != 'u') return -EINVAL;
tools/perf/util/tool_pmu.c
143
if (!read_until_char(&io, ' '))
tools/perf/util/tool_pmu.c
148
if (io__get_dec(&io, val) != ' ')
tools/perf/util/tool_pmu.c
160
struct io io;
tools/perf/util/tool_pmu.c
163
io__init(&io, fd, buf, sizeof(buf));
tools/perf/util/tool_pmu.c
164
if (io__get_dec(&io, val) != ' ')
tools/perf/util/tool_pmu.c
170
if (io__get_char(&io) != '(' || !read_until_char(&io, ')'))
tools/perf/util/tool_pmu.c
176
if (io__get_char(&io) != ' ' || io__get_char(&io) == -1)
tools/perf/util/tool_pmu.c
182
if (io__get_char(&io) != ' ')
tools/perf/util/tool_pmu.c
187
c = io__get_dec(&io, val);
tools/perf/util/tool_pmu.c
192
c = io__get_dec(&io, val);
tools/testing/selftests/bpf/prog_tests/token.c
149
struct iovec io = {
tools/testing/selftests/bpf/prog_tests/token.c
158
msg.msg_iov = &io;
tools/testing/selftests/bpf/prog_tests/token.c
184
struct iovec io = {
tools/testing/selftests/bpf/prog_tests/token.c
193
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
uint32_t 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
*(uint32_t *)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, uint32_t 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 = *(uint32_t *)((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
*(uint64_t *)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/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
141
struct iovec io = {
tools/testing/selftests/landlock/common.h
146
.msg_iov = &io,
tools/testing/selftests/landlock/common.h
175
struct iovec io = {
tools/testing/selftests/landlock/common.h
180
.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
135
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/file_backed.c
138
io->result = cqe->res;
tools/testing/selftests/ublk/file_backed.c
146
if (!io->result || data_len < io->result)
tools/testing/selftests/ublk/file_backed.c
147
io->result = data_len;
tools/testing/selftests/ublk/file_backed.c
152
io->tgt_ios += 1;
tools/testing/selftests/ublk/file_backed.c
155
ublk_complete_io(t, q, tag, io->result);
tools/testing/selftests/ublk/file_backed.c
37
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/file_backed.c
41
void *addr = io->buf_addr;
tools/testing/selftests/ublk/file_backed.c
48
io->integrity_buf,
tools/testing/selftests/ublk/kublk.c
654
static void ublk_user_copy(const struct ublk_io *io, __u8 match_ublk_op)
tools/testing/selftests/ublk/kublk.c
656
const struct ublk_queue *q = ublk_io_to_queue(io);
tools/testing/selftests/ublk/kublk.c
657
const struct ublksrv_io_desc *iod = ublk_get_iod(q, io->tag);
tools/testing/selftests/ublk/kublk.c
658
__u64 off = ublk_user_copy_offset(q->q_id, io->tag);
tools/testing/selftests/ublk/kublk.c
661
void *addr = io->buf_addr;
tools/testing/selftests/ublk/kublk.c
686
off = ublk_user_copy_offset(q->q_id, io->tag);
tools/testing/selftests/ublk/kublk.c
689
copied = pread(q->ublk_fd, io->integrity_buf, len, off);
tools/testing/selftests/ublk/kublk.c
691
copied = pwrite(q->ublk_fd, io->integrity_buf, len, off);
tools/testing/selftests/ublk/kublk.c
697
int ublk_queue_io_cmd(struct ublk_thread *t, struct ublk_io *io)
tools/testing/selftests/ublk/kublk.c
699
struct ublk_queue *q = ublk_io_to_queue(io);
tools/testing/selftests/ublk/kublk.c
706
if (!(io->flags & UBLKS_IO_FREE))
tools/testing/selftests/ublk/kublk.c
713
if (!(io->flags &
tools/testing/selftests/ublk/kublk.c
717
if (io->flags & UBLKS_IO_NEED_GET_DATA)
tools/testing/selftests/ublk/kublk.c
719
else if (io->flags & UBLKS_IO_NEED_COMMIT_RQ_COMP) {
tools/testing/selftests/ublk/kublk.c
721
ublk_user_copy(io, UBLK_IO_OP_READ);
tools/testing/selftests/ublk/kublk.c
724
} else if (io->flags & UBLKS_IO_NEED_FETCH_RQ)
tools/testing/selftests/ublk/kublk.c
733
__func__, t->idx, io->tag);
tools/testing/selftests/ublk/kublk.c
740
cmd->result = io->result;
tools/testing/selftests/ublk/kublk.c
751
cmd->tag = io->tag;
tools/testing/selftests/ublk/kublk.c
754
cmd->addr = (__u64) (uintptr_t) io->buf_addr;
tools/testing/selftests/ublk/kublk.c
759
ublk_set_auto_buf_reg(t, q, sqe[0], io->tag);
tools/testing/selftests/ublk/kublk.c
761
user_data = build_user_data(io->tag, _IOC_NR(cmd_op), 0, q->q_id, 0);
tools/testing/selftests/ublk/kublk.c
764
io->flags = 0;
tools/testing/selftests/ublk/kublk.c
769
__func__, t->idx, q->q_id, io->tag, cmd_op,
tools/testing/selftests/ublk/kublk.c
770
io->flags, !!(t->state & UBLKS_T_STOPPING));
tools/testing/selftests/ublk/kublk.c
777
struct ublk_io *io;
tools/testing/selftests/ublk/kublk.c
797
io = &q->ios[tag];
tools/testing/selftests/ublk/kublk.c
798
io->buf_index = j++;
tools/testing/selftests/ublk/kublk.c
799
ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.c
808
io = &q->ios[i];
tools/testing/selftests/ublk/kublk.c
809
io->buf_index = i;
tools/testing/selftests/ublk/kublk.c
810
ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.c
846
struct ublk_io *io = &q->ios[tag];
tools/testing/selftests/ublk/kublk.c
852
io->flags &= ~UBLKS_IO_NEED_FETCH_RQ;
tools/testing/selftests/ublk/kublk.c
859
ublk_user_copy(io, UBLK_IO_OP_WRITE);
tools/testing/selftests/ublk/kublk.c
864
io->flags |= UBLKS_IO_NEED_GET_DATA | UBLKS_IO_FREE;
tools/testing/selftests/ublk/kublk.c
865
ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.c
875
io->flags = UBLKS_IO_FREE;
tools/testing/selftests/ublk/kublk.h
265
extern int ublk_queue_io_cmd(struct ublk_thread *t, struct ublk_io *io);
tools/testing/selftests/ublk/kublk.h
369
static inline struct ublk_queue *ublk_io_to_queue(const struct ublk_io *io)
tools/testing/selftests/ublk/kublk.h
371
return container_of(io, struct ublk_queue, ios[io->tag]);
tools/testing/selftests/ublk/kublk.h
452
static inline void ublk_mark_io_done(struct ublk_io *io, int res)
tools/testing/selftests/ublk/kublk.h
454
io->flags |= (UBLKS_IO_NEED_COMMIT_RQ_COMP | UBLKS_IO_FREE);
tools/testing/selftests/ublk/kublk.h
455
io->result = res;
tools/testing/selftests/ublk/kublk.h
492
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/kublk.h
496
return --io->tgt_ios == 0;
tools/testing/selftests/ublk/kublk.h
581
struct ublk_io *io = &q->ios[tag];
tools/testing/selftests/ublk/kublk.h
583
ublk_mark_io_done(io, res);
tools/testing/selftests/ublk/kublk.h
584
return ublk_queue_io_cmd(t, io);
tools/testing/selftests/ublk/kublk.h
594
struct ublk_io *io = ublk_get_io(q, tag);
tools/testing/selftests/ublk/kublk.h
597
io->tgt_ios = queued;
tools/testing/selftests/ublk/kublk.h
598
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));