Skip to content

Tags: diancity025/linux-imx

Tags

rel_imx_3.10.17_1.0.0_ga

ENGR00306992 Revert "ENGR00302036-3 gpu:gpu2d may cause bus hang in s…

…ome corner case"

This reverts commit 5639310.

That patch causes wrong blitting and will block GA release

Date: Apr 04, 2014
Signed-off-by: Loren Huang <b02279@freescale.com>
Acked-by: Shawn Guo

jb4.3_1.1.0-ga

ENGR00290463 revert exact pages allocator to fix system reboot issue

System reboot occur during 1080p recording if exit MovieStudio after play a mixed clip with single HDMI,

Vivante's intial feedback is alloc_pages_exact/free_pages_exact APIs are not stable in some kernel,
In other side, need check if some memory size miscalculated is hided by this optimization.

Temporarily this optimization shall be reverted to fix the critical issue.

Signed-off-by: Xianzhong <b07117@freescale.com>
Acked-by: Jason Liu

jb4.3_1.0.0-ga

ENGR00284988 Camera recording kernel crash on WFD source

Fix kernel crash issue meet when do 720p Camera recording
on WFD source side, the crash is related with timer schedule,
fixed by add protection code in gckOS_StartTimer function.

Kernel crash log:
[<c004ffec>] (__bug+0x1c/0x28) from [<c00a7e00>] (queue_delayed_work_on+0x10c/0x148)
[<c00a7e00>] (queue_delayed_work_on+0x10c/0x148) from [<c046f4d0>] (gckOS_StartTimer+0x44/0x84)
[<c046f4d0>] (gckOS_StartTimer+0x44/0x84) from [<c047f4ac>] (gckHARDWARE_SetPowerManagementState+0xa24/0xa5c)
[<c047f4ac>] (gckHARDWARE_SetPowerManagementState+0xa24/0xa5c) from [<c046e608>] (gckOS_Broadcast+0xb8/0xe8)
[<c046e608>] (gckOS_Broadcast+0xb8/0xe8) from [<c0475734>] (_TryToIdleGPU+0xd8/0x18c)
[<c0475734>] (_TryToIdleGPU+0xd8/0x18c) from [<c0476cdc>] (gckEVENT_Notify+0x2dc/0x4c8)
[<c0476cdc>] (gckEVENT_Notify+0x2dc/0x4c8) from [<c047d494>] (gckHARDWARE_Interrupt+0x58/0x68)
[<c047d494>] (gckHARDWARE_Interrupt+0x58/0x68) from [<c04693a8>] (threadRoutine+0x20/0x78)
[<c04693a8>] (threadRoutine+0x20/0x78) from [<c00ad0c8>] (kthread+0x80/0x88)
[<c00ad0c8>] (kthread+0x80/0x88) from [<c004d408>] (kernel_thread_exit+0x0/0x8)

Signed-off-by: Richard Liu <r66033@freescale.com>
Acked-by: Jason Liu

rel_imx_3.10.9_1.0.0_alpha

ENGR00279413 pxp/v4l2: get the right framebuffer start address at run…

… time

Previously the driver gets the framebuffer start address at probe time.
But this address might be changed if the framebuffer drivers re-allocate
the frame buffers due to the application changes the yres_virtual.
As a result, some garbage data can be observed on display.
This patch adjusts the way to detect the start address at run time to
fix this problem.

Signed-off-by: Robby Cai <R63905@freescale.com>

rel_imx_3.0.35_4.1.0

ENGR00275459 mx6sl: csi/v4l: fix kernel dump when do repeated streamo…

…n/streamoff

When do stream on/off in pair repeatedly without close the v4l device,
the kernel dump happens:

Unable to handle kernel paging request at virtual address 00200200
pgd = c0004000
[00200200] *pgd=00000000
Internal error: Oops: 805 [#1] PREEMPT
Modules linked in:
CPU: 0    Not tainted  (3.0.35-06027-gbbea887-dirty #21)
PC is at camera_callback+0x15c/0x1c8
LR is at 0x200200
pc : [<c03747d0>]    lr : [<00200200>]    psr: 20000193
sp : c0b0fed0  ip : 00200200  fp : daf1102c
r10: daf11034  r9 : 00100100  r8 : daf11098
r7 : daf11100  r6 : daf11034  r5 : daf11000  r4 : c0b0e000
r3 : 00000000  r2 : 00000001  r1 : 00000001  r0 : daf114b8
Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 10c53c7d  Table: 8cc8c059  DAC: 00000015

...

Process swapper (pid: 0, stack limit = 0xc0b0e2e8)
Stack: (0xc0b0fed0 to 0xc0b10000)
fec0:                                     c0374674 822a4000 daf11000 c0b87eb4
fee0: 00000000 00000027 c0b73904 c0b305e0 00000001 c0374090 da2bbbe0 c0b0e000
ff00: 00000000 c00acc58 00000000 c0098058 00989680 c0b305e0 c0b0e000 00000000
ff20: 00000002 00000001 c0b0e000 00000000 00000000 c00acdf8 00000000 c0b0e000
ff40: 9e4e7881 c0b305e0 c0b0e000 c00aee44 c00aed9c c0b43c6c 00000027 c00ac634
ff60: 00000270 c004257c ffffffff f2a00100 00000027 c00417cc 20000000 00000006
ff80: f40c4000 00000000 c0b0e000 c0b6a924 c0b1876c c0b18764 80004059 412fc09a
ffa0: 00000000 00000000 c0063a40 c0b0ffc0 c004f758 c0042690 80000013 ffffffff
ffc0: c004266c c004294c c0b1013c 00000000 c10960c0 c00088ec c0008334 00000000
ffe0: 00000000 c00337d4 10c53c7d c0b10060 c00337d0 80008040 00000000 00000000
[<c03747d0>] (camera_callback+0x15c/0x1c8) from [<c0374090>] (csi_irq_handler+
0x7c/0x160)
[<c0374090>] (csi_irq_handler+0x7c/0x160) from [<c00acc58>] (
handle_irq_event_percpu+0x50/0x19c)
[<c00acc58>] (handle_irq_event_percpu+0x50/0x19c) from [<c00acdf8>] (
handle_irq_event+0x54/0x84)
[<c00acdf8>] (handle_irq_event+0x54/0x84) from [<c00aee44>] (handle_fasteoi_irq
+0xa8/0x160)
[<c00aee44>] (handle_fasteoi_irq+0xa8/0x160) from [<c00ac634>] (
generic_handle_irq+0x2c/0x40)
[<c00ac634>] (generic_handle_irq+0x2c/0x40) from [<c004257c>] (handle_IRQ
+0x30/0x84)
[<c004257c>] (handle_IRQ+0x30/0x84) from [<c00417cc>] (__irq_svc+0x4c/0xa8)
[<c00417cc>] (__irq_svc+0x4c/0xa8) from [<c0042690>] (default_idle+0x24/0x28)
[<c0042690>] (default_idle+0x24/0x28) from [<c004294c>] (cpu_idle+0x8c/0xc0)
[<c004294c>] (cpu_idle+0x8c/0xc0) from [<c00088ec>] (start_kernel+0x294/0x2e4)
[<c00088ec>] (start_kernel+0x294/0x2e4) from [<80008040>] (0x80008040)
Code: e88c4200 e595c030 e5858030 e8881800 (e58c8000)
---[ end trace 224150c26d2bd5f7 ]---

The root cause is cam->enc_counter is not re-initialized to 0 when calls
STREAMOFF ioctl, and then in DQBUF ioctl wait_event_interruptible_timeout()
sees the condition is true and access cam->done_q queue which has no strict
check and could be empty.

This patch adds the re-initialization and the sanity check.
Also, add the pointer check for memcpy because the destination may be
NULL on UERSPTR mode.

Signed-off-by: Robby Cai <R63905@freescale.com>

rel_imx_3.0.35_4.1.0_rc3

ENGR00275459 mx6sl: csi/v4l: fix kernel dump when do repeated streamo…

…n/streamoff

When do stream on/off in pair repeatedly without close the v4l device,
the kernel dump happens:

Unable to handle kernel paging request at virtual address 00200200
pgd = c0004000
[00200200] *pgd=00000000
Internal error: Oops: 805 [#1] PREEMPT
Modules linked in:
CPU: 0    Not tainted  (3.0.35-06027-gbbea887-dirty #21)
PC is at camera_callback+0x15c/0x1c8
LR is at 0x200200
pc : [<c03747d0>]    lr : [<00200200>]    psr: 20000193
sp : c0b0fed0  ip : 00200200  fp : daf1102c
r10: daf11034  r9 : 00100100  r8 : daf11098
r7 : daf11100  r6 : daf11034  r5 : daf11000  r4 : c0b0e000
r3 : 00000000  r2 : 00000001  r1 : 00000001  r0 : daf114b8
Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 10c53c7d  Table: 8cc8c059  DAC: 00000015

...

Process swapper (pid: 0, stack limit = 0xc0b0e2e8)
Stack: (0xc0b0fed0 to 0xc0b10000)
fec0:                                     c0374674 822a4000 daf11000 c0b87eb4
fee0: 00000000 00000027 c0b73904 c0b305e0 00000001 c0374090 da2bbbe0 c0b0e000
ff00: 00000000 c00acc58 00000000 c0098058 00989680 c0b305e0 c0b0e000 00000000
ff20: 00000002 00000001 c0b0e000 00000000 00000000 c00acdf8 00000000 c0b0e000
ff40: 9e4e7881 c0b305e0 c0b0e000 c00aee44 c00aed9c c0b43c6c 00000027 c00ac634
ff60: 00000270 c004257c ffffffff f2a00100 00000027 c00417cc 20000000 00000006
ff80: f40c4000 00000000 c0b0e000 c0b6a924 c0b1876c c0b18764 80004059 412fc09a
ffa0: 00000000 00000000 c0063a40 c0b0ffc0 c004f758 c0042690 80000013 ffffffff
ffc0: c004266c c004294c c0b1013c 00000000 c10960c0 c00088ec c0008334 00000000
ffe0: 00000000 c00337d4 10c53c7d c0b10060 c00337d0 80008040 00000000 00000000
[<c03747d0>] (camera_callback+0x15c/0x1c8) from [<c0374090>] (csi_irq_handler+
0x7c/0x160)
[<c0374090>] (csi_irq_handler+0x7c/0x160) from [<c00acc58>] (
handle_irq_event_percpu+0x50/0x19c)
[<c00acc58>] (handle_irq_event_percpu+0x50/0x19c) from [<c00acdf8>] (
handle_irq_event+0x54/0x84)
[<c00acdf8>] (handle_irq_event+0x54/0x84) from [<c00aee44>] (handle_fasteoi_irq
+0xa8/0x160)
[<c00aee44>] (handle_fasteoi_irq+0xa8/0x160) from [<c00ac634>] (
generic_handle_irq+0x2c/0x40)
[<c00ac634>] (generic_handle_irq+0x2c/0x40) from [<c004257c>] (handle_IRQ
+0x30/0x84)
[<c004257c>] (handle_IRQ+0x30/0x84) from [<c00417cc>] (__irq_svc+0x4c/0xa8)
[<c00417cc>] (__irq_svc+0x4c/0xa8) from [<c0042690>] (default_idle+0x24/0x28)
[<c0042690>] (default_idle+0x24/0x28) from [<c004294c>] (cpu_idle+0x8c/0xc0)
[<c004294c>] (cpu_idle+0x8c/0xc0) from [<c00088ec>] (start_kernel+0x294/0x2e4)
[<c00088ec>] (start_kernel+0x294/0x2e4) from [<80008040>] (0x80008040)
Code: e88c4200 e595c030 e5858030 e8881800 (e58c8000)
---[ end trace 224150c26d2bd5f7 ]---

The root cause is cam->enc_counter is not re-initialized to 0 when calls
STREAMOFF ioctl, and then in DQBUF ioctl wait_event_interruptible_timeout()
sees the condition is true and access cam->done_q queue which has no strict
check and could be empty.

This patch adds the re-initialization and the sanity check.
Also, add the pointer check for memcpy because the destination may be
NULL on UERSPTR mode.

Signed-off-by: Robby Cai <R63905@freescale.com>

rel_imx_3.0.35_4.1.0_rc2

ENGR00274493 mx6sl: csi/v4l: Fix capture incorrect data with format UYVY

There's an interim buffer which should only be used when PxP CSC is used.
Otherwise the video buffer gets incorrect data by copying the content of
interim buffer. The patch fixes this by moving the memcpy to the right place.

Signed-off-by: Robby Cai <R63905@freescale.com>
(cherry picked from commit 8e0b8ff485dd7cdeabc653f1e27c271ac923710e)

rel_imx_3.0.35_4.1.0_rc1

ENGR00272597 mx6-msl: usb: fix building warning when only build host …

…driver

CC      arch/arm/mach-mx6/usb_h1.o
/home/b29397/work/projects/linux-2.6-imx/arch/arm/mach-mx6/usb_dr.c:
In function '_host_wakeup_enable':
/home/b29397/work/projects/linux-2.6-imx/arch/arm/mach-mx6/usb_dr.c:
522: warning: unused variable 'phy_reg'

Signed-off-by: Peter Chen <peter.chen@freescale.com>

rel_imx_3.5.7_1.0.0_alpha_RC2

ENGR00268880-1 - MX6 TVDEC: Port ADV7180 to L3.5.7 Kernel

Update documentation for ADV7180 TV Decoder.

Signed-off-by: Oliver Brown <oliver.brown@freescale.com>

jb4.2.2_1.1.0-ga

ENGR00266882 fix SabreAuto random system hang issue

fix SabreAuto random system hang issue, easy catch
this hang by monkey test on 1080p display, monkey
test command "while true;do monkey -v 100000;done".

Signed-off-by: Richard Liu <r66033@freescale.com>
Acked-by: Lily Zhang