1139749Simp/* SPDX-License-Identifier: GPL-2.0-or-later */
2193640Sariff/*
3193640Sariff * OMAP Traffic Controller
4193640Sariff *
550724Scg * Copyright (C) 2004 Nokia Corporation
650724Scg * Author: Imre Deak <imre.deak@nokia.com>
750724Scg */
850724Scg
950724Scg#ifndef __ASM_ARCH_TC_H
1050724Scg#define __ASM_ARCH_TC_H
1150724Scg
1250724Scg#define TCMIF_BASE		0xfffecc00
1350724Scg#define OMAP_TC_OCPT1_PRIOR	(TCMIF_BASE + 0x00)
1450724Scg#define OMAP_TC_EMIFS_PRIOR	(TCMIF_BASE + 0x04)
1550724Scg#define OMAP_TC_EMIFF_PRIOR	(TCMIF_BASE + 0x08)
1650724Scg#define EMIFS_CONFIG		(TCMIF_BASE + 0x0c)
1750724Scg#define EMIFS_CS0_CONFIG	(TCMIF_BASE + 0x10)
1850724Scg#define EMIFS_CS1_CONFIG	(TCMIF_BASE + 0x14)
1950724Scg#define EMIFS_CS2_CONFIG	(TCMIF_BASE + 0x18)
2050724Scg#define EMIFS_CS3_CONFIG	(TCMIF_BASE + 0x1c)
2150724Scg#define EMIFF_SDRAM_CONFIG	(TCMIF_BASE + 0x20)
2250724Scg#define EMIFF_MRS		(TCMIF_BASE + 0x24)
2350724Scg#define TC_TIMEOUT1		(TCMIF_BASE + 0x28)
2450724Scg#define TC_TIMEOUT2		(TCMIF_BASE + 0x2c)
2550724Scg#define TC_TIMEOUT3		(TCMIF_BASE + 0x30)
2650724Scg#define TC_ENDIANISM		(TCMIF_BASE + 0x34)
2750724Scg#define EMIFF_SDRAM_CONFIG_2	(TCMIF_BASE + 0x3c)
2850724Scg#define EMIF_CFG_DYNAMIC_WS	(TCMIF_BASE + 0x40)
29193640Sariff#define EMIFS_ACS0		(TCMIF_BASE + 0x50)
30193640Sariff#define EMIFS_ACS1		(TCMIF_BASE + 0x54)
31193640Sariff#define EMIFS_ACS2		(TCMIF_BASE + 0x58)
32193640Sariff#define EMIFS_ACS3		(TCMIF_BASE + 0x5c)
3353465Scg#define OMAP_TC_OCPT2_PRIOR	(TCMIF_BASE + 0xd0)
3450724Scg
35193640Sariff/* external EMIFS chipselect regions */
3670134Scg#define	OMAP_CS0_PHYS		0x00000000
3770134Scg#define	OMAP_CS0_SIZE		SZ_64M
3882180Scg
3982180Scg#define	OMAP_CS1_PHYS		0x04000000
40227293Sed#define	OMAP_CS1_SIZE		SZ_64M
4170134Scg
42193640Sariff#define	OMAP_CS1A_PHYS		OMAP_CS1_PHYS
43193640Sariff#define	OMAP_CS1A_SIZE		SZ_32M
44193640Sariff
45193640Sariff#define	OMAP_CS1B_PHYS		(OMAP_CS1A_PHYS + OMAP_CS1A_SIZE)
46193640Sariff#define	OMAP_CS1B_SIZE		SZ_32M
47193640Sariff
4874763Scg#define	OMAP_CS2_PHYS		0x08000000
4974763Scg#define	OMAP_CS2_SIZE		SZ_64M
5074763Scg
5174763Scg#define	OMAP_CS2A_PHYS		OMAP_CS2_PHYS
52168264Sariff#define	OMAP_CS2A_SIZE		SZ_32M
5374763Scg
5474763Scg#define	OMAP_CS2B_PHYS		(OMAP_CS2A_PHYS + OMAP_CS2A_SIZE)
5574763Scg#define	OMAP_CS2B_SIZE		SZ_32M
56170815Sariff
57150825Snetchild#define	OMAP_CS3_PHYS		0x0c000000
5874763Scg#define	OMAP_CS3_SIZE		SZ_64M
5974763Scg
6074763Scg#ifndef	__ASSEMBLER__
6174763Scg
6274763Scg/* EMIF Slow Interface Configuration Register */
63162828Sariff#define OMAP_EMIFS_CONFIG_FR		(1 << 4)
64162738Sariff#define OMAP_EMIFS_CONFIG_PDE		(1 << 3)
65162828Sariff#define OMAP_EMIFS_CONFIG_PWD_EN	(1 << 2)
6674763Scg#define OMAP_EMIFS_CONFIG_BM		(1 << 1)
67107285Scg#define OMAP_EMIFS_CONFIG_WP		(1 << 0)
68162588Snetchild
69162588Snetchild#define EMIFS_CCS(n)		(EMIFS_CS0_CONFIG + (4 * (n)))
70162588Snetchild#define EMIFS_ACS(n)		(EMIFS_ACS0 + (4 * (n)))
71162588Snetchild
72162588Snetchild#endif	/* __ASSEMBLER__ */
73162588Snetchild
74162588Snetchild#endif	/* __ASM_ARCH_TC_H */
7574763Scg