mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
gpio: stm32: create include file for driver private data
The stm32 gpio driver private data are not needed in arch include files, they are not used by code except for stm32 gpio and pincontrol drivers, using the same IP; the defines for this IP is moved in a new file "stm32_gpio_priv.h" in driver/gpio. This patch avoids to have duplicated file gpio.h for each SOC in MPU directory mach-stm32mp and in each MCU directory arch-stm32* and allows to remove CONFIG_GPIO_EXTRA_HEADER for all STM32. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
This commit is contained in:
parent
c67ca25dfc
commit
56a368f661
12 changed files with 7 additions and 137 deletions
|
@ -1810,7 +1810,6 @@ config ARCH_STM32
|
|||
select CPU_V7M
|
||||
select DM
|
||||
select DM_SERIAL
|
||||
select GPIO_EXTRA_HEADER
|
||||
imply CMD_DM
|
||||
|
||||
config ARCH_STI
|
||||
|
@ -1836,7 +1835,6 @@ config ARCH_STM32MP
|
|||
select DM_GPIO
|
||||
select DM_RESET
|
||||
select DM_SERIAL
|
||||
select GPIO_EXTRA_HEADER
|
||||
select MISC
|
||||
select OF_CONTROL
|
||||
select OF_LIBFDT
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* (C) Copyright 2011
|
||||
* Yuri Tikhonov, Emcraft Systems, yur@emcraft.com
|
||||
*
|
||||
* (C) Copyright 2015
|
||||
* Kamil Lulko, <kamil.lulko@gmail.com>
|
||||
*/
|
||||
|
||||
#ifndef _STM32_GPIO_H_
|
||||
#define _STM32_GPIO_H_
|
||||
|
||||
#include <asm/arch-stm32/gpio.h>
|
||||
|
||||
#endif /* _STM32_GPIO_H_ */
|
|
@ -1,12 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Copyright (C) 2016, STMicroelectronics - All Rights Reserved
|
||||
* Author(s): Vikas Manocha, <vikas.manocha@st.com> for STMicroelectronics.
|
||||
*/
|
||||
|
||||
#ifndef _STM32_GPIO_H_
|
||||
#define _STM32_GPIO_H_
|
||||
|
||||
#include <asm/arch-stm32/gpio.h>
|
||||
|
||||
#endif /* _STM32_GPIO_H_ */
|
|
@ -1,12 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Copyright (C) 2017, STMicroelectronics - All Rights Reserved
|
||||
* Author(s): Patrice Chotard, <patrice.chotard@foss.st.com> for STMicroelectronics.
|
||||
*/
|
||||
|
||||
#ifndef _STM32_GPIO_H_
|
||||
#define _STM32_GPIO_H_
|
||||
|
||||
#include <asm/arch-stm32/gpio.h>
|
||||
|
||||
#endif /* _STM32_GPIO_H_ */
|
|
@ -1,87 +0,0 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* (C) Copyright 2016
|
||||
* Vikas Manocha, <vikas.manocha@st.com>
|
||||
*/
|
||||
|
||||
#ifndef _STM32_GPIO_H_
|
||||
#define _STM32_GPIO_H_
|
||||
#include <asm/gpio.h>
|
||||
|
||||
enum stm32_gpio_mode {
|
||||
STM32_GPIO_MODE_IN = 0,
|
||||
STM32_GPIO_MODE_OUT,
|
||||
STM32_GPIO_MODE_AF,
|
||||
STM32_GPIO_MODE_AN
|
||||
};
|
||||
|
||||
enum stm32_gpio_otype {
|
||||
STM32_GPIO_OTYPE_PP = 0,
|
||||
STM32_GPIO_OTYPE_OD
|
||||
};
|
||||
|
||||
enum stm32_gpio_speed {
|
||||
STM32_GPIO_SPEED_2M = 0,
|
||||
STM32_GPIO_SPEED_25M,
|
||||
STM32_GPIO_SPEED_50M,
|
||||
STM32_GPIO_SPEED_100M
|
||||
};
|
||||
|
||||
enum stm32_gpio_pupd {
|
||||
STM32_GPIO_PUPD_NO = 0,
|
||||
STM32_GPIO_PUPD_UP,
|
||||
STM32_GPIO_PUPD_DOWN
|
||||
};
|
||||
|
||||
enum stm32_gpio_af {
|
||||
STM32_GPIO_AF0 = 0,
|
||||
STM32_GPIO_AF1,
|
||||
STM32_GPIO_AF2,
|
||||
STM32_GPIO_AF3,
|
||||
STM32_GPIO_AF4,
|
||||
STM32_GPIO_AF5,
|
||||
STM32_GPIO_AF6,
|
||||
STM32_GPIO_AF7,
|
||||
STM32_GPIO_AF8,
|
||||
STM32_GPIO_AF9,
|
||||
STM32_GPIO_AF10,
|
||||
STM32_GPIO_AF11,
|
||||
STM32_GPIO_AF12,
|
||||
STM32_GPIO_AF13,
|
||||
STM32_GPIO_AF14,
|
||||
STM32_GPIO_AF15
|
||||
};
|
||||
|
||||
struct stm32_gpio_dsc {
|
||||
u8 port;
|
||||
u8 pin;
|
||||
};
|
||||
|
||||
struct stm32_gpio_ctl {
|
||||
enum stm32_gpio_mode mode;
|
||||
enum stm32_gpio_otype otype;
|
||||
enum stm32_gpio_speed speed;
|
||||
enum stm32_gpio_pupd pupd;
|
||||
enum stm32_gpio_af af;
|
||||
};
|
||||
|
||||
struct stm32_gpio_regs {
|
||||
u32 moder; /* GPIO port mode */
|
||||
u32 otyper; /* GPIO port output type */
|
||||
u32 ospeedr; /* GPIO port output speed */
|
||||
u32 pupdr; /* GPIO port pull-up/pull-down */
|
||||
u32 idr; /* GPIO port input data */
|
||||
u32 odr; /* GPIO port output data */
|
||||
u32 bsrr; /* GPIO port bit set/reset */
|
||||
u32 lckr; /* GPIO port configuration lock */
|
||||
u32 afr[2]; /* GPIO alternate function */
|
||||
};
|
||||
|
||||
struct stm32_gpio_priv {
|
||||
struct stm32_gpio_regs *regs;
|
||||
unsigned int gpio_range;
|
||||
};
|
||||
|
||||
int stm32_offset_to_index(struct udevice *dev, unsigned int offset);
|
||||
|
||||
#endif /* _STM32_GPIO_H_ */
|
|
@ -21,7 +21,6 @@
|
|||
#include <asm/io.h>
|
||||
#include <asm/armv7m.h>
|
||||
#include <asm/arch/stm32.h>
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <asm/arch/syscfg.h>
|
||||
#include <asm/gpio.h>
|
||||
#include <linux/delay.h>
|
||||
|
|
|
@ -11,7 +11,6 @@
|
|||
#include <dm.h>
|
||||
#include <fdtdec.h>
|
||||
#include <log.h>
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <asm/arch/stm32.h>
|
||||
#include <asm/gpio.h>
|
||||
#include <asm/io.h>
|
||||
|
@ -20,6 +19,8 @@
|
|||
#include <linux/errno.h>
|
||||
#include <linux/io.h>
|
||||
|
||||
#include "stm32_gpio_priv.h"
|
||||
|
||||
#define STM32_GPIOS_PER_BANK 16
|
||||
|
||||
#define MODE_BITS(gpio_pin) ((gpio_pin) * 2)
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
* Author(s): Vikas Manocha, <vikas.manocha@st.com> for STMicroelectronics.
|
||||
*/
|
||||
|
||||
#ifndef _GPIO_H_
|
||||
#define _GPIO_H_
|
||||
#ifndef _STM32_GPIO_PRIV_H_
|
||||
#define _STM32_GPIO_PRIV_H_
|
||||
|
||||
enum stm32_gpio_mode {
|
||||
STM32_GPIO_MODE_IN = 0,
|
||||
|
@ -83,4 +83,4 @@ struct stm32_gpio_priv {
|
|||
|
||||
int stm32_offset_to_index(struct udevice *dev, unsigned int offset);
|
||||
|
||||
#endif /* _GPIO_H_ */
|
||||
#endif /* _STM32_GPIO_PRIV_H_ */
|
|
@ -10,7 +10,6 @@
|
|||
#include <hwspinlock.h>
|
||||
#include <log.h>
|
||||
#include <malloc.h>
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <asm/gpio.h>
|
||||
#include <asm/io.h>
|
||||
#include <dm/device_compat.h>
|
||||
|
@ -20,6 +19,8 @@
|
|||
#include <linux/err.h>
|
||||
#include <linux/libfdt.h>
|
||||
|
||||
#include "../gpio/stm32_gpio_priv.h"
|
||||
|
||||
#define MAX_PINS_ONE_IP 70
|
||||
#define MODE_BITS_MASK 3
|
||||
#define OSPEED_MASK 3
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
#include <panel.h>
|
||||
#include <video.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <dm/device-internal.h>
|
||||
#include <dm/device_compat.h>
|
||||
#include <linux/bitops.h>
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
#include <video.h>
|
||||
#include <video_bridge.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <dm/device-internal.h>
|
||||
#include <dm/device_compat.h>
|
||||
#include <dm/lists.h>
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
#include <video.h>
|
||||
#include <video_bridge.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/arch/gpio.h>
|
||||
#include <dm/device-internal.h>
|
||||
#include <dm/device_compat.h>
|
||||
#include <linux/bitops.h>
|
||||
|
|
Loading…
Reference in a new issue