Skip to content

SEMA EC Installation Guide for Linux

Kothandaraman Kannadansan edited this page Apr 2, 2024 · 1 revision

1. Installing build-essential packages

Install build-essential packages and download and compile SEMA-EC source code by executing the following commands in the terminal.

$ sudo apt-get update && sudo apt upgrade

$ sudo apt-get install build-essential git hexer i2c-tools

$ sudo apt-get install uuid-dev

Note: For Ubuntu kernel versions greater than 6.5.0-18-generic (like Ubuntu 22.04.04), gcc-12 needs to be manually installed. To install gcc-12, execute the following command.

$ sudo apt-get install gcc-12

2. Cloning and compiling the SEMA EC

Clone the SEMA source code from the ADLINK GitHub.

$ git clone https://github.com/ADLINK/sema-linux.git -b sema-ec

Go to the cloned source code directory

$ cd sema-linux

Execute the command to compile and install the SEMA EC. You could see some warning messages during the compilation, so omit them.

$ sudo make

Stay in the same directory, and you can install the SEMA EC.

$ sudo make install

3. Probing the kernel modules

After installing the SEMA, you need to probe the required kernel modules.

$ sudo modprobe -a adl-ec adl-ec-boardinfo adl-ec-vm adl-ec-wdt adl-ec-hwmon adl-ec-nvmem adl-ec-bklight adl-ec-i2c adl-ec-gpio adl-ec-nvmem-sec

4. Installation path

The installation will be on your board in the following path.

File Description
libsema.so EAPI library is located under /usr/lib/
semautil SEMA command line utility is located under /usr/bin/
SEMA modules SEMA driver modules are located under /usr/bin/
Clone this wiki locally