Home
last modified time | relevance | path

Searched full:iop (Results 1 – 25 of 109) sorted by relevance

12345

/openbmc/linux/lib/
H A Dirq_poll.c21 * @iop: The parent iopoll structure
27 void irq_poll_sched(struct irq_poll *iop) in irq_poll_sched() argument
31 if (test_bit(IRQ_POLL_F_DISABLE, &iop->state)) in irq_poll_sched()
33 if (test_and_set_bit(IRQ_POLL_F_SCHED, &iop->state)) in irq_poll_sched()
37 list_add_tail(&iop->list, this_cpu_ptr(&blk_cpu_iopoll)); in irq_poll_sched()
44 * __irq_poll_complete - Mark this @iop as un-polled again
45 * @iop: The parent iopoll structure
51 static void __irq_poll_complete(struct irq_poll *iop) in __irq_poll_complete() argument
53 list_del(&iop->list); in __irq_poll_complete()
55 clear_bit_unlock(IRQ_POLL_F_SCHED, &iop->state); in __irq_poll_complete()
[all …]
/openbmc/linux/arch/m68k/mac/
H A Diop.c2 * I/O Processor (IOP) management
16 * The IOP chips are used in the IIfx and some Quadras (900, 950) to manage
19 * 990429 (jmt) - Initial implementation, just enough to knock the SCC IOP
22 * 990603 (jmt) - Added code to grab the correct ISM IOP interrupt for OSS
26 * 990605 (jmt) - Rearranged things a bit wrt IOP detection; iop_present is
27 * gone, IOP base addresses are now in an array and the
28 * globally-visible functions take an IOP number instead of
33 * IOP. The trick now is figuring out the message formats.
41 * unsolicited messages from the IOP (and our replies to them
45 * 990729 (jmt) - Added passing of pt_regs structure to IOP handlers. This is
[all …]
/openbmc/linux/drivers/md/bcache/
H A Drequest.c482 struct data_insert_op iop; member
499 s->iop.status = bio->bi_status; in bch_cache_read_endio()
501 ptr_stale(s->iop.c, &b->key, 0)) { in bch_cache_read_endio()
502 atomic_long_inc(&s->iop.c->cache_read_races); in bch_cache_read_endio()
503 s->iop.status = BLK_STS_IOERR; in bch_cache_read_endio()
506 bch_bbio_endio(s->iop.c, bio, bio->bi_status, "reading from cache"); in bch_cache_read_endio()
520 if (bkey_cmp(k, &KEY(s->iop.inode, bio->bi_iter.bi_sector, 0)) <= 0) in cache_lookup_fn()
523 if (KEY_INODE(k) != s->iop.inode || in cache_lookup_fn()
526 unsigned int sectors = KEY_INODE(k) == s->iop.inode in cache_lookup_fn()
557 bch_cut_front(&KEY(s->iop.inode, n->bi_iter.bi_sector, 0), bio_key); in cache_lookup_fn()
[all …]
/openbmc/linux/drivers/iommu/
H A Dio-pgtable.c41 struct io_pgtable *iop; in alloc_io_pgtable_ops() local
51 iop = fns->alloc(cfg, cookie); in alloc_io_pgtable_ops()
52 if (!iop) in alloc_io_pgtable_ops()
55 iop->fmt = fmt; in alloc_io_pgtable_ops()
56 iop->cookie = cookie; in alloc_io_pgtable_ops()
57 iop->cfg = *cfg; in alloc_io_pgtable_ops()
59 return &iop->ops; in alloc_io_pgtable_ops()
69 struct io_pgtable *iop; in free_io_pgtable_ops() local
74 iop = io_pgtable_ops_to_pgtable(ops); in free_io_pgtable_ops()
75 io_pgtable_tlb_flush_all(iop); in free_io_pgtable_ops()
[all …]
H A Dio-pgtable-dart.c34 container_of((x), struct dart_io_pgtable, iop)
68 struct io_pgtable iop; member
84 if (data->iop.fmt == APPLE_DART) in paddr_to_iopte()
99 if (data->iop.fmt == APPLE_DART) in iopte_to_paddr()
130 size_t sz = data->iop.cfg.pgsize_bitmap; in dart_init_pte()
218 if (data->iop.fmt == APPLE_DART) { in dart_prot_to_pte()
224 if (data->iop.fmt == APPLE_DART2) { in dart_prot_to_pte()
241 struct io_pgtable_cfg *cfg = &data->iop.cfg; in dart_map_pages()
302 struct io_pgtable_cfg *cfg = &data->iop.cfg; in dart_unmap_pages()
330 io_pgtable_tlb_add_page(&data->iop, gather, in dart_unmap_pages()
[all …]
H A Dio-pgtable-arm-v7s.c40 container_of((x), struct arm_v7s_io_pgtable, iop)
165 struct io_pgtable iop; member
236 return phys_to_virt(iopte_to_paddr(pte, lvl, &data->iop.cfg)); in iopte_deref()
242 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_v7s_alloc_table()
302 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_v7s_free_table()
435 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_v7s_init_pte()
501 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_v7s_map()
551 if (WARN_ON(iova >= (1ULL << data->iop.cfg.ias) || in arm_v7s_map_pages()
552 paddr >= (1ULL << data->iop.cfg.oas))) in arm_v7s_map_pages()
577 static void arm_v7s_free_pgtable(struct io_pgtable *iop) in arm_v7s_free_pgtable() argument
[all …]
H A Dio-pgtable-arm.c31 container_of((x), struct arm_lpae_io_pgtable, iop)
142 struct io_pgtable iop; member
275 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_lpae_init_pte()
279 if (data->iop.fmt != ARM_MALI_LPAE && lvl == ARM_LPAE_MAX_LEVELS - 1) in __arm_lpae_init_pte()
299 if (iopte_leaf(ptep[i], lvl, data->iop.fmt)) { in arm_lpae_init_pte()
329 struct io_pgtable_cfg *cfg = &data->iop.cfg; in arm_lpae_install_table()
363 struct io_pgtable_cfg *cfg = &data->iop.cfg; in __arm_lpae_map()
399 if (pte && !iopte_leaf(pte, lvl, data->iop.fmt)) { in __arm_lpae_map()
417 if (data->iop.fmt == ARM_64_LPAE_S1 || in arm_lpae_prot_to_pte()
418 data->iop.fmt == ARM_32_LPAE_S1) { in arm_lpae_prot_to_pte()
[all …]
/openbmc/linux/arch/powerpc/platforms/8xx/
H A Dcpm1.c157 struct cpm_ioport32e __iomem *iop; in cpm1_set_pin32() local
161 iop = (struct cpm_ioport32e __iomem *) in cpm1_set_pin32()
164 iop = (struct cpm_ioport32e __iomem *) in cpm1_set_pin32()
168 setbits32(&iop->dir, pin); in cpm1_set_pin32()
170 clrbits32(&iop->dir, pin); in cpm1_set_pin32()
173 setbits32(&iop->par, pin); in cpm1_set_pin32()
175 clrbits32(&iop->par, pin); in cpm1_set_pin32()
186 setbits32(&iop->sor, pin); in cpm1_set_pin32()
188 clrbits32(&iop->sor, pin); in cpm1_set_pin32()
199 struct cpm_ioport16 __iomem *iop = in cpm1_set_pin16() local
[all …]
/openbmc/linux/include/linux/
H A Dio-pgtable.h217 static inline void io_pgtable_tlb_flush_all(struct io_pgtable *iop) in io_pgtable_tlb_flush_all() argument
219 if (iop->cfg.tlb && iop->cfg.tlb->tlb_flush_all) in io_pgtable_tlb_flush_all()
220 iop->cfg.tlb->tlb_flush_all(iop->cookie); in io_pgtable_tlb_flush_all()
224 io_pgtable_tlb_flush_walk(struct io_pgtable *iop, unsigned long iova, in io_pgtable_tlb_flush_walk() argument
227 if (iop->cfg.tlb && iop->cfg.tlb->tlb_flush_walk) in io_pgtable_tlb_flush_walk()
228 iop->cfg.tlb->tlb_flush_walk(iova, size, granule, iop->cookie); in io_pgtable_tlb_flush_walk()
232 io_pgtable_tlb_add_page(struct io_pgtable *iop, in io_pgtable_tlb_add_page() argument
236 if (iop->cfg.tlb && iop->cfg.tlb->tlb_add_page) in io_pgtable_tlb_add_page()
237 iop->cfg.tlb->tlb_add_page(gather, iova, granule, iop->cookie); in io_pgtable_tlb_add_page()
245 * @free: Free the page tables associated with iop.
[all …]
/openbmc/linux/arch/m68k/include/asm/
H A Dmac_iop.h3 * I/O Processor (IOP) defines and structures, mostly snagged from A/UX
13 * a "struct iop" (see below) to see where the actual registers fall.
22 /* IOP status/control register bits: */
26 #define IOP_RUN 0x04 /* set to 0 to reset IOP chip */
27 #define IOP_IRQ 0x08 /* generate IRQ to IOP if 1 */
28 #define IOP_INT0 0x10 /* intr priority from IOP to host */
29 #define IOP_INT1 0x20 /* intr priority from IOP to host */
38 /* IOP reference numbers, used by the globally-visible iop_xxx functions */
43 /* IOP channel states */
50 /* IOP message status codes */
[all …]
/openbmc/linux/drivers/spi/
H A Dspi-intel.c181 const struct intel_spi_mem_op *iop,
357 const struct intel_spi_mem_op *iop, size_t len) in intel_spi_hw_cycle() argument
362 if (!iop->replacement_op) in intel_spi_hw_cycle()
370 val |= iop->replacement_op; in intel_spi_hw_cycle()
458 const struct intel_spi_mem_op *iop, in intel_spi_read_reg() argument
472 ret = intel_spi_hw_cycle(ispi, iop, nbytes); in intel_spi_read_reg()
481 const struct intel_spi_mem_op *iop, in intel_spi_write_reg() argument
538 return intel_spi_hw_cycle(ispi, iop, nbytes); in intel_spi_write_reg()
542 const struct intel_spi_mem_op *iop, in intel_spi_read() argument
603 const struct intel_spi_mem_op *iop, in intel_spi_write() argument
[all …]
/openbmc/linux/Documentation/scsi/
H A Dhptiop.rst11 For RR44xx Intel IOP based adapters, the controller IOP is accessed via PCI BAR0 and BAR2
36 For Intel IOP based adapters, the controller IOP is accessed via PCI BAR0:
54 For Marvell not Frey IOP based adapters, the IOP is accessed via PCI BAR0 and BAR1:
78 For Marvell Frey IOP based adapters, the IOP is accessed via PCI BAR0 and BAR1:
83 0x0 IOP configuration information.
111 A request packet can be allocated in either IOP or host memory.
119 relative to the IOP BAR0.
125 - Post the packet to IOP by writing it to inbound queue. For requests
126 allocated in IOP memory, write the offset to inbound queue port. For
130 - The IOP process the request. When the request is completed, it
[all …]
/openbmc/linux/drivers/macintosh/
H A Dadb-iop.c3 * I/O Processor (IOP) ADB Driver
52 .name = "ISM IOP",
77 * Completion routine for ADB commands sent to the IOP.
94 * Listen for ADB messages from the IOP.
96 * This will be called when unsolicited IOP messages are received.
97 * These IOP messages can carry ADB autopoll responses and also occur
112 * produced when the IOP polls devices. They are mostly timeouts. in adb_iop_listen()
151 * Start sending an ADB packet, IOP style
153 * There isn't much to do other than hand the packet over to the IOP
167 /* The IOP takes MacII-style packets, so strip the initial in adb_iop_start()
[all …]
/openbmc/linux/arch/powerpc/sysdev/
H A Dcpm_common.c111 struct cpm2_ioports __iomem *iop = mm_gc->regs; in cpm2_gpio32_save_regs() local
113 cpm2_gc->cpdata = in_be32(&iop->dat); in cpm2_gpio32_save_regs()
119 struct cpm2_ioports __iomem *iop = mm_gc->regs; in cpm2_gpio32_get() local
124 return !!(in_be32(&iop->dat) & pin_mask); in cpm2_gpio32_get()
131 struct cpm2_ioports __iomem *iop = mm_gc->regs; in __cpm2_gpio32_set() local
138 out_be32(&iop->dat, cpm2_gc->cpdata); in __cpm2_gpio32_set()
159 struct cpm2_ioports __iomem *iop = mm_gc->regs; in cpm2_gpio32_dir_out() local
165 setbits32(&iop->dir, pin_mask); in cpm2_gpio32_dir_out()
177 struct cpm2_ioports __iomem *iop = mm_gc->regs; in cpm2_gpio32_dir_in() local
183 clrbits32(&iop->dir, pin_mask); in cpm2_gpio32_dir_in()
H A Dcpm2.c320 struct cpm2_ioports __iomem *iop = in cpm2_set_pin() local
326 setbits32(&iop[port].dir, pin); in cpm2_set_pin()
328 clrbits32(&iop[port].dir, pin); in cpm2_set_pin()
331 setbits32(&iop[port].par, pin); in cpm2_set_pin()
333 clrbits32(&iop[port].par, pin); in cpm2_set_pin()
336 setbits32(&iop[port].sor, pin); in cpm2_set_pin()
338 clrbits32(&iop[port].sor, pin); in cpm2_set_pin()
341 setbits32(&iop[port].odr, pin); in cpm2_set_pin()
343 clrbits32(&iop[port].odr, pin); in cpm2_set_pin()
/openbmc/linux/drivers/iommu/amd/
H A Dio_pgtable.c165 if (address <= PM_LEVEL_SIZE(domain->iop.mode)) in increase_address_space()
169 if (WARN_ON_ONCE(domain->iop.mode == PAGE_MODE_6_LEVEL)) in increase_address_space()
172 *pte = PM_LEVEL_PDE(domain->iop.mode, iommu_virt_to_phys(domain->iop.root)); in increase_address_space()
174 domain->iop.root = pte; in increase_address_space()
175 domain->iop.mode += 1; in increase_address_space()
183 amd_iommu_domain_set_pgtable(domain, pte, domain->iop.mode); in increase_address_space()
207 while (address > PM_LEVEL_SIZE(domain->iop.mode)) { in alloc_pte()
217 level = domain->iop.mode - 1; in alloc_pte()
218 pte = &domain->iop.root[PM_LEVEL_INDEX(level, address)]; in alloc_pte()
492 static void v1_free_pgtable(struct io_pgtable *iop) in v1_free_pgtable() argument
[all …]
H A Dio_pgtable_v2.c241 struct io_pgtable_cfg *cfg = &pdom->iop.iop.cfg; in iommu_v2_map_pages()
259 pte = v2_alloc_pte(pdom->nid, pdom->iop.pgd, in iommu_v2_map_pages()
294 struct io_pgtable_cfg *cfg = &pgtable->iop.cfg; in iommu_v2_unmap_pages()
357 static void v2_free_pgtable(struct io_pgtable *iop) in v2_free_pgtable() argument
360 struct amd_io_pgtable *pgtable = container_of(iop, struct amd_io_pgtable, iop); in v2_free_pgtable()
362 pdom = container_of(pgtable, struct protection_domain, iop); in v2_free_pgtable()
394 pgtable->iop.ops.map_pages = iommu_v2_map_pages; in v2_alloc_pgtable()
395 pgtable->iop.ops.unmap_pages = iommu_v2_unmap_pages; in v2_alloc_pgtable()
396 pgtable->iop.ops.iova_to_phys = iommu_v2_iova_to_phys; in v2_alloc_pgtable()
403 return &pgtable->iop; in v2_alloc_pgtable()
/openbmc/linux/include/uapi/linux/
H A Di2o-dev.h50 unsigned int iop; /* IOP unit number */ member
55 unsigned int iop; /* IOP unit number */ member
60 unsigned int iop; /* IOP unit number */ member
66 unsigned int iop; /* IOP unit number */ member
75 unsigned int iop; /* IOP unit number */ member
86 unsigned int iop; /* IOP unit number */ member
98 unsigned int iop; member
/openbmc/linux/drivers/scsi/
H A Dhptiop.c52 req = readl(&hba->u.itl.iop->inbound_queue); in iop_wait_ready_itl()
59 writel(req, &hba->u.itl.iop->outbound_queue); in iop_wait_ready_itl()
60 readl(&hba->u.itl.iop->outbound_intstatus); in iop_wait_ready_itl()
90 while ((req = readl(&hba->u.itl.iop->outbound_queue)) != in hptiop_drain_outbound_queue_itl()
99 ((char __iomem *)hba->u.itl.iop + req); in hptiop_drain_outbound_queue_itl()
115 struct hpt_iopmu_itl __iomem *iop = hba->u.itl.iop; in iop_intr_itl() local
123 status = readl(&iop->outbound_intstatus); in iop_intr_itl()
126 u32 msg = readl(&iop->outbound_msgaddr0); in iop_intr_itl()
129 writel(IOPMU_OUTBOUND_INT_MSG0, &iop->outbound_intstatus); in iop_intr_itl()
306 writel((unsigned long)req - (unsigned long)hba->u.itl.iop, in iop_send_sync_request_itl()
[all …]
/openbmc/u-boot/include/configs/
H A DMPC8560ADS.h297 #define MDIO_DECLARE volatile ioport_t *iop = ioport_addr ( \
301 #define MDIO_ACTIVE (iop->pdir |= 0x00400000)
302 #define MDIO_TRISTATE (iop->pdir &= ~0x00400000)
303 #define MDIO_READ ((iop->pdat & 0x00400000) != 0)
305 #define MDIO(bit) if(bit) iop->pdat |= 0x00400000; \
306 else iop->pdat &= ~0x00400000
308 #define MDC(bit) if(bit) iop->pdat |= 0x00200000; \
309 else iop->pdat &= ~0x00200000
/openbmc/linux/arch/alpha/kernel/
H A Dcore_wildfire.c187 wildfire_iop *iop; in wildfire_hardware_probe() local
286 iop = WILDFIRE_iop(soft_qbb); in wildfire_hardware_probe()
290 if ((iop->iop_hose[i].init.csr & 1) == 1 && in wildfire_hardware_probe()
552 wildfire_iop *iop = WILDFIRE_iop(qbbno); in wildfire_dump_iop_regs() local
555 printk(KERN_ERR "IOP registers for QBB %d (%p)\n", qbbno, iop); in wildfire_dump_iop_regs()
557 printk(KERN_ERR " IOA_CONFIG: 0x%16lx\n", iop->ioa_config.csr); in wildfire_dump_iop_regs()
558 printk(KERN_ERR " IOD_CONFIG: 0x%16lx\n", iop->iod_config.csr); in wildfire_dump_iop_regs()
560 iop->iop_switch_credits.csr); in wildfire_dump_iop_regs()
562 iop->iop_hose_credits.csr); in wildfire_dump_iop_regs()
566 i, iop->iop_hose[i].init.csr); in wildfire_dump_iop_regs()
[all …]
/openbmc/linux/drivers/infiniband/core/
H A Dcq.c151 static int ib_poll_handler(struct irq_poll *iop, int budget) in ib_poll_handler() argument
153 struct ib_cq *cq = container_of(iop, struct ib_cq, iop); in ib_poll_handler()
159 irq_poll_complete(&cq->iop); in ib_poll_handler()
162 irq_poll_sched(&cq->iop); in ib_poll_handler()
175 irq_poll_sched(&cq->iop); in ib_cq_completion_softirq()
253 irq_poll_init(&cq->iop, IB_POLL_BUDGET_IRQ, ib_poll_handler); in __ib_alloc_cq()
331 irq_poll_disable(&cq->iop); in ib_free_cq()
/openbmc/u-boot/board/cssi/MCR3000/
H A DMCR3000.c121 iop8xx_t __iomem *iop = &immr->im_ioport; in misc_init_r() local
124 clrbits_be16(&iop->iop_pcpar, 0x4); in misc_init_r()
125 clrbits_be16(&iop->iop_pcdir, 0x4); in misc_init_r()
128 if ((in_be16(&iop->iop_pcdat) & 0x0004) == 0) in misc_init_r()
/openbmc/linux/drivers/net/fddi/skfp/h/
H A Dtargetos.h51 #define ADDR(a) (smc->hw.iop+(a))
53 …ADDR(a) (((a)>>7) ? (outp(smc->hw.iop+B0_RAP,(a)>>7), (smc->hw.iop+( ((a)&0x7F) | ((a)>>7 ? 0x80:0…
/openbmc/linux/Documentation/devicetree/bindings/timer/
H A Dhpe,gxp-timer.yaml27 const: iop
46 clock-names = "iop";

12345