drivers/media/usb/gspca/stv06xx/stv06xx_vv6410.h
Source file repositories/reference/linux-study-clean/drivers/media/usb/gspca/stv06xx/stv06xx_vv6410.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/media/usb/gspca/stv06xx/stv06xx_vv6410.h- Extension
.h- Size
- 6597 bytes
- Lines
- 243
- Domain
- Driver Families
- Bucket
- drivers/media
- 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.
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
stv06xx_sensor.h
Detected Declarations
struct stv_init
Annotated Snippet
struct stv_init {
u16 addr;
u8 data;
};
static const struct stv_init stv_bridge_init[] = {
/* This reg is written twice. Some kind of reset? */
{STV_RESET, 0x80},
{STV_RESET, 0x00},
{STV_SCAN_RATE, 0x00},
{STV_I2C_FLUSH, 0x04},
{STV_REG00, 0x0b},
{STV_REG01, 0xa7},
{STV_REG02, 0xb7},
{STV_REG03, 0x00},
{STV_REG04, 0x00},
{0x1536, 0x02},
{0x1537, 0x00},
{0x1538, 0x60},
{0x1539, 0x01},
{0x153a, 0x20},
{0x153b, 0x01},
};
static const u8 vv6410_sensor_init[][2] = {
/* Setup registers */
{VV6410_SETUP0, VV6410_SOFT_RESET},
{VV6410_SETUP0, VV6410_LOW_POWER_MODE},
/* Use shuffled read-out mode */
{VV6410_SETUP1, BIT(6)},
/* All modes to 1, FST, Fast QCK, Free running QCK, Free running LST, FST will qualify visible pixels */
{VV6410_FGMODES, BIT(6) | BIT(4) | BIT(2) | BIT(0)},
{VV6410_PINMAPPING, 0x00},
/* Pre-clock generator divide off */
{VV6410_DATAFORMAT, BIT(7) | BIT(0)},
{VV6410_CLKDIV, VV6410_CLK_DIV_2},
/* System registers */
/* Enable voltage doubler */
{VV6410_AS0, BIT(6) | BIT(4) | BIT(3) | BIT(2) | BIT(1)},
{VV6410_AT0, 0x00},
/* Power up audio, differential */
{VV6410_AT1, BIT(4) | BIT(0)},
};
#endif
Annotation
- Immediate include surface: `stv06xx_sensor.h`.
- Detected declarations: `struct stv_init`.
- Atlas domain: Driver Families / drivers/media.
- Implementation status: source 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.