iommu: msm: Program all M2V tables at once

Currently, M2V tables are programmed per context bank when
attaching. Attaching to a single context bank will take the
SMMU out of pass through mode. This means that when one context
bank is attached, none of the other banks will have M2Vs
programmed until they are attached. This presents a problem if a
single context bank is expected to work in pass through mode.
As a solution, program the M2V table for all context bank when
the first context bank of an IOMMU is attached. Clear out the
M2V tables only when the last context is detached.

Change-Id: I9e63000100da88da9992eaf80c6ff958dad0b475
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>

Conflicts:
	drivers/iommu/msm_iommu-v1.c