summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorZhao Qiang <B45475@freescale.com>2014-03-24 10:01:13 (GMT)
committerJose Rivera <German.Rivera@freescale.com>2014-03-24 20:00:40 (GMT)
commit34ef41dd5ab2376a9e47afbd8d09332866404bb3 (patch)
tree59a7e1e5da5a9588df74823862c5758eb03bde89 /arch
parentccaed6d4c23e0072f37e97eba160df23734c9e05 (diff)
downloadlinux-fsl-qoriq-34ef41dd5ab2376a9e47afbd8d09332866404bb3.tar.xz
drivers/net: support hdlc function for QE-UCC
The driver add hdlc support for Freescale QUICC Engine. It support NMSI and TSA mode. Signed-off-by: Xie Xiaobo <r63061@freescale.com> Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Iece969b4934241f0f1cb574c5014600ef63cfb95 Reviewed-on: http://git.am.freescale.net:8181/10113 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/include/asm/ucc_fast.h1
-rw-r--r--arch/powerpc/sysdev/qe_lib/Kconfig2
-rw-r--r--arch/powerpc/sysdev/qe_lib/ucc_fast.c2
3 files changed, 2 insertions, 3 deletions
diff --git a/arch/powerpc/include/asm/ucc_fast.h b/arch/powerpc/include/asm/ucc_fast.h
index 74fdd31..561b00b 100644
--- a/arch/powerpc/include/asm/ucc_fast.h
+++ b/arch/powerpc/include/asm/ucc_fast.h
@@ -34,6 +34,7 @@
#define T_W 0x20000000 /* wrap bit */
#define T_I 0x10000000 /* interrupt on completion */
#define T_L 0x08000000 /* last */
+#define T_TC 0x04000000 /* crc */
#define T_CM 0x02000000 /* CM */
/* Rx Data buffer must be 4 bytes aligned in most cases */
diff --git a/arch/powerpc/sysdev/qe_lib/Kconfig b/arch/powerpc/sysdev/qe_lib/Kconfig
index 56e1228..644b7dbf 100644
--- a/arch/powerpc/sysdev/qe_lib/Kconfig
+++ b/arch/powerpc/sysdev/qe_lib/Kconfig
@@ -11,7 +11,7 @@ config UCC_SLOW
config UCC_FAST
bool
- default y if UCC_GETH || FSL_UCC_TDM
+ default y if UCC_GETH || FSL_UCC_TDM || FSL_UCC_HDLC
help
This option provides qe_lib support to UCC fast
protocols: HDLC, Ethernet, ATM, transparent
diff --git a/arch/powerpc/sysdev/qe_lib/ucc_fast.c b/arch/powerpc/sysdev/qe_lib/ucc_fast.c
index d72630e..67191a0 100644
--- a/arch/powerpc/sysdev/qe_lib/ucc_fast.c
+++ b/arch/powerpc/sysdev/qe_lib/ucc_fast.c
@@ -328,7 +328,6 @@ int ucc_fast_init(struct ucc_fast_info * uf_info, struct ucc_fast_private ** ucc
ucc_fast_free(uccf);
return -EINVAL;
}
-#ifdef CONFIG_FSL_UCC_TDM
} else {
/* tdm Rx clock routing */
if ((uf_info->rx_clock != QE_CLK_NONE) &&
@@ -365,7 +364,6 @@ int ucc_fast_init(struct ucc_fast_info * uf_info, struct ucc_fast_private ** ucc
ucc_fast_free(uccf);
return -EINVAL;
}
-#endif
}
/* Set interrupt mask register at UCC level. */