mirror of
https://github.com/torvalds/linux.git
synced 2024-10-30 16:51:45 +00:00
sh_mobile_meram: Reset ICBs at unregistration time
When ICBs are unregistered and later reused they need to be reset to avoid data corruption. Set the WBF, WF and RF bits to make sure ICBs get reset properly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
This commit is contained in:
parent
3c8a63e22a
commit
da6cf5125f
@ -373,8 +373,10 @@ static void meram_deinit(struct sh_mobile_meram_priv *priv,
|
||||
struct sh_mobile_meram_icb *icb)
|
||||
{
|
||||
/* disable ICB */
|
||||
meram_write_icb(priv->base, icb->cache_icb, MExxCTL, 0);
|
||||
meram_write_icb(priv->base, icb->marker_icb, MExxCTL, 0);
|
||||
meram_write_icb(priv->base, icb->cache_icb, MExxCTL,
|
||||
MExxCTL_WBF | MExxCTL_WF | MExxCTL_RF);
|
||||
meram_write_icb(priv->base, icb->marker_icb, MExxCTL,
|
||||
MExxCTL_WBF | MExxCTL_WF | MExxCTL_RF);
|
||||
icb->cache_unit = 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user