Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
2dca9227
cloud-kernel
项目概览
openanolis
/
cloud-kernel
接近 2 年 前同步成功
通知
169
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
2dca9227
编写于
10月 07, 2017
作者:
L
Linus Walleij
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'pinconf-rename' into devel
上级
027c87fe
ad5c3221
变更
20
隐藏空白更改
内联
并排
Showing
20 changed file
with
51 addition
and
78 deletion
+51
-78
Documentation/driver-api/pinctl.rst
Documentation/driver-api/pinctl.rst
+3
-3
Documentation/gpio/gpio-legacy.txt
Documentation/gpio/gpio-legacy.txt
+5
-5
Documentation/translations/zh_CN/gpio.txt
Documentation/translations/zh_CN/gpio.txt
+3
-3
drivers/gpio/gpio-aspeed.c
drivers/gpio/gpio-aspeed.c
+2
-2
drivers/gpio/gpio-em.c
drivers/gpio/gpio-em.c
+2
-2
drivers/gpio/gpio-pxa.c
drivers/gpio/gpio-pxa.c
+2
-12
drivers/gpio/gpio-rcar.c
drivers/gpio/gpio-rcar.c
+2
-2
drivers/gpio/gpio-tegra.c
drivers/gpio/gpio-tegra.c
+2
-2
drivers/gpio/gpio-tz1090.c
drivers/gpio/gpio-tz1090.c
+2
-2
drivers/gpio/gpiolib.c
drivers/gpio/gpiolib.c
+2
-2
drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
+2
-2
drivers/pinctrl/bcm/pinctrl-nsp-gpio.c
drivers/pinctrl/bcm/pinctrl-nsp-gpio.c
+2
-19
drivers/pinctrl/core.c
drivers/pinctrl/core.c
+6
-6
drivers/pinctrl/core.h
drivers/pinctrl/core.h
+1
-1
drivers/pinctrl/sh-pfc/gpio.c
drivers/pinctrl/sh-pfc/gpio.c
+2
-2
drivers/pinctrl/sirf/pinctrl-atlas7.c
drivers/pinctrl/sirf/pinctrl-atlas7.c
+2
-2
drivers/pinctrl/sirf/pinctrl-sirf.c
drivers/pinctrl/sirf/pinctrl-sirf.c
+2
-2
drivers/pinctrl/spear/pinctrl-plgpio.c
drivers/pinctrl/spear/pinctrl-plgpio.c
+3
-3
drivers/pinctrl/stm32/pinctrl-stm32.c
drivers/pinctrl/stm32/pinctrl-stm32.c
+2
-2
include/linux/pinctrl/consumer.h
include/linux/pinctrl/consumer.h
+4
-4
未找到文件。
Documentation/driver-api/pinctl.rst
浏览文件 @
2dca9227
...
...
@@ -757,8 +757,8 @@ that your datasheet calls "GPIO mode", but actually is just an electrical
configuration for a certain device. See the section below named
"GPIO mode pitfalls" for more details on this scenario.
The public pinmux API contains two functions named pinctrl_
request_gpio
()
and pinctrl_
free_gpio
(). These two functions shall *ONLY* be called from
The public pinmux API contains two functions named pinctrl_
gpio_request
()
and pinctrl_
gpio_free
(). These two functions shall *ONLY* be called from
gpiolib-based drivers as part of their gpio_request() and
gpio_free() semantics. Likewise the pinctrl_gpio_direction_[input|output]
shall only be called from within respective gpio_direction_[input|output]
...
...
@@ -790,7 +790,7 @@ gpiolib driver and the affected GPIO range, pin offset and desired direction
will be passed along to this function.
Alternatively to using these special functions, it is fully allowed to use
named functions for each GPIO pin, the pinctrl_
request_gpio
() will attempt to
named functions for each GPIO pin, the pinctrl_
gpio_request
() will attempt to
obtain the function "gpioN" where "N" is the global GPIO pin number if no
special GPIO-handler is registered.
...
...
Documentation/gpio/gpio-legacy.txt
浏览文件 @
2dca9227
...
...
@@ -273,8 +273,8 @@ easily, gating off unused clocks.
For GPIOs that use pins known to the pinctrl subsystem, that subsystem should
be informed of their use; a gpiolib driver's .request() operation may call
pinctrl_
request_gpio
(), and a gpiolib driver's .free() operation may call
pinctrl_
free_gpio(). The pinctrl subsystem allows a pinctrl_request_gpio
()
pinctrl_
gpio_request
(), and a gpiolib driver's .free() operation may call
pinctrl_
gpio_free(). The pinctrl subsystem allows a pinctrl_gpio_request
()
to succeed concurrently with a pin or pingroup being "owned" by a device for
pin multiplexing.
...
...
@@ -448,8 +448,8 @@ together with an optional gpio feature. We have already covered the
case where e.g. a GPIO controller need to reserve a pin or set the
direction of a pin by calling any of:
pinctrl_
request_gpio
()
pinctrl_
free_gpio
()
pinctrl_
gpio_request
()
pinctrl_
gpio_free
()
pinctrl_gpio_direction_input()
pinctrl_gpio_direction_output()
...
...
@@ -466,7 +466,7 @@ gpio (under gpiolib) is still maintained by gpio drivers. It may happen
that different pin ranges in a SoC is managed by different gpio drivers.
This makes it logical to let gpio drivers announce their pin ranges to
the pin ctrl subsystem before it will call 'pinctrl_
request_gpio
' in order
the pin ctrl subsystem before it will call 'pinctrl_
gpio_request
' in order
to request the corresponding pin to be prepared by the pinctrl subsystem
before any gpio usage.
...
...
Documentation/translations/zh_CN/gpio.txt
浏览文件 @
2dca9227
...
...
@@ -257,9 +257,9 @@ GPIO 值的命令需要等待其信息排到队首才发送命令,再获得其
简单地关闭未使用时钟)。
对于 GPIO 使用 pinctrl 子系统已知的引脚,子系统应该被告知其使用情况;
一个 gpiolib 驱动的 .request()操作应调用 pinctrl_
request_gpio
(),
而 gpiolib 驱动的 .free()操作应调用 pinctrl_
free_gpio
()。pinctrl
子系统允许 pinctrl_
request_gpio
()在某个引脚或引脚组以复用形式“属于”
一个 gpiolib 驱动的 .request()操作应调用 pinctrl_
gpio_request
(),
而 gpiolib 驱动的 .free()操作应调用 pinctrl_
gpio_free
()。pinctrl
子系统允许 pinctrl_
gpio_request
()在某个引脚或引脚组以复用形式“属于”
一个设备时都成功返回。
任何须将 GPIO 信号导向适当引脚的引脚复用硬件的编程应该发生在 GPIO
...
...
drivers/gpio/gpio-aspeed.c
浏览文件 @
2dca9227
...
...
@@ -536,12 +536,12 @@ static int aspeed_gpio_request(struct gpio_chip *chip, unsigned int offset)
if
(
!
have_gpio
(
gpiochip_get_data
(
chip
),
offset
))
return
-
ENODEV
;
return
pinctrl_
request_gpio
(
chip
->
base
+
offset
);
return
pinctrl_
gpio_request
(
chip
->
base
+
offset
);
}
static
void
aspeed_gpio_free
(
struct
gpio_chip
*
chip
,
unsigned
int
offset
)
{
pinctrl_
free_gpio
(
chip
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
base
+
offset
);
}
static
inline
void
__iomem
*
bank_debounce_reg
(
struct
aspeed_gpio
*
gpio
,
...
...
drivers/gpio/gpio-em.c
浏览文件 @
2dca9227
...
...
@@ -239,12 +239,12 @@ static int em_gio_to_irq(struct gpio_chip *chip, unsigned offset)
static
int
em_gio_request
(
struct
gpio_chip
*
chip
,
unsigned
offset
)
{
return
pinctrl_
request_gpio
(
chip
->
base
+
offset
);
return
pinctrl_
gpio_request
(
chip
->
base
+
offset
);
}
static
void
em_gio_free
(
struct
gpio_chip
*
chip
,
unsigned
offset
)
{
pinctrl_
free_gpio
(
chip
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
base
+
offset
);
/* Set the GPIO as an input to ensure that the next GPIO request won't
* drive the GPIO pin as an output.
...
...
drivers/gpio/gpio-pxa.c
浏览文件 @
2dca9227
...
...
@@ -330,16 +330,6 @@ static int pxa_gpio_of_xlate(struct gpio_chip *gc,
}
#endif
static
int
pxa_gpio_request
(
struct
gpio_chip
*
chip
,
unsigned
int
offset
)
{
return
pinctrl_request_gpio
(
chip
->
base
+
offset
);
}
static
void
pxa_gpio_free
(
struct
gpio_chip
*
chip
,
unsigned
int
offset
)
{
pinctrl_free_gpio
(
chip
->
base
+
offset
);
}
static
int
pxa_init_gpio_chip
(
struct
pxa_gpio_chip
*
pchip
,
int
ngpio
,
struct
device_node
*
np
,
void
__iomem
*
regbase
)
{
...
...
@@ -358,8 +348,8 @@ static int pxa_init_gpio_chip(struct pxa_gpio_chip *pchip, int ngpio,
pchip
->
chip
.
set
=
pxa_gpio_set
;
pchip
->
chip
.
to_irq
=
pxa_gpio_to_irq
;
pchip
->
chip
.
ngpio
=
ngpio
;
pchip
->
chip
.
request
=
pxa_gpio
_request
;
pchip
->
chip
.
free
=
pxa_gpio
_free
;
pchip
->
chip
.
request
=
gpiochip_generic
_request
;
pchip
->
chip
.
free
=
gpiochip_generic
_free
;
#ifdef CONFIG_OF_GPIO
pchip
->
chip
.
of_node
=
np
;
pchip
->
chip
.
of_xlate
=
pxa_gpio_of_xlate
;
...
...
drivers/gpio/gpio-rcar.c
浏览文件 @
2dca9227
...
...
@@ -249,7 +249,7 @@ static int gpio_rcar_request(struct gpio_chip *chip, unsigned offset)
if
(
error
<
0
)
return
error
;
error
=
pinctrl_
request_gpio
(
chip
->
base
+
offset
);
error
=
pinctrl_
gpio_request
(
chip
->
base
+
offset
);
if
(
error
)
pm_runtime_put
(
&
p
->
pdev
->
dev
);
...
...
@@ -260,7 +260,7 @@ static void gpio_rcar_free(struct gpio_chip *chip, unsigned offset)
{
struct
gpio_rcar_priv
*
p
=
gpiochip_get_data
(
chip
);
pinctrl_
free_gpio
(
chip
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
base
+
offset
);
/*
* Set the GPIO as an input to ensure that the next GPIO request won't
...
...
drivers/gpio/gpio-tegra.c
浏览文件 @
2dca9227
...
...
@@ -141,14 +141,14 @@ static void tegra_gpio_disable(struct tegra_gpio_info *tgi, unsigned int gpio)
static
int
tegra_gpio_request
(
struct
gpio_chip
*
chip
,
unsigned
int
offset
)
{
return
pinctrl_
request_gpio
(
offset
);
return
pinctrl_
gpio_request
(
offset
);
}
static
void
tegra_gpio_free
(
struct
gpio_chip
*
chip
,
unsigned
int
offset
)
{
struct
tegra_gpio_info
*
tgi
=
gpiochip_get_data
(
chip
);
pinctrl_
free_gpio
(
offset
);
pinctrl_
gpio_free
(
offset
);
tegra_gpio_disable
(
tgi
,
offset
);
}
...
...
drivers/gpio/gpio-tz1090.c
浏览文件 @
2dca9227
...
...
@@ -232,7 +232,7 @@ static int tz1090_gpio_request(struct gpio_chip *chip, unsigned int offset)
struct
tz1090_gpio_bank
*
bank
=
gpiochip_get_data
(
chip
);
int
ret
;
ret
=
pinctrl_
request_gpio
(
chip
->
base
+
offset
);
ret
=
pinctrl_
gpio_request
(
chip
->
base
+
offset
);
if
(
ret
)
return
ret
;
...
...
@@ -246,7 +246,7 @@ static void tz1090_gpio_free(struct gpio_chip *chip, unsigned int offset)
{
struct
tz1090_gpio_bank
*
bank
=
gpiochip_get_data
(
chip
);
pinctrl_
free_gpio
(
chip
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
base
+
offset
);
tz1090_gpio_clear_bit
(
bank
,
REG_GPIO_BIT_EN
,
offset
);
}
...
...
drivers/gpio/gpiolib.c
浏览文件 @
2dca9227
...
...
@@ -1859,7 +1859,7 @@ static inline void gpiochip_irqchip_free_valid_mask(struct gpio_chip *gpiochip)
*/
int
gpiochip_generic_request
(
struct
gpio_chip
*
chip
,
unsigned
offset
)
{
return
pinctrl_
request_gpio
(
chip
->
gpiodev
->
base
+
offset
);
return
pinctrl_
gpio_request
(
chip
->
gpiodev
->
base
+
offset
);
}
EXPORT_SYMBOL_GPL
(
gpiochip_generic_request
);
...
...
@@ -1870,7 +1870,7 @@ EXPORT_SYMBOL_GPL(gpiochip_generic_request);
*/
void
gpiochip_generic_free
(
struct
gpio_chip
*
chip
,
unsigned
offset
)
{
pinctrl_
free_gpio
(
chip
->
gpiodev
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
gpiodev
->
base
+
offset
);
}
EXPORT_SYMBOL_GPL
(
gpiochip_generic_free
);
...
...
drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
浏览文件 @
2dca9227
...
...
@@ -311,7 +311,7 @@ static int iproc_gpio_request(struct gpio_chip *gc, unsigned offset)
if
(
!
chip
->
pinmux_is_supported
)
return
0
;
return
pinctrl_
request_gpio
(
gpio
);
return
pinctrl_
gpio_request
(
gpio
);
}
static
void
iproc_gpio_free
(
struct
gpio_chip
*
gc
,
unsigned
offset
)
...
...
@@ -322,7 +322,7 @@ static void iproc_gpio_free(struct gpio_chip *gc, unsigned offset)
if
(
!
chip
->
pinmux_is_supported
)
return
;
pinctrl_
free_gpio
(
gpio
);
pinctrl_
gpio_free
(
gpio
);
}
static
int
iproc_gpio_direction_input
(
struct
gpio_chip
*
gc
,
unsigned
gpio
)
...
...
drivers/pinctrl/bcm/pinctrl-nsp-gpio.c
浏览文件 @
2dca9227
...
...
@@ -275,23 +275,6 @@ static struct irq_chip nsp_gpio_irq_chip = {
.
irq_set_type
=
nsp_gpio_irq_set_type
,
};
/*
* Request the nsp IOMUX pinmux controller to mux individual pins to GPIO
*/
static
int
nsp_gpio_request
(
struct
gpio_chip
*
gc
,
unsigned
offset
)
{
unsigned
gpio
=
gc
->
base
+
offset
;
return
pinctrl_request_gpio
(
gpio
);
}
static
void
nsp_gpio_free
(
struct
gpio_chip
*
gc
,
unsigned
offset
)
{
unsigned
gpio
=
gc
->
base
+
offset
;
pinctrl_free_gpio
(
gpio
);
}
static
int
nsp_gpio_direction_input
(
struct
gpio_chip
*
gc
,
unsigned
gpio
)
{
struct
nsp_gpio
*
chip
=
gpiochip_get_data
(
gc
);
...
...
@@ -670,8 +653,8 @@ static int nsp_gpio_probe(struct platform_device *pdev)
gc
->
label
=
dev_name
(
dev
);
gc
->
parent
=
dev
;
gc
->
of_node
=
dev
->
of_node
;
gc
->
request
=
nsp_gpio
_request
;
gc
->
free
=
nsp_gpio
_free
;
gc
->
request
=
gpiochip_generic
_request
;
gc
->
free
=
gpiochip_generic
_free
;
gc
->
direction_input
=
nsp_gpio_direction_input
;
gc
->
direction_output
=
nsp_gpio_direction_output
;
gc
->
set
=
nsp_gpio_set
;
...
...
drivers/pinctrl/core.c
浏览文件 @
2dca9227
...
...
@@ -733,14 +733,14 @@ int pinctrl_get_group_selector(struct pinctrl_dev *pctldev,
}
/**
* pinctrl_
request_gpio
() - request a single pin to be used as GPIO
* pinctrl_
gpio_request
() - request a single pin to be used as GPIO
* @gpio: the GPIO pin number from the GPIO subsystem number space
*
* This function should *ONLY* be used from gpiolib-based GPIO drivers,
* as part of their gpio_request() semantics, platforms and individual drivers
* shall *NOT* request GPIO pins to be muxed in.
*/
int
pinctrl_
request_gpio
(
unsigned
gpio
)
int
pinctrl_
gpio_request
(
unsigned
gpio
)
{
struct
pinctrl_dev
*
pctldev
;
struct
pinctrl_gpio_range
*
range
;
...
...
@@ -765,17 +765,17 @@ int pinctrl_request_gpio(unsigned gpio)
return
ret
;
}
EXPORT_SYMBOL_GPL
(
pinctrl_
request_gpio
);
EXPORT_SYMBOL_GPL
(
pinctrl_
gpio_request
);
/**
* pinctrl_
free_gpio
() - free control on a single pin, currently used as GPIO
* pinctrl_
gpio_free
() - free control on a single pin, currently used as GPIO
* @gpio: the GPIO pin number from the GPIO subsystem number space
*
* This function should *ONLY* be used from gpiolib-based GPIO drivers,
* as part of their gpio_free() semantics, platforms and individual drivers
* shall *NOT* request GPIO pins to be muxed out.
*/
void
pinctrl_
free_gpio
(
unsigned
gpio
)
void
pinctrl_
gpio_free
(
unsigned
gpio
)
{
struct
pinctrl_dev
*
pctldev
;
struct
pinctrl_gpio_range
*
range
;
...
...
@@ -795,7 +795,7 @@ void pinctrl_free_gpio(unsigned gpio)
mutex_unlock
(
&
pctldev
->
mutex
);
}
EXPORT_SYMBOL_GPL
(
pinctrl_
free_gpio
);
EXPORT_SYMBOL_GPL
(
pinctrl_
gpio_free
);
static
int
pinctrl_gpio_direction
(
unsigned
gpio
,
bool
input
)
{
...
...
drivers/pinctrl/core.h
浏览文件 @
2dca9227
...
...
@@ -154,7 +154,7 @@ struct pinctrl_setting {
* or pin, and each of these will increment the @usecount.
* @mux_owner: The name of device that called pinctrl_get().
* @mux_setting: The most recent selected mux setting for this pin, if any.
* @gpio_owner: If pinctrl_
request_gpio
() was called for this pin, this is
* @gpio_owner: If pinctrl_
gpio_request
() was called for this pin, this is
* the name of the GPIO that "owns" this pin.
*/
struct
pin_desc
{
...
...
drivers/pinctrl/sh-pfc/gpio.c
浏览文件 @
2dca9227
...
...
@@ -139,12 +139,12 @@ static int gpio_pin_request(struct gpio_chip *gc, unsigned offset)
if
(
idx
<
0
||
pfc
->
info
->
pins
[
idx
].
enum_id
==
0
)
return
-
EINVAL
;
return
pinctrl_
request_gpio
(
offset
);
return
pinctrl_
gpio_request
(
offset
);
}
static
void
gpio_pin_free
(
struct
gpio_chip
*
gc
,
unsigned
offset
)
{
return
pinctrl_
free_gpio
(
offset
);
return
pinctrl_
gpio_free
(
offset
);
}
static
void
gpio_pin_set_value
(
struct
sh_pfc_chip
*
chip
,
unsigned
offset
,
...
...
drivers/pinctrl/sirf/pinctrl-atlas7.c
浏览文件 @
2dca9227
...
...
@@ -5860,7 +5860,7 @@ static int atlas7_gpio_request(struct gpio_chip *chip,
if
(
ret
<
0
)
return
ret
;
if
(
pinctrl_
request_gpio
(
chip
->
base
+
gpio
))
if
(
pinctrl_
gpio_request
(
chip
->
base
+
gpio
))
return
-
ENODEV
;
raw_spin_lock_irqsave
(
&
a7gc
->
lock
,
flags
);
...
...
@@ -5890,7 +5890,7 @@ static void atlas7_gpio_free(struct gpio_chip *chip,
raw_spin_unlock_irqrestore
(
&
a7gc
->
lock
,
flags
);
pinctrl_
free_gpio
(
chip
->
base
+
gpio
);
pinctrl_
gpio_free
(
chip
->
base
+
gpio
);
}
static
int
atlas7_gpio_direction_input
(
struct
gpio_chip
*
chip
,
...
...
drivers/pinctrl/sirf/pinctrl-sirf.c
浏览文件 @
2dca9227
...
...
@@ -614,7 +614,7 @@ static int sirfsoc_gpio_request(struct gpio_chip *chip, unsigned offset)
struct
sirfsoc_gpio_bank
*
bank
=
sirfsoc_gpio_to_bank
(
sgpio
,
offset
);
unsigned
long
flags
;
if
(
pinctrl_
request_gpio
(
chip
->
base
+
offset
))
if
(
pinctrl_
gpio_request
(
chip
->
base
+
offset
))
return
-
ENODEV
;
spin_lock_irqsave
(
&
bank
->
lock
,
flags
);
...
...
@@ -644,7 +644,7 @@ static void sirfsoc_gpio_free(struct gpio_chip *chip, unsigned offset)
spin_unlock_irqrestore
(
&
bank
->
lock
,
flags
);
pinctrl_
free_gpio
(
chip
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
base
+
offset
);
}
static
int
sirfsoc_gpio_direction_input
(
struct
gpio_chip
*
chip
,
unsigned
gpio
)
...
...
drivers/pinctrl/spear/pinctrl-plgpio.c
浏览文件 @
2dca9227
...
...
@@ -204,7 +204,7 @@ static int plgpio_request(struct gpio_chip *chip, unsigned offset)
if
(
offset
>=
chip
->
ngpio
)
return
-
EINVAL
;
ret
=
pinctrl_
request_gpio
(
gpio
);
ret
=
pinctrl_
gpio_request
(
gpio
);
if
(
ret
)
return
ret
;
...
...
@@ -242,7 +242,7 @@ static int plgpio_request(struct gpio_chip *chip, unsigned offset)
if
(
!
IS_ERR
(
plgpio
->
clk
))
clk_disable
(
plgpio
->
clk
);
err0:
pinctrl_
free_gpio
(
gpio
);
pinctrl_
gpio_free
(
gpio
);
return
ret
;
}
...
...
@@ -273,7 +273,7 @@ static void plgpio_free(struct gpio_chip *chip, unsigned offset)
if
(
!
IS_ERR
(
plgpio
->
clk
))
clk_disable
(
plgpio
->
clk
);
pinctrl_
free_gpio
(
gpio
);
pinctrl_
gpio_free
(
gpio
);
}
/* PLGPIO IRQ */
...
...
drivers/pinctrl/stm32/pinctrl-stm32.c
浏览文件 @
2dca9227
...
...
@@ -150,12 +150,12 @@ static int stm32_gpio_request(struct gpio_chip *chip, unsigned offset)
return
-
EINVAL
;
}
return
pinctrl_
request_gpio
(
chip
->
base
+
offset
);
return
pinctrl_
gpio_request
(
chip
->
base
+
offset
);
}
static
void
stm32_gpio_free
(
struct
gpio_chip
*
chip
,
unsigned
offset
)
{
pinctrl_
free_gpio
(
chip
->
base
+
offset
);
pinctrl_
gpio_free
(
chip
->
base
+
offset
);
}
static
int
stm32_gpio_get
(
struct
gpio_chip
*
chip
,
unsigned
offset
)
...
...
include/linux/pinctrl/consumer.h
浏览文件 @
2dca9227
...
...
@@ -25,8 +25,8 @@ struct device;
#ifdef CONFIG_PINCTRL
/* External interface to pin control */
extern
int
pinctrl_
request_gpio
(
unsigned
gpio
);
extern
void
pinctrl_
free_gpio
(
unsigned
gpio
);
extern
int
pinctrl_
gpio_request
(
unsigned
gpio
);
extern
void
pinctrl_
gpio_free
(
unsigned
gpio
);
extern
int
pinctrl_gpio_direction_input
(
unsigned
gpio
);
extern
int
pinctrl_gpio_direction_output
(
unsigned
gpio
);
extern
int
pinctrl_gpio_set_config
(
unsigned
gpio
,
unsigned
long
config
);
...
...
@@ -62,12 +62,12 @@ static inline int pinctrl_pm_select_idle_state(struct device *dev)
#else
/* !CONFIG_PINCTRL */
static
inline
int
pinctrl_
request_gpio
(
unsigned
gpio
)
static
inline
int
pinctrl_
gpio_request
(
unsigned
gpio
)
{
return
0
;
}
static
inline
void
pinctrl_
free_gpio
(
unsigned
gpio
)
static
inline
void
pinctrl_
gpio_free
(
unsigned
gpio
)
{
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录