/* mpt_add_chain_64bit - Place a 64 bit chain SGE at address pAddr. @pAddr: virtual address for SGE @next: nextChainOffset value (u32's) @length: length of next SGL segment @dma_addr: Physical address  */
static void mpt_add_chain_64bit(void *pAddr, u8 next, u16 length, dma_addr_t dma_addr)
/* mpt_add_chain_64bit - Place a 64 bit chain SGE at address pAddr. @pAddr: virtual address for SGE @next: nextChainOffset value (u32's) @length: length of next SGL segment @dma_addr: Physical address  */
static void mpt_add_chain_64bit(void *pAddr, u8 next, u16 length, dma_addr_t dma_addr)
{
		SGEChain64_t *pChain = (SGEChain64_t *) pAddr;
		u32 tmp = dma_addr & 0xFFFFFFFF;
		pChain->Length = cpu_to_le16(length);
		pChain->Flags = (MPI_SGE_FLAGS_CHAIN_ELEMENT |
				 MPI_SGE_FLAGS_64_BIT_ADDRESSING);
		pChain->NextChainOffset = next;
		pChain->Address.Low = cpu_to_le32(tmp);
		tmp = (u32)(upper_32_bits(dma_addr));
		pChain->Address.High = cpu_to_le32(tmp);
}