Hi,
Driver is working great for 800x480 with bpp 32 and also with two screens, But for my requirement I need more number of SCREENS so I increased the MACRO which is defined NUM_SCREENS to 5.
so the DMA memory allocation requirement went like this below:
Width x Height x bpp x NUM_SCREENS = in Bytes
800*480*4*5 = 7.5MB
which was failing while booting when initializing the LCD, I have copied the trace of it where it got failed.
I got to understand that DMA memory allocation is limited to 4MB can anybody suggest something to get this extented to 8MB so that I can have more screens?
[ 1.050000] ------------[ cut here ]------------
[ 1.050000] WARNING: at mm/page_alloc.c:1968 __alloc_pages_nodemask+0x170/0x564()
[ 1.060000] Backtrace:
[ 1.060000] [<c0040468>] (dump_backtrace+0x0/0x114) from [<c03a6d8c>] (dump_stack+0x18/0x1c)
[ 1.070000] r7:00000009 r6:000007b0 r5:c00a1ca8 r4:00000000
[ 1.080000] [<c03a6d74>] (dump_stack+0x0/0x1c) from [<c005b178>] (warn_slowpath_common+0x50/0x68)
[ 1.080000] [<c005b128>] (warn_slowpath_common+0x0/0x68) from [<c005b1b4>] (warn_slowpath_null+0x24/0x2c)
[ 1.090000] r9:00000000 r8:00000000 r7:c7c26000 r6:c04a8d24 r5:0000000b
[ 1.100000] r4:c04d21d8
[ 1.100000] [<c005b190>] (warn_slowpath_null+0x0/0x2c) from [<c00a1ca8>] (__alloc_pages_nodemask+0x170/0x564)
[ 1.110000] [<c00a1b38>] (__alloc_pages_nodemask+0x0/0x564) from [<c00417c4>] (__dma_alloc+0xfc/0x2b4)
[ 1.120000] [<c00416c8>] (__dma_alloc+0x0/0x2b4) from [<c00419a4>] (dma_alloc_writecombine+0x28/0x34)
[ 1.130000] [<c004197c>] (dma_alloc_writecombine+0x0/0x34) from [<c03a4eb8>] (mxsfb_probe+0x24c/0x814)
[ 1.140000] [<c03a4c6c>] (mxsfb_probe+0x0/0x814) from [<c0235854>] (platform_drv_probe+0x1c/0x20)
[ 1.150000] [<c0235838>] (platform_drv_probe+0x0/0x20) from [<c02344e0>] (driver_probe_device+0x1b4/0x358)
[ 1.160000] [<c023432c>] (driver_probe_device+0x0/0x358) from [<c02346ec>] (__driver_attach+0x68/0x8c)
[ 1.170000] r7:00000000 r6:c0497fa4 r5:c047f81c r4:c047f7e8
[ 1.180000] [<c0234684>] (__driver_attach+0x0/0x8c) from [<c0233980>] (bus_for_each_dev+0x54/0x94)
[ 1.190000] r7:00000000 r6:c0234684 r5:c7c27ef0 r4:c0497fa4
[ 1.190000] [<c023392c>] (bus_for_each_dev+0x0/0x94) from [<c0234114>] (driver_attach+0x20/0x28)
[ 1.200000] r7:00000000 r6:c0498cc0 r5:c76160c0 r4:c0497fa4
[ 1.210000] [<c02340f4>] (driver_attach+0x0/0x28) from [<c0233144>] (bus_add_driver+0x100/0x288)
[ 1.210000] [<c0233044>] (bus_add_driver+0x0/0x288) from [<c0234a28>] (driver_register+0xb4/0x144)
[ 1.220000] [<c0234974>] (driver_register+0x0/0x144) from [<c0235cdc>] (platform_driver_register+0x4c/0x60)
[ 1.230000] r9:00000000 r8:00000000 r7:00000013 r6:00000001 r5:c0028f24
[ 1.240000] r4:c001d2c0
[ 1.240000] [<c0235c90>] (platform_driver_register+0x0/0x60) from [<c001d2d4>] (mxsfb_init+0x14/0x1c)
[ 1.250000] [<c001d2c0>] (mxsfb_init+0x0/0x1c) from [<c003c3ac>] (do_one_initcall+0x64/0x1cc)
[ 1.260000] [<c003c348>] (do_one_initcall+0x0/0x1cc) from [<c0008484>] (kernel_init+0xb4/0x170)
[ 1.270000] r9:00000000 r8:00000000 r7:00000013 r6:c005eacc r5:c0028f24
[ 1.280000] r4:c0028df0
[ 1.280000] [<c00083d0>] (kernel_init+0x0/0x170) from [<c005eacc>] (do_exit+0x0/0x688)
[ 1.290000] r5:c00083d0 r4:00000000
[ 1.290000] ---[ end trace dec6997083161631 ]---
[ 1.300000] mxs-fb: probe of mxs-fb.0 failed with error -12