Update meta-netmodule-bsp to the latest version available on gitlab. Signed-off-by: Stefan Eichenberger <eichest@gmail.com> |
||
|---|---|---|
| bitbake@017a39ed05 | ||
| build/conf | ||
| meta-netmodule-bsp@4942ea911b | ||
| meta-netmodule-distro@719b0a2fde | ||
| meta-netmodule-wlan@ab04a2ac66 | ||
| meta-openembedded@c1a5068322 | ||
| meta-updater@5d49b28570 | ||
| openembedded-core@2cc9e06807 | ||
| .gitignore | ||
| .gitmodules | ||
| README.md | ||
| env.common | ||
| env.image | ||
| env.image-minimal | ||
| env.image-ostree | ||
| machine_select | ||
README.md
NetModule OEM Linux
The purpose of this repository is to provide a base or a template for customers to build their own distribution based on the NetModule OEM Linux distribution.
The submodules and source revisions are frozen to match the latest release.
Initial steps
Before building anything, it is required to get all the submodules. This is done with the following commands:
git submodule init
git submodule update
Copy PFE firmware
Please make sure that you copy the PFE firmware with the right version meta-netmodule-bsp/recipes-kernel/pfe/pfe_ to meta-netmodule-bsp/recipes-kernel/pfe/pfe/. You need to copy the class and util firmware files. This is necessary because the firmware is currently only available under NDA.
Selecting hardware target
The hardware target can be selected by sourcing the machine_select script:
source machine_select
9 # Selecting ProCV2.2
Building an image
This distribution provides three images:
- The minimal image
- The "release" image
- The development image
The minimal image
It is a initramfs image which can be loaded from the bootloader. It gives access to basic linux functionalities and allows to flash other images.
It can be built with the following commands:
source env.image-minimal
bitbake virtual/netmodule-image
The "release" image
This is the default image providing all functionalities of the system.
It can be build with the following commands:
source env.image-ostree
bitbake netmodule-linux-image
The development image
This is the default image extended with development and debugging tools.
It can be build with the following commands:
source env.image-ostree
bitbake netmodule-linux-image-dev
Usage
1000BaseT1
The PFE driver comes up automatically. However, it does by default rely on autoneg. This doesn't seem to work with the Göpel Media Converter EasyCON. Therefore, a reset is required. Currently pfe0 shares the reset signal with eth0. That's why the following works:
brginup.sh enable-pfe
ifconfig eth0 down
ifconfig eth0 up
Now the 1000BaseT1 PHY works in default mode.
Modem
The modem is disabled by default. However, it is possible to enable it with the following command:
bringup.sh enable-modem
To use adb you have to do the following:
echo 0x2c7c >> ~/.android/adb_usb.ini
adb shell
Wifi
Enable the Wifi module (make sure you enable the modem first):
bringup.sh enable-wifi
ADCs
Read out the SPI ADCs:
bringup.sh read-adc
IMU
To enable the IMU you can call enable-imu.sh:
bringup.sh enable-imu.sh
To communicate with the imu you can use test-imu.sh:
# Read/Write
bringup.sh read-write-imu /dev/spidev1.0 1 2020
# Read
bringup.sh read-write-imu /dev/spidev1.0 1
Secure Element
To enable the secure elelment call enable-secure-element:
bringup.sh enable-secure-element
There is no helper for the secure element available yet. You can use spidev_test to communicate with it:
spidev_test --help
V2X
Enable the V2X and load a firmware (make sure you enable the modem first):
bringup.sh enable-v2x <path to fw>
GPIOS
Set gpio:
bringup.sh set-gpio <gpio> <value>
Get gpio:
bringup.sh get-gpio <gpio>