drivers/pinctrl/freescale/pinctrl-imx7ulp.c

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

File Facts

System
Linux kernel
Corpus path
drivers/pinctrl/freescale/pinctrl-imx7ulp.c
Extension
.c
Size
9007 bytes
Lines
316
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 (C) 2016 Freescale Semiconductor, Inc.
// Copyright (C) 2017 NXP
//
// Author: Dong Aisheng <aisheng.dong@nxp.com>

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

#include "pinctrl-imx.h"

enum imx7ulp_pads {
	IMX7ULP_PAD_PTC0 = 0,
	IMX7ULP_PAD_PTC1,
	IMX7ULP_PAD_PTC2,
	IMX7ULP_PAD_PTC3,
	IMX7ULP_PAD_PTC4,
	IMX7ULP_PAD_PTC5,
	IMX7ULP_PAD_PTC6,
	IMX7ULP_PAD_PTC7,
	IMX7ULP_PAD_PTC8,
	IMX7ULP_PAD_PTC9,
	IMX7ULP_PAD_PTC10,
	IMX7ULP_PAD_PTC11,
	IMX7ULP_PAD_PTC12,
	IMX7ULP_PAD_PTC13,
	IMX7ULP_PAD_PTC14,
	IMX7ULP_PAD_PTC15,
	IMX7ULP_PAD_PTC16,
	IMX7ULP_PAD_PTC17,
	IMX7ULP_PAD_PTC18,
	IMX7ULP_PAD_PTC19,
	IMX7ULP_PAD_RESERVE0,
	IMX7ULP_PAD_RESERVE1,
	IMX7ULP_PAD_RESERVE2,
	IMX7ULP_PAD_RESERVE3,
	IMX7ULP_PAD_RESERVE4,
	IMX7ULP_PAD_RESERVE5,
	IMX7ULP_PAD_RESERVE6,
	IMX7ULP_PAD_RESERVE7,
	IMX7ULP_PAD_RESERVE8,
	IMX7ULP_PAD_RESERVE9,
	IMX7ULP_PAD_RESERVE10,
	IMX7ULP_PAD_RESERVE11,
	IMX7ULP_PAD_PTD0,
	IMX7ULP_PAD_PTD1,
	IMX7ULP_PAD_PTD2,
	IMX7ULP_PAD_PTD3,
	IMX7ULP_PAD_PTD4,
	IMX7ULP_PAD_PTD5,
	IMX7ULP_PAD_PTD6,
	IMX7ULP_PAD_PTD7,
	IMX7ULP_PAD_PTD8,
	IMX7ULP_PAD_PTD9,
	IMX7ULP_PAD_PTD10,
	IMX7ULP_PAD_PTD11,
	IMX7ULP_PAD_RESERVE12,
	IMX7ULP_PAD_RESERVE13,
	IMX7ULP_PAD_RESERVE14,
	IMX7ULP_PAD_RESERVE15,
	IMX7ULP_PAD_RESERVE16,
	IMX7ULP_PAD_RESERVE17,
	IMX7ULP_PAD_RESERVE18,
	IMX7ULP_PAD_RESERVE19,
	IMX7ULP_PAD_RESERVE20,
	IMX7ULP_PAD_RESERVE21,
	IMX7ULP_PAD_RESERVE22,
	IMX7ULP_PAD_RESERVE23,
	IMX7ULP_PAD_RESERVE24,
	IMX7ULP_PAD_RESERVE25,
	IMX7ULP_PAD_RESERVE26,
	IMX7ULP_PAD_RESERVE27,
	IMX7ULP_PAD_RESERVE28,
	IMX7ULP_PAD_RESERVE29,
	IMX7ULP_PAD_RESERVE30,
	IMX7ULP_PAD_RESERVE31,
	IMX7ULP_PAD_PTE0,
	IMX7ULP_PAD_PTE1,
	IMX7ULP_PAD_PTE2,
	IMX7ULP_PAD_PTE3,
	IMX7ULP_PAD_PTE4,
	IMX7ULP_PAD_PTE5,
	IMX7ULP_PAD_PTE6,
	IMX7ULP_PAD_PTE7,
	IMX7ULP_PAD_PTE8,

Annotation

Implementation Notes