This source file includes following definitions.
- hinic_cpu_to_be32
- hinic_be32_to_cpu
- hinic_set_sge
- hinic_sge_to_dma
   1 
   2 
   3 
   4 
   5 
   6 
   7 #include <linux/kernel.h>
   8 #include <linux/types.h>
   9 #include <asm/byteorder.h>
  10 
  11 #include "hinic_common.h"
  12 
  13 
  14 
  15 
  16 
  17 
  18 void hinic_cpu_to_be32(void *data, int len)
  19 {
  20         u32 *mem = data;
  21         int i;
  22 
  23         len = len / sizeof(u32);
  24 
  25         for (i = 0; i < len; i++) {
  26                 *mem = cpu_to_be32(*mem);
  27                 mem++;
  28         }
  29 }
  30 
  31 
  32 
  33 
  34 
  35 
  36 void hinic_be32_to_cpu(void *data, int len)
  37 {
  38         u32 *mem = data;
  39         int i;
  40 
  41         len = len / sizeof(u32);
  42 
  43         for (i = 0; i < len; i++) {
  44                 *mem = be32_to_cpu(*mem);
  45                 mem++;
  46         }
  47 }
  48 
  49 
  50 
  51 
  52 
  53 
  54 
  55 void hinic_set_sge(struct hinic_sge *sge, dma_addr_t addr, int len)
  56 {
  57         sge->hi_addr = upper_32_bits(addr);
  58         sge->lo_addr = lower_32_bits(addr);
  59         sge->len  = len;
  60 }
  61 
  62 
  63 
  64 
  65 
  66 
  67 
  68 dma_addr_t hinic_sge_to_dma(struct hinic_sge *sge)
  69 {
  70         return (dma_addr_t)((((u64)sge->hi_addr) << 32) | sge->lo_addr);
  71 }