Crash in Kernel 2.6.22.1 after calling mmc_register_card
Hi All, Please CC me on responses. I am working on a SD/MMC Host driver . I am getting kerenl oops after mmc_register_card () is called. i working on LINUX 2.6.22.1 kerenl. What might be the reason for this. I installed the modules in follwing order. I did nothing else after installing the modules. Do i need to run any Hotplug script. 1)insmod mmc_core.ko 2)insmod mmc_block.ko 3)insmod sdcc.ko Thanks in Advance for your help. -- Thanks kiran Unable to handle kernel NULL pointer dereference at virtual address 0030 pgd = c0004000 [0030] *pgd= Internal error: Oops: 17 [#1] Modules linked in: sdcc mmc_block mmc_core CPU: 0Not tainted (2.6.22.1-M7200JSDCAALBA #1) PC is at create_dir+0x14/0x200 LR is at sysfs_create_dir+0x74/0xa0 pc : []lr : []psr: a113 sp : c4993e18 ip : c4993e48 fp : c4993e44 r10: c48ac078 r9 : r8 : 0001 r7 : c48ac078 r6 : r5 : r4 : c4c0311c r3 : c4993e4c r2 : c4c0311c r1 : r0 : c4c03118 Flags: NzCv IRQs on FIQs on Mode SVC_32 Segment kernel Control: 00c5387f Table: 14c24008 DAC: 0017 Process kmmcd (pid: 1054, stack limit = 0xc4992258) Stack: (0xc4993e18 to 0xc4994000) 3e00: 0002 3e20: c011a9e8 c4c03118 c48ac078 0001 c4993e64 c4993e48 3e40: c00d32b4 c00d304c c01fe5cc c4c03118 c4993e8c c4993e68 3e60: c011aa4c c00d324c c4c03008 c4c03010 c48ac078 0001 3e80: c4993e9c c4993e90 c011ab34 c011a96c c4993ee4 c4993ea0 c014a8e0 c011ab2c 3ea0: c4c03010 c4c0317c c4c03118 0001 c48abf70 c4993edc c4c03008 3ec0: c4c03010 c48abf68 0001 c4993f0c c4993ee8 3ee0: bf0f8c20 c014a84c a95c c4993ef8 c4c032c4 c4c03008 c48abf68 3f00: c4993f4c c4993f10 bf0fa15c bf0f8bec 03534453 44313238 3f20: 55202732 1a003bd6 c48abf68 c4993f54 6013 c48ac27c bf0f7ce0 3f40: c4993f74 c4993f50 bf0f7db0 bf0f9bac c4993f74 00ff8000 c01fe530 c48ac280 3f60: c4a209c8 c4992000 c4993f9c c4993f78 c00567d0 bf0f7cec c4992000 c4a209f8 3f80: c4992000 c4a209c8 c4993fd4 c4993fa0 c0057450 c005672c 3fa0: c06e0850 c06e0740 c005b040 c4993fb0 c4993fb0 c4992000 3fc0: c4a209c8 c0057360 c4993ff4 c4993fd8 c005aefc c005736c 3fe0: c4993ff8 c0047920 c005aeac Backtrace: [] (create_dir+0x0/0x200) from [] (sysfs_create_dir+0x74/0xa0) r8:0001 r7:c48ac078 r6: r5: r4:c4c03118 [] (sysfs_create_dir+0x0/0xa0) from [] (kobject_shadow_add+0xec/0x1c0) r4:c4c03118 [] (kobject_shadow_add+0x0/0x1c0) from [] (kobject_add+0x14/0x20) [] (kobject_add+0x0/0x20) from [] (device_add+0xa0/0x5a0) [] (device_add+0x0/0x5a0) from [] (mmc_register_card+0x40/0xa0 [mmc_core]) [] (mmc_register_card+0x0/0xa0 [mmc_core]) from [] (mmc_attach_sd+0x5bc/0x740 [mmc_core]) r7:c48abf68 r6: r5:c4c03008 r4:c4c032c4 [] (mmc_attach_sd+0x0/0x740 [mmc_core]) from [] (mmc_rescan+0xd0/0x1a0 [mmc_core]) r8:bf0f7ce0 r7:c48ac27c r6:6013 r5:c4993f54 r4:c48abf68 [] (mmc_rescan+0x0/0x1a0 [mmc_core]) from [] (run_workqueue+0xb0/0x180) r6:c4992000 r5:c4a209c8 r4:c48ac280 [] (run_workqueue+0x0/0x180) from [] (worker_thread+0xf0/0x120) r8: r7: r6:c4a209c8 r5:c4992000 r4:c4a209f8 [] (worker_thread+0x0/0x120) from [] (kthread+0x5c/0xa0) r6:c0057360 r5:c4a209c8 r4:c4992000 [] (kthread+0x0/0xa0) from [] (do_exit+0x0/0x820) r6: r5: r4: Code: e92dd9f0 e24cb004 e24dd00c e1a04002 (e5912030) === -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Crash in Kernel 2.6.22.1 after calling mmc_register_card
Hi All, Please CC me on responses. I am working on a SD/MMC Host driver . I am getting kerenl oops after mmc_register_card () is called. i working on LINUX 2.6.22.1 kerenl. What might be the reason for this. I installed the modules in follwing order. I did nothing else after installing the modules. Do i need to run any Hotplug script. 1)insmod mmc_core.ko 2)insmod mmc_block.ko 3)insmod sdcc.ko Thanks in Advance for your help. -- Thanks kiran Unable to handle kernel NULL pointer dereference at virtual address 0030 pgd = c0004000 [0030] *pgd= Internal error: Oops: 17 [#1] Modules linked in: sdcc mmc_block mmc_core CPU: 0Not tainted (2.6.22.1-M7200JSDCAALBA #1) PC is at create_dir+0x14/0x200 LR is at sysfs_create_dir+0x74/0xa0 pc : [c00d3054]lr : [c00d32b4]psr: a113 sp : c4993e18 ip : c4993e48 fp : c4993e44 r10: c48ac078 r9 : r8 : 0001 r7 : c48ac078 r6 : r5 : r4 : c4c0311c r3 : c4993e4c r2 : c4c0311c r1 : r0 : c4c03118 Flags: NzCv IRQs on FIQs on Mode SVC_32 Segment kernel Control: 00c5387f Table: 14c24008 DAC: 0017 Process kmmcd (pid: 1054, stack limit = 0xc4992258) Stack: (0xc4993e18 to 0xc4994000) 3e00: 0002 3e20: c011a9e8 c4c03118 c48ac078 0001 c4993e64 c4993e48 3e40: c00d32b4 c00d304c c01fe5cc c4c03118 c4993e8c c4993e68 3e60: c011aa4c c00d324c c4c03008 c4c03010 c48ac078 0001 3e80: c4993e9c c4993e90 c011ab34 c011a96c c4993ee4 c4993ea0 c014a8e0 c011ab2c 3ea0: c4c03010 c4c0317c c4c03118 0001 c48abf70 c4993edc c4c03008 3ec0: c4c03010 c48abf68 0001 c4993f0c c4993ee8 3ee0: bf0f8c20 c014a84c a95c c4993ef8 c4c032c4 c4c03008 c48abf68 3f00: c4993f4c c4993f10 bf0fa15c bf0f8bec 03534453 44313238 3f20: 55202732 1a003bd6 c48abf68 c4993f54 6013 c48ac27c bf0f7ce0 3f40: c4993f74 c4993f50 bf0f7db0 bf0f9bac c4993f74 00ff8000 c01fe530 c48ac280 3f60: c4a209c8 c4992000 c4993f9c c4993f78 c00567d0 bf0f7cec c4992000 c4a209f8 3f80: c4992000 c4a209c8 c4993fd4 c4993fa0 c0057450 c005672c 3fa0: c06e0850 c06e0740 c005b040 c4993fb0 c4993fb0 c4992000 3fc0: c4a209c8 c0057360 c4993ff4 c4993fd8 c005aefc c005736c 3fe0: c4993ff8 c0047920 c005aeac Backtrace: [c00d3040] (create_dir+0x0/0x200) from [c00d32b4] (sysfs_create_dir+0x74/0xa0) r8:0001 r7:c48ac078 r6: r5: r4:c4c03118 [c00d3240] (sysfs_create_dir+0x0/0xa0) from [c011aa4c] (kobject_shadow_add+0xec/0x1c0) r4:c4c03118 [c011a960] (kobject_shadow_add+0x0/0x1c0) from [c011ab34] (kobject_add+0x14/0x20) [c011ab20] (kobject_add+0x0/0x20) from [c014a8e0] (device_add+0xa0/0x5a0) [c014a840] (device_add+0x0/0x5a0) from [bf0f8c20] (mmc_register_card+0x40/0xa0 [mmc_core]) [bf0f8be0] (mmc_register_card+0x0/0xa0 [mmc_core]) from [bf0fa15c] (mmc_attach_sd+0x5bc/0x740 [mmc_core]) r7:c48abf68 r6: r5:c4c03008 r4:c4c032c4 [bf0f9ba0] (mmc_attach_sd+0x0/0x740 [mmc_core]) from [bf0f7db0] (mmc_rescan+0xd0/0x1a0 [mmc_core]) r8:bf0f7ce0 r7:c48ac27c r6:6013 r5:c4993f54 r4:c48abf68 [bf0f7ce0] (mmc_rescan+0x0/0x1a0 [mmc_core]) from [c00567d0] (run_workqueue+0xb0/0x180) r6:c4992000 r5:c4a209c8 r4:c48ac280 [c0056720] (run_workqueue+0x0/0x180) from [c0057450] (worker_thread+0xf0/0x120) r8: r7: r6:c4a209c8 r5:c4992000 r4:c4a209f8 [c0057360] (worker_thread+0x0/0x120) from [c005aefc] (kthread+0x5c/0xa0) r6:c0057360 r5:c4a209c8 r4:c4992000 [c005aea0] (kthread+0x0/0xa0) from [c0047920] (do_exit+0x0/0x820) r6: r5: r4: Code: e92dd9f0 e24cb004 e24dd00c e1a04002 (e5912030) === -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Replacing drivers/mmc directory in kerenl 2.6.22.1 with drivers/mmc in kernel 2.6.23.1
Hi All, Please CC me on your responses I am working on Kernel 2.6.22.1 mmc host drivers. I recently found that mmc driver in kernel 2.6.23.1 supports bounce buffers. I wanted to use bounce buffer feature. I do not want to go to Kernel 2.6.23.1. I want to be at 2.6.22.1, but I need mmc driver in 2.6.23.1. Can I replace drivers/mmc directory in 2.6.22.1 with drivers/mmc directory in 2.6.23.1. Does this cause any issues. Is there any code in drivers/mmc in 2.6.23.1 which depends on other features in kernel 2.6.23.1. Thanks in advance for your help -- Thanks raki -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Replacing drivers/mmc directory in kerenl 2.6.22.1 with drivers/mmc in kernel 2.6.23.1
Hi All, Please CC me on your responses I am working on Kernel 2.6.22.1 mmc host drivers. I recently found that mmc driver in kernel 2.6.23.1 supports bounce buffers. I wanted to use bounce buffer feature. I do not want to go to Kernel 2.6.23.1. I want to be at 2.6.22.1, but I need mmc driver in 2.6.23.1. Can I replace drivers/mmc directory in 2.6.22.1 with drivers/mmc directory in 2.6.23.1. Does this cause any issues. Is there any code in drivers/mmc in 2.6.23.1 which depends on other features in kernel 2.6.23.1. Thanks in advance for your help -- Thanks raki -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Order of Loading mmc driver modules.
Hi All, I am working with pxamci driver(2.6.22.1). I have made , core and host as separate modules. what is the correct order of loading the modules i am doing in this order first core (mmc_core.ko), then card(mmc_block.ko) after that host driver ( pxamci.ko). Is this correct. I do not know much about Linux device model. i saw that pxamci.ko driver registers it self as platform_driver. When does its probe function is called. Is it called immediately after platform_driver_register(_driver) is called. also in card driver (mmc_block.ko) in block.c file i saw a probe function(mmc_blk_probe). How does it is invoked . Thanks in advance for your help. -- Thanks raki -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Order of Loading mmc driver modules.
Hi All, I am working with pxamci driver(2.6.22.1). I have made , core and host as separate modules. what is the correct order of loading the modules i am doing in this order first core (mmc_core.ko), then card(mmc_block.ko) after that host driver ( pxamci.ko). Is this correct. I do not know much about Linux device model. i saw that pxamci.ko driver registers it self as platform_driver. When does its probe function is called. Is it called immediately after platform_driver_register(pxamci_driver) is called. also in card driver (mmc_block.ko) in block.c file i saw a probe function(mmc_blk_probe). How does it is invoked . Thanks in advance for your help. -- Thanks raki -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
relation between mmc_request, mmc_data and mmc_command
Hi All, what is the relation between mmc_request , mmc_data and mmc_command . (I am new SD driver development, and I am working on 2.6.22.1) when mmc core layer calls Host controllers request function (member of struct mmc_host_ops), it passes mmc_request structure to driver's request function. 1)mmc_request has three members mmc_command * cmd mmc_data * data mmc_command * stop 2) mmc_data has mmc_command * stop mmc_request * mrq 3) mmc_command has mmc_data *data mmc_request *mrq Does mmc_requeest->stop is equal to mmc_request->data->stop ? Does mmc_request is equal to mmc_request->data->mrq ? Does mmc_request->data is equal to mmc_request->cmd->data ? Does mmc_request is equal to mmc_request->cmd->mrq ? I think Stop command which is part of mmc_request is used for sending stop command after Multi Block write. is this correct. If stop command fails(CRC fail, timeout), does this mean card write failed. Thanks In Advance for your help -- Thanks raki -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
relation between mmc_request, mmc_data and mmc_command
Hi All, what is the relation between mmc_request , mmc_data and mmc_command . (I am new SD driver development, and I am working on 2.6.22.1) when mmc core layer calls Host controllers request function (member of struct mmc_host_ops), it passes mmc_request structure to driver's request function. 1)mmc_request has three members mmc_command * cmd mmc_data * data mmc_command * stop 2) mmc_data has mmc_command * stop mmc_request * mrq 3) mmc_command has mmc_data *data mmc_request *mrq Does mmc_requeest-stop is equal to mmc_request-data-stop ? Does mmc_request is equal to mmc_request-data-mrq ? Does mmc_request-data is equal to mmc_request-cmd-data ? Does mmc_request is equal to mmc_request-cmd-mrq ? I think Stop command which is part of mmc_request is used for sending stop command after Multi Block write. is this correct. If stop command fails(CRC fail, timeout), does this mean card write failed. Thanks In Advance for your help -- Thanks raki -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/