MarcKarasek / rpi_rgb_ledmatrix-kerneldriver

Controlling one or a chain of 32x32 or 16x32 RGB LED displays using Raspberry Pi GPIO - Kernel Driver and User Applications
GNU General Public License v3.0
1 stars 0 forks source link

Need someone with kernel > 4.12 to test the driver. #5

Open MarcKarasek opened 6 years ago

MarcKarasek commented 6 years ago

Seems copy_to_user() has moved its definition in more recent kernels.

Old -> asm/uaccess.h New -> linux/uaccess.h

daveythacher commented 3 years ago

Tried this from clean checkout on master:

make clean
make

Got this:

make[1]: Entering directory '/usr/src/linux-headers-5.10.17+'
  CC [M]  /<redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.o
<redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.c: In function ‘led_ioctl’:
<redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.c:289:68: error: macro "access_ok" passed 3 arguments, but takes just 2
   err = !access_ok(VERIFY_WRITE, (void __user *)arg, _IOC_SIZE(cmd));
                                                                    ^
<redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.c:289:10: error: ‘access_ok’ undeclared (first use in this function)
   err = !access_ok(VERIFY_WRITE, (void __user *)arg, _IOC_SIZE(cmd));
          ^~~~~~~~~
<redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.c:289:10: note: each undeclared identifier is reported only once for each function it appears in
<redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.c:291:68: error: macro "access_ok" passed 3 arguments, but takes just 2
   err =  !access_ok(VERIFY_READ, (void __user *)arg, _IOC_SIZE(cmd));
                                                                    ^
make[2]: *** [scripts/Makefile.build:279: <redacted>/rpi_rgb_ledmatrix-kerneldriver/leddrvr.o] Error 1
make[1]: *** [Makefile:1804: <redacted>/rpi_rgb_ledmatrix-kerneldriver] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.10.17+'
make: *** [Makefile:13: all] Error 2