DKMS package available for Up specific hardware features?

Options
kveroneau
kveroneau New Member Posts: 2

I am currently using a pure Debian Stretch kernel on my Up Board squared. It has been running really smoothly with KDE Plasma Desktop, and using it as my daily Linux workstation. However, the main reason why I wanted to use this as my main Linux workstation was to take advantage of the Raspberry Pi GPIO connector. However, the mainline Linux kernel modules are unable to enable access to the GPIOs, and as I am reading on the wiki, the only way to get this working on a non-Ubilinux install is to compile a new kernel. In modern Linux, I thought we were past the point where we needed to compile a completely new kernel to support third party modules and hardware. Most, if not all hardware manufacturers these days that support Linux, use the module system. They provide either the a source blob which you compile using your local kernel headers, or in most cases use DKMS which fully automates the installation of third party modules into your kernel. Debian will even manage the recompile of said DKMS modules when the official kernel is updated.

So my question here is, does Up provide the module sources for the GPIO modules needed in a seperate source tree which can then be compiled against any kernel headers and loaded in with ease? I'd rather not compile a full kernel from scratch, as this means that I will need to manage the kernel entirely myself when it comes to security patches and such. This is the job of the distribution to ensure that my kernel is fully patched, not mine. I'd rather just compile the individual kernel modules myself to use with my official kernel of course from my distribution. Does Up provide this, or can Up in the near future provide this?

Answers

  • ccalde
    ccalde New Member Posts: 348 ✭✭✭
    Options

    Hi @kveroneau ,

    There is a RPI library used for UP board:
    https://pypi.org/project/RPi.GPIO/
    RPi.GPIO for UP is already installed by default with ubilinux:
    https://wiki.up-community.org/RPi.GPIO
    More info here:
    https://sourceforge.net/p/raspberry-gpio-python/wiki/Home/

    I hope that could resolve your question.
    Cheers!

  • eduncan911
    eduncan911 Administrator, Moderator Posts: 157 admin
    edited October 2018
    Options

    @kveroneau said:
    I am currently using a pure Debian Stretch kernel on my Up Board squared. It has been running really smoothly with KDE Plasma Desktop, and using it as my daily Linux workstation. However, the main reason why I wanted to use this as my main Linux workstation was to take advantage of the Raspberry Pi GPIO connector. However, the mainline Linux kernel modules are unable to enable access to the GPIOs, and as I am reading on the wiki, the only way to get this working on a non-Ubilinux install is to compile a new kernel. In modern Linux, I thought we were past the point where we needed to compile a completely new kernel to support third party modules and hardware. Most, if not all hardware manufacturers these days that support Linux, use the module system. They provide either the a source blob which you compile using your local kernel headers, or in most cases use DKMS which fully automates the installation of third party modules into your kernel. Debian will even manage the recompile of said DKMS modules when the official kernel is updated.

    So my question here is, does Up provide the module sources for the GPIO modules needed in a seperate source tree which can then be compiled against any kernel headers and loaded in with ease? I'd rather not compile a full kernel from scratch, as this means that I will need to manage the kernel entirely myself when it comes to security patches and such. This is the job of the distribution to ensure that my kernel is fully patched, not mine. I'd rather just compile the individual kernel modules myself to use with my official kernel of course from my distribution. Does Up provide this, or can Up in the near future provide this?

    There is a PPA for Ubuntu 16.04 LTS with a special kernel already built:

    https://wiki.up-community.org/Ubuntu#Install_Ubuntu_kernel_for_UP_from_PPA

    This is what the Up Squared kits all use for their IoT, AI Vision and other UP kits since they ship with Ubuntu 16.04 LTS.

    Once I complete some my Windows testing I can switch back to Linux. In the meantime, see if the PPA enables it for you with the UP kernel provided.

    That is, if you are willing to switch to Ubuntu from Debian since I don't think PPAs work on Debian. Btw, Ubuntu got rid of their Unity UI with 17.10 and 18.04. back to Gnome, which you can skip. If it was me, I would just use the server ISO package that does not have a GUI - then install KDE ontop of that. That's basically what u do with Arch, and you configure everything yourself the way you want it.

    Under Arch Linux, the community only provides older LTS kernels with UP mods. My priority would be for Arch and then Ubuntu.

    Eric Duncan - UP Evangelist - My thoughts are of my own free will

    Answered? Please remember to mark the posted answered to highlight it for future visitors!