Commit 9886142c authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull input fixes from Dmitry Torokhov:

 - proper annotation of USB buffers in bcm5974 touchpad dirver

 - a quirk in SOC button driver to handle Lenovo Yoga Tablet2 1051F

 - a fix for missing dependency in raspberrypi-ts driver to avoid
   compile breakages with random configs.

* tag 'input-for-v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: soc_button_array - also add Lenovo Yoga Tablet2 1051F to dmi_use_low_level_irq
  Input: bcm5974 - set missing URB_NO_TRANSFER_DMA_MAP urb flag
  Input: raspberrypi-ts - add missing HAS_IOMEM dependency
parents f7a447ed 6ab2e518
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -402,6 +402,7 @@ config JOYSTICK_N64
config JOYSTICK_SENSEHAT
	tristate "Raspberry Pi Sense HAT joystick"
	depends on INPUT && I2C
	depends on HAS_IOMEM
	select MFD_SIMPLE_MFD_I2C
	help
	  Say Y here if you want to enable the driver for the
+2 −2
Original line number Diff line number Diff line
@@ -85,13 +85,13 @@ static const struct dmi_system_id dmi_use_low_level_irq[] = {
	},
	{
		/*
		 * Lenovo Yoga Tab2 1051L, something messes with the home-button
		 * Lenovo Yoga Tab2 1051F/1051L, something messes with the home-button
		 * IRQ settings, leading to a non working home-button.
		 */
		.matches = {
			DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
			DMI_MATCH(DMI_PRODUCT_NAME, "60073"),
			DMI_MATCH(DMI_PRODUCT_VERSION, "1051L"),
			DMI_MATCH(DMI_PRODUCT_VERSION, "1051"),
		},
	},
	{} /* Terminating entry */
+6 −1
Original line number Diff line number Diff line
@@ -942,17 +942,22 @@ static int bcm5974_probe(struct usb_interface *iface,
	if (!dev->tp_data)
		goto err_free_bt_buffer;

	if (dev->bt_urb)
	if (dev->bt_urb) {
		usb_fill_int_urb(dev->bt_urb, udev,
				 usb_rcvintpipe(udev, cfg->bt_ep),
				 dev->bt_data, dev->cfg.bt_datalen,
				 bcm5974_irq_button, dev, 1);

		dev->bt_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
	}

	usb_fill_int_urb(dev->tp_urb, udev,
			 usb_rcvintpipe(udev, cfg->tp_ep),
			 dev->tp_data, dev->cfg.tp_datalen,
			 bcm5974_irq_trackpad, dev, 1);

	dev->tp_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;

	/* create bcm5974 device */
	usb_make_path(udev, dev->phys, sizeof(dev->phys));
	strlcat(dev->phys, "/input0", sizeof(dev->phys));