cancel
Showing results for 
Search instead for 
Did you mean: 

Drivers & Software

w35l3y
Journeyman III

AMD RAID driver B350 for linux fedora

hello, i have no experience in programing, and i think it is needed to fix this thing, i am trying to install raid drivers on fedora for 3 days and i did compiled a kernel following the instructions in this blog and after all i have problems in the make thing, when i go inside ~/driver_sdk/src/ and execute the $sudo make, it give the error:

------------------------------------------------------------
- building for kernel 5.2.5-201.raid.fc30.x86_64
------------------------------------------------------------
make -C /lib/modules/5.2.5-201.raid.fc30.x86_64/build SUBDIRS=/home/wesley/driver_sdk/src modules
make[1]: Entering directory '/usr/src/kernels/5.2.5-201.raid.fc30.x86_64'
Makefile:213: ================= WARNING ================
Makefile:214: 'SUBDIRS' will be removed after Linux 5.3
Makefile:215: Please use 'M=' or 'KBUILD_EXTMOD' instead
Makefile:216: ==========================================
  CC   /home/wesley/driver_sdk/src/rc_init.o
In file included from /home/wesley/driver_sdk/src/rc.h:98,
                 from /home/wesley/driver_sdk/src/rc_init.c:39:
/home/wesley/driver_sdk/src/rc_adapter.h:43: warning: "SECTOR_SIZE" re-definido
   43 | #define SECTOR_SIZE         512
      |
In file included from /home/wesley/driver_sdk/src/rc.h:40,
                 from /home/wesley/driver_sdk/src/rc_init.c:39:
./include/linux/blkdev.h:895: note: essa é a localização da definição anterior
  895 | #define SECTOR_SIZE (1 << SECTOR_SHIFT)
      |
/home/wesley/driver_sdk/src/rc_init.c:332:29: error: initialization of ‘int (*)(struct scsi_device *, unsigned int,  void *)’ from incompatible pointer type ‘int (*)(struct scsi_device *, int,  void *)’ [-Werror=incompatible-pointer-types]
  332 |  .ioctl =                   rc_ioctl,
      |                             ^~~~~~~~
/home/wesley/driver_sdk/src/rc_init.c:332:29: note: (near initialization for ‘driver_template.ioctl’)
/home/wesley/driver_sdk/src/rc_init.c:346:3: error: ‘Scsi_Host_Template’ {aka ‘struct scsi_host_template’} has no member named ‘use_clustering’
  346 |  .use_clustering =          ENABLE_CLUSTERING,
      |   ^~~~~~~~~~~~~~
/home/wesley/driver_sdk/src/rc_init.c:346:29: error: ‘ENABLE_CLUSTERING’ undeclared here (not in a function)
  346 |  .use_clustering =          ENABLE_CLUSTERING,
      |                             ^~~~~~~~~~~~~~~~~
/home/wesley/driver_sdk/src/rc_init.c: In function ‘rc_timeout_done’:
/home/wesley/driver_sdk/src/rc_init.c:2392:2: error: implicit declaration of function ‘init_timer’; did you mean ‘init_timers’? [-Werror=implicit-function-declaration]
 2392 |  init_timer(&state->rc_timeout);
      |  ^~~~~~~~~~
      |  init_timers
/home/wesley/driver_sdk/src/rc_init.c: In function ‘rc_timeout’:
/home/wesley/driver_sdk/src/rc_init.c:2408:19: error: ‘struct timer_list’ has no member named ‘data’
 2408 |  state->rc_timeout.data = (unsigned long)state;
      |                   ^
/home/wesley/driver_sdk/src/rc_init.c:2409:29: error: assignment to ‘void (*)(struct timer_list *)’ from incompatible pointer type ‘void (*)(long unsigned int)’ [-Werror=incompatible-pointer-types]
 2409 |  state->rc_timeout.function = rc_timeout_done;
      |                             ^
/home/wesley/driver_sdk/src/rc_init.c: In function ‘rcraid_resume_one’:
/home/wesley/driver_sdk/src/rc_init.c:1096:9: warning: ignoring return value of ‘pci_enable_device’, declared with attribute warn_unused_result [-Wunused-result]
 1096 |         pci_enable_device(adapter->pdev);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/wesley/driver_sdk/src/rc_init.c:1121:5: warning: ignoring return value of ‘pcim_enable_device’, declared with attribute warn_unused_result [-Wunused-result]
 1121 |     pcim_enable_device(pdev);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:279: /home/wesley/driver_sdk/src/rc_init.o] Error 1
make[1]: *** [Makefile:1600: _module_/home/wesley/driver_sdk/src] Error 2
make[1]: Leaving directory '/usr/src/kernels/5.2.5-201.raid.fc30.x86_64'
make: *** [Makefile:60: all] Error 2

may anyone help me here?

0 Likes
2 Replies
w35l3y
Journeyman III

ok, the problem was becouse my kernel had debug mode on, i compiled onle with no debug and everything is working fine now...

0 Likes
marvmartian
Journeyman III

This may help someone else.  The below patch got it working with a few small tweaks on Ubuntu 20.04.

https://aur.archlinux.org/cgit/aur.git/plain/linux-4.15.patch?h=rcraid-dkms 

And in the Makefile:

- $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules

+ $(MAKE) -C $(KDIR) M=$(PWD) modules

0 Likes