Tool/software: Code Composer Studio
Hi all,
we need to detect the sdcard sd-cd pin status after kernel is started, so I found the Physical Address of the mmc1 on TRM doc. which is shown below.
but when we enter:omapconf read 0x4809C224, it runs error:
root@dra7xx-evm:~# omapconf read 0x4809C224
[ 21.049540] Unhandled fault: asynchronous external abort (0x1211) at 0x00000000
[ 21.049543] ------------[ cut here ]------------
[ 21.049563] WARNING: CPU: 0 PID: 0 at drivers/bus/omap_l3_noc.c:147 l3_interrupt_handler+0x25c/0x368()
[ 21.049569] 44000000.ocp:L3 Custom Error: MASTER MPU TARGET L4_PER1_P3 (Read): Data Access in User mode during Functional access
[ 21.049627] Modules linked in: af_packet rpmsg_proto bc_example(O) virtio_rpmsg_bus extcon_usb_gpio pvrsrvkm(O) ahci_platform libahci_platform libahci c_can_platform c_can libata omap_aes_driver can_dev omap_sham scsi_mod rtc_omap dwc3_omap extcon omap_des omap_rng rng_core omap_remoteproc remoteproc virtio virtio_ring sch_fq_codel
[ 21.049634] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G O 4.4.84-gef1e26327a9c #6
[ 21.049637] Hardware name: Generic DRA74X (Flattened Device Tree)
[ 21.049642] Backtrace:
[ 21.049660] [<c00131c4>] (dump_backtrace) from [<c00133c0>] (show_stack+0x18/0x1c)
[ 21.049672] r7:c02de550 r6:20010193 r5:00000000 r4:c08cf690
[ 21.049683] [<c00133a8>] (show_stack) from [<c02b2108>] (dump_stack+0x8c/0xa0)
[ 21.049691] [<c02b207c>] (dump_stack) from [<c0035300>] (warn_slowpath_common+0x88/0xb8)
[ 21.049701] r7:c02de550 r6:00000093 r5:00000009 r4:c08b1d30
[ 21.049708] [<c0035278>] (warn_slowpath_common) from [<c0035368>] (warn_slowpath_fmt+0x38/0x40)
[ 21.049719] r8:00000017 r7:c07d1250 r6:00000002 r5:c07d1310 r4:c07d13b4
[ 21.049726] [<c0035334>] (warn_slowpath_fmt) from [<c02de550>] (l3_interrupt_handler+0x25c/0x368)
[ 21.049732] r3:eea04000 r2:c07d13b4
[ 21.049736] r4:80080003
[ 21.049746] [<c02de2f4>] (l3_interrupt_handler) from [<c0080be8>] (handle_irq_event_percpu+0xb4/0x160)
[ 21.049758] r10:c08fa60b r9:ee9f0300 r8:00000017 r7:00000000 r6:00000000 r5:ee9f0360
[ 21.049762] r4:eea04500
[ 21.049771] [<c0080b34>] (handle_irq_event_percpu) from [<c0080cd4>] (handle_irq_event+0x40/0x64)
[ 21.049783] r10:c08b250c r9:c063228c r8:ee808000 r7:00000000 r6:c08b7cc4 r5:ee9f0360
[ 21.049787] r4:ee9f0300
[ 21.049795] [<c0080c94>] (handle_irq_event) from [<c0084018>] (handle_fasteoi_irq+0xc0/0x194)
[ 21.049804] r7:00000000 r6:c08b7cc4 r5:ee9f0360 r4:ee9f0300
[ 21.049812] [<c0083f58>] (handle_fasteoi_irq) from [<c0080214>] (generic_handle_irq+0x2c/0x3c)
[ 21.049821] r7:00000000 r6:00000000 r5:00000017 r4:c08ac424
[ 21.049830] [<c00801e8>] (generic_handle_irq) from [<c00804ec>] (__handle_domain_irq+0x64/0xbc)
[ 21.049837] [<c0080488>] (__handle_domain_irq) from [<c000948c>] (gic_handle_irq+0x40/0x7c)
[ 21.049849] r9:c063228c r8:fa213000 r7:fa212000 r6:c08b1ef0 r5:fa21200c r4:c08b28ec
[ 21.049855] [<c000944c>] (gic_handle_irq) from [<c0013e80>] (__irq_svc+0x40/0x74)
[ 21.049858] Exception stack(0xc08b1ef0 to 0xc08b1f38)
[ 21.049863] 1ee0: 00000001 00000000 fe600000 00000000
[ 21.049868] 1f00: c08b0000 c08b24ac 00000000 00000000 c08b1f60 c063228c c08b250c c08b1f4c
[ 21.049873] 1f20: c08b1f2c c08b1f40 c0027fac c0010600 60010013 ffffffff
[ 21.049885] r9:c063228c r8:c08b1f60 r7:c08b1f24 r6:ffffffff r5:60010013 r4:c0010600
[ 21.049898] [<c00105d8>] (arch_cpu_idle) from [<c0071428>] (default_idle_call+0x28/0x34)
[ 21.049907] [<c0071400>] (default_idle_call) from [<c0071688>] (cpu_startup_entry+0x200/0x260)
[ 21.049920] [<c0071488>] (cpu_startup_entry) from [<c0629870>] (rest_init+0x90/0x94)
[ 21.049924] r7:00000000
[ 21.049934] [<c06297e0>] (rest_init) from [<c085dd88>] (start_kernel+0x400/0x40c)
[ 21.049939] r5:c08fd000 r4:c08fd040
[ 21.049946] [<c085d988>] (start_kernel) from [<80008090>] (0x80008090)
[ 21.049950] ---[ end trace 266c32fb2ebd0433 ]---
[ 21.378813] pgd = eb15b1c0
[ 21.381529] [00000000] *pgd=ad61a003, *pmd=27f848003
!!! OUPS... MEMORY ERROR @ 0x00000000 !!!
Are you sure that:
MEMORY ADDRESS IS VALID?
TARGETED MODULE IS CLOCKED?
-------------------------------------------------------------------
how could we get the status of the pin when kernel started?