03-27-2017 02:26 PM
I must be looking in the wrong places but I cannot figure out how to get Jeremy Trimble's ezdma (https://github.com/jeremytrimble/ezdma) to compile into a kernel module using the toolchain installed by PetaLinux 2016.4 (or any other version for that matter).
1) his makefile wants to use arm-linux-gnueabi-gcc which was not installed by Ubuntu or Petalinux. Easily remedied by sudo apt install gcc-arm-linux-gnueabi
2) his makefile complains that it has no rule to target "modules". Looking inside, I see nothing either.
3) his makefile wants to have a path to the kernel directory but looking at the Petalinux tree, it doesn't seem to jive with what I've found for other linux source trees so I'm not sure where to point the silly thing.
4) obj-m is called as part of the second pass of the makefile as "obj-m += ezdma.o" and as near as I can tell there was no "obj-m" installed with PetaLinux or as part of Ubuntu.
My question is: can anybody explain to me how to create the ezdma.ko module from the source code that can be had from GitHub? I can re-create his test projects in Vivado but I can't complete any sort of testing after that as I don't have the kernel module.
It has been a very long time since I've had to deal with Linux and setting up the cross-compile tool chain as been nothing but trouble for me. Any answers, suggestions or solutions, please be as complete and as specific as possible in the replies as I am not at all familiar with the way embedded Linux works these days.
Thanks in advance for suggestions and help.
03-29-2017 04:25 AM