mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-08 05:43:21 +09:00
![Simon Glass](/assets/img/avatar_default.png)
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_ */
|