Logo Search packages:      
Sourcecode: linux version File versions  Download package

memory.h

/*
 * arch/arm/mach-ixp23xx/include/mach/memory.h
 *
 * Copyright (c) 2003-2004 Intel Corp.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation; either version 2 of the License, or (at your
 * option) any later version.
 */

#ifndef __ASM_ARCH_MEMORY_H
#define __ASM_ARCH_MEMORY_H

#include <mach/hardware.h>

/*
 * Physical DRAM offset.
 */
#define PHYS_OFFSET           (0x00000000)


/*
 * Virtual view <-> DMA view memory address translations
 * virt_to_bus: Used to translate the virtual address to an
 *          address suitable to be passed to set_dma_addr
 * bus_to_virt: Used to convert an address for DMA operations
 *          to an address that the kernel can use.
 */
#ifndef __ASSEMBLY__

#define __virt_to_bus(v)                                    \
      ({ unsigned int ret;                                  \
      ret = ((__virt_to_phys(v) - 0x00000000) +             \
       (*((volatile int *)IXP23XX_PCI_SDRAM_BAR) & 0xfffffff0));  \
      ret; })

#define __bus_to_virt(b)                                    \
      ({ unsigned int data;                                 \
      data = *((volatile int *)IXP23XX_PCI_SDRAM_BAR);            \
       __phys_to_virt((((b - (data & 0xfffffff0)) + 0x00000000))); })

#define arch_is_coherent()    1

#endif


#endif

Generated by  Doxygen 1.6.0   Back to index