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.

AM335x映射McSPI寄存时出错:Unhandled fault: external abort on non-linefetch

对McSPI寄存器进行映射操作,加载模块驱动出错:

一直在用该方法操作寄存器,这次在McSPI发生错误,求解答?

[ 29.562561] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa1a0124
[ 29.570556] Internal error: : 1028 [#1]
[ 29.574554] Modules linked in: spi_slave(O+) spidma_oled(O)
[ 29.580383] CPU: 0 Tainted: G O (3.2.0 #375)
[ 29.586120] PC is at MDS_probe+0x4ac/0x5cc [spi_slave]
[ 29.591491] LR is at console_unlock+0x170/0x1f8
[ 29.596221] pc : [<bf004884>] lr : [<c003e41c>] psr: 60000013
[ 29.596221] sp : df6bdd58 ip : df6bdc50 fp : df6bdd7c
[ 29.608184] r10: bf008000 r9 : 0000062f r8 : df773940
[ 29.613647] r7 : bf007194 r6 : 00000000 r5 : bf004e50 r4 : bf00519c
[ 29.620452] r3 : fa1a0124 r2 : c0644108 r1 : 00000000 r0 : bf004ca8
[ 29.627258] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment use

部分驱动如下:

#define REG_MCSPI_BASE 0x48030000

#define REG_MCSPI_SYST   (REG_MCSPI_BASE+0x124)

unsigned long *mcspi_syst;

{

    .......

    request_mem_region(REG_MCSPI_SYST, 4, "REG_MCSPI_SYST");

    mcspi_syst = ioremap_nocache(REG_MCSPI_SYST, 4);

    printk("mcspi_syst = %x\n", *mcspi_syst);

    ......

}


x 出现错误。请重试或与管理员联系。