summaryrefslogtreecommitdiff
path: root/drivers/tdm
AgeCommit message (Collapse)Author
2015-03-20fsl: Use ccflags-y instead of deprecated EXTRA_CFLAGSWang Dongsheng
This allows users to pass in additional compiler flags through the environment variable EXTRA_CFLAGS, e.g. make EXTRA_CFLAGS=-Wno-error Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com> Change-Id: I36513506ee1671c31bb076e9b73c2e8e2442cf4f Reviewed-on: http://git.am.freescale.net:8181/33146 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Honghua Yin <Hong-Hua.Yin@freescale.com>
2014-12-11qe-tdm: modify qe-tdm for both arm and powerpcZhao Qiang
ls1021 support qe ip block and it is arm, so modify qe-tdm code to adapt both arm and powerpc Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Ie64cef1dc6cd915388c089d1359c681da67c6fba Reviewed-on: http://git.am.freescale.net:8181/21869 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Zhengxiong Jin <Jason.Jin@freescale.com>
2014-12-11qe: move qe from arch/powerpc/sysdev/ to drivers/soc/Zhao Qiang
ls1 has qe ip block too, so move qe code from platform directory to public directory. Signed-off-by: Zhao Qiang <B45475@freescale.com> --- patch on upstream can be found with this link: http://patchwork.ozlabs.org/patch/385724/, it is under discussion Change-Id: I39aed531a4792990e3bb8ecc6f4e57f8d9b41bae Reviewed-on: http://git.am.freescale.net:8181/15818 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Zhengxiong Jin <Jason.Jin@freescale.com>
2014-09-17qe-tdm: move siram_init_flag to qe.cZhao Qiang
Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Id21f861ffec995ad68378a9d2eda245ef989b489 Reviewed-on: http://git.am.freescale.net:8181/19009 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
2014-09-17qe-tdm: change to 0 bit delay for normal TDM riser cardZhao Qiang
pq_mds_t1 card need 1 bit delay for qe-tdm, while others doesn't need. Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: I80e3e4c83206b292023e6ecb24867b6cb3b5984f Reviewed-on: http://git.am.freescale.net:8181/19001 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
2014-09-17Maxim/drver: add driver for maxim ds26522Zhao Qiang
add driver for maxim ds26522 Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: Icc4076540b5a72efa47778b52a7d455038ba2b99 Reviewed-on: http://git.am.freescale.net:8181/18999 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
2014-05-22tdm/device: Add configuration to enable use of internal clockSandeep Singh
TDM can either use an external (on-board) oscillator or use platform clock as source. On the boards which do not have an external clock enable TDM to use internal clock. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: Ic07aa8c419bb2fa4f61db17195638acf4914df0a Reviewed-on: http://git.am.freescale.net:8181/12415 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-16tdm/test: Added SLIC loopback test.Sandeep Singh
Modified test to cover SLIC loopback also. This test can now be run for internal as well as external loopback. To choose which test (internal/external) is to be executed can be controlled by module param "in_loopback". When in_loopback=1 test is configured for internal loopback, when in_loopback=0 test is configured for external(SLIC) loopback. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: I1244e9930e00ea7e17cff28f28e351814cc0d249 Reviewed-on: http://git.am.freescale.net:8181/12414 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-08tdm/test: Limit scope of structures and global variablesSandeep Singh
TDM test and TDM loopback test share few variable and structure name. This leads to build failure when both these test are enable at once. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: I7bbc7504b610ecb59b95acb121cb991b4c6663c5 Reviewed-on: http://git.am.freescale.net:8181/12039 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-04-30tdm: Add power management support for fsl tdmSandeep Singh
Added suspend and resume function for tdm. Signed-off-by: Sandeep Singh <sandeep@freescale.com> Change-Id: I6b237693735a85f23f20c8a80fa1e5e446820281 Reviewed-on: http://git.am.freescale.net:8181/9810 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Qiang Zhao <qiang.zhao@freescale.com> Reviewed-by: Yashpal Dutta <yashpal.dutta@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> (cherry picked from commit 548f123adbc116cd39289ff08fce989a95fe6928) Reviewed-on: http://git.am.freescale.net:8181/11318
2014-03-24QE-TDM: Add PM support for QE-TDMJiucheng Xu
Add suspend and resume function to qe-tdm. Signed-off-by: Jiucheng Xu <Jiucheng.Xu@freescale.com> Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: I81cac61575196957d28071ebf3f77be848494ff7 Reviewed-on: http://git.am.freescale.net:8181/9216 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/10111
2014-03-24QE-TDM: add support to make QE-TDM work on 36bit physical addressJiucheng Xu
Signed-off-by: Jiucheng Xu <Jiucheng.Xu@freescale.com> Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: I3841888a780f6d4d3d38589c5de4cdd3916921ef Reviewed-on: http://git.am.freescale.net:8181/9214 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/10110
2014-03-24qe-tdm/ucc: modify an "if conditions error"Zhao Qiang
There is an "if condition" uncorrect, modify it. Signed-off-by: Zhao Qiang <B45475@freescale.com> Change-Id: I5c3931a34e41c0eec34aead95254a37e919c45bb Reviewed-on: http://git.am.freescale.net:8181/10097 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Xiaobo Xie <X.Xie@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2014-01-20tdm: Added module param to enable loopback modeSandeep Singh
module param "loopback" if set will configure tdm device to initialize in loopback mode. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> Change-Id: I74b19ea2dd07a15672d71a6da0273d9aba69ddd3 Reviewed-on: http://git.am.freescale.net:8181/7000 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2013-12-06tdm/test: Added loopback test module for tdmSandeep Singh
This module requires tdm device to be configure in loopback mode. This test will write sample data on a tdm channel and compare the read value with the sample data sent. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> Change-Id: I2db7d40c0177c0b5e3a54467dab90c4de9d9b975 Reviewed-on: http://git.am.freescale.net:8181/7001 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Poonam Aggrwal <Poonam.Aggrwal@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
2013-04-18Changing poll operation from TDM port to TDM channelSandeep Singh
Since all read/write operations are in TDM are channel based, polling on TDM channel for data instead of TDM port before going for read/write. Also corrected a faulty error leg. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> (cherry picked from commit 304c5cc5f167d1ac8990e36579cc2f87851f0cdd) Change-Id: I5c0ec540c0db8e538e2b650ac0a0d5bdffaca336 Reviewed-on: http://git.am.freescale.net:8181/1159 Reviewed-by: Xu Jiucheng-B37781 <Jiucheng.Xu@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-05TDM: QUICC Engine UCC TDM test moduleXu Jiucheng
This is a small test module to transfer and receive data via tdm. It also supports zarlink LM card phone call. Signed-off-by: Jiucheng Xu <Jiucheng.Xu@freescale.com> Signed-off-by: Kai.Jiang <Kai.Jiang@freescale.com> Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Change-Id: I47396d43b37e31e8de926af353dadfdaf637f13f Reviewed-on: http://git.am.freescale.net:8181/906 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-05TDM: Add fsl pq-mds-t1 card supportJiucheng Xu
The patch enable Freescale PQ-MDS-T1 card to work in T1 or E1 mode. This card is connected to the board by PMC socket, it aslo supports Line Module extended e.g. zarlink,le88266, we can use "fsl,card_support" in dts to select which module you want. Signed-off-by: Jiucheng Xu <Jiucheng.Xu@freescale.com> Signed-off-by: Kai.Jiang <Kai.Jiang@freescale.com> Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Change-Id: I3f39fed84e137f7a19859935dbf71fac01330b47 Reviewed-on: http://git.am.freescale.net:8181/905 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-05TDM: Add a directly R/W API for tdm coreJiucheng Xu
Tdm core exported the simple function interfaces for user in kernel space. Signed-off-by: Jiucheng Xu <Jiucheng.Xu@freescale.com> Signed-off-by: Kai.Jiang <Kai.Jiang@freescale.com> Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com> Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Change-Id: Ifc8ef6b14f7cbc3c88fcfc5e4a1afd59564d8059 Reviewed-on: http://git.am.freescale.net:8181/904 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-05powerpc/qe: UCC transparent and TSA function support for TDMJiucheng Xu
This patch enabled UCC as transparent controller, working in continue mode, and enabled TSA A/B/C/D ports to send and receive data from UCC. This TDM function can transfer and receive data at different time slot based on tdm dts setting. Different UCC and TSA port can be binded to one TDM based on dts. Change-Id: I0da63966c82ca7da8e6bfc5fbb37f54596aef52a Signed-off-by: Jiucheng Xu <Jiucheng.Xu@freescale.com> Signed-off-by: Kai.Jiang <Kai.Jiang@freescale.com> Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com> Signed-off-by: Xie Xiaobo <X.Xie@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/903 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-03-21Basic configuration module for Le88266 Zarlink SLICSandeep Singh
- Basic driver which does minimum intialization of the Le88266 SLIC device. - The code was originally borrowed from Zarlink driver implementation. - It is not full fledged SLIC driver code, it just does basic initialization which is required to setup a voice data path between channels. This is just enough to test and demonstrate TDM functionality on Freescale platforms using TDM Test Module. - For full fledged VoIP type of use case proper SLIC driver will be required which handles all the functionalities of the device. - Going forward this driver will be replaced by Opoen source Zarlink APIs. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> (cherry picked from commit abd929c8081a0e474291d79adf837aaa3a61e6ca)
2013-03-21TDM test moduleSandeep Singh
This is a small test module to transfer and receive data via tdm. Registers with the TDM core and sets up a TDM voice path between two TDM channels. It support voice path demo using Le88266 SLIC device. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> (cherry picked from commit 52b6596fda27efe53a5cfe15b03f2f21bb86ddf7)
2013-03-21Added TDM device support and Freescale Starlite driverSandeep Singh
Freescale TDM controller consists of a TDM module supporting 128 channels running at up to 50 Mbps with 8-bit and 16-bit word size. The TDM bus connects gluelessly to most T1/E1 frames as well as to common buses such as the H.110, SCAS, and MVIP. TDM also supports an I2S mode. The TDM module operates in independent or shared mode when receiving or transmitting data. This controller is available on MPC8315, P1010, P1020, P1022 and P1024 Freescale SOCs. The driver registers itself with the TDM Framework & provides TDM functionality to the client modules. In its present form this driver supports only channelised mode. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> (cherry picked from commit 57b6d03a57174529a6b1cf26e5dac2a2d8ede5e6) Signed-off-by: Sandeep Singh <Sandeep@freescale.com> (cherry picked from commit 4ffa44272e2c1bdbbdd60efc0f033cfab4338f9d)
2013-03-21TDM FrameworkSandeep Singh
TDM Framework is an attempt to provide a platform independent layer which can offer a standard interface for TDM access to different client modules. Beneath, the framework layer can house different types of TDM drivers to handle various TDM devices, the hardware intricacies of the devices being completely taken care by TDM drivers. This framework layer will allow any type of TDM device to hook with it. For example Freescale controller as on MPC8315, UCC based TDM controller, etc The main functions of this Framework are: - provides interface to TDM clients to access TDM functionalities. - provides standard interface for TDM drivers to hook with the framework. - handles various data handling stuff and buffer management. In future this Framework will be extended to provide Interface for Line control devices also. For example SLIC, E1/T1 Framers etc. Presently the framework supports only Single Port channelised mode. Also the configurability options are limited which will be extended later on. Only kernel mode TDM clients are supported currently. Support for User mode clients will be added later. Signed-off-by: Sandeep Singh <Sandeep@freescale.com> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> (cherry picked from commit e327099dbad92d21d54c92b9ab8a860f5fbcb636)