Lines Matching defs:pddcb

109  *     pddcb->priv[6] = 0xcc;   # cleared
112 * pddcb->priv[7] = 0xaa; # appended
115 * pddcb->priv[7] = 0xbb; # tapped
118 * pddcb->priv[6] = 0xff; # finished
121 static inline void ddcb_mark_tapped(struct ddcb *pddcb)
123 pddcb->priv[7] = 0xbb; /* tapped */
126 static inline void ddcb_mark_appended(struct ddcb *pddcb)
128 pddcb->priv[7] = 0xaa; /* appended */
131 static inline void ddcb_mark_cleared(struct ddcb *pddcb)
133 pddcb->priv[6] = 0xcc; /* cleared */
136 static inline void ddcb_mark_finished(struct ddcb *pddcb)
138 pddcb->priv[6] = 0xff; /* finished */
141 static inline void ddcb_mark_unused(struct ddcb *pddcb)
143 pddcb->priv_64 = cpu_to_be64(0); /* not tapped */
166 struct ddcb *pddcb;
176 pddcb = queue->ddcb_vaddr;
182 be16_to_cpu(pddcb->retc_16),
183 be16_to_cpu(pddcb->seqnum_16),
184 pddcb->hsi,
185 pddcb->shi,
186 be64_to_cpu(pddcb->priv_64),
187 pddcb->cmd);
188 pddcb++;
253 * @pddcb: pointer to ddcb structure
266 struct ddcb *pddcb, int ddcb_no)
279 ddcb_mark_unused(pddcb);
290 ddcb_mark_appended(pddcb);
308 ddcb_mark_tapped(pddcb);
333 struct ddcb *pddcb = &queue->ddcb_vaddr[req->num];
335 memcpy(&req->cmd.asv[0], &pddcb->asv[0], DDCB_ASV_LENGTH);
338 req->cmd.vcrc = be16_to_cpu(pddcb->vcrc_16);
339 req->cmd.deque_ts = be64_to_cpu(pddcb->deque_ts_64);
340 req->cmd.cmplt_ts = be64_to_cpu(pddcb->cmplt_ts_64);
342 req->cmd.attn = be16_to_cpu(pddcb->attn_16);
343 req->cmd.progress = be32_to_cpu(pddcb->progress_32);
344 req->cmd.retc = be16_to_cpu(pddcb->retc_16);
351 memcpy(&req->debug_data.ddcb_finished, pddcb,
377 struct ddcb *pddcb;
381 pddcb = &queue->ddcb_vaddr[queue->ddcb_act];
383 if ((pddcb->icrc_hsi_shi_32 & DDCB_COMPLETED_BE32) ==
405 retc_16 = be16_to_cpu(pddcb->retc_16);
406 if ((pddcb->hsi == 0x44) && (retc_16 <= 0x101)) {
408 u64 ddcb_offs = (u64)pddcb - (u64)queue->ddcb_vaddr;
415 __func__, be16_to_cpu(pddcb->seqnum_16),
416 pddcb->hsi, retc_16, errcnts, status,
424 genwqe_hexdump(pci_dev, pddcb, sizeof(*pddcb));
426 ddcb_mark_finished(pddcb);
429 vcrc = genwqe_crc16(pddcb->asv,
432 vcrc_16 = be16_to_cpu(pddcb->vcrc_16);
437 pddcb->pre, VCRC_LENGTH(req->cmd.asv_length),
507 struct ddcb *pddcb;
526 pddcb = &queue->ddcb_vaddr[req->num];
527 genwqe_hexdump(pci_dev, pddcb, sizeof(*pddcb));
572 struct ddcb *pddcb;
578 pddcb = &queue->ddcb_vaddr[queue->ddcb_next];
582 if ((pddcb->icrc_hsi_shi_32 & DDCB_COMPLETED_BE32) == 0x00000000)
589 pu64 = (u64 *)pddcb;
600 pddcb->pre = DDCB_PRESET_PRE; /* 128 */
601 pddcb->seqnum_16 = cpu_to_be16(queue->ddcb_seq++);
602 return pddcb;
622 struct ddcb *pddcb = NULL;
638 pddcb = &queue->ddcb_vaddr[req->num];
649 old = pddcb->icrc_hsi_shi_32; /* read SHI/HSI in BE32 */
653 icrc_hsi_shi = cmpxchg(&pddcb->icrc_hsi_shi_32,
661 icrc_hsi_shi = pddcb->icrc_hsi_shi_32;
683 ddcb_mark_cleared(pddcb);
695 icrc_hsi_shi = pddcb->icrc_hsi_shi_32;
713 genwqe_hexdump(pci_dev, pddcb, sizeof(*pddcb));
757 struct ddcb *pddcb;
787 pddcb = get_next_ddcb(cd, queue, &req->num); /* get ptr and num */
788 if (pddcb == NULL) {
820 pddcb->cmdopts_16 = cpu_to_be16(req->cmd.cmdopts);
821 pddcb->cmd = req->cmd.cmd;
822 pddcb->acfunc = req->cmd.acfunc; /* functional unit */
833 pddcb->xdir = 0x1;
835 pddcb->xdir = 0x0;
838 pddcb->psp = (((req->cmd.asiv_length / 8) << 4) |
840 pddcb->disp_ts_64 = cpu_to_be64(req->cmd.disp_ts);
856 memcpy(&pddcb->__asiv[0], /* destination */
860 pddcb->n.ats_64 = cpu_to_be64(req->cmd.ats);
861 memcpy(&pddcb->n.asiv[0], /* destination */
866 pddcb->icrc_hsi_shi_32 = cpu_to_be32(0x00000000); /* for crc */
872 icrc = genwqe_crc16((const u8 *)pddcb,
874 pddcb->icrc_hsi_shi_32 = cpu_to_be32((u32)icrc << 16);
878 pddcb->icrc_hsi_shi_32 |= DDCB_INTR_BE32;
881 genwqe_hexdump(pci_dev, pddcb, sizeof(*pddcb));
888 memcpy(&req->debug_data.ddcb_before, pddcb,
892 enqueue_ddcb(cd, queue, pddcb, req->num);
980 struct ddcb *pddcb;
990 pddcb = &queue->ddcb_vaddr[queue->ddcb_act];
991 if (pddcb->icrc_hsi_shi_32 & DDCB_COMPLETED_BE32) { /* ddcb ready */
1024 struct ddcb *pddcb;
1065 pddcb = &queue->ddcb_vaddr[i]; /* DDCBs */
1066 pddcb->icrc_hsi_shi_32 = DDCB_COMPLETED_BE32;
1067 pddcb->retc_16 = cpu_to_be16(0xfff);