Age | Commit message (Collapse) | Author |
|
Remove unused function "asrc_get_output_buffer_size()" to fix build
warning.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
Since YV12 format is supported in mxc_v4l2_capture, it should be also
supported in mxc_vout.
Signed-off-by: Sheng Nan <b38800@freescale.com>
|
|
Android CTS verifier have a must requirement for YV12 format. Since IPUv3
common driver has supported IPU_PIX_FMT_YVU420P pixel format, add the
support of YV12 format in mxc_v4l2_capture.
Signed-off-by: Sheng Nan <b38800@freescale.com>
|
|
1. Refine VPU suspend/resume according to open_count to completely
fix bug: ENGR00230203 [Android_MX6DL_SD] Gallery: System hang
after resume from suspend during video playback. 20%
open_count == 0 case can be simplified because VPU is released
(all instances are freed), so
- clock is already off
- context is no longer needed
- power is already off on MX6
VPU reset is removed from resume because power is ensured to be off
before entering resume on MX6 by calling regulator API.
2. Fix bug: VPU always busy after suspend/resume
Error log (VPU refused to suspend due to VPU busy):
pm_op(): platform_pm_suspend+0x0/0x54 returns -11
PM: Device mxc_vpu failed to suspend: error -11
PM: Some devices failed to suspend
Root cause:
- Suspend happened during vpu_Init(), somewhere after VPU lib started
to download FW (when PC == 0), but before run FW. (BIT_BUSY_FLAG=1,
BIT_CODE_RUN=1).
- In such case, VPU resume downloaded FW and run VPU to idle because
suspend was triggered after VPU was opened (active).
- vpu_Init run VPU again with BIT_BUSY_FLAG=1. So VPU was trapped in
idle loop but BIT_BUSY_FLAG was never cleared. VPU lib regarded VPU
as always busy.
Solution (in VPU resume):
- run VPU FW only if VPU was opened and PC before suspend is not 0
- restore host register is required
- download FW is required, because program memory is lost after power
off.
Signed-off-by: Hongzhang Yang <Hongzhang.Yang@freescale.com>
|
|
Since some ethernet MAC flow control is relied on phy pause
status, both link partners exchange information via auto neg to
determine if both parties are capable of flow control.
Advertise phy pause frame to avoid pause frame is not responsed
by the other net node.
Signed-off-by: Fugang Duan <B38611@freescale.com>
|
|
- It is better to disable otgsc and wake up interrupt to avoid an
abnormal interrupt happen during USB driver being removed.
- If the USB host is already at low power mode, only need turn on
the clock, no need turn off the clock.
- Need discharge dp and dm during USB driver being removed ,in order
to avoid a wakeup interrupt happen. And if the USB otg is in host
mode, we should clear discharge dp and dm in fsl_otg_set_host()
during system boot up.
Signed-off-by: make shi <b15407@freescale.com>
|
|
On Uart driver, CTS signal were never disabled
on the imx_set_mctrl function since the register was
written inside of the conditional.
if (mctrl & TIOCM_RTS) {
temp |= UCR2_CTS;
writel(temp, sport->port.membase + UCR2);
}
Signed-off-by: Alejandro Sierra <b18039@freescale.com>
|
|
Warning: no return statement in function returning non-void.
fec_ptp_ioctl return zero when 1588 is not enable.
Signed-off-by: Fugang Duan <B38611@freescale.com>
|
|
When do Ethernet UDP stress overnight test with abundance of
data transmission, RX path may hang-on.
Dump the RX BD, found all BD "Empty" bit is cleared, which means
CPU read BD status is not right and waiting here.
Change BD memroy attribute from Normal to strongly ordered:
changes the memory attribute of C=0, B=0 instead of C=0, B=1.
Apply the change, the issue cannot be reproduced.
Signed-off-by: Fugang Duan <B38611@freescale.com>
|
|
Issue:
By default, cd_gpio is 0 for always presented host controller, which is a
valid gpio. Then it will result to free_irq for 0 in esdhc_pltfm_exit for
these always_present host controllers.
Fix:
Invalid cd_gpio if the controller is indicated to be always present.
Acked-by: Dong Aisheng <b29396@freescale.com>
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
This patch add device drvier for novatek touch screen driver.
This touch screen chip will be support because it have
more populary screen size.
Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
|
|
Our SDMA code did not support SDMA M2M copy function before, we add
SDMA M2M copy function in this patch, you can use 'sg' to use this
function, you can refer to 'linux-test/module_test/mxc_sdma_memcopy_test.c'
for how to use this function.
Signed-off-by: Ge Lei <b42127@freescale.com>
|
|
Add V4L2_MEMORY_USERPTR support for csi v4l2 capture
Support V4L2_MEMORY_USERPTR and V4L2_MEMORY_MMAP now
Signed-off-by: Robby Cai <R63905@freescale.com>
|
|
Bypass eMMC version checking, so that eMMC v4.5 can work on current kernel as
eMMC v4.4 cards, no specific v4.5 feature supported. Only basic read/write
operations are supported, also ddr mode is supported.
Acked-by: Dong Aisheng <b29396@freescale.com>
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
ov5642 add some delay to wait for sensor stable after S_PARM.
And ov5640_mipi should keep the same behavior.
So the upper layer can trust the first frame comes out of ov5640_mipi.
- delay added according to the recommended time from ov company
Signed-off-by: Sheng Nan <b38800@freescale.com>
|
|
The job ring driver exhibited a hang condition in the top of
caam_jr_dequeue() where a BUG_ON statement looks for a condition
where the output ring is said to have valid entries by the ring logic,
but the ring entries apparently have NULL descriptor pointers.
In the initial ARM port of this driver, the cache flush call
of the output ring content occured before the output ring read index
register read occurred, exposing a condition where the driver sensed valid
output entries, yet the entries written by the ring hardware were not
invalidated, and therefore were not visible to the processor, appearing
as false NULL entries.
This patch relocates the invalidate call to immediately follow the
check of the output read index, where it is required.
Signed-off-by: Vicki Milhoan <vicki.milhoan@freescale.com>
Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com>
Signed-off-by: Terry Lv <r65388@freescale.com>
|
|
This bug was introduced by ENGR00229290 which fixed
the problem of greater than 16 LUTs used when 5-bit
waveform loaded. The bug is that now the driver is also
restricted to using 16 LUTs in 4-bit mode.
The fix is to correct the test of the EPDC_FORMAT
register used to determine if a 5-bit waveform
is loaded.
Also removed the while loop in favor of a bitwise OR
used to determine if a chosen LUT has yet to be
acknowledged by the interrupt handler.
Signed-off-by: Michael Minnick <michael.minnick@freescale.com>
|
|
When pause the capture test program, the "working queue empty" message
shows up repeatedly. However this message is expected to show up because
there's no QBUF called. Change pr_err to pr_debug to keep it as debug level.
Signed-off-by: Robby Cai <R63905@freescale.com>
|
|
Without this dependency, we have to manually disable
CONFIG_VIDEO_MXC_PXP_V4L2 when disable CONFIG_FB_MXC_ELCDIF_FB.
Otherwise, a build error shows up. This patch fixed it.
Signed-off-by: Robby Cai <R63905@freescale.com>
|
|
added ioctls are:
VIDIOC_ENUM_FRAMEINTERVALS
VIDIOC_ENUM_FRAMESIZES
VIDIOC_ENUM_FMT
VIDIOC_DBG_G_CHIP_IDENT
Signed-off-by: Robby Cai <R63905@freescale.com>
|
|
The reason is that when switching from SHA1 to SHA256, cryptodev will
create a new session.
But in this new session, the __ctx in allocated req is not fully initialized.
Thus dma_buf in __ctx will be a random value.
If the value is 0 or some address in DMA memory, that will be ok,
otherwise, it will crashed in dma_unmap_single().
The calling sequence is:
ahash_final_ctx=>try_buf_map_to_sec_sg()=>dma_unmap_single()
When calling dma_unmap_single(), the parameter buf_dma is invalid in
crash case.
The error msg is:
kernel BUG at arch/arm/mm/dma-mapping.c:478!
requested hash CRYPTO_SHA2_256, Unable to handle kernel NULL pointer
dereference at virtual address 00000000
got sha256 with driver sha256-caapgd = e4ea0000
m
Encrypting in chunks of 256 b[00000000] *pgd=74edb831ytes: ,
*pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#1] PREEMPT SMP
Modules linked in: cryptodev
CPU: 0 Not tainted (3.0.35-02200-ge392070-dirty #68)
PC is at __bug+0x1c/0x28
LR is at __bug+0x18/0x28
pc : [<80044260>] lr : [<8004425c>] psr: 60000013
sp : e4ec7c40 ip : ea9a2000 fp : 00000010
r10: 883f8038 r9 : 883f8038 r8 : e4803060
r7 : 00000000 r6 : 00000001 r5 : 00000000 r4 : 6f66c10a
r3 : 00000000 r2 : 80aafd5c r1 : 60000093 r0 : 00000033
Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c53c7d Table: 74ea004a DAC: 00000015
Process sha_speed (pid: 2747, stack limit = 0xe4ec62f0)
Stack: (0xe4ec7c40 to 0xe4ec8000)
7c40: 74803184 8004a424 e4803000 e4730c08 e4262840 803c50dc
e4786f20 883f8000
7c60: 00000020 00000000 00000028 883f8018 e43ffcc0 e4803000
00000000 803c3d04
7c80: 00000004 80041104 e4ec6000 00000000 7efc4b64 803c3d10
e4774a3c 802079f8
7ca0: e43ffd1c e43ffcc0 00000000 7f0031a0 e4ec7e0c e43ffcc0
e4ec7e0c 7f00240c
7cc0: 00000100 e4786f20 e481bd40 e4ec7cd8 e4ec7cdc 7f0016b4
e4803200 00000000
7ce0: e4094480 00000000 7efc4b2c 00000004 80041104 7f001b64
8c81200c 00000000
7d00: 3fe1c2a2 2aba7e2c 00000000 00000000 00000000 00000000
00000000 2abc8870
7d20: 2abc8870 2abc8870 7efc4e10 00000000 2aba3000 00000000
2abc7f48 00000000
7d40: 00000000 00000000 00000000 00000000 00000000 00000000
2abc7f88 2abc7f80
7d60: 2abc7f50 2abc7f60 2abc7f68 00000000 00000000 00000000
2abc7f70 2abc7f78
7d80: 00000000 32616873 2a003635 00000000 00000000 2abc7fa0
2abc7fa8 2abc7fb0
7da0: 2abc7f90 00000000 00000000 2abc7f98 00000000 00000000
00000000 00000000
7dc0: 00000000 32616873 632d3635 006d6161 00000000 00000000
00000000 00000000
7de0: 2abc7fc0 2abc7fb8 00000000 2abc7fd0 00000000 00000000
00000000 00000000
7e00: 00000000 00000000 00000001 3fe1c2a2 00000000 00000100
00012008 00000000
7e20: 7efc4ab8 00000000 00000000 8006a120 e4044740 8c80ef40
00000001 00000000
7e40: 00000002 e4044740 e4ec7e7c 8006f5f4 e4ec6000 8007ffd4
e4348880 60000093
7e60: 00000000 80ae6de8 e4253200 8004e0fc 00000261 8028c0f4
e4877000 80ae6de8
7e80: e4786f20 e481bd40 00000261 8028c0f4 000059ac 00000000
36390b02 00000000
7ea0: e4cd7b6c e43488d0 8c80e4c4 00000038 e43488d0 802342dc
0000003f e43488d0
7ec0: 8c80e4b8 8c80e4b8 00000038 80090714 0000003f 8aafab02
00000000 80091134
7ee0: 8aafab02 0000003f e4ec6000 80a99cc0 e4eed510 7efc4b2c
e4ef96e0 00000004
7f00: 80041104 800febd0 60a9b3cd e4786f20 e4348880 00000000
e4ec7f88 e43488d0
7f20: e4ec6000 00000000 00000000 80091408 00000000 00000001
00000001 e4ec7f78
7f40: 000059b1 00000000 fffffff7 80aedc50 80a8a0c0 00000000
00000000 e4ec7f90
7f60: 7efc4b20 e4ef96e0 7efc4b2c c01c6368 00000004 80041104
e4ec6000 00000000
7f80: 7efc4b64 800ff0d4 00000000 00000000 00000109 00000000
00000000 00008628
7fa0: 00000036 80040f80 00000000 00000000 00000004 c01c6368
7efc4b2c 7efc4b2c
7fc0: 00000000 00000000 00008628 00000036 00000000 00000000
2abc8000 7efc4b64
7fe0: 00000000 7efc4a90 00008b5c 2ac857bc 80000010 00000004
e28bd000 e8bd0800
[<80044260>] (__bug+0x1c/0x28) from [<8004a424>]
(___dma_single_dev_to_cpu+0x84/0x94)
[<8004a424>] (___dma_single_dev_to_cpu+0x84/0x94) from [<803c50dc>]
(ahash_final_ctx+0x1a0/0x41c)
[<803c50dc>] (ahash_final_ctx+0x1a0/0x41c) from [<803c3d10>]
(ahash_final+0xc/0x10)
[<803c3d10>] (ahash_final+0xc/0x10) from [<802079f8>]
(crypto_ahash_op+0x28/0xc0)
[<802079f8>] (crypto_ahash_op+0x28/0xc0) from [<7f0031a0>]
(cryptodev_hash_final+0x30/0xc0 [cryptodev])
[<7f0031a0>] (cryptodev_hash_final+0x30/0xc0 [cryptodev]) from
[<7f00240c>] (crypto_run+0x10c/0x398 [cryptodev])
[<7f00240c>] (crypto_run+0x10c/0x398 [cryptodev]) from [<7f001b64>]
(cryptodev_ioctl+0x360/0x768 [cryptodev])
[<7f001b64>] (cryptodev_ioctl+0x360/0x768 [cryptodev]) from
[<800febd0>] (do_vfs_ioctl+0x80/0x54c)
[<800febd0>] (do_vfs_ioctl+0x80/0x54c) from [<800ff0d4>]
(sys_ioctl+0x38/0x5c)
[<800ff0d4>] (sys_ioctl+0x38/0x5c) from [<80040f80>]
(ret_fast_syscall+0x0/0x30)
Code: e59f0010 e1a01003 eb12fddb e3a03000 (e5833000)
---[ end trace 0057f6be00952f77 ]---
Signed-off-by: Terry Lv <r65388@freescale.com>
|
|
For ASRC memory to memory transfer, user would send driver input buffer
and driver would copy converted output buffer into user's buffer.
However, ASRC can't promise the ratio of output buffer size/input buffer
size being equal to output sample rate/input sample rate.e.g, for
convert from 8k to 48k and 1000 bytes input buffer size, ASRC may pop
out 5999 bytes or 6001 bytes. If driver copy all 6001 bytes into user's
buffer, kernel dump may happens cause of accessing unexisted buffer.
In this patch, if ASRC output buffer size is larger than user's buffer
size, discard exact part.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
warning:
Compiling warning on mainline imx_3.0.35 (potential bug):
drivers/mxc/asrc/mxc_asrc.c: In function 'asrc_output_task_worker':
drivers/mxc/asrc/mxc_asrc.c:961:68: warning: 't_size' may be used
uninitialized in this function [-Wuninitialized]
drivers/mxc/asrc/mxc_asrc.c:943:23: note: 't_size' was declared here
In this patch, init t_size.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
ASoC ESAI machine driver and pcm platform driver use the APIs from mxc_asrc.c,
but once ASRC is used as a loadable module, these files can't find the APIs
from this ko. In this patch, we use 'asrc_p2p_hook' to hook the APIs which will
be used in ASoC ESAI machine driver and pcm platform driver.
Signed-off-by: Ge Lei <b42127@freescale.com>
|
|
Signed-off-by: Loren Huang <b02279@freescale.com>
Acked-by: Lily Zhang
|
|
when quit from ASRC driver with CTRL + C, driver close() would free
output buffer and close clock. However, it is possible that the buffer
is accessed by work task(work task is trigger by interrupt and it would
not be stopped by CTRL + C). So ASRC driver should promise that its
pair resource(buffer, SDMA channel, and clock) would not be accessed
after it is released.
In this patch, add protect for pair resource.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
- reset fsl_otg_dev to NULL after kfree
- remove __exit_p prefix to make sure fsl_udc_remove is called when
module unload
Signed-off-by: make shi <b15407@freescale.com>
|
|
In this patch, add interface to modify ASRC input/output watermark.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
IPUv3 CPMEM EBA sets buffer start address. EBA should be 8-byte
aligned according to IPUv3 spec. This patch contains code change
only to warn on alternative CPMEM entry's EBA0 unalignment case.
Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
(cherry picked from commit 1a2f3dc6340d5cf93f2e4bcd5a9d4395fcc18cf1)
|
|
Add core of SNVS state handler module.
Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com>
Signed-off-by: Terry Lv <r65388@freescale.com>
|
|
Add SNVS state handler startup to CAAM controller driver.
Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com>
Signed-off-by: Terry Lv <r65388@freescale.com>
|
|
Add build environment for CAAM/SNVS security violation handlers.
Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com>
Signed-off-by: Terry Lv <r65388@freescale.com>
|
|
Upgrade drivers to support IXXAT IEEE1588 stack V1.05.03.
Ptp message protocol support IPv4, IPv6, and IEEE802.3 L2.
Signed-off-by: Fugang Duan <B38611@freescale.com>
|
|
The wrong EPDC panel can be loaded at boot time if the machine
board file has multiple panel entries with the same video mode
parameter values. To reproduce, select a particular panel with
u-boot kernel command line parameters, for example:
video=mxcepdcfb:XYZZY
Add panel XYZZY to arch/arm/mach-mx6/board-mx6sl_evk.c after
an existing entry. Use the same video mode parameter settings
as the existing entry. On boot, the existing panel will be loaded
instead of the XYZZY panel because it comes earlier in the list
and happens to have the same video mode parameter values.
Solution: If the video mode parameter settings specified in
the call to msc_epdc_fb_set_par() match those of the panel
already loaded by mxc_epdc_fb_probe(), don't execute a
search for a new matching panel.
Signed-off-by: Michael Minnick <michael.minnick@freescale.com>
|
|
When system bootup without HDMI plugin, the default modelist
and default video mode will create.
Match default video mode in default CEA modelist, make sure
default video mode is a CEA mode.
Signed-off-by: Sandor Yu <R01008@freescale.com>
|
|
Since sdhci_pltfm_data is stored in platform_device_id, but in
sdhci_pltfm_remove, it tried to get sdhci_pltfm_data directly from
pdev->dev.platform_data. It will result that it could not get the correct
sdhci_pltfm_data, so that platform exit will not be called on sdhci module's
removal.
Acked-by: Dong Aisheng <b29396@freescale.com>
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
Export sdhci_request to fix build error.
Here's the error message:
ERROR: "sdhci_request" [drivers/mmc/host/sdhci-platform.ko] undefined!
Acked-by: Dong Aisheng <b29396@freescale.com>
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
There is a USB hang issue when do system suspend/resume test with a USB
device plug in. The issue is caused by USB host driver accessing register
when clock is off. Currently set HCD_FLAG_HW_ACCESSIBLE bit before open
clock in ehci_fsl_bus_resume, it cause accessing register without clock.
So we should change the code call order to avoid driver access register
without clock.
- Set HCD_FLAG_HW_ACCESSIBLE software flag after HW clock turn on
- remove some unnecessary code in ehci_fsl_pre_irq
Signed-off-by: make shi <b15407@freescale.com>
|
|
* Add regulator support
Set regulator voltage and enable them
On remove callback disable regulators
* Add callbacks for target platform custom
reset, power up/down and io pads configuration
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
|
|
* Add i2c dummy client for csi-tx register map config
* adv7280 csi-tx reg banks are mapped in a different
memory map and respond to a different i2c slave address
that user can configure
* Add default config helper function
* Override slave csi-tx address if user provides a different
value.
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
|
|
Increase convert speed while ASRC is working on ideal ratio mode to
satisfy asrc plugin's timing request.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
To finish a buffer convert in ASRC, user should 1. prepare input buffer,
2. prepare output buffer 3. wait for output buffer's completion 4.wait
for input buffer's comletion. The flow make user application ugly.
In this patch, pack steps above to 1 stop: ASRC_CONVERT.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
When SDMA is use for periphal data transfer, dma request is trigger by
FIFO level. If the SDMA is started after the start of periphal, SDMA
would miss the first pulse and be not able to trigger itself.
In this patch, add interface to trigger a dma request manully.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
ASRC driver use DMA to transfer data from ASRC output FIFO to memory.
However, DMA way require the data number in ASRC output FIFO being larger
than watermark level. Thus a dma request can trigger a DMA burst. For
the last period of output data, its number is possiblely less than output
FIFO watermark level. In this case, the output DMA would pending for the
last period of output data until timeout.
In this patch:
1 divide expected output data length into 2 parts: DMA part
and poll part. Using DMA to get the DMA part data and poll mode to
get the poll part.
2 to prevent user from processing these 2 parts above, kernel
buffers would be untouchable. User application only need send its data
buffer address to driver instead of query the kernel buffer.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
In the origin code, ASRC driver use cyclic way to process DMA task
transfering data to/from ASRC input/output FIFO. In this case, it is
necessary that user application should promise that the input buffer
flow is continuous. If not, there would be 0 data be inserted into data
flow. The output data would be noisy.
In this patch,
1 use scatter list instead of cyclic SDMA: with scatter list,
SDMA would stop when the applied scatter list nents are finished.
2 set stall bit for ASRC "memory->ASRC->memory" convert to stop
ASRC convert when input data is not send into ASRC input FIFO in time.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
For ASRC's "memory -> ASRC -> memory" using, new driver would support
model below: user input one buffer into ASRC and an corresponding output
buffer would be poped out. There is no timing requirement between this
input buffer and next input buffer. Thus driver would not use the cyclic
way to config SDMA and scatterlist is used. buffer allocated by
dma_alloc_coherent() can't support scatterlist well.
In this patch, use kzalloc to allocate buffer to support scatterlist.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
SDMA driver can't promise receive all output data generated. Cause when
the data in output FIFO is less than ASRC output FIFO watermark, there
would be no DMA request generated and thus no SDMA transfer would
happens.
In this patch, add work struct to support ASRC driver receive last part
of data in OUTPUT FIFO in polling way.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
According to ASRC memory->ASRC->memory requirement, driver should
satisfy the feature below: user application would passed into one buffer
and waiting until the output buffer is generated. In this case, only one
buffer is on processing and it is no necessary to use the queue to do
the convert. What is worse, queue operation would make the ASRC driver
hard to understand and maintain.
In this patch, remove the queue operation in ASRC driver.
Signed-off-by: Chen Liangjun <b36089@freescale.com>
|
|
This patch adds WXGA(1280x800@60) video mode
support to driver CHIMEI WXGA LVDS panel.
Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
(cherry picked from commit 653fbb0cd709bf25942c29c0695ecc4af6987e24)
|
|
Bluetooth H4 protocol is very susceptible to data reception timeouts.
DMA transfer only happen when ICD or AGTIM interrutps are trigger.
ICD only happen when a N idle frames are present on rx line
and rx FIFO is empty.
Meanwhile Aging timer is trigger when data in FIFO was been sitting for a
period of 8 frames.
This patch enable both in order to dispatch data as fast is possible only
when the select uart have enable DMA flag.
Signed-off-by: Israel Perez <B37753@freescale.com>
|