static irqreturn_t vis_delta_isr(int irq, void *dev_id) struct vis_delta_device *vis = dev_id; static int bit_count = 0; static u32 accum = 0; int data_bit = gpio_get_value(DELTA_DATA_PIN);
static int __init vis_delta_probe(struct platform_device *pdev) int ret; -vis On S3c2410x Delta Driver -
static int vis_delta_remove(struct platform_device *pdev) free_irq(delta_irq, NULL); gpio_free(delta_data_pin); return 0; static irqreturn_t vis_delta_isr(int irq
When the user touches the Delta touch panel (differential measurement), the driver computes the X/Y coordinates. It then uses the S3C2410_LCDCON registers to dynamically adjust the TIMEVAL (vertical sync) or the MVAL (inversion signal) to reduce flicker. static int bit_count = 0
return IRQ_HANDLED; The -vis part of the name suggests that the collected Delta data (likely touch coordinates or ambient light sensor for display adjustment) must be merged with the video output or capture.