drivers/pinctrl/nomadik/pinctrl-nomadik-stn8815.c

Source file repositories/reference/linux-study-clean/drivers/pinctrl/nomadik/pinctrl-nomadik-stn8815.c

File Facts

System
Linux kernel
Corpus path
drivers/pinctrl/nomadik/pinctrl-nomadik-stn8815.c
Extension
.c
Size
14255 bytes
Lines
370
Domain
Driver Families
Bucket
drivers/pinctrl
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

// SPDX-License-Identifier: GPL-2.0
#include <linux/kernel.h>
#include <linux/types.h>

#include <linux/pinctrl/pinctrl.h>
#include <linux/gpio/driver.h>

#include <linux/gpio/gpio-nomadik.h>

/* All the pins that can be used for GPIO and some other functions */
#define _GPIO(offset)		(offset)

#define STN8815_PIN_B4		_GPIO(0)
#define STN8815_PIN_D5		_GPIO(1)
#define STN8815_PIN_C5		_GPIO(2)
#define STN8815_PIN_A4		_GPIO(3)
#define STN8815_PIN_B5		_GPIO(4)
#define STN8815_PIN_D6		_GPIO(5)
#define STN8815_PIN_C6		_GPIO(6)
#define STN8815_PIN_B6		_GPIO(7)
#define STN8815_PIN_B10		_GPIO(8)
#define STN8815_PIN_A10		_GPIO(9)
#define STN8815_PIN_C11		_GPIO(10)
#define STN8815_PIN_B11		_GPIO(11)
#define STN8815_PIN_A11		_GPIO(12)
#define STN8815_PIN_C12		_GPIO(13)
#define STN8815_PIN_B12		_GPIO(14)
#define STN8815_PIN_A12		_GPIO(15)
#define STN8815_PIN_C13		_GPIO(16)
#define STN8815_PIN_B13		_GPIO(17)
#define STN8815_PIN_A13		_GPIO(18)
#define STN8815_PIN_D13		_GPIO(19)
#define STN8815_PIN_C14		_GPIO(20)
#define STN8815_PIN_B14		_GPIO(21)
#define STN8815_PIN_A14		_GPIO(22)
#define STN8815_PIN_D15		_GPIO(23)
#define STN8815_PIN_C15		_GPIO(24)
#define STN8815_PIN_B15		_GPIO(25)
#define STN8815_PIN_A15		_GPIO(26)
#define STN8815_PIN_C16		_GPIO(27)
#define STN8815_PIN_B16		_GPIO(28)
#define STN8815_PIN_A16		_GPIO(29)
#define STN8815_PIN_D17		_GPIO(30)
#define STN8815_PIN_C17		_GPIO(31)
#define STN8815_PIN_AB6		_GPIO(32)
#define STN8815_PIN_AA6		_GPIO(33)
#define STN8815_PIN_Y6		_GPIO(34)
#define STN8815_PIN_Y5		_GPIO(35)
#define STN8815_PIN_AA5		_GPIO(36)
#define STN8815_PIN_AB5		_GPIO(37)
#define STN8815_PIN_AB4		_GPIO(38)
#define STN8815_PIN_Y4		_GPIO(39)
#define STN8815_PIN_R1		_GPIO(40)
#define STN8815_PIN_R2		_GPIO(41)
#define STN8815_PIN_R3		_GPIO(42)
#define STN8815_PIN_P1		_GPIO(43)
#define STN8815_PIN_P2		_GPIO(44)
#define STN8815_PIN_P3		_GPIO(45)
#define STN8815_PIN_N1		_GPIO(46)
#define STN8815_PIN_N2		_GPIO(47)
#define STN8815_PIN_N3		_GPIO(48)
#define STN8815_PIN_M1		_GPIO(49)
#define STN8815_PIN_M3		_GPIO(50)
#define STN8815_PIN_M2		_GPIO(51)
#define STN8815_PIN_L1		_GPIO(52)
#define STN8815_PIN_L4		_GPIO(53)
#define STN8815_PIN_L3		_GPIO(54)
#define STN8815_PIN_L2		_GPIO(55)
#define STN8815_PIN_F3		_GPIO(56)
#define STN8815_PIN_F2		_GPIO(57)
#define STN8815_PIN_E1		_GPIO(58)
#define STN8815_PIN_E3		_GPIO(59)
#define STN8815_PIN_E2		_GPIO(60)
#define STN8815_PIN_E4		_GPIO(61)
#define STN8815_PIN_D3		_GPIO(62)
#define STN8815_PIN_D2		_GPIO(63)
#define STN8815_PIN_F21		_GPIO(64)
#define STN8815_PIN_F20		_GPIO(65)
#define STN8815_PIN_E22		_GPIO(66)
#define STN8815_PIN_D22		_GPIO(67)
#define STN8815_PIN_E21		_GPIO(68)
#define STN8815_PIN_E20		_GPIO(69)
#define STN8815_PIN_C22		_GPIO(70)
#define STN8815_PIN_D21		_GPIO(71)
#define STN8815_PIN_D20		_GPIO(72)
#define STN8815_PIN_C21		_GPIO(73)
#define STN8815_PIN_C20		_GPIO(74)
#define STN8815_PIN_C19		_GPIO(75)
#define STN8815_PIN_B20		_GPIO(76)
#define STN8815_PIN_B8		_GPIO(77)

Annotation

Implementation Notes