|
@@ -1167,7 +1167,7 @@ static int arm_smmu_domain_add_master(struct arm_smmu_domain *smmu_domain,
|
|
for (i = 0; i < master->num_streamids; ++i) {
|
|
for (i = 0; i < master->num_streamids; ++i) {
|
|
u32 idx, s2cr;
|
|
u32 idx, s2cr;
|
|
idx = master->smrs ? master->smrs[i].idx : master->streamids[i];
|
|
idx = master->smrs ? master->smrs[i].idx : master->streamids[i];
|
|
- s2cr = (S2CR_TYPE_TRANS << S2CR_TYPE_SHIFT) |
|
|
|
|
|
|
+ s2cr = S2CR_TYPE_TRANS |
|
|
(smmu_domain->root_cfg.cbndx << S2CR_CBNDX_SHIFT);
|
|
(smmu_domain->root_cfg.cbndx << S2CR_CBNDX_SHIFT);
|
|
writel_relaxed(s2cr, gr0_base + ARM_SMMU_GR0_S2CR(idx));
|
|
writel_relaxed(s2cr, gr0_base + ARM_SMMU_GR0_S2CR(idx));
|
|
}
|
|
}
|
|
@@ -1804,7 +1804,7 @@ static int arm_smmu_device_cfg_probe(struct arm_smmu_device *smmu)
|
|
* allocation (PTRS_PER_PGD).
|
|
* allocation (PTRS_PER_PGD).
|
|
*/
|
|
*/
|
|
#ifdef CONFIG_64BIT
|
|
#ifdef CONFIG_64BIT
|
|
- smmu->s1_output_size = min(39UL, size);
|
|
|
|
|
|
+ smmu->s1_output_size = min((unsigned long)VA_BITS, size);
|
|
#else
|
|
#else
|
|
smmu->s1_output_size = min(32UL, size);
|
|
smmu->s1_output_size = min(32UL, size);
|
|
#endif
|
|
#endif
|