static int av_cnt;
 static struct av7110 *av_list[4];
 static struct input_dev *input_dev;
+static char input_phys[32];
 
 static u8 delay_timer_finished;
 
                if (!input_dev)
                        return -ENOMEM;
 
+               snprintf(input_phys, sizeof(input_phys),
+                       "pci-%s/ir0", pci_name(av7110->dev->pci));
+
                input_dev->name = "DVB on-card IR receiver";
 
+               input_dev->phys = input_phys;
+               input_dev->id.bustype = BUS_PCI;
+               input_dev->id.version = 1;
+               if (av7110->dev->pci->subsystem_vendor) {
+                       input_dev->id.vendor = av7110->dev->pci->subsystem_vendor;
+                       input_dev->id.product = av7110->dev->pci->subsystem_device;
+               } else {
+                       input_dev->id.vendor = av7110->dev->pci->vendor;
+                       input_dev->id.product = av7110->dev->pci->device;
+               }
+               input_dev->cdev.dev = &av7110->dev->pci->dev;
                set_bit(EV_KEY, input_dev->evbit);
                set_bit(EV_REP, input_dev->evbit);
                input_register_keys();