switch (tv.model)
        {
        case 90002: /* Nova-T-PCI (9002) */
+       case 92001: /* Nova-S-Plus (Video and IR) */
+       case 92002: /* Nova-S-Plus (Video and IR) */
+       case 90003: /* Nova-T-PCI (9002 No RF out) */
        case 90500: /* Nova-T-PCI (oem) */
        case 90501: /* Nova-T-PCI (oem/IR) */
        case 92000: /* Nova-SE2 (OEM, No Video or IR) */
-       case 92001: /* Nova-S-Plus (Video and IR) */
-       case 92002: /* Nova-S-Plus (Video and IR) */
+
                /* known */
                break;
        default:
 
        memset(tvee, 0, sizeof(*tvee));
        done = len = beenhere = 0;
 
-       /* Hack for processing eeprom for em28xx */
+       /* Hack for processing eeprom for em28xx and cx 2388x*/
        if ((eeprom_data[0] == 0x1a) && (eeprom_data[1] == 0xeb) &&
-               (eeprom_data[2] == 0x67) && (eeprom_data[3] == 0x95))
-               start=0xa0;
-       else if ((eeprom_data[0] == 0x1f) && (eeprom_data[8] == 0x84))
-               start=8;
-       else if ((eeprom_data[0] == 0x17) && (eeprom_data[8] == 0x84))
-               start=8;
+                       (eeprom_data[2] == 0x67) && (eeprom_data[3] == 0x95))
+               start=0xa0; /* Generic em28xx offset */
+       else if (((eeprom_data[0] & 0xf0) == 0x10) &&
+                                       (eeprom_data[1] == 0x00) &&
+                                       (eeprom_data[2] == 0x00) &&
+                                       (eeprom_data[8] == 0x84))
+               start=8; /* Generic cx2388x offset */
        else
                start=0;