static int aml_dvb_asyncfifo_init(struct aml_dvb *advb, struct aml_asyncfifo *asyncfifo, int id) { #ifndef CONFIG_OF struct resource *res; char buf[32]; #endif if(id == 0) asyncfifo->asyncfifo_irq = INT_ASYNC_FIFO_FLUSH; else asyncfifo->asyncfifo_irq = INT_ASYNC_FIFO2_FLUSH; #ifndef CONFIG_OF snprintf(buf, sizeof(buf), "dvr%d_irq", id); res = platform_get_resource_byname(advb->pdev, IORESOURCE_IRQ, buf); if (res) { asyncfifo->asyncfifo_irq = res->start; } #endif asyncfifo->dvb = advb; asyncfifo->id = id; asyncfifo->init = 0; asyncfifo->flush_size = 256*1024; return aml_asyncfifo_hw_init(asyncfifo); }
static int aml_dvb_asyncfifo_init(struct aml_dvb *advb, struct aml_asyncfifo *asyncfifo, int id) { struct resource *res; char buf[32]; asyncfifo->asyncfifo_irq = id?asyncfifo1_irq:asyncfifo0_irq; if(asyncfifo->asyncfifo_irq==-1) { snprintf(buf, sizeof(buf), "dvr%d_irq", id); res = platform_get_resource_byname(advb->pdev, IORESOURCE_IRQ, buf); if (!res) { pr_error("cannot get resource %s\n", buf); return -1; } asyncfifo->asyncfifo_irq = res->start; } spin_lock_init(&asyncfifo->slock); asyncfifo->dvb = advb; asyncfifo->id = id; asyncfifo->init = 0; return aml_asyncfifo_hw_init(asyncfifo); }