Age | Commit message (Collapse) | Author |
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Added FB suspend/resume event process in HDMI driver.
Signed-off-by: Sandor Yu <R01008@freescale.com>
|
|
add four kinds of camera rotate function: rotate_none, rotate_vert
rotate_horiz, rotate_180
Signed-off-by: Yuxi Sun <b36102@freescale.com>
|
|
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>
|
|
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>
|
|
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>
|
|
add wm8958 audio codec support
Signed-off-by: Gary Zhang <b13634@freescale.com>
|
|
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>
|
|
- clear ddr_en bit on non ddr timing mode in platform code.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
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>
|
|
Conflicts:
arch/arm/mach-mx6/clock.c
arch/arm/plat-mxc/devices/platform-imx-perfmon.c
drivers/usb/gadget/arcotg_udc.c
|
|
This patch checks memory resource start address before
using the memory resource.
Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
|
|
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>
|
|
It is cause by fb driver to init HDMI PHY
when HDMI driver not register.
Signed-off-by: Sandor Yu <R01008@freescale.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Conflicts:
arch/arm/mach-mx6/board-mx6q_arm2.c
arch/arm/mach-mx6/board-mx6q_sabresd.c
drivers/mmc/core/bus.c
|
|
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>
|
|
add ePxP v2 DMAENGINE driver
Signed-off-by: Robby Cai <R63905@freescale.com>
|
|
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>
|
|
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>
|
|
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>
|
|
add this to support MX6Q_SABRESD board hardware design.
Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
|
|
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>
|
|
- add delay in mmc_switch to improve compatibility.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
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>
|
|
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>
|
|
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>
|
|
- add auto_tune back on pretuning to improve compatibility.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
- change UHS-I mode selection to try SDR50 first, then DDR50.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
mmc/core/bus.c:189: warning: initialization from incompatible pointer type
Signed-off-by: Tony Lin <tony.lin@freescale.com>
|
|
- change UHS-I mode selection to try SDR50 first, then DDR50.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
- add auto_tune back on pretuning to improve compatibility.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
mmc/core/bus.c:189: warning: initialization from incompatible pointer type
Signed-off-by: Tony Lin <tony.lin@freescale.com>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
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>
|
|
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>
|
|
use ifdef to make build pass without earlysuspend config.
Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
|
|
the platform data and irq set type interface is changed.
Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
|
|
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>
|
|
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>
|