mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-11-04 05:50:17 +00:00 
			
		
		
		
	These GPIO_PORTx macros should be in gpio.h, but not in imx-regs.h. Also, imx-regs.h and iomux-v3.h has same macro defintion for GPIO_PORTx, and both of them are included in mxc_i2c.c(include mxc_i2c.h). This will incur build warnings with macro redefinition. Since iomux-v3.h is not compatible with mx27, we can not simply include iomux-v3.h for mx27, so move the GPIO_PORTx to gpio.h to fix the build warning. Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
		
			
				
	
	
		
			60 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * Copyright (C) 2012
 | 
						|
 * Philippe Reynes <tremyfr@yahoo.fr>
 | 
						|
 *
 | 
						|
 * SPDX-License-Identifier:	GPL-2.0+
 | 
						|
 */
 | 
						|
 | 
						|
 | 
						|
#ifndef __ASM_ARCH_MX27_GPIO_H
 | 
						|
#define __ASM_ARCH_MX27_GPIO_H
 | 
						|
 | 
						|
/* GPIO registers */
 | 
						|
struct gpio_regs {
 | 
						|
	u32 gpio_dir; /* DDIR */
 | 
						|
	u32 ocr1;
 | 
						|
	u32 ocr2;
 | 
						|
	u32 iconfa1;
 | 
						|
	u32 iconfa2;
 | 
						|
	u32 iconfb1;
 | 
						|
	u32 iconfb2;
 | 
						|
	u32 gpio_dr; /* DR */
 | 
						|
	u32 gius;
 | 
						|
	u32 gpio_psr; /* SSR */
 | 
						|
	u32 icr1;
 | 
						|
	u32 icr2;
 | 
						|
	u32 imr;
 | 
						|
	u32 isr;
 | 
						|
	u32 gpr;
 | 
						|
	u32 swr;
 | 
						|
	u32 puen;
 | 
						|
	u32 res[0x2f];
 | 
						|
};
 | 
						|
 | 
						|
/* This structure is used by the function imx_gpio_mode */
 | 
						|
struct gpio_port_regs {
 | 
						|
	struct gpio_regs port[6];
 | 
						|
};
 | 
						|
 | 
						|
/*
 | 
						|
 *  GPIO Module and I/O Multiplexer
 | 
						|
 */
 | 
						|
#define PORTA 0
 | 
						|
#define PORTB 1
 | 
						|
#define PORTC 2
 | 
						|
#define PORTD 3
 | 
						|
#define PORTE 4
 | 
						|
#define PORTF 5
 | 
						|
 | 
						|
#define GPIO_PIN_MASK		0x1f
 | 
						|
#define GPIO_PORT_SHIFT		5
 | 
						|
#define GPIO_PORT_MASK		(0x7 << GPIO_PORT_SHIFT)
 | 
						|
#define GPIO_PORTA		(PORTA << GPIO_PORT_SHIFT)
 | 
						|
#define GPIO_PORTB		(PORTB << GPIO_PORT_SHIFT)
 | 
						|
#define GPIO_PORTC		(PORTC << GPIO_PORT_SHIFT)
 | 
						|
#define GPIO_PORTD		(PORTD << GPIO_PORT_SHIFT)
 | 
						|
#define GPIO_PORTE		(PORTE << GPIO_PORT_SHIFT)
 | 
						|
#define GPIO_PORTF		(PORTF << GPIO_PORT_SHIFT)
 | 
						|
 | 
						|
#endif
 |