summaryrefslogtreecommitdiff
path: root/arch/powerpc/platforms
diff options
context:
space:
mode:
authorWang Dongsheng <dongsheng.wang@freescale.com>2014-05-29 05:44:15 (GMT)
committerZhenhua Luo <zhenhua.luo@freescale.com>2014-05-31 05:12:21 (GMT)
commit8468c8668450f83ffe6b4146a334ed8e28af52e7 (patch)
tree0229f0b679177ec27178a77a09b5a4a6b3b5b99a /arch/powerpc/platforms
parent715fb4c556bfe11c1e26af5bc18cfdf8fb5c178e (diff)
downloadlinux-fsl-qoriq-8468c8668450f83ffe6b4146a334ed8e28af52e7.tar.xz
powerpc/p1022: fix nand partitions cannot identify
Nand partitions cannot idetify when PIXIS is indirect model. When DIU not enable, we need to keep the pixis is direct model. Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: I028ed60c3677e8d16d01e4bad0f3a4a393ab8ab4 Reviewed-on: http://git.am.freescale.net:8181/13035 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Zhengxiong Jin <Jason.Jin@freescale.com> Reviewed-by: Scott Wood <scottwood@freescale.com> Reviewed-by: Zhenhua Luo <zhenhua.luo@freescale.com> Tested-by: Zhenhua Luo <zhenhua.luo@freescale.com>
Diffstat (limited to 'arch/powerpc/platforms')
-rw-r--r--arch/powerpc/platforms/85xx/p1022_ds.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/85xx/p1022_ds.c b/arch/powerpc/platforms/85xx/p1022_ds.c
index 8a77b12..9c5aecc 100644
--- a/arch/powerpc/platforms/85xx/p1022_ds.c
+++ b/arch/powerpc/platforms/85xx/p1022_ds.c
@@ -139,6 +139,7 @@ static int px_ctl_altacc_flag;
* obtain the upper four bits, we need to scan the LAW table. The entry which
* maps to the localbus will contain the upper four bits.
*/
+#if defined(CONFIG_FB_FSL_DIU) || defined(CONFIG_FB_FSL_DIU_MODULE)
static phys_addr_t lbc_br_to_phys(const void *ecm, unsigned int count, u32 br)
{
#ifndef CONFIG_PHYS_64BIT
@@ -163,6 +164,7 @@ static phys_addr_t lbc_br_to_phys(const void *ecm, unsigned int count, u32 br)
return 0;
#endif
}
+#endif
static u8 __iomem *lbc_lcs0_ba;
static u8 __iomem *lbc_lcs1_ba;
@@ -175,6 +177,7 @@ static inline bool verify_pixis_indirect_access_address(void)
return false;
}
+#if defined(CONFIG_FB_FSL_DIU) || defined(CONFIG_FB_FSL_DIU_MODULE)
static void indirect_access_pixis_probe(void)
{
struct device_node *lbc_node;
@@ -294,6 +297,7 @@ exit:
if (law_node)
of_node_put(law_node);
}
+#endif
static void indirect_access_pixis_reset_pcie_slot(void)
{
@@ -626,7 +630,9 @@ static void __init p1022_ds_setup_arch(void)
swiotlb_detect_4g();
+#if defined(CONFIG_FB_FSL_DIU) || defined(CONFIG_FB_FSL_DIU_MODULE)
indirect_access_pixis_probe();
+#endif
pr_info("Freescale P1022 DS reference board\n");
}