Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
11 years ago

Custom Device Driver ioremap fails

Thanks in advance.

Using GSRD 14.1 - I've added a custom IP (that I had a device driver for in NIOS II uClinux).

The *.dts file says the address is: 0x1_0004_0000

In the nios2 I used to do the ioremap on the address in the nios2.h

So, I'm doing the ioremap on the address from the *.dts file and I get the following error.

root@socfpga_cyclone5:~/altera# insmod touchSerialDriver.ko

[ 29.891171] ******** Touchscreen Serial 30 March 2015 mod_init

[ 29.897110] touchSerialVertAddr 0x00040000

[ 29.901206] SUCCESSFULLY RESET

[ 29.904362] Registered chrdev

[ 29.907410] ser9x0 added

[ 29.909936] ------------[ cut here ]------------

[ 29.914559] WARNING: CPU: 1 PID: 1120 at arch/arm/mm/ioremap.c:301 __arm_ioremap_pfn_caller+0x190/0x1a8()

[ 29.924097] Modules linked in: touchSerialDriver(O+)

[ 29.929070] CPU: 1 PID: 1120 Comm: insmod Tainted: G O 3.18.0-00239-g24890c3-dirty# 1

[ 29.937937] [<c0016998>] (unwind_backtrace) from [<c0012924>] (show_stack+0x20/0x24)

[ 29.945676] [<c0012924>] (show_stack) from [<c053f10c>] (dump_stack+0x8c/0x9c)

[ 29.952897] [<c053f10c>] (dump_stack) from [<c0024840>] (warn_slowpath_common+0x80/0x9c)

[ 29.960962] [<c0024840>] (warn_slowpath_common) from [<c0024918>] (warn_slowpath_null+0x2c/0x34)

[ 29.969720] [<c0024918>] (warn_slowpath_null) from [<c001d580>] (__arm_ioremap_pfn_caller+0x190/0x1a8)

[ 29.978996] [<c001d580>] (__arm_ioremap_pfn_caller) from [<c001d5f4>] (__arm_ioremap_caller+0x5c/0x64)

[ 29.988270] [<c001d5f4>] (__arm_ioremap_caller) from [<c001d2fc>] (__arm_ioremap+0x28/0x2c)

[ 29.996602] [<c001d2fc>] (__arm_ioremap) from [<bf000578>] (mod_init+0x138/0x25c [touchSerialDriver])

[ 30.005800] [<bf000578>] (mod_init [touchSerialDriver]) from [<c00089e0>] (do_one_initcall+0x9c/0x1dc)

[ 30.015090] [<c00089e0>] (do_one_initcall) from [<c008a7b0>] (load_module+0x1bf8/0x1ef0)

[ 30.023160] [<c008a7b0>] (load_module) from [<c008ac20>] (SyS_finit_module+0x78/0x88)

[ 30.030961] [<c008ac20>] (SyS_finit_module) from [<c000e9a0>] (ret_fast_syscall+0x0/0x30)

[ 30.039112] ---[ end trace 8dfe9e0a7628182e ]---

[ 30.043715] FAILED -- I/O remap - touchSerailDriver

root@socfpga_cyclone5:~/altera#

So, what address do I use for the ioremap ?
No RepliesBe the first to reply