drivers/media/pci/ttpci/budget-av.c
Source file repositories/reference/linux-study-clean/drivers/media/pci/ttpci/budget-av.c
File Facts
- System
- Linux kernel
- Corpus path
drivers/media/pci/ttpci/budget-av.c- Extension
.c- Size
- 44467 bytes
- Lines
- 1626
- Domain
- Driver Families
- Bucket
- drivers/media
- 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
budget.hstv0299.hstb0899_drv.hstb0899_reg.hstb0899_cfg.htda8261.htda8261_cfg.htda1002x.htda1004x.htua6100.hdvb-pll.hmedia/drv-intf/saa7146_vv.hlinux/module.hlinux/etherdevice.hlinux/errno.hlinux/slab.hlinux/interrupt.hlinux/input.hlinux/spinlock.hlinux/workqueue.hmedia/dvb_ca_en50221.h
Detected Declarations
struct budget_avfunction i2c_readregfunction i2c_readregsfunction i2c_writeregfunction ciintf_read_attribute_memfunction ciintf_write_attribute_memfunction ciintf_read_cam_controlfunction ciintf_write_cam_controlfunction ciintf_slot_resetfunction ciintf_slot_shutdownfunction ciintf_slot_ts_enablefunction ciintf_poll_slot_statusfunction interfacefunction ciintf_initfunction ciintf_deinitfunction saa7113_initfunction saa7113_setinputfunction philips_su1278_ty_ci_set_symbol_ratefunction philips_su1278_ty_ci_tuner_set_paramsfunction philips_cu1216_tuner_set_paramsfunction philips_tu1216_tuner_initfunction philips_tu1216_tuner_set_paramsfunction philips_tu1216_request_firmwarefunction philips_sd1878_ci_set_symbol_ratefunction read_pwmfunction frontend_initfunction budget_av_irqfunction budget_av_detachfunction vidioc_enum_inputfunction vidioc_g_inputfunction vidioc_s_inputfunction budget_av_attachfunction budget_av_initfunction budget_av_exitmodule init budget_av_init
Annotated Snippet
module_init(budget_av_init);
module_exit(budget_av_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Ralph Metzler, Marcus Metzler, Michael Hunold, others");
MODULE_DESCRIPTION("driver for the SAA7146 based so-called budget PCI DVB w/ analog input and CI-module (e.g. the KNC cards)");
Annotation
- Immediate include surface: `budget.h`, `stv0299.h`, `stb0899_drv.h`, `stb0899_reg.h`, `stb0899_cfg.h`, `tda8261.h`, `tda8261_cfg.h`, `tda1002x.h`.
- Detected declarations: `struct budget_av`, `function i2c_readreg`, `function i2c_readregs`, `function i2c_writereg`, `function ciintf_read_attribute_mem`, `function ciintf_write_attribute_mem`, `function ciintf_read_cam_control`, `function ciintf_write_cam_control`, `function ciintf_slot_reset`, `function ciintf_slot_shutdown`.
- Atlas domain: Driver Families / drivers/media.
- 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.