summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2012-11-28ENGR00234781 input: add novatek touch screen driver.Zhang Jiejing
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>
2012-11-28ENGR00233569 SDMA: Add support for SDMA M2M copyGe Lei
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>
2012-11-28ENGR00234387 mx6sl: csi/v4l2: add V4L2_MEMORY_USERPTR supportRobby Cai
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>
2012-11-28ENGR00234519 mmc: support eMMC v4.5 memory cardsRyan QIAN
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>
2012-11-28ENGR00234362 Camera: ov5640_mipi: wait for sensor stable before streamonSheng Nan
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>
2012-11-28ENGR00234401: CAAM: Fix incorrect invalidate call for output ringSteve Cornelius
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>
2012-11-28ENGR00233494 EPDC: Driver only supports 16 LUTsMichael Minnick
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>
2012-11-19ENGR00229852 csi/v4l: lower the priority of "working queue empty" messageRobby Cai
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>
2012-11-19ENGR00232893 mx6sl: pxp/v4l2: add dependency on CONFIG_FB_MXC_ELCDIF_FBRobby Cai
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>
2012-11-19ENGR00231307 csi/camera: add some ioctlsRobby Cai
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>
2012-11-16ENGR00233800: CAAM: running sha_speed in cryptodev crashedTerry Lv
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>
2012-11-16ENGR00233780 ASRC: limit output buffer size to avoid kernel dumpChen Liangjun
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>
2012-11-16ENGR00233886 ASRC: init variable to fix build warningChen Liangjun
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>
2012-11-15ENGR00233570-1 ASRC: Use hook to add support for ASRC loadableGe Lei
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>
2012-11-15ENGR00233452 Integrate 4.6.9p9 GPU kernel part driverLoren Huang
Signed-off-by: Loren Huang <b02279@freescale.com> Acked-by: Lily Zhang
2012-11-15ENGR00233577 ASRC: add spinlock to protect ASRC pair resourceChen Liangjun
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>
2012-11-14ENGR00233051-04 Mx6 USB: driver implementation for OTG modulizationmake shi
- 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>
2012-11-14ENGR00233427 ASRC: add interface to modify ASRC input/output watermarkChen Liangjun
In this patch, add interface to modify ASRC input/output watermark. Signed-off-by: Chen Liangjun <b36089@freescale.com>
2012-11-14ENGR00233380 IPUv3:Warn on sub-CPMEM EBA0 unalignment caseLiu Ying
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)
2012-11-13ENGR00232945-3: CAAM: Add core of SNVS state handler moduleSteve Cornelius
Add core of SNVS state handler module. Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com> Signed-off-by: Terry Lv <r65388@freescale.com>
2012-11-13ENGR00232945-2: CAAM: Add SNVS state handler startupSteve Cornelius
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>
2012-11-13ENGR00232945-1: CAAM: Add build environment for CAAM/SNVS handlersSteve Cornelius
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>
2012-11-09ENGR00232528 - IEEE1588:imx6:Upgrade driver to support IXXAT stack V1.05.03Fugang Duan
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>
2012-11-08ENGR00232660 EPDC: Wrong panel loaded at bootMichael Minnick
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>
2012-11-08ENGR00232930 Added default video mode check, make sure it is a CEA mode.Sandor Yu
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>
2012-11-08ENGR00231273-02 mmc: sdhci: fix failed to call platform exit on removalRyan QIAN
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>
2012-11-08ENGR00231273-01 mmc: sdhci: modularize sdhci driverRyan QIAN
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>
2012-11-07ENGR00232583 Mx6 USB host: Set HCD_FLAG_HW_ACCESSIBLE flag after clock gatemake shi
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>
2012-11-06ENGR00231266-3: adv7280_mipi_tvin add regulator supportAdrian Alonso
* 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>
2012-11-06ENGR00231266-2: adv7280_mipi_tvin add i2c dummy client for csi configAdrian Alonso
* 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>
2012-11-06ENGR00231773-9 ASRC: increace convert speed while in ideal modeChen Liangjun
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>
2012-11-06ENGR00231773-8 ASRC: prevent user app from processing input/output processingChen Liangjun
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>
2012-11-06ENGR00231773-6 SDMA: add event pending trigger interfaceChen Liangjun
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>
2012-11-06ENGR00231773-5 ASRC: use poll mode to receive last period of ASRC dataChen Liangjun
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>
2012-11-06ENGR00231773-4 ASRC: use scatter list and stall bit for asrc convertChen Liangjun
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>
2012-11-06ENGR00231773-3 ASRC: use kzalloc to allocate buffer to support scatterlistChen Liangjun
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>
2012-11-06ENGR00231773-2 ASRC: add work struct for asrc output data receiveChen Liangjun
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>
2012-11-06ENGR00231773-1 ASRC: remove queue operation in ASRC driverChen Liangjun
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>
2012-11-06ENGR00232424 LDB:Support WXGA@60 video modeLiu Ying
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)
2012-11-05ENGR00225875-2 i.MX6Q/Solo Sabreauto Bluetooth H4 fix uart rx timeouts.Israel Perez
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>
2012-11-02ENGR00232000: Fix "dmaengine: failed to get dma1chan0: (-22)" when bootRobby Cai
The log from [MX6DL/S_SD]: ... mxc_sdc_fb mxc_sdc_fb.1: register mxc display driver ldb dmaengine: failed to get dma1chan0: (-22) dmaengine: failed to get dma1chan1: (-22) dmaengine: failed to get dma1chan2: (-22) dmaengine: failed to get dma1chan3: (-22) dmaengine: failed to get dma1chan4: (-22) dmaengine: failed to get dma1chan5: (-22) dmaengine: failed to get dma1chan6: (-22) dmaengine: failed to get dma1chan7: (-22) dmaengine: failed to get dma1chan8: (-22) dmaengine: failed to get dma1chan9: (-22) dmaengine: failed to get dma1chan10: (-22) dmaengine: failed to get dma1chan11: (-22) dmaengine: failed to get dma1chan12: (-22) dmaengine: failed to get dma1chan13: (-22) dmaengine: failed to get dma1chan14: (-22) dmaengine: failed to get dma1chan15: (-22) ... It happens when there are many DMA-engine drivers in the system and dmaengine_get() is called. dmaengine_get() will call dma_chan_get(), which will call device_alloc_chan_resources() literally on channels of available dma drivers unless reach -ENODEV. device_alloc_chan_resources() is implemented in the individual dma drivers, which could return -EINVAL rather than -ENODEV, then the above messages print out (doesn't hurt, however). Indeed, the dmaengine_get() and dmaengine_put() is not needed and thus removed. Signed-off-by: Robby Cai <R63905@freescale.com>
2012-11-01ENGR00232087-2 VPU: Fix suspend/resume bugsHongzhang Yang
1. Fix ENGR00230203 [Android_MX6DL_SD] Gallery: System hang after resume from suspend during video playback. 20% 2. Fix ENGR00231830 [MX6DL/S_SD] VPU: VPU encode can't finish and print "VPU blocking: timeout." if suspend/resume. 100% Signed-off-by: Hongzhang Yang <Hongzhang.Yang@freescale.com>
2012-11-01ENGR00232005 mtd: fix the overflow of big mtd partitionsHuang Shijie
When the kernel parses the following cmdline #mtdparts=gpmi-nand:16m(boot),16m(kernel),1g(home),4g(test),-(usr) for a big nand chip Micron MT29F64G08AFAAAWP(8GB), we got the following wrong result: ............................................. "mtd: partition size too small (0)" ............................................. We can not get any partition. The "4g(test)" partition triggers a overflow of the "size". The memparse() returns 4g to the "size", but the size is "unsigned long" type, so a overflow occurs, the "size" becomes zero in the end. This patch changes the "size"/"offset" to "unsigned long long" type, and replaces the UINT_MAX with ULLONG_MAX for macros SIZE_REMAINING and OFFSET_CONTINUOUS. Signed-off-by: Huang Shijie <b32955@freescale.com>
2012-11-01ENGR00231965 MX6 USB CV 3.0 test failTony LIU
- For USB CV 3.0 test, the gap between the ACK of set_address and the subsequent setup packet may be very little, say 500us, and if the latency we handle the ep completion is greater than this gap, there is no response to the subsequent packet. It will cause CV test fail - There is another way to set the address, it should set the bit 24 to 1 with the right address, and then IC controller will set the address when the IN req complete instead of SW do it. It is more fast so it can fix the CV 3.0 test fail issue Signed-off-by: Tony LIU <junjie.liu@freescale.com>
2012-11-01mtd: support ONFI multi lun NANDMatthieu CASTET
With onfi a flash is organized into one or more logical units (LUNs). A" logical unit (LUN) is the minimum unit that can independently execute commands and report status. Mtd does not exploit LUN, so make it see a big single flash where size is lun_size * number_of_lun. Without this patch MT29F8G08ADBDAH4 size is 512MiB instead of 1GiB. Artem: split long line on 2 shorter ones. Signed-off-by: Matthieu Castet <matthieu.castet@parrot.com> Acked-by: Florian Fainelli <ffainelli@freebox.fr> Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: Huang Shijie <b32955@freescale.com>
2012-11-01mtd: nand_flash_detect_onfi propagate busw infoMatthieu CASTET
there is a bug in nand_flash_detect_onfi, busw need to be passed by pointer to return it. Signed-off-by: Matthieu CASTET <matthieu.castet@parrot.com> Acked-by: Brian Norris <computersforpeace@gmail.com> Signed-off-by: Artem Bityutskiy <dedekind1@gmail.com> Signed-off-by: Huang Shijie <b32955@freescale.com>
2012-10-29ENGR00230538-9: CAAM: Add example/test component for CAAM-SMSteve Cornelius
Add example/test component for CAAM-SM. Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com> Signed-off-by: Terry Lv <r65388@freescale.com>
2012-10-29ENGR00230538-8: CAAM: Add CAAM Secure Memory / Keystore APISteve Cornelius
Add CAAM Secure Memory / Keystore API. Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com> Signed-off-by: Terry Lv <r65388@freescale.com>
2012-10-29ENGR00230538-7: CAAM: Add build configuration for SM APISteve Cornelius
This adds build configuration information for the prototype CAAM Secure Memory API, and the example/test module that accompanies it. Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com> Signed-off-by: Terry Lv <r65388@freescale.com>
2012-10-29ENGR00230538-6: CAAM: Detection and initialization for secure memory.Steve Cornelius
Detection and initialization for secure memory. Signed-off-by: Steve Cornelius <steve.cornelius@freescale.com> Signed-off-by: Terry Lv <r65388@freescale.com>