|
@@ -527,6 +527,14 @@ static int gpmc_cs_remap(int cs, u32 base)
|
|
|
pr_err("%s: requested chip-select is disabled\n", __func__);
|
|
|
return -ENODEV;
|
|
|
}
|
|
|
+
|
|
|
+ /*
|
|
|
+ * Make sure we ignore any device offsets from the GPMC partition
|
|
|
+ * allocated for the chip select and that the new base confirms
|
|
|
+ * to the GPMC 16MB minimum granularity.
|
|
|
+ */
|
|
|
+ base &= ~(SZ_16M - 1);
|
|
|
+
|
|
|
gpmc_cs_get_memconf(cs, &old_base, &size);
|
|
|
if (base == old_base)
|
|
|
return 0;
|