summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-03-18ENGR00176974 MX6Q: make 624M WP work, change 624 WP to 672 WPimx-android-r13.2Zhang Jiejing
since pll1 have a limit that cannot scaling down to 650M and below so change the 600M WP to 672MHz. otherwise, the 600WP's clock will depens on last frequency. Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
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-18ENGR00176136- MX6: Added support for 1.2GHz ARM FrequencyRanjani Vaidyanathan
Added the new 1.2GHz working point. Currently 'arm_freq=1200" should be added to commandline for the core to run at 1.2GHz. Also ensure that the appropriate HW board mods have been done to set VDDARM_IN at 1.425V. Signed-off-by: Ranjani Vaidyanathan <ra5478@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-15ENGR00176154 mx6q sabresd: change the position angle of board and LVDSXinyu Chen
The LVDS display direction should be aligned with camera sensor. So we rotate it with 180 degree. Signed-off-by: Xinyu Chen <xinyu.chen@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-12ENGR00176155-1:optimize wifi performanceB38613
enable ipv6 Privacy Extension,or netd commandlistener will report "cann't find /proc/sys/net/ipv6/conf/wlan0/use_tempaddr". Signed-off-by: Zhou Jianzheng <B38613@freescale.com>
2012-03-12ENGR00176552 mx6: fix license issue of mx6q mslXinyu Chen
Add license header to android.h Fix the copyright to devices.c Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-03-12ENGR00173756-2 cpufreq: fix license issueXinyu Chen
Correct the license header of cpufreq earlysuspend governor switch driver. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-03-09ENGR00175308-2 MX6Q PM: disable offline secondary cpus in earlysuspendLin Fuzhen
Due to the wait mode implementation in current BSP is not compatible with cpu hotplug, so disable the hotplug operations when system entry in earlysyspend mode. Will re-enabled it if wait mode issue is fixed Signed-off-by: Lin Fuzhen <fuzhen.lin@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-08ENGR00176175 MX6Q: fix typo in cpu op voltage setting.Zhang Jiejing
Fix a typo when adding 600M WP, the voltage value is wrong, it will lead a warnning when change to this WP: COULD NOT SET GP VOLTAGE!!!! Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
2012-03-08ENGR00176383 Add ACM config in kernel for misc 3G modem supportguoyin.chen
Add USB_ACM config for Android kernel Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
2012-03-08ENGR00176160 [MX6]Correct PLL1 freq change flowAnson Huang
Previous PLL1 freq change is done by switching CPU clock to 400M pfd or 24M OSC, then modifying PLL1 div directly, and switch back CPU clock immediately, it will result in CPU clock stop during PLL1 hardware lock period, thus, DRAM FIFO may blocked by the data CPU requested before PLL1 clock changed, and it will block other devices accessing DRAM, such as IPU, VPU etc. It will cause underrun or hang issue. We should wait PLL1 lock, then switch back. Signed-off-by: Anson Huang <b20788@freescale.com>
2012-03-07ENGR00176278 mx6: make local timer work with WAIT modeXinyu Chen
As mx6q soc use one clock to provide for cpu and local timer, the local timers will be stopped when enter wait mode. This causes system hang when enter wait mode with local timer enabled. So we should switch the clock event to GPT broadcast clock event before entering wait mode, and disable local timers. Todo this, following changes made: * In arch_idle(), we check if the GPT broadcast clock event is switched to one shot mode. If the kernel clocksource is switched from jiffies one to GPT, then we can use GPT as broadcast event. And switch from local timer to GPT broadcast event before entering mx6q_wait. Otherwise, kernel will hange if the SW jiffies clock source is used. We call clockevents_notify to switch clock source. * Remove the enable_wait_mode check in local timer setup. * Always return 0 in GPT v2 timer's set_next_event routing. All the GPTs are running in free run mode as what driver did. So we should allow the GPT CNT register roll over to 0 when it reaches 0xFFFFFFFF. And the next event written to compare register can less than the current value in CNT. If we refused to do roll over settings, the kernel will continues to set_next_event to GPT when the next event is far away and we return negative value. This is happend when one CPU is in idle and no timewheel is being expired in short time. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-03-06ENGR00175844 suspend/resume audio is mute/no clkb02247
reason:the suspend/resume function is called twice. Signed-off-by: b02247 <b02247@freescale.com>
2012-03-05ENGR00176068-3 defconfig: enable localtimer for androidXinyu Chen
Enable local timer by default. If wait mode is on, local timer will be shutdown automatically on boot. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-03-05ENGR00176068-2 smp_twd: reconfigure clockevents after cpufreq changeXinyu Chen
After a cpufreq transition, update the clockevent's frequency by fetching the new clock rate from the clock framework and reprogram the next clock event. Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com> Signed-off-by: Colin Cross <ccross@android.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-03-05ENGR00176068-1 mx6q: add smp_twd clock for localtimerXinyu Chen
Add a smp_twd system clock which is simple clock from parent of cpu_clk, and it's rate is half of the cpu_clk. This is used for reprograming the twd clock event after cpu freq is changed. Also disable local timer setup when wait mode enabled. Signed-off-by: Xinyu Chen <xinyu.chen@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-29ENGR00175702-1 add uevent for wm8958 in sabresdb02247
add uevent for wm8958 in sabresd Signed-off-by: b02247 <b02247@freescale.com>
2012-02-29ENGR00175702-2 add uevent for wm8958 in sabresdb02247
1. add uevent for wm8958 in sabresd 2. change the clock, clko_clk is same as cko1_clk0 Signed-off-by: b02247 <b02247@freescale.com>
2012-02-29ENGR00175219-5 defconfig: add wm8958 audio codec supportXinyu Chen
Update the android defconfig for wm8958 mfd and sound driver Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
2012-02-29ENGR00175219-4 wm8958: add audio codec supportGary Zhang
add two channels record support. Signed-off-by: Gary Zhang <b13634@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-29ENGR00175219-2 MX6Q_SABRESD: add wm8958 supportGary Zhang
add wm8958 codec support Signed-off-by: Gary Zhang <b13634@freescale.com>
2012-02-29ENGR00175219-1 MX6: add wm8958 option in defconfigGary Zhang
add wm8958 option in defconfig Signed-off-by: Gary Zhang <b13634@freescale.com>
2012-02-27ENGR00175308-1 MX6Q PM: cpu hotplug on earlysuspendLin Fuzhen
Add cpu hotplug support when system entry in earlysyspend. With this patch, when system entery in earlysuspend, it will record the online cpus, then hotplut none-bootable cpus, and in late resume, it will boot up the recorded hotplug cpus. Signed-off-by: Lin Fuzhen <fuzhen.lin@freescale.com>
2012-02-27ENGR00175308-2 MX6Q PM:cpu hotplug on earlysuspendLin Fuzhen
Add cpu hotplug support when system entry in earlysyspend. With this patch, when system entery in earlysuspend, it will record the online cpus, then hotplut none-bootable cpus, and in late resume, it will boot up the recorded hotplug cpus. Signed-off-by: Lin Fuzhen <fuzhen.lin@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-24ENGR00175356 MX6Q SabreSD:Do not reserve IPUv3 ov fb memLiu Ying
This patch removes the IPUv3 overlay framebuffer reservation. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2012-02-24ENGR12345678- MX6: Bypass PLL1 during WAITRanjani Vaidyanathan
When system is going to enter WAIT mode, set PLL1 to 24MHz so that ARM is running at 24MHz. Signed-off-by: Ranjani Vaidyanathan <ra5478@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-3 MX6Q Sabrelite:Do not reserve IPUv3 ov fb memLiu Ying
This patch removes the IPUv3 overlay framebuffer memory reservation. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
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-23ENGR00175222-1 IPUv3 pdev:Check fb size before reserve ov fbLiu Ying
This patch checks overlay fb size before reserve fb mem for it. Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
2012-02-22ENGR00174734-3 usb: change function name for discharge data linerel_imx_3.0.15_12.02.013.0-imx6-12.02.01-201202221138Peter Chen
In order to reflect the function well, it needs to discharge both dp and dm, so change the function name. Signed-off-by: Peter Chen <peter.chen@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-22ENGR00174734-1 usb: need to discharge both dp and dmPeter Chen
Change to discharge both dp and dm 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-21ENGR00174925 HDMI Kernel panic whatever plug in or plug outAlan Tull
Panic is due to runtime being a NULL pointer. Signed-off-by: Alan Tull <r80115@freescale.com>
2012-02-21ENGR00174927-2 mx6q sabresd: add LVDS1 edid i2c device infoXinyu Chen
Only add for lvds1, and the edid i2c address is 0x50. lvds0 edid i2c is conflict with HDMI edid. Switch the ldb0/1 di interface to let fb0 initialized with LVDS1. Signed-off-by: Xinyu Chen <xinyu.chen@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>