- LG Display panels (Dell ST2220Tc)
          - Lumio CrystalTouch panels
          - MosArt dual-touch panels
+         - Panasonic multitouch panels
          - PenMount dual touch panels
          - Perixx Peripad 701 touchpad
          - PixArt optical touch screen
 
        { HID_USB_DEVICE(USB_VENDOR_ID_NTRIG, USB_DEVICE_ID_NTRIG_TOUCH_SCREEN_18) },
        { HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_PKB1700) },
        { HID_USB_DEVICE(USB_VENDOR_ID_ORTEK, USB_DEVICE_ID_ORTEK_WKB2000) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_PANASONIC, USB_DEVICE_ID_PANABOARD_UBT780) },
+       { HID_USB_DEVICE(USB_VENDOR_ID_PANASONIC, USB_DEVICE_ID_PANABOARD_UBT880) },
        { HID_USB_DEVICE(USB_VENDOR_ID_PENMOUNT, USB_DEVICE_ID_PENMOUNT_PCI) },
        { HID_USB_DEVICE(USB_VENDOR_ID_PETALYNX, USB_DEVICE_ID_PETALYNX_MAXTER_REMOTE) },
        { HID_USB_DEVICE(USB_VENDOR_ID_PIXART, USB_DEVICE_ID_PIXART_OPTICAL_TOUCH_SCREEN) },
 
 #define USB_VENDOR_ID_ACTIONSTAR       0x2101
 #define USB_DEVICE_ID_ACTIONSTAR_1011  0x1011
 
-#define USB_VENDOR_ID_ADS_TECH                 0x06e1
+#define USB_VENDOR_ID_ADS_TECH         0x06e1
 #define USB_DEVICE_ID_ADS_TECH_RADIO_SI470X    0xa155
 
 #define USB_VENDOR_ID_AFATECH          0x15a4
 #define USB_DEVICE_ID_ORTEK_PKB1700    0x1700
 #define USB_DEVICE_ID_ORTEK_WKB2000    0x2000
 
+#define USB_VENDOR_ID_PANASONIC                0x04da
+#define USB_DEVICE_ID_PANABOARD_UBT780 0x1044
+#define USB_DEVICE_ID_PANABOARD_UBT880 0x104d
+
 #define USB_VENDOR_ID_PANJIT           0x134c
 
 #define USB_VENDOR_ID_PANTHERLORD      0x0810
 
 #define MT_CLS_EGALAX                          0x0103
 #define MT_CLS_EGALAX_SERIAL                   0x0104
 #define MT_CLS_TOPSEED                         0x0105
+#define MT_CLS_PANASONIC                       0x0106
 
 #define MT_DEFAULT_MAXCONTACT  10
 
                .is_indirect = true,
                .maxcontacts = 2,
        },
+       { .name = MT_CLS_PANASONIC,
+               .quirks = MT_QUIRK_NOT_SEEN_MEANS_UP,
+               .maxcontacts = 4 },
 
        { }
 };
        int code;
 
        /* Only map fields from TouchScreen or TouchPad collections.
-         * We need to ignore fields that belong to other collections
-         * such as Mouse that might have the same GenericDesktop usages. */
+       * We need to ignore fields that belong to other collections
+       * such as Mouse that might have the same GenericDesktop usages. */
        if (field->application == HID_DG_TOUCHSCREEN)
                set_bit(INPUT_PROP_DIRECT, hi->input->propbit);
        else if (field->application != HID_DG_TOUCHPAD)
                        return 0;
                }
 
-               if (usage->hid == td->last_slot_field) {
+               if (usage->hid == td->last_slot_field)
                        mt_complete_slot(td);
-               }
 
                if (field->index == td->last_field_index
                        && td->num_received >= td->num_expected)
                HID_USB_DEVICE(USB_VENDOR_ID_TURBOX,
                        USB_DEVICE_ID_TURBOX_TOUCHSCREEN_MOSART) },
 
+       /* Panasonic panels */
+       { .driver_data = MT_CLS_PANASONIC,
+               HID_USB_DEVICE(USB_VENDOR_ID_PANASONIC,
+                       USB_DEVICE_ID_PANABOARD_UBT780) },
+       { .driver_data = MT_CLS_PANASONIC,
+               HID_USB_DEVICE(USB_VENDOR_ID_PANASONIC,
+                       USB_DEVICE_ID_PANABOARD_UBT880) },
+
        /* PenMount panels */
        { .driver_data = MT_CLS_CONFIDENCE,
                HID_USB_DEVICE(USB_VENDOR_ID_PENMOUNT,