404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.136.11.217: ~ $
/* SPDX-License-Identifier: GPL-2.0 */
/*
 * arch/arm/mach-omap1/include/mach/memory.h
 */

#ifndef __ASM_ARCH_MEMORY_H
#define __ASM_ARCH_MEMORY_H

/* REVISIT: omap1 legacy drivers still rely on this */
#include <mach/soc.h>

/*
 * Bus address is physical address, except for OMAP-1510 Local Bus.
 * OMAP-1510 bus address is translated into a Local Bus address if the
 * OMAP bus type is lbus. We do the address translation based on the
 * device overriding the defaults used in the dma-mapping API.
 * Note that the is_lbus_device() test is not very efficient on 1510
 * because of the strncmp().
 */
#if defined(CONFIG_ARCH_OMAP15XX) && !defined(__ASSEMBLER__)

/*
 * OMAP-1510 Local Bus address offset
 */
#define OMAP1510_LB_OFFSET	UL(0x30000000)

#define virt_to_lbus(x)		((x) - PAGE_OFFSET + OMAP1510_LB_OFFSET)
#define lbus_to_virt(x)		((x) - OMAP1510_LB_OFFSET + PAGE_OFFSET)
#define is_lbus_device(dev)	(cpu_is_omap15xx() && dev && (strncmp(dev_name(dev), "ohci", 4) == 0))

#define __arch_pfn_to_dma(dev, pfn)	\
	({ dma_addr_t __dma = __pfn_to_phys(pfn); \
	   if (is_lbus_device(dev)) \
		__dma = __dma - PHYS_OFFSET + OMAP1510_LB_OFFSET; \
	   __dma; })

#define __arch_dma_to_pfn(dev, addr)	\
	({ dma_addr_t __dma = addr;				\
	   if (is_lbus_device(dev))				\
		__dma += PHYS_OFFSET - OMAP1510_LB_OFFSET;	\
	   __phys_to_pfn(__dma);				\
	})

#define __arch_dma_to_virt(dev, addr)	({ (void *) (is_lbus_device(dev) ? \
						lbus_to_virt(addr) : \
						__phys_to_virt(addr)); })

#define __arch_virt_to_dma(dev, addr)	({ unsigned long __addr = (unsigned long)(addr); \
					   (dma_addr_t) (is_lbus_device(dev) ? \
						virt_to_lbus(__addr) : \
						__virt_to_phys(__addr)); })

#endif	/* CONFIG_ARCH_OMAP15XX */

#endif

Filemanager

Name Type Size Permission Actions
ams-delta-fiq.h File 2.1 KB 0644
board-ams-delta.h File 2.8 KB 0644
hardware.h File 11.09 KB 0644
io.h File 1.69 KB 0644
irqs.h File 9.56 KB 0644
lcd_dma.h File 3.39 KB 0644
lcdc.h File 2.11 KB 0644
memory.h File 1.7 KB 0644
mtd-xip.h File 1.88 KB 0644
mux.h File 9.02 KB 0644
omap1510.h File 7.03 KB 0644
omap16xx.h File 8.41 KB 0644
omap7xx.h File 3.94 KB 0644
serial.h File 1.34 KB 0644
soc.h File 5.73 KB 0644
tc.h File 2.87 KB 0644
uncompress.h File 2.89 KB 0644
usb.h File 3.98 KB 0644