This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
I am trying to build and load the graphics driver form the TI SGX Graphics SDK into a custom kernel. This kernel is a branch of the official 3.14 Beagle Bone kernel repository. It runs on modified Beagle Bone Black hardware (Sitara AM3358BZCZ100).
After a successful build when trying to insert the drivers modules into the kernel, it claims that they are already built-in.
$ modprobe -av ./pvrsrvkm.ko ./omaplfb.ko builtin ./pvrsrvkm.ko builtin ./omaplfb.ko
This is mysterious since our kernel is not configured to contain any similar/conflicting functionality to these modules:
CONFIG_DRM=n CONFIG_FB=n CONFIG_OMAP2_DSS=
Forceful loading of pvrsrvkm.ko with insmod gives these error messages:
[ 46.189616] PVR: PVRCore_Init [ 46.196435] PVR: PVRSRVDriverProbe(pDevice=dd94aa00) [ 46.218598] PVR: SGX register base: 0x56000000 [ 46.223319] PVR: SGX register size: 16777215 [ 46.227818] PVR: SGX IRQ: 53 [ 46.248307] PVR: EnableSystemClocks: Enabling System Clocks [ 46.254244] PVR: GPTIMER11 clock is 24MHz [ 46.268202] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa04a054 [ 46.276278] Internal error: : 1028 [#1] PREEMPT ARM [ 46.281406] Modules linked in: pvrsrvkm(O+) ctr ccm edt_ft5x06 arc4 usb_f_acm u_serial g_serial libcomposite wlcore_sdio wl18xx wlcore mac802 11 cfg80211 [ 46.295907] CPU: 0 PID: 579 Comm: insmod Tainted: G O 3.14.55-the_element+ #6 [ 46.304317] task: dc2d5940 ti: dc1a2000 task.ti: dc1a2000 [ 46.310668] PC is at AcquireGPTimer+0x160/0x258 [pvrsrvkm] [ 46.316755] LR is at OSMapPhysToLin+0xc0/0xf4 [pvrsrvkm] [ 46.322345] pc : [<bf1f8bf0>] lr : [<bf1db798>] psr: a00f0013 sp : dc1a3bc8 ip : dc1a3b98 fp : dc1a3c04 [ 46.334395] r10: dc002264 r9 : 0000000b r8 : bf2180b8 [ 46.339884] r7 : 00000000 r6 : c091f758 r5 : bf2180b8 r4 : dd94aa10 [ 46.346738] r3 : fa04a054 r2 : dc58d458 r1 : bf20276c r0 : fa04a054 [ 46.353597] Flags: NzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user [ 46.361091] Control: 10c5387d Table: 9c1c8019 DAC: 00000015 [ 46.367128] Process insmod (pid: 579, stack limit = 0xdc1a2238) [ 46.373345] Stack: (0xdc1a3bc8 to 0xdc1a4000) [ 46.377937] 3bc0: bf1e242c bf1da5c0 bf205c28 bf21b32c 4804a054 dc58d458 [ 46.386536] 3be0: dc03c280 dd80bd00 016e3600 00000000 fa04a054 dd80bd00 dc1a3c24 dc1a3c08 [ 46.395134] 3c00: bf1f8e04 bf1f8a9c bf1e21e8 bf21b200 dc03c280 bf21b32c dc1a3c6c dc1a3c28 [ 46.403730] 3c20: bf1f97a0 bf1f8d8c c002cbe8 c0605d88 dd94ba80 0000000b 00000000 00000000 [ 46.412328] 3c40: bf21b39c dc03c314 dc12b800 bf21b200 00000000 bf21b200 bf2180b8 c091f758 [ 46.420924] 3c60: dc1a3c94 dc1a3c70 bf1d7880 bf1f91bc dc1a3c8c dd94aa00 dd94aa10 c08ccf24 [ 46.429520] 3c80: 00000000 00000000 dc1a3cac dc1a3c98 c03c48ac bf1d77a0 c09aafd4 dd94aa10 [ 46.438117] 3ca0: dc1a3cdc dc1a3cb0 c03c2a08 c03c4890 dc1a3cdc dc1a3cc0 dd94aa10 bf2180b8 [ 46.446714] 3cc0: dd94aa44 00000000 00000000 bf22a000 dc1a3cfc dc1a3ce0 c03c2d5c c03c28c0 [ 46.455312] 3ce0: 00000000 00000000 bf2180b8 c03c2cc0 dc1a3d24 dc1a3d00 c03c099c c03c2ccc [ 46.463908] 3d00: dd8e6f4c dd93f630 ddf711b4 bf2180b8 ddf71180 c08fb6c0 dc1a3d34 dc1a3d28 [ 46.472505] 3d20: c03c2354 c03c0938 dc1a3d5c dc1a3d38 c03c1f24 c03c2334 bf203cc8 dc1a3d48 [ 46.481102] 3d40: bf2180b8 00000001 c08c000c dc1a2010 dc1a3d74 dc1a3d60 c03c3478 c03c1dc0 [ 46.489699] 3d60: dc1a3f48 00000001 dc1a3d84 dc1a3d78 c03c487c c03c33fc dc1a3dcc dc1a3d88 [ 46.498296] 3d80: bf22a0b0 c03c4824 00000000 dfe79200 00000001 00000000 c0790898 c0790884 [ 46.506892] 3da0: dc1a3de4 dc1a3db0 c010390c c00e309c dc1a3dec c0605b58 c00e309c c06023e0 [ 46.515489] 3dc0: dc1a3e54 dc1a3dd0 c00088f4 bf22a00c bf2181fc c0605b58 fffffffa c007e968 [ 46.524086] 3de0: dc1a3e04 dc1a3df0 c007e968 c0605d88 c08d8328 00000000 dc1a3e14 dc1a3e08 [ 46.532683] 3e00: c007d6d4 c007e918 dc1a3e3c dc1a3e18 c0067c48 c007d6c8 00000000 dc1a3e28 [ 46.541280] 3e20: dc1a3f48 00000001 bf218208 e14236b7 dc1a3f48 bf218208 bf2181fc dc002240 [ 46.549878] 3e40: 00000001 dc002264 dc1a3f3c dc1a3e58 c00a6690 c00087f8 bf218208 00007fff [ 46.558475] 3e60: c00a2fbc c0191b68 00000000 e0f2a000 00000000 e11c5108 e0f95454 c091bc18 [ 46.567072] 3e80: e0f95538 b6eefe80 dc1a2018 bf218244 00000000 dc002248 c08c000c dc1a3ed8 [ 46.575668] 3ea0: 0036832b 00000000 bf1fa658 00000002 00000000 00000000 00000000 00000000 [ 46.584264] 3ec0: 00000000 00000000 00000000 00000000 6e72656b 00006c65 00000000 00000000 [ 46.592859] 3ee0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 [ 46.601455] 3f00: 00000000 00000000 00000000 e14236b7 00001b48 00000000 00000003 b6eefe80 [ 46.610052] 3f20: 0000017b c000f7e4 dc1a2000 00000000 dc1a3fa4 dc1a3f40 c00a6b8c c00a4774 [ 46.618651] 3f40: c016ade8 00000000 e0f2a000 0036832b e11c49b0 e11c4800 e128c3e8 0006c418 [ 46.627249] 3f60: 00073db8 00000000 00000000 00000000 0000002f 00000030 0000001c 00000019 [ 46.635845] 3f80: 00000013 00000000 00000000 1190cf00 b6eebcdc b6ed7f10 00000000 dc1a3fa8 [ 46.644442] 3fa0: c000f5c0 c00a6b0c 1190cf00 b6eebcdc 00000003 b6eefe80 00000000 00000002 [ 46.653038] 3fc0: 1190cf00 b6eebcdc b6ed7f10 0000017b 00000000 b6eebcdc b6f02000 00000000 [ 46.661636] 3fe0: be87aae0 be87aad0 b6ee66c3 b6e52812 80000030 00000003 000000da 00000266 [ 46.670213] Backtrace: [ 46.673555] [<bf1f8a90>] (AcquireGPTimer [pvrsrvkm]) from [<bf1f8e04>] (EnableSystemClocks+0x84/0x94 [pvrsrvkm]) [ 46.684977] [<bf1f8d80>] (EnableSystemClocks [pvrsrvkm]) from [<bf1f97a0>] (SysInitialise+0x5f0/0x7c4 [pvrsrvkm]) [ 46.696407] [<bf1f91b0>] (SysInitialise [pvrsrvkm]) from [<bf1d7880>] (PVRSRVDriverProbe+0xec/0x114 [pvrsrvkm]) [ 46.707316] [<bf1d7794>] (PVRSRVDriverProbe [pvrsrvkm]) from [<c03c48ac>] (platform_drv_probe+0x28/0x58) [ 46.717289] [<c03c4884>] (platform_drv_probe) from [<c03c2a08>] (driver_probe_device+0x154/0x3b8) [ 46.726599] r5:dd94aa10 r4:c09aafd4 [ 46.730395] [<c03c28b4>] (driver_probe_device) from [<c03c2d5c>] (__driver_attach+0x9c/0xa0) [ 46.739249] r9:bf22a000 r8:00000000 r7:00000000 r6:dd94aa44 r5:bf2180b8 r4:dd94aa10 [ 46.747450] [<c03c2cc0>] (__driver_attach) from [<c03c099c>] (bus_for_each_dev+0x70/0xa4) [ 46.756031] r6:c03c2cc0 r5:bf2180b8 r4:00000000 r3:00000000 [ 46.762029] [<c03c092c>] (bus_for_each_dev) from [<c03c2354>] (driver_attach+0x2c/0x30) [ 46.770428] r6:c08fb6c0 r5:ddf71180 r4:bf2180b8 [ 46.775322] [<c03c2328>] (driver_attach) from [<c03c1f24>] (bus_add_driver+0x170/0x22c) [ 46.783740] [<c03c1db4>] (bus_add_driver) from [<c03c3478>] (driver_register+0x88/0x108) [ 46.792230] r7:dc1a2010 r6:c08c000c r5:00000001 r4:bf2180b8 [ 46.798230] [<c03c33f0>] (driver_register) from [<c03c487c>] (__platform_driver_register+0x64/0x6c) [ 46.807721] r5:00000001 r4:dc1a3f48 [ 46.811752] [<c03c4818>] (__platform_driver_register) from [<bf22a0b0>] (PVRCore_Init+0xb0/0x344 [pvrsrvkm]) [ 46.822311] [<bf22a000>] (PVRCore_Init [pvrsrvkm]) from [<c00088f4>] (do_one_initcall+0x108/0x1b4) [ 46.831734] [<c00087ec>] (do_one_initcall) from [<c00a6690>] (load_module+0x1f28/0x2264) [ 46.840225] r10:dc002264 r9:00000001 r8:dc002240 r7:bf2181fc r6:bf218208 r4:dc1a3f48 [ 46.848516] [<c00a4768>] (load_module) from [<c00a6b8c>] (SyS_finit_module+0x8c/0xbc) [ 46.856733] r10:00000000 r9:dc1a2000 r8:c000f7e4 r7:0000017b r6:b6eefe80 r5:00000003 [ 46.865004] r4:00000000 [ 46.867697] [<c00a6b00>] (SyS_finit_module) from [<c000f5c0>] (ret_fast_syscall+0x0/0x38) [ 46.876279] r6:b6ed7f10 r5:b6eebcdc r4:1190cf00 [ 46.881171] Code: e34b3f20 ebff5e68 ea000030 e51b3014 (e5933000) [ 46.887582] ---[ end trace a8e4f5cd20223b96 ]---
Any pointers to what might be the cause of this problem would be greatly appreciated.
Hi,
Jeroen Thunnissen said:After a successful build when trying to insert the drivers modules into the kernel, it claims that they are already built-in.
Can you verify this with lsmod?
As for the kernel panic you see, it is because of the following error:
[ 46.248307] PVR: EnableSystemClocks: Enabling System Clocks
[ 46.254244] PVR: GPTIMER11 clock is 24MHz
[ 46.268202] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa04a054
[ 46.276278] Internal error: : 1028 [#1] PREEMPT ARM
The Unhandled fault message is usually displayed when you try to access a memory that hasn't been mapped to the virtual kernel memory space.
You can get some more information about this fault from arch/arm/mm/fault.c.
Best Regards,
Yordan