Lines Matching refs:dmae
391 struct dmae_command *dmae, int msglvl) in bnx2x_dp_dmae() argument
393 u32 src_type = dmae->opcode & DMAE_COMMAND_SRC; in bnx2x_dp_dmae()
396 switch (dmae->opcode & DMAE_COMMAND_DST) { in bnx2x_dp_dmae()
402 dmae->opcode, dmae->src_addr_hi, dmae->src_addr_lo, in bnx2x_dp_dmae()
403 dmae->len, dmae->dst_addr_hi, dmae->dst_addr_lo, in bnx2x_dp_dmae()
404 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
405 dmae->comp_val); in bnx2x_dp_dmae()
410 dmae->opcode, dmae->src_addr_lo >> 2, in bnx2x_dp_dmae()
411 dmae->len, dmae->dst_addr_hi, dmae->dst_addr_lo, in bnx2x_dp_dmae()
412 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
413 dmae->comp_val); in bnx2x_dp_dmae()
420 dmae->opcode, dmae->src_addr_hi, dmae->src_addr_lo, in bnx2x_dp_dmae()
421 dmae->len, dmae->dst_addr_lo >> 2, in bnx2x_dp_dmae()
422 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
423 dmae->comp_val); in bnx2x_dp_dmae()
428 dmae->opcode, dmae->src_addr_lo >> 2, in bnx2x_dp_dmae()
429 dmae->len, dmae->dst_addr_lo >> 2, in bnx2x_dp_dmae()
430 dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
431 dmae->comp_val); in bnx2x_dp_dmae()
438 dmae->opcode, dmae->src_addr_hi, dmae->src_addr_lo, in bnx2x_dp_dmae()
439 dmae->len, dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
440 dmae->comp_val); in bnx2x_dp_dmae()
445 dmae->opcode, dmae->src_addr_lo >> 2, in bnx2x_dp_dmae()
446 dmae->len, dmae->comp_addr_hi, dmae->comp_addr_lo, in bnx2x_dp_dmae()
447 dmae->comp_val); in bnx2x_dp_dmae()
453 i, *(((u32 *)dmae) + i)); in bnx2x_dp_dmae()
457 void bnx2x_post_dmae(struct bnx2x *bp, struct dmae_command *dmae, int idx) in bnx2x_post_dmae() argument
464 REG_WR(bp, cmd_offset + i*4, *(((u32 *)dmae) + i)); in bnx2x_post_dmae()
506 struct dmae_command *dmae, in bnx2x_prep_dmae_with_comp() argument
509 memset(dmae, 0, sizeof(struct dmae_command)); in bnx2x_prep_dmae_with_comp()
512 dmae->opcode = bnx2x_dmae_opcode(bp, src_type, dst_type, in bnx2x_prep_dmae_with_comp()
516 dmae->comp_addr_lo = U64_LO(bnx2x_sp_mapping(bp, wb_comp)); in bnx2x_prep_dmae_with_comp()
517 dmae->comp_addr_hi = U64_HI(bnx2x_sp_mapping(bp, wb_comp)); in bnx2x_prep_dmae_with_comp()
518 dmae->comp_val = DMAE_COMP_VAL; in bnx2x_prep_dmae_with_comp()
522 int bnx2x_issue_dmae_with_comp(struct bnx2x *bp, struct dmae_command *dmae, in bnx2x_issue_dmae_with_comp() argument
528 bnx2x_dp_dmae(bp, dmae, BNX2X_MSG_DMAE); in bnx2x_issue_dmae_with_comp()
541 bnx2x_post_dmae(bp, dmae, INIT_DMAE_C(bp)); in bnx2x_issue_dmae_with_comp()
573 struct dmae_command dmae; in bnx2x_write_dmae() local
586 bnx2x_prep_dmae_with_comp(bp, &dmae, DMAE_SRC_PCI, DMAE_DST_GRC); in bnx2x_write_dmae()
589 dmae.src_addr_lo = U64_LO(dma_addr); in bnx2x_write_dmae()
590 dmae.src_addr_hi = U64_HI(dma_addr); in bnx2x_write_dmae()
591 dmae.dst_addr_lo = dst_addr >> 2; in bnx2x_write_dmae()
592 dmae.dst_addr_hi = 0; in bnx2x_write_dmae()
593 dmae.len = len32; in bnx2x_write_dmae()
596 rc = bnx2x_issue_dmae_with_comp(bp, &dmae, bnx2x_sp(bp, wb_comp)); in bnx2x_write_dmae()
608 struct dmae_command dmae; in bnx2x_read_dmae() local
625 bnx2x_prep_dmae_with_comp(bp, &dmae, DMAE_SRC_GRC, DMAE_DST_PCI); in bnx2x_read_dmae()
628 dmae.src_addr_lo = src_addr >> 2; in bnx2x_read_dmae()
629 dmae.src_addr_hi = 0; in bnx2x_read_dmae()
630 dmae.dst_addr_lo = U64_LO(bnx2x_sp_mapping(bp, wb_data)); in bnx2x_read_dmae()
631 dmae.dst_addr_hi = U64_HI(bnx2x_sp_mapping(bp, wb_data)); in bnx2x_read_dmae()
632 dmae.len = len32; in bnx2x_read_dmae()
635 rc = bnx2x_issue_dmae_with_comp(bp, &dmae, bnx2x_sp(bp, wb_comp)); in bnx2x_read_dmae()