int __init init_module(void) { int err; /* Initialisation du timer */ if (TIMER_PERIODIC) err = rt_timer_set_mode(MS); else err = rt_timer_set_mode(TM_ONESHOT); if (err != 0) { printk("rt-app: %s: Error timer: %d\n", __func__, err); return -1; } /* Initialize FB */ fb_init(); printk("rt-app: Framebuffer initialized\n"); xeno_ts_init(); printk("rt-app: Touchscreen initialized\n"); /* Open Philips controller err = pca9554_open(NULL, NULL); if (err != 0) { printk("rt-app: %s: I2C slave open error: %d\n", __func__, err); goto fail_open; }*/ /* Initializing IRQ */ err = rt_intr_create(&isrDesc, "IMX_I2C", INT_I2C, imx_i2c_handler, NULL, 0); if (err != 0) { printk("rt-app: %s: Error interrupt registration: %d\n", __func__, err); goto fail_intr; } printk("rt-app: ISR initialized\n"); /* To Be Completed */ return space_invader(); //fail_open: // pca9554_close(NULL, NULL); fail_intr: xeno_ts_exit(); return -1; }
int __init init_module(void) { int err; /* Initialisation du timer */ if (TIMER_PERIODIC) err = rt_timer_set_mode(MS); else err = rt_timer_set_mode(TM_ONESHOT); if (err != 0) { printk("rt-app: %s: Error timer: %d\n", __func__, err); return -1; } /* Initialize FB */ fb_init(); printk("rt-app: Framebuffer initialized\n"); xeno_ts_init(); printk("rt-app: Touchscreen initialized\n"); /* Initializing IRQ */ err = rt_intr_create(&isrDesc, "IMX_I2C", INT_I2C, imx_i2c_handler, NULL, 0); if (err != 0) { printk("rt-app: %s: Error interrupt registration: %d\n", __func__, err); goto fail_intr; } printk("rt-app: ISR initialized\n"); printk("rt-app: i2c driver call\n"); printk("rt_app: i2c driver ok\n"); return space_invader(); fail_intr: xeno_ts_exit(); return -1; }