diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c index 6fe02630f6166..1bd012fa97a3a 100644 --- a/drivers/gpu/drm/i915/i915_driver.c +++ b/drivers/gpu/drm/i915/i915_driver.c @@ -1203,7 +1203,8 @@ void i915_driver_shutdown(struct drm_i915_private *i915) intel_suspend_encoders(i915); intel_shutdown_encoders(i915); - intel_dmc_ucode_suspend(i915); + if (HAS_DISPLAY(i915)) + intel_dmc_ucode_suspend(i915); i915_gem_suspend(i915); diff --git a/drivers/input/touchscreen/ef1e_tp/ef1e_tp.h b/drivers/input/touchscreen/ef1e_tp/ef1e_tp.h index ef359947e0238..6556663535002 100644 --- a/drivers/input/touchscreen/ef1e_tp/ef1e_tp.h +++ b/drivers/input/touchscreen/ef1e_tp/ef1e_tp.h @@ -32,7 +32,7 @@ #include "ef1e_tp_protocol.h" -#define EF1E_TP_VERSION "2024081801" +#define EF1E_TP_VERSION "2024062101" #define TP_WIDTH 2880 #define TP_HEIGHT 1620 diff --git a/drivers/input/touchscreen/ef1e_tp/ef1e_tp_driver.c b/drivers/input/touchscreen/ef1e_tp/ef1e_tp_driver.c index 8dba49a81da12..4af3ff6762025 100644 --- a/drivers/input/touchscreen/ef1e_tp/ef1e_tp_driver.c +++ b/drivers/input/touchscreen/ef1e_tp/ef1e_tp_driver.c @@ -578,23 +578,15 @@ static int ef1e_tp_probe(struct platform_device *dev) i2c_bus_number = fpd_dp_ser_get_i2c_bus_number(); i2c_adap = i2c_get_adapter(i2c_bus_number); if (!i2c_adap) { - pr_err("cannot find a valid i2c bus for tp\n"); + pr_err("%s: cannot find a valid i2c bus for tp\n", __func__); ret = -ENODEV; goto error; } priv->i2c_adap = i2c_adap; - priv->init_wq = create_workqueue("ef1e_tp-init-wq"); - if (IS_ERR_OR_NULL(priv->init_wq)) { - dev_err(&dev->dev, "failed to create init wq\n"); - ret = -ENOMEM; - goto error; - } - queue_work(priv->init_wq, &priv->init_work); - ret = tp_input_dev_init(priv); if (ret < 0) { - pr_err("Failed to initialize input device\n"); + pr_err("%s: failed to initialize input device\n", __func__); goto error; } @@ -605,11 +597,23 @@ static int ef1e_tp_probe(struct platform_device *dev) if (ret < 0) goto error; + priv->init_wq = alloc_workqueue("ef1e_tp-init-wq", WQ_HIGHPRI, 0); + if (IS_ERR_OR_NULL(priv->init_wq)) { + dev_err(&dev->dev, "failed to create init wq\n"); + ret = -ENOMEM; + goto error; + } + queue_work(priv->init_wq, &priv->init_work); + pr_info("%s(): done\n", __func__); return 0; error: + if (!IS_ERR_OR_NULL(priv->init_wq)) + destroy_workqueue(priv->init_wq); + tp_input_dev_destroy(priv); + if (priv->polling) { if (priv->polling_kthread) kthread_stop(priv->polling_kthread); diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 2b644af70d901..99f93c67475c1 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -30,8 +30,6 @@ #define DWC3_ALIGN_FRAME(d, n) (((d)->frame_number + ((d)->interval * (n))) \ & ~((d)->interval - 1)) -#define FORCE_HIGH_SPEED - /** * dwc3_gadget_set_test_mode - enables usb2 test modes * @dwc: pointer to our context structure @@ -2413,14 +2411,6 @@ static void __dwc3_gadget_set_speed(struct dwc3 *dwc) enum usb_device_speed speed; u32 reg; -#ifdef FORCE_HIGH_SPEED - /* - * Forcing to High speed as platform dont have mechanism - * to detect disconnect and this will put device LPM mode - * which result in slow detection on connect. - */ - speed = USB_SPEED_HIGH; -#else speed = dwc->gadget_max_speed; if (speed == USB_SPEED_UNKNOWN || speed > dwc->maximum_speed) speed = dwc->maximum_speed; @@ -2430,10 +2420,15 @@ static void __dwc3_gadget_set_speed(struct dwc3 *dwc) __dwc3_gadget_set_ssp_rate(dwc); return; } -#endif reg = dwc3_readl(dwc->regs, DWC3_DCFG); reg &= ~(DWC3_DCFG_SPEED_MASK); + /* + * Forcing to High speed as platform dont have mechanism + * to detect disconnect and this will put device LPM mode + * which result in slow detection on connect. + */ + speed = DWC3_DCFG_HIGHSPEED; /* * WORKAROUND: DWC3 revision < 2.20a have an issue * which would cause metastability state on Run/Stop @@ -2451,9 +2446,6 @@ static void __dwc3_gadget_set_speed(struct dwc3 *dwc) !dwc->dis_metastability_quirk) { reg |= DWC3_DCFG_SUPERSPEED; } else { -#ifdef FORCE_HIGH_SPEED - reg |= DWC3_DCFG_HIGHSPEED; -#else switch (speed) { case USB_SPEED_FULL: reg |= DWC3_DCFG_FULLSPEED; @@ -2478,7 +2470,6 @@ static void __dwc3_gadget_set_speed(struct dwc3 *dwc) else reg |= DWC3_DCFG_SUPERSPEED_PLUS; } -#endif } if (DWC3_IP_IS(DWC32) && speed > USB_SPEED_UNKNOWN &&