usb: gadget: renesas_usbhs: tidyup INTENB0 method

This patch tidyup Interrupt Enable Register 0 (INTENB0)
which has relationship with picky BEMPENB/BRDYENB.

 - add explain comment
 - ignore nonsense 0 write case

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Kuninori Morimoto 2011-10-10 22:01:15 -07:00 committed by Felipe Balbi
parent 0c6ef985ce
commit 651f5e49dd
1 changed files with 10 additions and 1 deletions

View File

@ -292,6 +292,14 @@ void usbhs_irq_callback_update(struct usbhs_priv *priv, struct usbhs_mod *mod)
u16 intenb0 = 0;
struct usbhs_mod_info *info = usbhs_priv_to_modinfo(priv);
/*
* BEMPENB/BRDYENB are picky.
* below method is required
*
* - clear INTSTS0
* - update BEMPENB/BRDYENB
* - update INTSTS0
*/
usbhs_write(priv, INTENB0, 0);
usbhs_write(priv, BEMPENB, 0);
@ -324,5 +332,6 @@ void usbhs_irq_callback_update(struct usbhs_priv *priv, struct usbhs_mod *mod)
}
}
usbhs_write(priv, INTENB0, intenb0);
if (intenb0)
usbhs_write(priv, INTENB0, intenb0);
}