drivers/pinctrl/intel/pinctrl-cherryview.c
Source file repositories/reference/linux-study-clean/drivers/pinctrl/intel/pinctrl-cherryview.c
File Facts
- System
- Linux kernel
- Corpus path
drivers/pinctrl/intel/pinctrl-cherryview.c- Extension
.c- Size
- 51570 bytes
- Lines
- 1788
- Domain
- Driver Families
- Bucket
- drivers/pinctrl
- Inferred role
- Driver Families: exported/initcall integration point
- Status
- integration 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.
- 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.
- Exports symbols or registers init work; inspect boot/module ordering and who consumes the exported contract.
- Allocates kernel memory; connect allocation flags and lifetime to context constraints.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/acpi.hlinux/array_size.hlinux/cleanup.hlinux/dmi.hlinux/gpio/driver.hlinux/module.hlinux/platform_device.hlinux/seq_file.hlinux/types.hlinux/pinctrl/consumer.hlinux/pinctrl/pinconf-generic.hlinux/pinctrl/pinconf.hlinux/pinctrl/pinctrl.hlinux/pinctrl/pinmux.hpinctrl-intel.h
Detected Declarations
struct intel_pad_contextstruct intel_community_contextfunction chv_pctrl_readlfunction chv_pctrl_writelfunction chv_readlfunction chv_writelfunction chv_pad_is_lockedfunction chv_pad_lockedfunction chv_pin_dbg_showfunction scoped_guardfunction chv_pinmux_set_muxfunction chv_gpio_clear_triggeringfunction chv_gpio_request_enablefunction modefunction chv_gpio_disable_freefunction chv_gpio_set_directionfunction chv_config_getfunction scoped_guardfunction chv_config_set_pullfunction chv_config_set_odenfunction chv_config_setfunction chv_config_group_getfunction chv_config_group_setfunction chv_gpio_getfunction chv_gpio_setfunction chv_gpio_get_directionfunction chv_gpio_direction_inputfunction chv_gpio_direction_outputfunction chv_gpio_irq_ackfunction chv_gpio_irq_mask_unmaskfunction chv_gpio_irq_maskfunction chv_gpio_irq_unmaskfunction chv_gpio_irq_startupfunction usedfunction chv_gpio_set_intr_linefunction chv_gpio_irq_typefunction chv_gpio_irq_handlerfunction for_each_set_bitfunction chv_init_irq_valid_maskfunction chv_gpio_irq_init_hwfunction chv_gpio_probefunction chv_pinctrl_mmio_access_handlerfunction chv_pinctrl_probefunction chv_pinctrl_removefunction chv_pinctrl_suspend_noirqfunction chv_pinctrl_resume_noirqfunction chv_pinctrl_initfunction chv_pinctrl_exit
Annotated Snippet
subsys_initcall(chv_pinctrl_init);
static void __exit chv_pinctrl_exit(void)
{
platform_driver_unregister(&chv_pinctrl_driver);
}
module_exit(chv_pinctrl_exit);
MODULE_AUTHOR("Mika Westerberg <mika.westerberg@linux.intel.com>");
MODULE_DESCRIPTION("Intel Cherryview/Braswell pinctrl driver");
MODULE_LICENSE("GPL v2");
MODULE_IMPORT_NS("PINCTRL_INTEL");
Annotation
- Immediate include surface: `linux/acpi.h`, `linux/array_size.h`, `linux/cleanup.h`, `linux/dmi.h`, `linux/gpio/driver.h`, `linux/module.h`, `linux/platform_device.h`, `linux/seq_file.h`.
- Detected declarations: `struct intel_pad_context`, `struct intel_community_context`, `function chv_pctrl_readl`, `function chv_pctrl_writel`, `function chv_readl`, `function chv_writel`, `function chv_pad_is_locked`, `function chv_pad_locked`, `function chv_pin_dbg_show`, `function scoped_guard`.
- Atlas domain: Driver Families / drivers/pinctrl.
- Implementation status: integration implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.