| /kernel/linux/linux-6.6/drivers/media/pci/cx18/ |
| D | cx18-scb.c | 11 #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/ |
| D | cx18-scb.c | 11 #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/ |
| D | dsp_spos_scb_lib.c | 61 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/ |
| D | dsp_spos_scb_lib.c | 61 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/ |
| D | a100u2w.c | 86 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 …]
|
| D | ips.c | 213 #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 …]
|
| D | initio.c | 147 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 …]
|
| D | wd719x.c | 23 * 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/ |
| D | a100u2w.c | 86 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 …]
|
| D | ips.c | 209 #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 …]
|
| D | initio.c | 147 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/ |
| D | aic94xx_tmf.c | 83 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 …]
|
| D | aic94xx_task.c | 129 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/ |
| D | aic94xx_tmf.c | 83 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 …]
|
| D | aic94xx_task.c | 129 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/ |
| D | aic7xxx_osm.h | 229 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 …]
|
| D | aic79xx_osm.h | 324 * 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 …]
|
| D | aic79xx_core.c | 69 { 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 …]
|
| D | aic7xxx_core.c | 79 { 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/ |
| D | aic79xx_core.c | 69 { 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 …]
|
| D | aic7xxx_core.c | 79 { 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 …]
|
| D | aic7xxx_osm.h | 229 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 …]
|
| D | aic79xx_osm.h | 324 * 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/ |
| D | megaraid_mbox.c | 951 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/ |
| D | megaraid_mbox.c | 953 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 …]
|