Lines Matching refs:dmae
404 struct dmae_command *dmae, int msglvl) in bnx2x_dp_dmae() argument
406 u32 src_type = dmae->opcode & DMAE_COMMAND_SRC; in bnx2x_dp_dmae()
409 switch (dmae->opcode & DMAE_COMMAND_DST) { in bnx2x_dp_dmae()
415 dmae->opcode, dmae->src_addr_hi, dmae->src_addr_lo, in bnx2x_dp_dmae()
416 dmae->len, dmae->dst_addr_hi, dmae->dst_addr_lo, in bnx2x_dp_dmae()
417 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
418 dmae->comp_val); in bnx2x_dp_dmae()
423 dmae->opcode, dmae->src_addr_lo >> 2, in bnx2x_dp_dmae()
424 dmae->len, dmae->dst_addr_hi, dmae->dst_addr_lo, in bnx2x_dp_dmae()
425 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
426 dmae->comp_val); in bnx2x_dp_dmae()
433 dmae->opcode, dmae->src_addr_hi, dmae->src_addr_lo, in bnx2x_dp_dmae()
434 dmae->len, dmae->dst_addr_lo >> 2, in bnx2x_dp_dmae()
435 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
436 dmae->comp_val); in bnx2x_dp_dmae()
441 dmae->opcode, dmae->src_addr_lo >> 2, in bnx2x_dp_dmae()
442 dmae->len, dmae->dst_addr_lo >> 2, in bnx2x_dp_dmae()
443 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
444 dmae->comp_val); in bnx2x_dp_dmae()
451 dmae->opcode, dmae->src_addr_hi, dmae->src_addr_lo, in bnx2x_dp_dmae()
452 dmae->len, dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
453 dmae->comp_val); in bnx2x_dp_dmae()
458 dmae->opcode, dmae->src_addr_lo >> 2, in bnx2x_dp_dmae()
459 dmae->len, dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
460 dmae->comp_val); in bnx2x_dp_dmae()
466 i, *(((u32 *)dmae) + i)); in bnx2x_dp_dmae()
470 void bnx2x_post_dmae(struct bnx2x *bp, struct dmae_command *dmae, int idx) in bnx2x_post_dmae() argument
477 REG_WR(bp, cmd_offset + i*4, *(((u32 *)dmae) + i)); in bnx2x_post_dmae()
519 struct dmae_command *dmae, in bnx2x_prep_dmae_with_comp() argument
522 memset(dmae, 0, sizeof(struct dmae_command)); in bnx2x_prep_dmae_with_comp()
525 dmae->opcode = bnx2x_dmae_opcode(bp, src_type, dst_type, in bnx2x_prep_dmae_with_comp()
529 dmae->comp_addr_lo = U64_LO(bnx2x_sp_mapping(bp, wb_comp)); in bnx2x_prep_dmae_with_comp()
530 dmae->comp_addr_hi = U64_HI(bnx2x_sp_mapping(bp, wb_comp)); in bnx2x_prep_dmae_with_comp()
531 dmae->comp_val = DMAE_COMP_VAL; in bnx2x_prep_dmae_with_comp()
535 int bnx2x_issue_dmae_with_comp(struct bnx2x *bp, struct dmae_command *dmae, in bnx2x_issue_dmae_with_comp() argument
541 bnx2x_dp_dmae(bp, dmae, BNX2X_MSG_DMAE); in bnx2x_issue_dmae_with_comp()
554 bnx2x_post_dmae(bp, dmae, INIT_DMAE_C(bp)); in bnx2x_issue_dmae_with_comp()
586 struct dmae_command dmae; in bnx2x_write_dmae() local
599 bnx2x_prep_dmae_with_comp(bp, &dmae, DMAE_SRC_PCI, DMAE_DST_GRC); in bnx2x_write_dmae()
602 dmae.src_addr_lo = U64_LO(dma_addr); in bnx2x_write_dmae()
603 dmae.src_addr_hi = U64_HI(dma_addr); in bnx2x_write_dmae()
604 dmae.dst_addr_lo = dst_addr >> 2; in bnx2x_write_dmae()
605 dmae.dst_addr_hi = 0; in bnx2x_write_dmae()
606 dmae.len = len32; in bnx2x_write_dmae()
609 rc = bnx2x_issue_dmae_with_comp(bp, &dmae, bnx2x_sp(bp, wb_comp)); in bnx2x_write_dmae()
621 struct dmae_command dmae; in bnx2x_read_dmae() local
638 bnx2x_prep_dmae_with_comp(bp, &dmae, DMAE_SRC_GRC, DMAE_DST_PCI); in bnx2x_read_dmae()
641 dmae.src_addr_lo = src_addr >> 2; in bnx2x_read_dmae()
642 dmae.src_addr_hi = 0; in bnx2x_read_dmae()
643 dmae.dst_addr_lo = U64_LO(bnx2x_sp_mapping(bp, wb_data)); in bnx2x_read_dmae()
644 dmae.dst_addr_hi = U64_HI(bnx2x_sp_mapping(bp, wb_data)); in bnx2x_read_dmae()
645 dmae.len = len32; in bnx2x_read_dmae()
648 rc = bnx2x_issue_dmae_with_comp(bp, &dmae, bnx2x_sp(bp, wb_comp)); in bnx2x_read_dmae()