linux_dsm_epyc7002/drivers/usb/renesas_usbhs
Eugeniu Rosca fef2263688 usb: renesas_usbhs: enable DVSE interrupt
Commit [1] enabled the possibility of checking the DVST (Device State
Transition) bit of INTSTS0 (Interrupt Status Register 0) and calling
the irq_dev_state() handler if the DVST bit is set. But neither
commit [1] nor commit [2] actually enabled the DVSE (Device State
Transition Interrupt Enable) bit in the INTENB0 (Interrupt Enable
Register 0). As a consequence, irq_dev_state() handler is getting
called as a side effect of other (non-DVSE) interrupts being fired,
which definitely can't be relied upon, if DVST notifications are of
any value.

Why this doesn't hurt is because usbhsg_irq_dev_state() currently
doesn't do much except of a dev_dbg(). Once more work is added to
the handler (e.g. detecting device "Suspended" state and notifying
other USB gadget components about it), enabling DVSE becomes a hard
requirement. Do it in a standalone commit for better visibility and
clear explanation.

[1] commit f1407d5c66 ("usb: renesas_usbhs: Add Renesas USBHS common
   code")
[2] commit 2f98382dcd ("usb: renesas_usbhs: Add Renesas USBHS Gadget")

Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Signed-off-by: Veeraiyan Chidambaram <veeraiyan.chidambaram@in.bosch.com>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/1568207756-22325-2-git-send-email-external.veeraiyan.c@de.adit-jv.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-04 14:16:54 +02:00
..
common.c usb: renesas_usbhs: use devm_platform_ioremap_resource() to simplify code 2019-10-04 14:09:40 +02:00
common.h usb: renesas_usbhs: Use struct platform_callback pointer 2019-06-26 10:33:09 +08:00
fifo.c USB: more changes for v5.3 merge window 2019-07-03 13:48:54 +02:00
fifo.h USB: renesas_usbhs: Remove redundant license text 2017-11-07 15:45:01 +01:00
Kconfig usb: remove redundant 'default n' from Kconfig-s 2019-05-21 10:06:22 +02:00
Makefile usb: renesas_usbhs: Add support for RZ/A2 2019-05-21 10:25:59 +02:00
mod_gadget.c usb: renesas_usbhs: Avoid to write platform_data's value 2019-06-26 10:33:08 +08:00
mod_host.c usb: add a HCD_DMA flag instead of guestimating DMA capabilities 2019-08-21 10:03:35 -07:00
mod.c usb: renesas_usbhs: enable DVSE interrupt 2019-10-04 14:16:54 +02:00
mod.h usb: renesas_usbhs: Avoid to write platform_data's value 2019-06-26 10:33:08 +08:00
pipe.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
pipe.h usb: renesas_usbhs: add usbhs_pipe_clear_without_sequence() function 2017-12-12 13:04:09 +02:00
rcar2.c usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00
rcar2.h usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00
rcar3.c usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00
rcar3.h usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00
rza2.c usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00
rza.c usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00
rza.h usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data 2019-06-26 10:33:09 +08:00