drivers/pinctrl/freescale/pinctrl-imx8ulp.c

Source file repositories/reference/linux-study-clean/drivers/pinctrl/freescale/pinctrl-imx8ulp.c

File Facts

System
Linux kernel
Corpus path
drivers/pinctrl/freescale/pinctrl-imx8ulp.c
Extension
.c
Size
7731 bytes
Lines
280
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
/*
 * Copyright 2021 NXP
 */

#include <linux/err.h>
#include <linux/init.h>
#include <linux/io.h>
#include <linux/mod_devicetable.h>
#include <linux/module.h>
#include <linux/pinctrl/pinctrl.h>
#include <linux/platform_device.h>

#include "pinctrl-imx.h"

enum imx8ulp_pads {
	IMX8ULP_PAD_PTD0 = 0,
	IMX8ULP_PAD_PTD1,
	IMX8ULP_PAD_PTD2,
	IMX8ULP_PAD_PTD3,
	IMX8ULP_PAD_PTD4,
	IMX8ULP_PAD_PTD5,
	IMX8ULP_PAD_PTD6,
	IMX8ULP_PAD_PTD7,
	IMX8ULP_PAD_PTD8,
	IMX8ULP_PAD_PTD9,
	IMX8ULP_PAD_PTD10,
	IMX8ULP_PAD_PTD11,
	IMX8ULP_PAD_PTD12,
	IMX8ULP_PAD_PTD13,
	IMX8ULP_PAD_PTD14,
	IMX8ULP_PAD_PTD15,
	IMX8ULP_PAD_PTD16,
	IMX8ULP_PAD_PTD17,
	IMX8ULP_PAD_PTD18,
	IMX8ULP_PAD_PTD19,
	IMX8ULP_PAD_PTD20,
	IMX8ULP_PAD_PTD21,
	IMX8ULP_PAD_PTD22,
	IMX8ULP_PAD_PTD23,
	IMX8ULP_PAD_RESERVE0,
	IMX8ULP_PAD_RESERVE1,
	IMX8ULP_PAD_RESERVE2,
	IMX8ULP_PAD_RESERVE3,
	IMX8ULP_PAD_RESERVE4,
	IMX8ULP_PAD_RESERVE5,
	IMX8ULP_PAD_RESERVE6,
	IMX8ULP_PAD_RESERVE7,
	IMX8ULP_PAD_PTE0,
	IMX8ULP_PAD_PTE1,
	IMX8ULP_PAD_PTE2,
	IMX8ULP_PAD_PTE3,
	IMX8ULP_PAD_PTE4,
	IMX8ULP_PAD_PTE5,
	IMX8ULP_PAD_PTE6,
	IMX8ULP_PAD_PTE7,
	IMX8ULP_PAD_PTE8,
	IMX8ULP_PAD_PTE9,
	IMX8ULP_PAD_PTE10,
	IMX8ULP_PAD_PTE11,
	IMX8ULP_PAD_PTE12,
	IMX8ULP_PAD_PTE13,
	IMX8ULP_PAD_PTE14,
	IMX8ULP_PAD_PTE15,
	IMX8ULP_PAD_PTE16,
	IMX8ULP_PAD_PTE17,
	IMX8ULP_PAD_PTE18,
	IMX8ULP_PAD_PTE19,
	IMX8ULP_PAD_PTE20,
	IMX8ULP_PAD_PTE21,
	IMX8ULP_PAD_PTE22,
	IMX8ULP_PAD_PTE23,
	IMX8ULP_PAD_RESERVE8,
	IMX8ULP_PAD_RESERVE9,
	IMX8ULP_PAD_RESERVE10,
	IMX8ULP_PAD_RESERVE11,
	IMX8ULP_PAD_RESERVE12,
	IMX8ULP_PAD_RESERVE13,
	IMX8ULP_PAD_RESERVE14,
	IMX8ULP_PAD_RESERVE15,
	IMX8ULP_PAD_PTF0,
	IMX8ULP_PAD_PTF1,
	IMX8ULP_PAD_PTF2,
	IMX8ULP_PAD_PTF3,
	IMX8ULP_PAD_PTF4,
	IMX8ULP_PAD_PTF5,
	IMX8ULP_PAD_PTF6,
	IMX8ULP_PAD_PTF7,
	IMX8ULP_PAD_PTF8,
	IMX8ULP_PAD_PTF9,

Annotation

Implementation Notes