Home
last modified time | relevance | path

Searched full:scp (Results 1 – 25 of 173) sorted by relevance

1234567

/Linux-v5.15/drivers/remoteproc/
Dmtk_scp.c27 * scp_get() - get a reference to SCP.
29 * @pdev: the platform device of the module requesting SCP platform
30 * device for using SCP API.
32 * Return: Return NULL if failed. otherwise reference to SCP.
40 scp_node = of_parse_phandle(dev->of_node, "mediatek,scp", 0); in scp_get()
42 dev_err(dev, "can't get SCP node\n"); in scp_get()
50 dev_err(dev, "SCP pdev failed\n"); in scp_get()
59 * scp_put() - "free" the SCP
61 * @scp: mtk_scp structure from scp_get().
63 void scp_put(struct mtk_scp *scp) in scp_put() argument
[all …]
Dmtk_scp_ipi.c19 * @scp: mtk_scp structure
24 * Register an ipi function to receive ipi interrupt from SCP.
28 int scp_ipi_register(struct mtk_scp *scp, in scp_ipi_register() argument
33 if (!scp) in scp_ipi_register()
39 scp_ipi_lock(scp, id); in scp_ipi_register()
40 scp->ipi_desc[id].handler = handler; in scp_ipi_register()
41 scp->ipi_desc[id].priv = priv; in scp_ipi_register()
42 scp_ipi_unlock(scp, id); in scp_ipi_register()
51 * @scp: mtk_scp structure
54 * Unregister an ipi function to receive ipi interrupt from SCP.
[all …]
Dmtk_common.h75 int (*scp_before_load)(struct mtk_scp *scp);
76 void (*scp_irq_handler)(struct mtk_scp *scp);
77 void (*scp_reset_assert)(struct mtk_scp *scp);
78 void (*scp_reset_deassert)(struct mtk_scp *scp);
79 void (*scp_stop)(struct mtk_scp *scp);
80 void *(*scp_da_to_va)(struct mtk_scp *scp, u64 da, size_t len);
119 * struct mtk_share_obj - SRAM buffer shared with AP and SCP
132 void scp_ipi_lock(struct mtk_scp *scp, u32 id);
133 void scp_ipi_unlock(struct mtk_scp *scp, u32 id);
/Linux-v5.15/drivers/scsi/arm/
Dscsi.h21 * entries of uninitialized memory. SCp is from scsi-ml and has a valid
24 static inline int copy_SCp_to_sg(struct scatterlist *sg, struct scsi_pointer *SCp, int max) in copy_SCp_to_sg() argument
26 int bufs = SCp->buffers_residual; in copy_SCp_to_sg()
33 sg_set_buf(sg, SCp->ptr, SCp->this_residual); in copy_SCp_to_sg()
39 for_each_sg(sg_next(SCp->buffer), src_sg, bufs, i) in copy_SCp_to_sg()
47 static inline int next_SCp(struct scsi_pointer *SCp) in next_SCp() argument
49 int ret = SCp->buffers_residual; in next_SCp()
51 SCp->buffer = sg_next(SCp->buffer); in next_SCp()
52 SCp->buffers_residual--; in next_SCp()
53 SCp->ptr = sg_virt(SCp->buffer); in next_SCp()
[all …]
Dfas216.c173 static void print_SCp(struct scsi_pointer *SCp, const char *prefix, const char *suffix) in print_SCp() argument
176 prefix, SCp->ptr, SCp->this_residual, SCp->buffer, in print_SCp()
177 SCp->buffers_residual, suffix); in print_SCp()
199 print_SCp(&info->scsi.SCp, " SCp={ ", " }\n"); in fas216_dumpinfo()
628 struct scsi_pointer *SCp = &info->scsi.SCp; in fas216_updateptrs() local
634 SCp->phase -= bytes_transferred; in fas216_updateptrs()
637 if (SCp->this_residual > bytes_transferred) in fas216_updateptrs()
643 bytes_transferred -= SCp->this_residual; in fas216_updateptrs()
644 if (!next_SCp(SCp) && bytes_transferred) { in fas216_updateptrs()
651 SCp->this_residual -= bytes_transferred; in fas216_updateptrs()
[all …]
/Linux-v5.15/net/decnet/
Ddn_nsp_out.c69 struct dn_scp *scp = DN_SK(sk); in dn_nsp_send() local
74 scp->stamp = jiffies; in dn_nsp_send()
86 fld.saddr = dn_saddr2dn(&scp->addr); in dn_nsp_send()
87 fld.daddr = dn_saddr2dn(&scp->peer); in dn_nsp_send()
88 dn_sk_ports_copy(&fld, scp); in dn_nsp_send()
136 struct dn_scp *scp = DN_SK(sk); in dn_nsp_persist() local
138 unsigned long t = ((scp->nsp_srtt >> 2) + scp->nsp_rttvar) >> 1; in dn_nsp_persist()
140 t *= nsp_backoff[scp->nsp_rxtshift]; in dn_nsp_persist()
145 if (scp->nsp_rxtshift < NSP_MAXRXTSHIFT) in dn_nsp_persist()
146 scp->nsp_rxtshift++; in dn_nsp_persist()
[all …]
Daf_decnet.c137 struct dn_scp scp; member
159 struct dn_scp *scp = DN_SK(sk); in dn_find_list() local
161 if (scp->addr.sdn_flags & SDF_WILD) in dn_find_list()
164 return &dn_sk_hash[le16_to_cpu(scp->addrloc) & DN_SK_HASH_MASK]; in dn_find_list()
178 struct dn_scp *scp = DN_SK(sk); in check_port() local
179 if (scp->addrloc == port) in check_port()
187 struct dn_scp *scp = DN_SK(sk); in port_alloc() local
196 scp->addrloc = cpu_to_le16(port); in port_alloc()
208 struct dn_scp *scp = DN_SK(sk); in dn_hash_sock() local
216 if (!scp->addrloc && !port_alloc(sk)) in dn_hash_sock()
[all …]
Ddn_nsp_in.c94 struct dn_scp *scp = DN_SK(sk); in dn_ack() local
100 if (dn_after(ack, scp->ackrcv_dat)) { in dn_ack()
101 scp->ackrcv_dat = ack & 0x0fff; in dn_ack()
103 &scp->data_xmit_queue, in dn_ack()
110 if (dn_after(ack, scp->ackrcv_oth)) { in dn_ack()
111 scp->ackrcv_oth = ack & 0x0fff; in dn_ack()
113 &scp->other_xmit_queue, in dn_ack()
339 struct dn_scp *scp = DN_SK(sk); in dn_nsp_conn_conf() local
350 if ((scp->state == DN_CI) || (scp->state == DN_CD)) { in dn_nsp_conn_conf()
351 scp->persist = 0; in dn_nsp_conn_conf()
[all …]
Ddn_timer.c53 struct dn_scp *scp = DN_SK(sk); in dn_slow_timer() local
73 if (scp->persist && scp->persist_fxn) { in dn_slow_timer()
74 if (scp->persist <= SLOW_INTERVAL) { in dn_slow_timer()
75 scp->persist = 0; in dn_slow_timer()
77 if (scp->persist_fxn(sk)) in dn_slow_timer()
80 scp->persist -= SLOW_INTERVAL; in dn_slow_timer()
87 * do this. scp->stamp is the last time that we sent a packet. in dn_slow_timer()
91 * time we do this, scp->stamp will be updated, thus in dn_slow_timer()
92 * we won't try and send another until scp->keepalive has passed in dn_slow_timer()
95 if (scp->keepalive && scp->keepalive_fxn && (scp->state == DN_RUN)) { in dn_slow_timer()
[all …]
/Linux-v5.15/drivers/scsi/
D53c700.c54 * Bogendoerfer). Added missing SCp->request_bufflen initialisation
577 struct scsi_cmnd *SCp, __u32 dsp) in save_for_reselection() argument
580 if(SCp != NULL) { in save_for_reselection()
582 (struct NCR_700_command_slot *)SCp->host_scribble; in save_for_reselection()
591 NCR_700_unmap(struct NCR_700_Host_Parameters *hostdata, struct scsi_cmnd *SCp, in NCR_700_unmap() argument
594 if(SCp->sc_data_direction != DMA_NONE && in NCR_700_unmap()
595 SCp->sc_data_direction != DMA_BIDIRECTIONAL) in NCR_700_unmap()
596 scsi_dma_unmap(SCp); in NCR_700_unmap()
601 struct scsi_cmnd *SCp, int result) in NCR_700_scsi_done() argument
606 if(SCp != NULL) { in NCR_700_scsi_done()
[all …]
Dscsi_debug.c918 static void mk_sense_invalid_fld(struct scsi_cmnd *scp, in mk_sense_invalid_fld() argument
926 sbuff = scp->sense_buffer; in mk_sense_invalid_fld()
928 sdev_printk(KERN_ERR, scp->device, in mk_sense_invalid_fld()
934 scsi_build_sense(scp, sdebug_dsense, ILLEGAL_REQUEST, asc, 0); in mk_sense_invalid_fld()
953 sdev_printk(KERN_INFO, scp->device, "%s: [sense_key,asc,ascq" in mk_sense_invalid_fld()
958 static void mk_sense_buffer(struct scsi_cmnd *scp, int key, int asc, int asq) in mk_sense_buffer() argument
960 if (!scp->sense_buffer) { in mk_sense_buffer()
961 sdev_printk(KERN_ERR, scp->device, in mk_sense_buffer()
965 memset(scp->sense_buffer, 0, SCSI_SENSE_BUFFERSIZE); in mk_sense_buffer()
967 scsi_build_sense(scp, sdebug_dsense, key, asc, asq); in mk_sense_buffer()
[all …]
Dhptiop.c719 struct scsi_cmnd *scp; in hptiop_finish_scsi_req() local
729 scp = hba->reqs[tag].scp; in hptiop_finish_scsi_req()
731 if (HPT_SCP(scp)->mapped) in hptiop_finish_scsi_req()
732 scsi_dma_unmap(scp); in hptiop_finish_scsi_req()
736 scsi_set_resid(scp, in hptiop_finish_scsi_req()
737 scsi_bufflen(scp) - le32_to_cpu(req->dataxfer_length)); in hptiop_finish_scsi_req()
738 scp->result = (DID_OK<<16); in hptiop_finish_scsi_req()
741 scp->result = (DID_BAD_TARGET<<16); in hptiop_finish_scsi_req()
744 scp->result = (DID_BUS_BUSY<<16); in hptiop_finish_scsi_req()
747 scp->result = (DID_RESET<<16); in hptiop_finish_scsi_req()
[all …]
Dfdomain.c272 if (cmd->SCp.phase & in_arbitration) { in fdomain_work()
279 cmd->SCp.phase = in_selection; in fdomain_work()
288 } else if (cmd->SCp.phase & in_selection) { in fdomain_work()
300 cmd->SCp.phase = in_other; in fdomain_work()
306 /* cur_cmd->SCp.phase == in_other: this is the body of the routine */ in fdomain_work()
312 outb(cmd->cmnd[cmd->SCp.sent_command++], in fdomain_work()
316 if (fd->chip != tmc1800 && !cmd->SCp.have_data_in) { in fdomain_work()
317 cmd->SCp.have_data_in = -1; in fdomain_work()
323 if (fd->chip != tmc1800 && !cmd->SCp.have_data_in) { in fdomain_work()
324 cmd->SCp.have_data_in = 1; in fdomain_work()
[all …]
Daha152x.c684 struct scsi_cmnd *SCp) in remove_SC() argument
689 ptr && SCp!=ptr; in remove_SC()
879 CURRENT_SC->SCp.phase |= 1 << 16; in setup_expected_interrupts()
881 if(CURRENT_SC->SCp.phase & selecting) { in setup_expected_interrupts()
886 SETPORT(SIMODE0, (CURRENT_SC->SCp.phase & spiordy) ? ENSPIORDY : 0); in setup_expected_interrupts()
915 SCpnt->SCp.phase = not_issued | phase; in aha152x_internal_queue()
916 SCpnt->SCp.Status = 0x1; /* Ilegal status by SCSI standard */ in aha152x_internal_queue()
917 SCpnt->SCp.Message = 0; in aha152x_internal_queue()
918 SCpnt->SCp.have_data_in = 0; in aha152x_internal_queue()
919 SCpnt->SCp.sent_command = 0; in aha152x_internal_queue()
[all …]
Dwd33c93.c388 * the SCp.xxx fields is that they're always associated with a given in wd33c93_queuecommand_lck()
391 * if we keep all the critical pointers and counters in SCp: in wd33c93_queuecommand_lck()
392 * - SCp.ptr is the pointer into the RAM buffer in wd33c93_queuecommand_lck()
393 * - SCp.this_residual is the size of that buffer in wd33c93_queuecommand_lck()
394 * - SCp.buffer points to the current scatter-gather buffer in wd33c93_queuecommand_lck()
395 * - SCp.buffers_residual tells us how many S.G. buffers there are in wd33c93_queuecommand_lck()
396 * - SCp.have_data_in is not used in wd33c93_queuecommand_lck()
397 * - SCp.sent_command is not used in wd33c93_queuecommand_lck()
398 * - SCp.phase records this command's SRCID_ER bit setting in wd33c93_queuecommand_lck()
402 cmd->SCp.buffer = scsi_sglist(cmd); in wd33c93_queuecommand_lck()
[all …]
Dimm.c69 dev->cur_cmd->SCp.phase = 1; in got_it()
663 if (((r & 0x88) != 0x88) || (cmd->SCp.this_residual <= 0)) { in imm_completion()
670 && (cmd->SCp.this_residual >= in imm_completion()
672 status = imm_out(dev, cmd->SCp.ptr, fast); in imm_completion()
675 && (cmd->SCp.this_residual >= in imm_completion()
677 status = imm_in(dev, cmd->SCp.ptr, fast); in imm_completion()
680 cmd->SCp.ptr += fast; in imm_completion()
681 cmd->SCp.this_residual -= fast; in imm_completion()
687 if (cmd->SCp.buffer && !cmd->SCp.this_residual) { in imm_completion()
689 if (cmd->SCp.buffers_residual--) { in imm_completion()
[all …]
Dppa.c59 dev->cur_cmd->SCp.phase = 1; in got_it()
546 if ((cmd->SCp.this_residual <= 0)) { in ppa_completion()
575 fast = (bulk && (cmd->SCp.this_residual >= PPA_BURST_SIZE)) in ppa_completion()
579 status = ppa_out(dev, cmd->SCp.ptr, fast); in ppa_completion()
581 status = ppa_in(dev, cmd->SCp.ptr, fast); in ppa_completion()
583 cmd->SCp.ptr += fast; in ppa_completion()
584 cmd->SCp.this_residual -= fast; in ppa_completion()
590 if (cmd->SCp.buffer && !cmd->SCp.this_residual) { in ppa_completion()
592 if (cmd->SCp.buffers_residual--) { in ppa_completion()
593 cmd->SCp.buffer = sg_next(cmd->SCp.buffer); in ppa_completion()
[all …]
/Linux-v5.15/include/linux/remoteproc/
Dmtk_scp.h19 * @SCP_IPI_INIT: The interrupt from scp is to notfiy kernel
20 * SCP initialization completed.
21 * IPI_SCP_INIT is sent from SCP when firmware is
23 * command to SCP.
25 * to SCP to trigger the interrupt.
49 void scp_put(struct mtk_scp *scp);
51 struct device *scp_get_device(struct mtk_scp *scp);
52 struct rproc *scp_get_rproc(struct mtk_scp *scp);
54 int scp_ipi_register(struct mtk_scp *scp, u32 id, scp_ipi_handler_t handler,
56 void scp_ipi_unregister(struct mtk_scp *scp, u32 id);
[all …]
/Linux-v5.15/drivers/media/platform/mtk-vcodec/
Dmtk_vcodec_fw_scp.c9 return rproc_boot(scp_get_rproc(fw->scp)); in mtk_vcodec_scp_load_firmware()
14 return scp_get_vdec_hw_capa(fw->scp); in mtk_vcodec_scp_get_vdec_capa()
19 return scp_get_venc_hw_capa(fw->scp); in mtk_vcodec_scp_get_venc_capa()
25 return scp_mapping_dm_addr(fw->scp, dtcm_dmem_addr); in mtk_vcodec_vpu_scp_dm_addr()
32 return scp_ipi_register(fw->scp, id, handler, priv); in mtk_vcodec_scp_set_ipi_register()
38 return scp_ipi_send(fw->scp, id, buf, len, wait); in mtk_vcodec_scp_ipi_send()
43 scp_put(fw->scp); in mtk_vcodec_scp_release()
59 struct mtk_scp *scp; in mtk_vcodec_fw_scp_init() local
61 scp = scp_get(dev->plat_dev); in mtk_vcodec_fw_scp_init()
62 if (!scp) { in mtk_vcodec_fw_scp_init()
[all …]
/Linux-v5.15/drivers/soc/mediatek/
Dmtk-scpsys.c112 * struct scp_domain_data - scp domain data for power on/off flow
133 struct scp;
137 struct scp *scp; member
148 struct scp { struct
174 struct scp *scp = scpd->scp; in scpsys_domain_is_on() argument
176 u32 status = readl(scp->base + scp->ctrl_reg.pwr_sta_offs) & in scpsys_domain_is_on()
178 u32 status2 = readl(scp->base + scp->ctrl_reg.pwr_sta2nd_offs) & in scpsys_domain_is_on()
281 struct scp *scp = scpd->scp; in scpsys_bus_protect_enable() local
286 return mtk_infracfg_set_bus_protection(scp->infracfg, in scpsys_bus_protect_enable()
288 scp->bus_prot_reg_update); in scpsys_bus_protect_enable()
[all …]
/Linux-v5.15/drivers/scsi/megaraid/
Dmega_common.h49 * @scp : associated scsi command
69 struct scsi_cmnd *scp; member
199 #define SCP2HOST(scp) (scp)->device->host // to host argument
200 #define SCP2HOSTDATA(scp) SCP2HOST(scp)->hostdata // to soft state argument
201 #define SCP2CHANNEL(scp) (scp)->device->channel // to channel argument
202 #define SCP2TARGET(scp) (scp)->device->id // to target argument
203 #define SCP2LUN(scp) (u32)(scp)->device->lun // to LUN argument
207 #define SCP2ADAPTER(scp) (adapter_t *)SCSIHOST2ADAP(SCP2HOST(scp)) argument
210 #define MRAID_IS_LOGICAL(adp, scp) \ argument
211 (SCP2CHANNEL(scp) == (adp)->max_channel) ? 1 : 0
[all …]
Dmegaraid_mbox.c1070 scb->scp = NULL; in megaraid_alloc_cmd_packets()
1265 * @scp : pointer to the scsi command to be executed
1271 megaraid_alloc_scb(adapter_t *adapter, struct scsi_cmnd *scp) in megaraid_alloc_scb() argument
1291 scb->scp = scp; in megaraid_alloc_scb()
1315 scb->scp = NULL; in megaraid_dealloc_scb()
1338 struct scsi_cmnd *scp; in megaraid_mbox_mksgl() local
1343 scp = scb->scp; in megaraid_mbox_mksgl()
1346 sgcnt = scsi_dma_map(scp); in megaraid_mbox_mksgl()
1355 scsi_for_each_sg(scp, sgl, sgcnt, i) { in megaraid_mbox_mksgl()
1430 * @scp : pointer to the scsi command to be executed
[all …]
/Linux-v5.15/drivers/scsi/pcmcia/
Dnsp_cs.c224 SCpnt->SCp.Status = SAM_STAT_CHECK_CONDITION; in nsp_queuecommand_lck()
225 SCpnt->SCp.Message = 0; in nsp_queuecommand_lck()
226 SCpnt->SCp.have_data_in = IO_UNKNOWN; in nsp_queuecommand_lck()
227 SCpnt->SCp.sent_command = 0; in nsp_queuecommand_lck()
228 SCpnt->SCp.phase = PH_UNDETERMINED; in nsp_queuecommand_lck()
232 SCp.ptr : buffer pointer in nsp_queuecommand_lck()
233 SCp.this_residual : buffer length in nsp_queuecommand_lck()
234 SCp.buffer : next buffer in nsp_queuecommand_lck()
235 SCp.buffers_residual : left buffers in list in nsp_queuecommand_lck()
236 SCp.phase : current state of the command */ in nsp_queuecommand_lck()
[all …]
/Linux-v5.15/Documentation/devicetree/bindings/remoteproc/
Dmtk,scp.txt1 Mediatek SCP Bindings
8 - compatible Should be "mediatek,mt8183-scp"
20 Subnodes of the SCP represent rpmsg devices. The names of the devices are not
25 the subnode to rpmsg device announced by SCP.
29 scp: scp@10500000 {
30 compatible = "mediatek,mt8183-scp";
/Linux-v5.15/arch/mips/cavium-octeon/executive/
Docteon-model.c96 /* SCP = No DFA, No zip */ in octeon_model_get_string_buffer()
102 suffix = "SCP"; in octeon_model_get_string_buffer()
306 suffix = "SCP"; in octeon_model_get_string_buffer()
335 suffix = "SCP"; in octeon_model_get_string_buffer()
348 suffix = "SCP"; in octeon_model_get_string_buffer()
363 suffix = "SCP"; in octeon_model_get_string_buffer()
374 suffix = "SCP"; in octeon_model_get_string_buffer()
383 suffix = "SCP"; in octeon_model_get_string_buffer()
404 suffix = "SCP"; in octeon_model_get_string_buffer()
418 suffix = "SCP"; in octeon_model_get_string_buffer()
[all …]

1234567