mirror of
				https://source.denx.de/u-boot/u-boot.git
				synced 2025-10-31 00:11:51 +01:00 
			
		
		
		
	At present if CONFIG_SPL_GPIO_SUPPORT is enabled then the GPIO uclass is included in SPL/TPL without any control for boards. Some boards may want to disable this to reduce code size where GPIOs are not needed in SPL or TPL. Add a new Kconfig option to permit this. Default it to 'y' so that existing boards work correctly. Change existing uses of CONFIG_DM_GPIO to CONFIG_IS_ENABLED(DM_GPIO) to preserve the current behaviour. Also update the 74x164 GPIO driver since it cannot build with SPL. This allows us to remove the hacks in config_uncmd_spl.h and Makefile.uncmd_spl (eventually those files should be removed). Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| /*
 | |
|  * Copyright (c) 2009 Wind River Systems, Inc.
 | |
|  * Tom Rix <Tom.Rix@windriver.com>
 | |
|  *
 | |
|  * This work is derived from the linux 2.6.27 kernel source
 | |
|  * To fetch, use the kernel repository
 | |
|  * git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
 | |
|  * Use the v2.6.27 tag.
 | |
|  *
 | |
|  * Below is the original's header including its copyright
 | |
|  *
 | |
|  *  linux/arch/arm/plat-omap/gpio.c
 | |
|  *
 | |
|  * Support functions for OMAP GPIO
 | |
|  *
 | |
|  * Copyright (C) 2003-2005 Nokia Corporation
 | |
|  * Written by Juha Yrjölä <juha.yrjola@nokia.com>
 | |
|  */
 | |
| #ifndef _GPIO_H
 | |
| #define _GPIO_H
 | |
| 
 | |
| #include <asm/arch/cpu.h>
 | |
| 
 | |
| #if CONFIG_IS_ENABLED(DM_GPIO)
 | |
| 
 | |
| /* Information about a GPIO bank */
 | |
| struct omap_gpio_platdata {
 | |
| 	int bank_index;
 | |
| 	ulong base;	/* address of registers in physical memory */
 | |
| 	const char *port_name;
 | |
| };
 | |
| 
 | |
| #else
 | |
| 
 | |
| struct gpio_bank {
 | |
| 	void *base;
 | |
| };
 | |
| 
 | |
| extern const struct gpio_bank *const omap_gpio_bank;
 | |
| 
 | |
| /**
 | |
|  * Check if gpio is valid.
 | |
|  *
 | |
|  * @param gpio	GPIO number
 | |
|  * @return 1 if ok, 0 on error
 | |
|  */
 | |
| int gpio_is_valid(int gpio);
 | |
| #endif
 | |
| 
 | |
| #endif /* _GPIO_H_ */
 |