Home
last modified time | relevance | path

Searched full:scb (Results 1 – 25 of 279) sorted by relevance

12345678910>>...12

/kernel/linux/linux-6.6/drivers/media/pci/cx18/
Dcx18-scb.c11 #include "cx18-scb.h"
16 cx18_memset_io(cx, cx->scb, 0, 0x10000); in cx18_init_scb()
18 cx18_writel(cx, IRQ_APU_TO_CPU, &cx->scb->apu2cpu_irq); in cx18_init_scb()
19 cx18_writel(cx, IRQ_CPU_TO_APU_ACK, &cx->scb->cpu2apu_irq_ack); in cx18_init_scb()
20 cx18_writel(cx, IRQ_HPU_TO_CPU, &cx->scb->hpu2cpu_irq); in cx18_init_scb()
21 cx18_writel(cx, IRQ_CPU_TO_HPU_ACK, &cx->scb->cpu2hpu_irq_ack); in cx18_init_scb()
22 cx18_writel(cx, IRQ_PPU_TO_CPU, &cx->scb->ppu2cpu_irq); in cx18_init_scb()
23 cx18_writel(cx, IRQ_CPU_TO_PPU_ACK, &cx->scb->cpu2ppu_irq_ack); in cx18_init_scb()
24 cx18_writel(cx, IRQ_EPU_TO_CPU, &cx->scb->epu2cpu_irq); in cx18_init_scb()
25 cx18_writel(cx, IRQ_CPU_TO_EPU_ACK, &cx->scb->cpu2epu_irq_ack); in cx18_init_scb()
[all …]
/kernel/linux/linux-5.10/drivers/media/pci/cx18/
Dcx18-scb.c11 #include "cx18-scb.h"
16 cx18_memset_io(cx, cx->scb, 0, 0x10000); in cx18_init_scb()
18 cx18_writel(cx, IRQ_APU_TO_CPU, &cx->scb->apu2cpu_irq); in cx18_init_scb()
19 cx18_writel(cx, IRQ_CPU_TO_APU_ACK, &cx->scb->cpu2apu_irq_ack); in cx18_init_scb()
20 cx18_writel(cx, IRQ_HPU_TO_CPU, &cx->scb->hpu2cpu_irq); in cx18_init_scb()
21 cx18_writel(cx, IRQ_CPU_TO_HPU_ACK, &cx->scb->cpu2hpu_irq_ack); in cx18_init_scb()
22 cx18_writel(cx, IRQ_PPU_TO_CPU, &cx->scb->ppu2cpu_irq); in cx18_init_scb()
23 cx18_writel(cx, IRQ_CPU_TO_PPU_ACK, &cx->scb->cpu2ppu_irq_ack); in cx18_init_scb()
24 cx18_writel(cx, IRQ_EPU_TO_CPU, &cx->scb->epu2cpu_irq); in cx18_init_scb()
25 cx18_writel(cx, IRQ_CPU_TO_EPU_ACK, &cx->scb->cpu2epu_irq_ack); in cx18_init_scb()
[all …]
/kernel/linux/linux-6.6/sound/pci/cs46xx/
Ddsp_spos_scb_lib.c61 struct dsp_scb_descriptor * scb = scb_info->scb_desc; in cs46xx_dsp_proc_scb_info_read() local
67 snd_iprintf(buffer,"%04x %s:\n",scb->address,scb->scb_name); in cs46xx_dsp_proc_scb_info_read()
74 snd_iprintf(buffer,"%08x ",readl(dst + (scb->address + j) * sizeof(u32))); in cs46xx_dsp_proc_scb_info_read()
79 if (scb->parent_scb_ptr != NULL) { in cs46xx_dsp_proc_scb_info_read()
81 scb->parent_scb_ptr->scb_name, in cs46xx_dsp_proc_scb_info_read()
82 scb->parent_scb_ptr->address); in cs46xx_dsp_proc_scb_info_read()
86 scb->sub_list_ptr->scb_name, in cs46xx_dsp_proc_scb_info_read()
87 scb->sub_list_ptr->address, in cs46xx_dsp_proc_scb_info_read()
88 scb->next_scb_ptr->scb_name, in cs46xx_dsp_proc_scb_info_read()
89 scb->next_scb_ptr->address, in cs46xx_dsp_proc_scb_info_read()
[all …]
/kernel/linux/linux-5.10/sound/pci/cs46xx/
Ddsp_spos_scb_lib.c61 struct dsp_scb_descriptor * scb = scb_info->scb_desc; in cs46xx_dsp_proc_scb_info_read() local
67 snd_iprintf(buffer,"%04x %s:\n",scb->address,scb->scb_name); in cs46xx_dsp_proc_scb_info_read()
74 snd_iprintf(buffer,"%08x ",readl(dst + (scb->address + j) * sizeof(u32))); in cs46xx_dsp_proc_scb_info_read()
79 if (scb->parent_scb_ptr != NULL) { in cs46xx_dsp_proc_scb_info_read()
81 scb->parent_scb_ptr->scb_name, in cs46xx_dsp_proc_scb_info_read()
82 scb->parent_scb_ptr->address); in cs46xx_dsp_proc_scb_info_read()
86 scb->sub_list_ptr->scb_name, in cs46xx_dsp_proc_scb_info_read()
87 scb->sub_list_ptr->address, in cs46xx_dsp_proc_scb_info_read()
88 scb->next_scb_ptr->scb_name, in cs46xx_dsp_proc_scb_info_read()
89 scb->next_scb_ptr->address, in cs46xx_dsp_proc_scb_info_read()
[all …]
/kernel/linux/linux-6.6/drivers/scsi/
Da100u2w.c86 static void inia100_scb_handler(struct orc_host *host, struct orc_scb *scb);
272 * orc_exec_scb - Queue an SCB with the HA
273 * @host: host adapter the SCB belongs to
274 * @scb: SCB to queue for execution
277 static void orc_exec_scb(struct orc_host * host, struct orc_scb * scb) in orc_exec_scb() argument
279 scb->status = ORCSCB_POST; in orc_exec_scb()
280 outb(scb->scbidx, host->base + ORC_PQUEUE); in orc_exec_scb()
444 struct orc_scb *scb; in setup_SCBs() local
449 /* Setup SCB base and SCB Size registers */ in setup_SCBs()
451 /* SCB base address 0 */ in setup_SCBs()
[all …]
Dips.c213 #define IPS_DMA_DIR(scb) ((!scb->scsi_cmd || ips_is_passthru(scb->scsi_cmd) || \ argument
214 DMA_NONE == scb->scsi_cmd->sc_data_direction) ? \
216 scb->scsi_cmd->sc_data_direction)
647 ips_scb_t *scb; in ips_release() local
669 scb = &ha->scbs[ha->max_cmds - 1]; in ips_release()
671 ips_init_scb(ha, scb); in ips_release()
673 scb->timeout = ips_cmd_timeout; in ips_release()
674 scb->cdb[0] = IPS_CMD_FLUSH; in ips_release()
676 scb->cmd.flush_cache.op_code = IPS_CMD_FLUSH; in ips_release()
677 scb->cmd.flush_cache.command_id = IPS_COMMAND_ID(ha, scb); in ips_release()
[all …]
Dinitio.c147 static void initio_select_atn(struct initio_host * host, struct scsi_ctrl_blk * scb);
148 static void initio_select_atn3(struct initio_host * host, struct scsi_ctrl_blk * scb);
149 static void initio_select_atn_stop(struct initio_host * host, struct scsi_ctrl_blk * scb);
649 * initio_alloc_scb - Allocate an SCB
652 * Walk the SCB list for the controller and allocate a free SCB if
657 struct scsi_ctrl_blk *scb; in initio_alloc_scb() local
661 if ((scb = host->first_avail) != NULL) { in initio_alloc_scb()
663 printk("find scb at %p\n", scb); in initio_alloc_scb()
665 if ((host->first_avail = scb->next) == NULL) in initio_alloc_scb()
667 scb->next = NULL; in initio_alloc_scb()
[all …]
Dwd719x.c23 * 1. SCSI command is transformed to SCB (Spider Control Block) by the
25 * 2. The address of the SCB is stored in a list to be able to access it, if
27 * 3. The address of the SCB is written to the Controller, which loads the SCB
189 static void wd719x_finish_cmd(struct wd719x_scb *scb, int result) in wd719x_finish_cmd() argument
191 struct scsi_cmnd *cmd = scb->cmd; in wd719x_finish_cmd()
194 list_del(&scb->list); in wd719x_finish_cmd()
196 dma_unmap_single(&wd->pdev->dev, scb->phys, in wd719x_finish_cmd()
199 dma_unmap_single(&wd->pdev->dev, scb->dma_handle, in wd719x_finish_cmd()
206 /* Build a SCB and send it to the card */
211 struct wd719x_scb *scb = scsi_cmd_priv(cmd); in wd719x_queuecommand() local
[all …]
/kernel/linux/linux-5.10/drivers/scsi/
Da100u2w.c86 static void inia100_scb_handler(struct orc_host *host, struct orc_scb *scb);
272 * orc_exec_sb - Queue an SCB with the HA
273 * @host: host adapter the SCB belongs to
274 * @scb: SCB to queue for execution
277 static void orc_exec_scb(struct orc_host * host, struct orc_scb * scb) in orc_exec_scb() argument
279 scb->status = ORCSCB_POST; in orc_exec_scb()
280 outb(scb->scbidx, host->base + ORC_PQUEUE); in orc_exec_scb()
444 struct orc_scb *scb; in setup_SCBs() local
449 /* Setup SCB base and SCB Size registers */ in setup_SCBs()
451 /* SCB base address 0 */ in setup_SCBs()
[all …]
Dips.c209 #define IPS_DMA_DIR(scb) ((!scb->scsi_cmd || ips_is_passthru(scb->scsi_cmd) || \ argument
210 DMA_NONE == scb->scsi_cmd->sc_data_direction) ? \
212 scb->scsi_cmd->sc_data_direction)
644 ips_scb_t *scb; in ips_release() local
667 scb = &ha->scbs[ha->max_cmds - 1]; in ips_release()
669 ips_init_scb(ha, scb); in ips_release()
671 scb->timeout = ips_cmd_timeout; in ips_release()
672 scb->cdb[0] = IPS_CMD_FLUSH; in ips_release()
674 scb->cmd.flush_cache.op_code = IPS_CMD_FLUSH; in ips_release()
675 scb->cmd.flush_cache.command_id = IPS_COMMAND_ID(ha, scb); in ips_release()
[all …]
Dinitio.c147 static void initio_select_atn(struct initio_host * host, struct scsi_ctrl_blk * scb);
148 static void initio_select_atn3(struct initio_host * host, struct scsi_ctrl_blk * scb);
149 static void initio_select_atn_stop(struct initio_host * host, struct scsi_ctrl_blk * scb);
650 * initio_alloc_scb - Allocate an SCB
653 * Walk the SCB list for the controller and allocate a free SCB if
658 struct scsi_ctrl_blk *scb; in initio_alloc_scb() local
662 if ((scb = host->first_avail) != NULL) { in initio_alloc_scb()
664 printk("find scb at %p\n", scb); in initio_alloc_scb()
666 if ((host->first_avail = scb->next) == NULL) in initio_alloc_scb()
668 scb->next = NULL; in initio_alloc_scb()
[all …]
/kernel/linux/linux-6.6/drivers/scsi/aic94xx/
Daic94xx_tmf.c83 struct scb *scb; \
96 scb = ascb->scb; \
97 scb->header.opcode = CLEAR_NEXUS
120 scb->clear_nexus.nexus = NEXUS_ADAPTER; in asd_clear_nexus_ha()
129 scb->clear_nexus.nexus = NEXUS_PORT; in asd_clear_nexus_port()
130 scb->clear_nexus.conn_mask = port->phy_mask; in asd_clear_nexus_port()
146 scb->clear_nexus.nexus = NEXUS_I_T; in asd_clear_nexus_I_T()
149 scb->clear_nexus.flags = EXEC_Q | SUSPEND_TX; in asd_clear_nexus_I_T()
152 scb->clear_nexus.flags = SEND_Q | NOTINQ; in asd_clear_nexus_I_T()
155 scb->clear_nexus.flags = RESUME_TX; in asd_clear_nexus_I_T()
[all …]
Daic94xx_task.c129 le64_to_cpu(ascb->scb->ssp_task.sg_element[0].bus_addr); in asd_unmap_scatterlist()
352 struct scb *scb; in asd_build_ata_ascb() local
356 scb = ascb->scb; in asd_build_ata_ascb()
359 scb->header.opcode = CONTROL_ATA_DEV; in asd_build_ata_ascb()
361 scb->header.opcode = INITIATE_ATAPI_TASK; in asd_build_ata_ascb()
363 scb->header.opcode = INITIATE_ATA_TASK; in asd_build_ata_ascb()
365 scb->ata_task.proto_conn_rate = (1 << 5); /* STP */ in asd_build_ata_ascb()
367 scb->ata_task.proto_conn_rate |= dev->linkrate; in asd_build_ata_ascb()
369 scb->ata_task.total_xfer_len = cpu_to_le32(task->total_xfer_len); in asd_build_ata_ascb()
370 scb->ata_task.fis = task->ata_task.fis; in asd_build_ata_ascb()
[all …]
/kernel/linux/linux-5.10/drivers/scsi/aic94xx/
Daic94xx_tmf.c83 struct scb *scb; \
96 scb = ascb->scb; \
97 scb->header.opcode = CLEAR_NEXUS
120 scb->clear_nexus.nexus = NEXUS_ADAPTER; in asd_clear_nexus_ha()
129 scb->clear_nexus.nexus = NEXUS_PORT; in asd_clear_nexus_port()
130 scb->clear_nexus.conn_mask = port->phy_mask; in asd_clear_nexus_port()
146 scb->clear_nexus.nexus = NEXUS_I_T; in asd_clear_nexus_I_T()
149 scb->clear_nexus.flags = EXEC_Q | SUSPEND_TX; in asd_clear_nexus_I_T()
152 scb->clear_nexus.flags = SEND_Q | NOTINQ; in asd_clear_nexus_I_T()
155 scb->clear_nexus.flags = RESUME_TX; in asd_clear_nexus_I_T()
[all …]
Daic94xx_task.c129 le64_to_cpu(ascb->scb->ssp_task.sg_element[0].bus_addr); in asd_unmap_scatterlist()
353 struct scb *scb; in asd_build_ata_ascb() local
357 scb = ascb->scb; in asd_build_ata_ascb()
360 scb->header.opcode = CONTROL_ATA_DEV; in asd_build_ata_ascb()
362 scb->header.opcode = INITIATE_ATAPI_TASK; in asd_build_ata_ascb()
364 scb->header.opcode = INITIATE_ATA_TASK; in asd_build_ata_ascb()
366 scb->ata_task.proto_conn_rate = (1 << 5); /* STP */ in asd_build_ata_ascb()
368 scb->ata_task.proto_conn_rate |= dev->linkrate; in asd_build_ata_ascb()
370 scb->ata_task.total_xfer_len = cpu_to_le32(task->total_xfer_len); in asd_build_ata_ascb()
371 scb->ata_task.fis = task->ata_task.fis; in asd_build_ata_ascb()
[all …]
/kernel/linux/linux-5.10/drivers/scsi/aic7xxx/
Daic7xxx_osm.h229 ahc_scb_timer_reset(struct scb *scb, u_int usec) in ahc_scb_timer_reset() argument
335 * Per-SCB OSM storage.
519 static inline void ahc_set_transaction_status(struct scb *, uint32_t);
521 static inline void ahc_set_scsi_status(struct scb *, uint32_t);
523 static inline uint32_t ahc_get_transaction_status(struct scb *);
525 static inline uint32_t ahc_get_scsi_status(struct scb *);
526 static inline void ahc_set_transaction_tag(struct scb *, int, u_int);
527 static inline u_long ahc_get_transfer_length(struct scb *);
528 static inline int ahc_get_transfer_dir(struct scb *);
529 static inline void ahc_set_residual(struct scb *, u_long);
[all …]
Daic79xx_osm.h324 * Per-SCB OSM storage.
501 static inline void ahd_set_transaction_status(struct scb *, uint32_t);
503 static inline void ahd_set_scsi_status(struct scb *, uint32_t);
505 static inline uint32_t ahd_get_transaction_status(struct scb *);
507 static inline uint32_t ahd_get_scsi_status(struct scb *);
508 static inline void ahd_set_transaction_tag(struct scb *, int, u_int);
509 static inline u_long ahd_get_transfer_length(struct scb *);
510 static inline int ahd_get_transfer_dir(struct scb *);
511 static inline void ahd_set_residual(struct scb *, u_long);
512 static inline void ahd_set_sense_residual(struct scb *scb, u_long resid);
[all …]
Daic79xx_core.c69 { MPARERR, "Scratch or SCB Memory Parity Error" },
128 struct scb *scb);
131 struct scb *scb);
167 struct scb *scb);
180 struct scb *scb, u_int col_idx);
182 struct scb *scb);
185 struct scb *prev_scb,
186 struct scb *scb);
216 struct scb *scb);
218 struct scb *scb);
[all …]
Daic7xxx_core.c79 { MPARERR, "Scratch or SCB Memory Parity Error" },
154 struct scb *scb);
158 struct scb *scb);
195 struct scb *scb);
203 struct scb *prev_scb,
204 struct scb *scb);
238 /************************** SCB and SCB queue management **********************/
260 static void ahc_freeze_devq(struct ahc_softc *ahc, struct scb *scb);
265 struct scb *scb);
304 * manual pause while accessing scb ram, accesses to certain registers
[all …]
/kernel/linux/linux-6.6/drivers/scsi/aic7xxx/
Daic79xx_core.c69 { MPARERR, "Scratch or SCB Memory Parity Error" },
128 struct scb *scb);
131 struct scb *scb);
167 struct scb *scb);
180 struct scb *scb, u_int col_idx);
182 struct scb *scb);
185 struct scb *prev_scb,
186 struct scb *scb);
216 struct scb *scb);
218 struct scb *scb);
[all …]
Daic7xxx_core.c79 { MPARERR, "Scratch or SCB Memory Parity Error" },
154 struct scb *scb);
158 struct scb *scb);
195 struct scb *scb);
203 struct scb *prev_scb,
204 struct scb *scb);
238 /************************** SCB and SCB queue management **********************/
260 static void ahc_freeze_devq(struct ahc_softc *ahc, struct scb *scb);
265 struct scb *scb);
304 * manual pause while accessing scb ram, accesses to certain registers
[all …]
Daic7xxx_osm.h229 ahc_scb_timer_reset(struct scb *scb, u_int usec) in ahc_scb_timer_reset() argument
335 * Per-SCB OSM storage.
525 void ahc_set_transaction_status(struct scb *scb, uint32_t status) in ahc_set_transaction_status() argument
527 ahc_cmd_set_transaction_status(scb->io_ctx,status); in ahc_set_transaction_status()
538 void ahc_set_scsi_status(struct scb *scb, uint32_t status) in ahc_set_scsi_status() argument
540 ahc_cmd_set_scsi_status(scb->io_ctx, status); in ahc_set_scsi_status()
550 uint32_t ahc_get_transaction_status(struct scb *scb) in ahc_get_transaction_status() argument
552 return (ahc_cmd_get_transaction_status(scb->io_ctx)); in ahc_get_transaction_status()
562 uint32_t ahc_get_scsi_status(struct scb *scb) in ahc_get_scsi_status() argument
564 return (ahc_cmd_get_scsi_status(scb->io_ctx)); in ahc_get_scsi_status()
[all …]
Daic79xx_osm.h324 * Per-SCB OSM storage.
507 void ahd_set_transaction_status(struct scb *scb, uint32_t status) in ahd_set_transaction_status() argument
509 ahd_cmd_set_transaction_status(scb->io_ctx,status); in ahd_set_transaction_status()
520 void ahd_set_scsi_status(struct scb *scb, uint32_t status) in ahd_set_scsi_status() argument
522 ahd_cmd_set_scsi_status(scb->io_ctx, status); in ahd_set_scsi_status()
532 uint32_t ahd_get_transaction_status(struct scb *scb) in ahd_get_transaction_status() argument
534 return (ahd_cmd_get_transaction_status(scb->io_ctx)); in ahd_get_transaction_status()
544 uint32_t ahd_get_scsi_status(struct scb *scb) in ahd_get_scsi_status() argument
546 return (ahd_cmd_get_scsi_status(scb->io_ctx)); in ahd_get_scsi_status()
550 void ahd_set_transaction_tag(struct scb *scb, int enabled, u_int type) in ahd_set_transaction_tag() argument
[all …]
/kernel/linux/linux-5.10/drivers/scsi/megaraid/
Dmegaraid_mbox.c951 scb_t *scb; in megaraid_alloc_cmd_packets() local
1009 * Allocate memory for the base list of scb. Later allocate memory for in megaraid_alloc_cmd_packets()
1011 * scb to the allocated components in megaraid_alloc_cmd_packets()
1012 * NOTE: The code to allocate SCB will be duplicated in all the LLD in megaraid_alloc_cmd_packets()
1033 // Adjust the scb pointers and link in the free pool in megaraid_alloc_cmd_packets()
1039 scb = adapter->kscb_list + i; in megaraid_alloc_cmd_packets()
1066 scb->ccb = (caddr_t)ccb; in megaraid_alloc_cmd_packets()
1067 scb->gp = 0; in megaraid_alloc_cmd_packets()
1069 scb->sno = i; // command index in megaraid_alloc_cmd_packets()
1071 scb->scp = NULL; in megaraid_alloc_cmd_packets()
[all …]
/kernel/linux/linux-6.6/drivers/scsi/megaraid/
Dmegaraid_mbox.c953 scb_t *scb; in megaraid_alloc_cmd_packets() local
1011 * Allocate memory for the base list of scb. Later allocate memory for in megaraid_alloc_cmd_packets()
1013 * scb to the allocated components in megaraid_alloc_cmd_packets()
1014 * NOTE: The code to allocate SCB will be duplicated in all the LLD in megaraid_alloc_cmd_packets()
1035 // Adjust the scb pointers and link in the free pool in megaraid_alloc_cmd_packets()
1041 scb = adapter->kscb_list + i; in megaraid_alloc_cmd_packets()
1068 scb->ccb = (caddr_t)ccb; in megaraid_alloc_cmd_packets()
1069 scb->gp = 0; in megaraid_alloc_cmd_packets()
1071 scb->sno = i; // command index in megaraid_alloc_cmd_packets()
1073 scb->scp = NULL; in megaraid_alloc_cmd_packets()
[all …]

12345678910>>...12