summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2012-03-18ENGR00176629 [Thermal]Add 1.2G supportAnson Huang
Fix bug of saving previous cpufreq not support up to 1.2G freq. Max length set to 7 instead of 6. Signed-off-by: Anson Huang <b20788@freescale.com>
2012-03-16ENGR00176567 gpio_keys: Set the IRQF_NO_SUSPEND flag to wakeup buttonXinyu Chen
We should not disabled GPIO irq when doing suspend. During suspend, kernel will call suspend_device_irq() to disable all the irqs (just set a disabled flag, no mask) On the another side, The handle_level_irq will check the irq's disable status to determin it should be handled or unmasked. If the GPIO interrupt happened just after the above suspend_device_irq(), we enters handle_leve_irq(), mask and ack the GPIO irq, then return directly without handle or unmask this irq because of it's disabled. That means the GPIO IMR bit is not set and we can not wake up by the GPIO key button. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-03-16ENGR00175844 irq: enable IRQF_EARLY_RESUME irq when dpm_suspend_noirq failedXinyu Chen
The dpm_suspend_noirq routing calls suspend_device_irqs() first to disable all the irq no matter what flags it has. Then it enumerates the device driver on dpm_suspend_list to call their suspend_noirq pm callback. If any dev suspend failed, it will call dpm_resume_noirq to re-enable all the irq without IRQF_EARLY_RESUME, and return failed. If dpm_suspend_noirq() return failed, then no syscore_resume() can be called, that means the irq with flag IRQF_EARLY_RESUME, can not be re-enabled on this case. error = dpm_suspend_noirq(PMSG_SUSPEND); if (error) { .. goto Platform_finish; } .... error = syscore_suspend(); if (!error) { ... syscore_resume(); } ... dpm_resume_noirq(PMSG_RESUME); Platform_finish: if (suspend_ops->finish) suspend_ops->finish(); So we must enable all the irqs no matter it's IRQF_EARLY_RESUME or not. Otherwise the GPIO power key who's irq has flag of IRQF_EARLY_RESUME will be disabled forever when some device failed to suspend. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-03-16ENGR00175700 System hang when change HDMI from XGA to 1080P with display blankSandor Yu
Change the vide mode from XGA to 1080P when display blank, the system will hang. It is cause by overflow interrupt will trigger when the video mode change, but clean the interrupt status bit depend on pixewl clock. In blank state the pixel clock is gating so the HDMI PHY can't work. Signed-off-by: Sandor Yu <R01008@freescale.com>
2012-03-16ENGR00174914 MX6x HDMI implement HDMI driver suspend/resume functionSandor Yu
Added FB suspend/resume event process in HDMI driver. Signed-off-by: Sandor Yu <R01008@freescale.com>
2012-03-14ENGR00143324-1 v4l2_capture: add camera rotate functionYuxi Sun
add four kinds of camera rotate function: rotate_none, rotate_vert rotate_horiz, rotate_180 Signed-off-by: Yuxi Sun <b36102@freescale.com>
2012-03-09ENGR00176159 video: ipuv3-fb: change to timeout semaphore to wait on irq.Zhang Jiejing
change to timeout semaphore to wait on irq. use no timeout semaphore have below issues: 1. since fbmem.c will hold the console_lock() before call PAN_DISPLAY ioictl, if have wrong happens on IPU, IRQ not come, any log printk will not ouput, it will become like a system hang, and developer don't know what's wrong. 2. semaphore don't have timeout, here we can't know irq not come, so hang it infintly. 3. semaphore lock and unlock in different context is a dangous operation. To fix these issue, use timedout version to wait on irq. But for better coding stly to align Kernel Coding Style Doc, better use complete to wait on irq, use semaphre little ugly. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2012-03-08ENGR00175841 input: egalax_ts: fix touch can't work after suspend and reset.Zhang Jiejing
if reset board during suspend, the controller can't success read firmware version, it due to the chip needs some time to wake up, so add 10 ms delay after wakeup chip in probe function. don't need add delay in other code path, since the time was too short to noticed in normal suspend/resume sequency. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2012-03-01ENGR00175884 PM: Fix short press gpio power key failed resume system issueLin Fuzhen
For gpio IRQ which defined as device IRQ is being enabled after syscore resume completed, this may cause the key down could not be deteced sometime. Enabel gpio power key early irq during syscore instead of at device resume time. Some platform like Android need to konw the power key is pressed then to reume the other devcies Signed-off-by: Lin Fuzhen <fuzhen.lin@freescale.com>
2012-02-29ENGR00175219-3 wm8958: add audio codec supportGary Zhang
add wm8958 audio codec support Signed-off-by: Gary Zhang <b13634@freescale.com>
2012-02-27ENGR00175459 VIV GPU:Support 2D core clock gatingLiu Ying
This patch supports Vivante 2D GPU core clock gating feature. Signed-off-by: Liu Ying <Ying.Liu@freescale.com> Acked-by: Lily Zhang <r58066@freescale.com>
2012-02-27ENGR00175321 [MX6]MMCSD: eMMC4.4 failed to work after resumeRyan QIAN
- clear ddr_en bit on non ddr timing mode in platform code. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-23ENGR00175080 [MX6] MMC: kernel failed to init eMMC card, after boot from eMMCRyan QIAN
issue: if uboot is loaded from eMMC, the eMMC memory will be configured to DDR mode. on kernel startup, it will initialize the card at SDR mode, while the register of USDHC is still configured to DDR enable mode. Therefore, the initialization of eMMC memory will fail. fix: - clear MIX_CTRL on sdhc platform init code. - clear vselect bit of VENDOR_SPEC on sdhc platform init code. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-23Merge remote branch 'fsl-linux-sdk/imx_3.0.15_12.02.01' into imx_3.0.15_androidXinyu Chen
Conflicts: arch/arm/mach-mx6/clock.c arch/arm/plat-mxc/devices/platform-imx-perfmon.c drivers/usb/gadget/arcotg_udc.c
2012-02-23ENGR00175222-2 IPUv3 fb:Check mem resource start addressLiu Ying
This patch checks memory resource start address before using the memory resource. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2012-02-22ENGR00174734-2 usb: fix bugs that dp and dm are floating at device modePeter Chen
At i.mx6x, the data line (dp and dm) are floating at device mode, that is to say data line will be any values (0-3.6v). So if the usb wakeup is enabled, there will be a wakeup interrupt that causes usb to active mode. In order to fix this problem well, we need to do below things: - Need to discharge both dp and dm - It needs to discharge data line when we switch to device mode and usb cable is disconnected from the host, but not to disable discharge after line state is SE0, the reason is that if we do not pulldown the data line, the line state will be floating again, and possible cause the wakeup interrupt. - It needs to disable discharge data line when the usb cable connects at device mode and usb device is connected at host mode, otherwise it will affect signal quality. Signed-off-by: Peter Chen <peter.chen@freescale.com>
2012-02-22ENGR00174916 MX6x, console output hang 20 seconds when system bootupSandor Yu
It is cause by fb driver to init HDMI PHY when HDMI driver not register. Signed-off-by: Sandor Yu <R01008@freescale.com>
2012-02-22ENGR00174911 MX6x Setting HDMI default mode according bootload cmdlineSandor Yu
Origin HDMI default video mode is setting to VGA. But the HDMI will change to the vide mode setting in bootloader command line when the first time HDMI cable plugin. It will cause GUI sometime can't not get correct FB video mode when system bootup without HDMI cable plugout. Signed-off-by: Sandor Yu <R01008@freescale.com>
2012-02-21ENGR00174927-1 ldb: add lvds edid i2c driver supportXinyu Chen
Add lvds edid i2c driver support. Create cable_state sysfs file under the i2c device dir. Pass the i2c client device into framebuffer driver to create sysfs link from fbx to i2c device. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-02-21ENGR00174893 video: create a symbol link to export disp dev infoXinyu Chen
Create symbol link to export display device's info in related framebuffer device sysfs dir: /sys/class/graphics/fbx/disp_dev -> hdmi device: /sys/device/platform/mxc_hdmi ldb device: /sys/device/platform/mxc_ldb mipi device: /sys/device/platform/mxc_mipi_dsi Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-02-17ENGR00173964 make hdmi audio init dependent on hdmi video initAlan Tull
Don't show hdmi as an audio playback device if hdmi isn't configured on the command line. Signed-off-by: Alan Tull <r80115@freescale.com>
2012-02-16ENGR00174526-1 camera: fix the conflict of dual cameraguoyin.chen
make the ov5640 mipi not within the choice of all camera module remove the sensor_clock redefine for dual camera Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
2012-02-15Merge remote branch 'fsl-linux-sdk/imx_3.0.15' into imx_3.0.15_androidXinyu Chen
Conflicts: arch/arm/mach-mx6/board-mx6q_arm2.c arch/arm/mach-mx6/board-mx6q_sabresd.c drivers/mmc/core/bus.c
2012-02-15ENGR00174508 v4l2 capture: fix the dma allocation failed issueXinyu Chen
we have already reserved the 8M dummy buffers on v4l2 capture driver probe. So should not free it when csi encode disable task Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-02-14ENGR00174299-1: driver part: Add ePxP v2 DMAENGINE driverRobby Cai
add ePxP v2 DMAENGINE driver Signed-off-by: Robby Cai <R63905@freescale.com>
2012-02-14ENGR00174399 ASRC: fix mmap fail bugChen Liangjun
If output sample rate is less than input sample rate, it is possible that the address of output dma buffer 0 can not be divided by page size. Thus the mmap of output dma in the user space would fail and test would fail. let all output dma buffers allocate dma buffer together and we can assure that the address of output dma buffer 0 can be divided by page size. Signed-off-by: Chen Liangjun <b36089@freescale.com>
2012-02-14ENGR00174399 ASRC: fix mmap fail bugChen Liangjun
If output sample rate is less than input sample rate, it is possible that the address of output dma buffer 0 can not be divided by page size. Thus the mmap of output dma in the user space would fail and test would fail. let all output dma buffers allocate dma buffer together and we can assure that the address of output dma buffer 0 can be divided by page size. Signed-off-by: Chen Liangjun <b36089@freescale.com>
2012-02-14ENGR00174395 V4L2 capture: Driver improvementLiu Ying
1) CSI module should be disabled first for CSI_MEM channel, otherwise, the capture channels will hang after restarting for several times. 2) Disable CSI module correctly for overlay. Move stopping preview channel operation out of de-select interface. 3) Check cam->overlay_on is true in close function before stopping preview. 4) Check cam->vf_start_sdc function before calling it. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2012-02-14ENGR00174121-1 power: max8903 add support for dcm always high.Zhang Jiejing
add this to support MX6Q_SABRESD board hardware design. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2012-02-14ENGR00174323 vpu: Fix system hang issue of multi-instances processingSammy He
VPU registers have been mapped with ioremap() at probe which L_PTE_XN is 1, and the same physical address must be mapped multiple times with same type when doing mmap() to user space, so also need to set it to 1. Otherwise, there may be unexpected result in video codec. Here, Use new defined pgprot_noncachedxn for vm_page_prot in mmap(). Signed-off-by: Sammy He <r62914@freescale.com>
2012-02-14ENGR00174296 [MX6_SD]USDHC: iNAND on board failed to work on ddr modeRyan QIAN
- add delay in mmc_switch to improve compatibility. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-14ENGR00174323 vpu: Fix system hang issue of multi-instances processingSammy He
VPU registers have been mapped with ioremap() at probe which L_PTE_XN is 1, and the same physical address must be mapped multiple times with same type when doing mmap() to user space, so also need to set it to 1. Otherwise, there may be unexpected result in video codec. Here, Use new defined pgprot_noncachedxn for vm_page_prot in mmap(). Signed-off-by: Sammy He <r62914@freescale.com>
2012-02-14ENGR00174243 MIPI_DSI: mipi dsi panel enable should be after IPU initWayne Zou
MIPI_DSI: mipi dsi panel enable should be after IPU init, due to ENGR00173962 change in the mxc_ipuv3_fb.c Signed-off-by: Wayne Zou <b36644@freescale.com>
2012-02-13ENGR00174243 MIPI_DSI: mipi dsi panel enable should be after IPU initWayne Zou
MIPI_DSI: mipi dsi panel enable should be after IPU init, due to ENGR00173962 change in the mxc_ipuv3_fb.c Signed-off-by: Wayne Zou <b36644@freescale.com>
2012-02-13ENGR00174311: [MX6Q]USDHC: SD3.0 card failed to workRyan QIAN
- add auto_tune back on pretuning to improve compatibility. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174310 [MX6Q]USDHC: DDR50 mode for SD3.0 is not supported yetRyan QIAN
- change UHS-I mode selection to try SDR50 first, then DDR50. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174307 [mx6 mmc]fix build warningTony Lin
mmc/core/bus.c:189: warning: initialization from incompatible pointer type Signed-off-by: Tony Lin <tony.lin@freescale.com>
2012-02-13ENGR00174310 [MX6Q]USDHC: DDR50 mode for SD3.0 is not supported yetRyan QIAN
- change UHS-I mode selection to try SDR50 first, then DDR50. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174311: [MX6Q]USDHC: SD3.0 card failed to workRyan QIAN
- add auto_tune back on pretuning to improve compatibility. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174307 [mx6 mmc]fix build warningTony Lin
mmc/core/bus.c:189: warning: initialization from incompatible pointer type Signed-off-by: Tony Lin <tony.lin@freescale.com>
2012-02-13ENGR00174295-02:[MX6]USDHC: ddr mode is masked on slots with no 1.8v support.Ryan QIAN
- check ocr_avail_sd & MMC_VDD_165_195 before set S18R bit to check whether the host is support 1.8v support. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174295-01 Revert "ENGR173939 Skip sending S18R on slots with no 1.8V"Ryan QIAN
- this patch will mask ddr mode support on the slots support ddr, but no 1.8v support This reverts commit 05b7fdd4d6103500f1e531b3e5bd91d97f40ee34. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174295-02:[MX6]USDHC: ddr mode is masked on slots with no 1.8v support.Ryan QIAN
- check ocr_avail_sd & MMC_VDD_165_195 before set S18R bit to check whether the host is support 1.8v support. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174295-01 Revert "ENGR173939 Skip sending S18R on slots with no 1.8V"Ryan QIAN
- this patch will mask ddr mode support on the slots support ddr, but no 1.8v support This reverts commit 05b7fdd4d6103500f1e531b3e5bd91d97f40ee34. Signed-off-by: Ryan QIAN <b32804@freescale.com>
2012-02-13ENGR00174242 usb: device: Improve discharge dp operationPeter Chen
The discharge dp function needs to be added at below situation: - USB cable is disconnected from the PC - When the usb mode switchs to device mode Signed-off-by: Peter Chen <peter.chen@freescale.com>
2012-02-13ENGR00174242 usb: device: Improve discharge dp operationPeter Chen
The discharge dp function needs to be added at below situation: - USB cable is disconnected from the PC - When the usb mode switchs to device mode Signed-off-by: Peter Chen <peter.chen@freescale.com>
2012-02-10ENGR00174233 input: egalax_ts: fix build error in updater config.Zhang Jiejing
use ifdef to make build pass without earlysuspend config. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2012-02-10ENGR00174212 isl29023: fix build error of isl29023 light sensorXinyu Chen
the platform data and irq set type interface is changed. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-02-10ENGR00174127 mag3110: merge the mag3110 sensor driverXinyu Chen
Merge mag3110 drivers from sensor team. The drivers are updated with chip position configure in driver, export set delay interface to userspace and use polling mode instead of interrupt mode. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-02-10ENGR00174024 mma8451: update 3-axis accelerometer driverXinyu Chen
Merge mma8451 drivers from sensor team. The drivers are updated with chip position configure in driver, export enable and position interface to userspace. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>