cariboulabs / cariboulite

CaribouLite turns any 40-pin Raspberry-Pi into a Tx/Rx 6GHz SDR
1.06k stars 96 forks source link

Update smi_stream_dev.c #176

Open unixpunk opened 5 months ago

unixpunk commented 5 months ago

This fixes building on DragonOS_Pi64 - not sure if it breaks other OSes or not, though.

/home/ubuntu/cariboulite/driver/build/smi_stream_dev.c:1319:28: error: too many arguments to function ‘class_create’ 1319 | smi_stream_class = class_create(THIS_MODULE, DEVICE_NAME);

alphafox02 commented 5 months ago

To confirm, this resolved the issue building CaribouLite on the latest DragonOS Pi64 (22.04 Ubuntu) after it switched to the 6.5 kernel for Pi5 support. I haven’t tested running the hat on a pi5 but it did run fine on the Pi4. I’ll add to DragonOS when I get a chance..

unixpunk commented 5 months ago

i had run through this on my pi4, then i swapped the hat and sd card to the pi5 and it all worked just the same.

unixpunk commented 5 months ago

hm but now im having an issue doing it from scratch on the pi 5, i can't get /dev/gpiomem to exist, there are only 0-4 variants, unlike my pi 4. will investigate/compare things later to see what's going on.

alphafox02 commented 5 months ago

That’s strange so doing it from scratch on Pi4 is okay, transferring sd to pi5 is okay, but then you can’t do it from scratch? I swear in my case I did it from scratch on Pi5 but moved sd to the 4. I’ll do it all again asap.

unixpunk commented 5 months ago

@alphafox02 so it looks like the gpiomem interface was changed and this will require a change above my head here to get it working. i found someone saying that the 40-pin header was part of /dev/gpiomem4, but creating a symlink from gpiomem to gpiomem4 and running SoapySDRUtil caused the system to freeze up instantly. that's the only quick guess i had on this. pi 5 support may not be here yet, but at least you can build with the new kernel on a pi 4.

alphafox02 commented 5 months ago

Did you check out the patch-1 branch?

unixpunk commented 5 months ago

all i know is it doesn't compile for me on ubuntu/dragonos unless i edit the file and remove "THIS_MODULE, ". Not sure if you're using latest 6.5 kernel yet or what you're working on there, but my experience is the opposite of yours...

ImDroided commented 5 months ago

I can confirm that I was able to build with this mod on a Pi 5 with Ubuntu/DragonOS but get the same GPIOMEM error. Would not compile without.