Skip to content

Commit

Permalink
Create Contrib area and add the ce-oem provider in it (New) (canonic…
Browse files Browse the repository at this point in the history
…al#932)

* Initial commit

* Migrate ARM generic jobs from launchpad

* Initial commit

* Clean up this repo, and up it to date.

* Change: job id for cpu cases

* Change: id of rpmsg

* Add: manage.py

Since we need this repo as a provider

* Change: separate jobs into generic and non-generic

* Add: checkbox-provider-arm folder

Following the structure of checkbox

* Change: the access of tool not created by us

To prevent those tools been packaged into checkbox

* Add: test plan for ARM generic jobs

* Change: test method for NPU TensorFlow

Change the test method by using test snap build by Isaac

* Change: MTD test method

Since we don't have reliable way to indentify the type of MTD.

* Change: test method for buzzer

Change the test method for buzzer that probe as an input PC speaker

* Change: chunkfs test method

* Add: dump DTB file

* Add: manifest for the jobs

* Add: rs485 remote test

* Remove: non-generic jobs

Since we need to move generic parts to github

Co-authored-by: Nara Huang <nara.huang@canonical.com>

* Add snapcraft yaml for uc20 (canonical#2)

* Add: snapcraft.yaml for uc20

* Add: README.md

* Fix: export PYTHONPATH in override-build section

* Add: libc6-dev for build-packages of input-pcspkr

Since snapcraft7.x will need extra lib from libc6-dev

* Fix cpu and device tree cases (canonical#3)

* Fix: cpu offlining test

* Change: requires of cpu offlineing test

* Add: stage-package linuxptp

* Fix: test plan for dtb

* Add eeprom test and change name of the provider (canonical#6)

* Add: eeprom test cases

* Change: provider name from arm to ce-oem

* Change name space and README.md (canonical#9)

* Change: name space

* Change: README.md

* Fix: wording of checkbox interface snap

* Remove: snapcraft.yaml (canonical#8)

* Add: led generic test (canonical#7)

* Add: support cold reboot tests by pdu (canonical#10)

* Add: support cold reboot tests by pdu

add cold reboot tests by network PDU for those system which not able to
wakeup by rtc

* Fix: fix bugs

add following changes in this commit
- check supported pdu type inside of main function
- sync data after dump device information
- correct command for init-boot-loop-data job

* Fix: fix bug

- fix the error reported by shellcheck

* Change prefixes (canonical#11)

* Change: prefixes for plans and jobs

* Change: rename test plan and add PDU related plan

* Change: name of category

* Fix: missing prefixes of serial test job and plan

* Add: informations about used config in readme (canonical#13)

* Change: sysfs led method (canonical#12)

* Fix: rtc wakealarm checking to right attribute (canonical#14)

* Fix: remove ce-oem-power-automated-by-pdu

Remove the ce-oem-power-automated-by-pdu from the ce-oem-automated
The ce-oem-power-automated-by-pud will always be executed even the user
not intend to reboot the DUT by PDU. And the checkbox session will stuck
after send out a snmpset command.

So remove this test first, and we need to integrate the cold boot
related tests to PPC to support cold reboot test for those DUT which not
able to wake up by rtc.

* Add: add a generic iot test plans

Adding a generic IoT test plans, it's a full testing set include tests
in certification test plan and ce-oem-generic test plan

* Improve the MTD script

Before doing the read and write testing of specific mtd partition,
we need to know the MTD is read-only or writable, therefore, a new
variable called is_mtd_writable to help us to know it.

If this mtd is read-only, I only read its content to a file.

If this mtd is writable, backup the its original content to a file,
then do the compare procedure, finally, recover its content.

* Add: CAAM related test (canonical#21)

* Add: CAAM related test

* Add: generic crypto test

* Fix naming with ce-oem

* Add: add digital-io tests (canonical#24)

* Add: add digital-io tests

add digital-io tests

* Fix: fixed scripts and test plan

- fixed the format string style
- fixed the typo in docstring
- fixed the variable type for TEST_STATES
- remove useless test jobs

* Fix: fixed typo

fixed typo

* Add: add readme (canonical#23)

* Fix: updated README.md

add a section about how to use checkbox-ce-oem as a checkbox launcher

* Fix: updated the installation steps

updated the installation steps for Ubuntu classic and Ubuntu core

* fix: fixed typo

fixed typo

* Fix: updated digital-io tests (canonical#25)

- corrected digital-io tests in post-suspend stage
- import manifest job

* Add: cpufreq governors test for 6 governors (canonical#19)

* Add: cpufreq governors test for 6 governors

Add a resource job to check system supported governors,
and test jobs for all 6 governors. These tests are only
applicable to the platform using acpi_cpufreq related drivers.
Newer intel CPU using intel_pstate driver is NOT applicable.

* Fix: typo and apply suggestions

* Remove: ce-oem-cpu/offlining_test from the plan

Since there is already a fix for cpu/offlining_test in checkbox
base provider, this ce-oem-cpu/offlining_test is no longer required.
canonical#522

* Modify CAAM and installation time related jobs. (canonical#26)

* Modify: modify hwrng and caam algo check to require manifest

* Add: requires for installation related jobs

Make those jobs run only in ubuntu core

* Fix: revert summary section for snapd_installation_time

The previous commit accidentally removed the section

* Fix script for pep8 check (canonical#27)

* Remove: test job/script that not in use.

Since we have new script for cpu freq governors.

And also cpu_offline test has been updated in base provider.

* Fix: python script to fit flake8

* Fix: manifest shouldn't place in resource job

Move the manifest to test job.
To prevent manifest being executed at bootstrap stage.

* Add code check by tox just like checkbox did (canonical#28)

* Add code check by tox just like checkbox did

This commit following what checkbox did, and add pep8-naming check for
python 3.8+.

* Change the fork checkbox git repo url to offical one

* Fix tox test environment error (canonical#32)

* Fix tox test environment error

Each tox test environment won't be reseted, therefore removing all
providers before test is needed. After checking with checkbox repo,
checkbox-ng has to use different install method to install.

* Follow checkbox repo to update pyYAML version to 6.0.1 for python 3.10+
to solve tox issue

* Fix for shellcheck (canonical#29)

* Fix: shell scrip to fit shellcheck

* Fix: audio jobs to fit shellcheck

* Fix: caam jobs to fit shellcheck

* Fix: device jobs to fit shellcheck

* Fix: digital-io jobs to fit shellcheck

* Change: nested EEPROM test from checkbox base

Since EEPROM jobs merged back to the base provider already.

* Fix: power-manager jobs to fit shellcheck

* Change: nested RTC test from checkbox base

Since RTC jobs merged back to the base provider already.

* Fix: stress jobs to fit shellcheck

* Fix: theraml-sensor jobs to fit shellcheck

* Fix: Nested plan to ce-oem

Follow the structure as a client-cert plan

* Add multiple usb otg test (canonical#33)

* Remove: OTG related jobs

Those OTG jobs have been migrated back to base provider.

* Add: multiple OTG test

* Add: readme.md

* Refactor cpufreq governor test (canonical#36)

* Change: refactor cpufreq governor test

CQT-2906
The original tests did not handle the following 2 conditions:
1. CPUfreq scaling driver not found (no files under cpufreq folder)
2. On ARM device, system using multiple policies to handle different
   CPUs group

This commit refactor the tests to make them policies-based tests.
Also adding a driver detect job that can be use on all platforms.

* Add optee test (canonical#34)

* Add: optee test

* Add: README.md

* Include led test from base (canonical#35)

* Add: nested led job from checkbox-base

* Change: README.md for led

* Change: PTP command (canonical#37)

* Change: PTP command

lp:2030942, workaround for the current version of ptp4l

* Fix: apply musical scales for pwm buzzer test (canonical#40)

* Fix: apply musical scales for pwm buzzer test

apply musical scales for pwm buzzer test

* Fix: added description for test_pwm_buzzer func

added description for test_pwm_buzzer function

* Fix: add touchscreen tests (canonical#39)

* Fix: add touchscreen tests

validate the required touch events for touchscreen
also add new test to cover maximum fingers support on touchscreen

* Change: hardware PTP support keywords

For PTP capabilities, ethtool v5.4 (on Ubuntu 20.04) shows
`hardware-transmit     (SOF_TIMESTAMPING_TX_HARDWARE)`
But ethtool v5.16 (on Ubuntu 22.04) only shows
`hardware-transmit`

The test case was using `SOF_TIMESTAMPING_TX_HARDWARE` as keywords,
This commit changes it to use `hardware-transmit` for adapting new
version of ethtool.

* Remove: nested ptp-manual test plans

The current manual test job steps are duplicated with the auto test job.
Currently we only need to run the auto test job.
The manual test steps here is used as a reference.
If there are new jobs in th future, the ptp-manual test plan can be
nested back.

* Add: LD_PATH information in readme.md (canonical#41)

* Change: additional patterns to map UDC and USB node (canonical#42)

* Change: additional patterns to map UDC and USB node

* Fix: the if else logic for map UDC

* Fix: include python3-systemd in tox.ini (canonical#48)

include the python3-systemd package in tox.ini

* Fix: updated the related packages for tox (canonical#50)

updated the related packages for tox

* Fix: nested plan for server manual (canonical#44)

* Fix: nested plan for server manual

* Fix: errors when mtd count is 0 (canonical#55)

* Fix: errors when mtd count is 0

* Add shellcheck ignore 2126

* Add: rpmsg tests for i.MX and TI processors (canonical#46)

* Fix: updated the related packages for tox

updated the related packages for tox

* Add: rpmsg tests for i.MX and TI processors

adding rpmsg tests for i.MX and TI processors

* Fix: updated rpmsg_tests.py scripts

updated rpmsg_tests.py scripts

* Fix: fixed bugs

fixed bugs

* Modify optee test run out of gadget (canonical#45)

* Add: support outsourcing optee-test

* 230921 crypto test (canonical#52)

* Fix: updated the related packages for tox

updated the related packages for tox

* Fix: update the crypto tests

seperate the crypto tests to the generic crypto tests and crypto
accelerator tests

* Fix: bypass if failed to set extra seed

the extra seed might not be supported for all platform

* Fix: fixed bugs

fixed bugs

* Fix: refactor check_crypto_driver_priority func

refactor check_crypto_driver_priority function

* Fix: mock systemd-python package and remove packages in tox

mock systemd-python package and remove packages in tox

* Revamp otg_ports resource job should not fail (canonical#53)

* Revamp otg_ports resource job should not fail

Add a if condition to handle when the OTG config variable is not set.

* Revise the echo string

* Add: cupfreq module probe (canonical#51)

* Add: cupfreq module probe

* Check hwrng test (canonical#57)

* Modify hwrng test more flexible

* Add README.md

* Make ce-oem-info jobs be attachment jobs (canonical#58)

ce-oem-info jobs are aimed at collecting the system bootup information from
snapd and cloud-init to help developers analyze bugs. Therefore, these
jobs are more suitable to be attachment jobs and should not fail even
if some information can not be found. For example, some systems may not have
cloud-init. In these systems, the job cannot gather the information from
cloud-init, but this should not be a failure.

* Modify the device tree dump job (canonical#59)

The current ce-oem-device-tree/dump job does not match the resource job
format and will show warnings when running it. The original plan is to
parse this job to match the resource format to let any other jobs able
to get the dts info conveniently.

As parse the dts to resource job format is a huge work, and will not be
done in the near future. This commit excludes the ce-oem-device-tree/dump
job from the test plan and add comments to explain the purpose.

Also keep the attachment job to make sure we could get the device tree
information when checking the report.

* Revamp caam_hwrng_test by looping w/ smaller size (canonical#60)

Some of the project devices' caam_hwrng have buffer, so previously the
dd size is increased to 10M to exceed the buffer size to make the
interrupt increase. It will make the device without buffer take
a very long time (over 30 mins) to do the dd command.

Therefore, this commit separated the size to 512K and looped it 20 times.
On the device without buffer it could do 512K and detect the increased
interrupt to get the pass result, which is much faster.
On the device with buttfer it could also exceed the buffer by dd 20
times and detect the increased interrupt to get the pass result.

* Fix the nested crypto test plan name (canonical#61)

Previously the caam test plan was revamped to accelerator test plan, but
forgot to update the name nested in ce-oem-automated. Fix the name in
this commit.

* Add: new socketcan stress test (canonical#62)

* Add: new socketcan tests

add new socketcan stress test (100000 loop echo test)
add bus-off test and fixed bug

* Add: include new socketcan tests (canonical#63)

include new socketecan test plan into ce-oem test plans

* Add ubuntu-frame and glmark2 tests (canonical#64)

* Add ubuntu-frame and glmark2 tests

* Modify the way checking ubuntu-frame active

* Modify: Add more details in README

* Add: implement the RPMSG-tty tests

implement the RPMSG-tty tests for i.MX series

* Fix: update tox configuration

update tox configuration to perform tests with specific Python version

* Add: check VPU device tests (canonical#68)

* Add: check VPU device tests

adding new test cases about identify VPU devices

* Fix: fixed the issues from comments

fixed the issues from comments

* Fix: bug fixed

bug fixed

* Fix: fixed issues

fixed issues

* Fix: refactor the thermal tests (canonical#69)

* Fix: refactor the thermal tests

refactor the thermal tests

* Fix: correct the argument name in socketcan_test (canonical#71)

corrected the argument name in socketcan_test.py

* Add dbus reboot stress (canonical#70)

* Add script for installing test snap and connect interfaces

* Add reboot via dbus command

This test is for snap strict confinement mode

* Add tcp test (canonical#65)

* Add TCP test

* Move ce-oem README inside the provider directory

* Change the ce-oem provider namespace to the contrib namespace

* Add README for the contrib area

* Remove .gitignore from contrib/

Artefact left from the ce-oem provider migration

---------

Co-authored-by: stanley31huang <stanley.huang@canonical.com>
Co-authored-by: rickwu666666 <98441647+rickwu666666@users.noreply.github.com>
Co-authored-by: Nara Huang <nara.huang@canonical.com>
Co-authored-by: rickwu4444 <rick.wu@canonical.com>
Co-authored-by: baconyao <patrick.chang@canonical.com>
Co-authored-by: liaou3 <vincent.liao@canonical.com>
Co-authored-by: patliuu <111331153+patliuu@users.noreply.github.com>
Co-authored-by: Patrick Liu <patrick.liu@canonical.com>
Co-authored-by: hanhsuan <32028620+hanhsuan@users.noreply.github.com>
  • Loading branch information
10 people committed Mar 20, 2024
1 parent 6164fe8 commit 9192322
Show file tree
Hide file tree
Showing 136 changed files with 11,295 additions and 0 deletions.
35 changes: 35 additions & 0 deletions contrib/.github/workflows/tox.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Test checkbox-provider-ce-oem with tox

on:
push:
pull_request:
branches: [ main ]
paths:
- checkbox-provider-ce-oem/**
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-20.04
strategy:
matrix:
python: ["3.5", "3.6", "3.8", "3.10"]
steps:
- uses: actions/checkout@v3
- name: install stable checkbox and checkbox-provider-ce-oem
run: |
cd ~
git clone --depth=1 https://github.com/canonical/checkbox.git
cd -
cp -r checkbox-provider-ce-oem ~/checkbox/providers
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
- name: Install tox and otehr dependencies
run: |
python3 -m pip install --upgrade pip
pip3 install tox
- name: Run tox
working-directory: /home/runner/checkbox/providers/checkbox-provider-ce-oem/
run: tox -e py${{ matrix.python }}
99 changes: 99 additions & 0 deletions contrib/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Contrib Area

## Introduction

This directory, called the “Contrib Area”, contains ongoing projects
(usually Checkbox providers) created and maintained by other teams. These
projects contain executable tests that can in principle be shared publicly,
to expand the certification and regression test coverage across all the
devices in the certification lab.

Each project in the Contrib Area is owned by their original team. These team
can keep contributing to the project by submitting, reviewing and merging PRs.
The Certification team can then adapt (if required, in order to make sure
the tests comply with quality standards set for the Checkbox project) and
move the tests in these projects into the generic providers to make them
part of the Checkbox releases.

## Content of a project directory

In general, it is expected that a project directory is a [Checkbox provider].

Any text content (test scripts, Checkbox jobs, etc.) aimed at being integrated
into the generic Checkbox providers is added to a project directory. Binary
content (sample image data or similar) have to be added using git-lfs. Binary
executable files are not allowed in the monorepo; instead, the source files
to generate these binaries must be provided so they can be compiled against
any architecture Checkbox supports.

For each project directory:

- A GitHub team within the Canonical organization is created with contributors
to this project.
- A matching [CODEOWNERS] section is created so that any modification in
the project directory can be reviewed by the appropriate people or teams.
- If the project directory is a Checkbox provider, its namespace should include
the word “contrib” to show it is not to be used by the Certification
team for testing. In practice, it means editing the namespace information
in the provider’s `manage.py` file, for instance:

```python
#!/usr/bin/env python3
from plainbox.provider_manager import setup, N_

setup(
name="checkbox-provider-sanity",
namespace="com.canonical.contrib",
version="1.0",
description=N_("Provider for the sanity project"),
gettext_domain="checkbox-provider-sanity",
)
```

In order to be integrated into the generic providers, the content in a
contrib project directory must comply with the following:

- It cannot contain sensitive information, such as the name of the customer the
content was originally developed for, credentials, or cryptographic secrets.
- Source code must be compatible with the license used by Checkbox ([GNU
GPL 3.0]).
- Copyright information must be stated in the header of the files.
- Canonical and Ubuntu Code of Conduct including inclusive language initiative.


## Continuous integration (CI), continuous deployment (CD), quality and support

Projects in the contrib section of the Checkbox repository will be submitted
to the following CI checks:

- Make sure the provider is valid (by running ./manage.py validate).
- Run code coverage metrics for the scripts present in the provider (in the
bin/ directory). These metrics are for reference only and are not preventing
anything added to the contrib area from being integrated to the main branch.
- Tox run of tests for every python version we support, still non-binding
for landing things.

A GitHub Action can be created for each provider in the contrib area to
automatically trigger builds (for example, if a provider requires a new Debian
package or a Snap package to be built after changes are introduced). These
GitHub Actions are created by the Certification team and maintained afterwards
by the team in charge of the provider (using `CODEOWNERS`), based on the
work already done by the team in charge of the provider (if any).

Certification team is responsible for making the required modifications to
comply with Checkbox quality standards, as defined in [Checkbox contributing
guide], prior to inclusion of their tests into the generic providers (for
instance on moving content from under contrib into locations in the repository
covered by additional quality checks).

In order to prepare for the integration into the Checkbox generic providers,
dedicated CI actions can be put in place in consultation with the contributing
team.

Certification team may request support from the original maintainers of
the tests.

[Checkbox provider]: https://checkbox.readthedocs.io/en/stable/reference/glossary.html#term-Provider
[CODEOWNERS]: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
[GNU GPL 3.0]: https://www.gnu.org/licenses/gpl-3.0.en.html
[Checkbox contributing guide]: ../CONTRIBUTING.md
159 changes: 159 additions & 0 deletions contrib/checkbox-provider-ce-oem/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
# checkbox-provider-ce-oem
This is a checkbox provider for both IoT and PC devices. And it will be built as SNAP named *checkbox-ce-oem*.
You can define specific plugs to connect to it and start using the test jobs and plans included in checkbox-provider-ce-oem.

# Use it as checkbox launcher
## Install required packages

### On Ubuntu classic environment (server and desktop)
```
# Install the generic checkbox content provider based on Ubuntu 22.04
$ sudo snap install checkbox22
$ sudo snap install checkbox-ce-oem --channel=22.04/edge --classic
```

### On Ubuntu Core environment
```
$ sudo snap install checkbox22
$ sudo snap install checkbox-ce-oem --channel=latest/stable --devmode
$ sudo snap connect checkbox-ce-oem:checkbox-runtime checkbox22:checkbox-runtime
$ sudo snap connect checkbox-ce-oem:provider-certification-client checkbox22:provider-certification-client
$ sudo snap connect checkbox-ce-oem:provider-checkbox checkbox22:provider-checkbox
$ sudo snap connect checkbox-ce-oem:provider-resource checkbox22:provider-resource
$ sudo snap connect checkbox-ce-oem:provider-tpm2 checkbox22:provider-tpm2
```

## Modify the checkbox configuration to fit your test environment
```
# show the checkbox configuration
$ sudo checkbox-ce-oem.configure -l
ALSADEVICE=hw:CARD=bytrt5660,DEV=0
MODEL_GRADE=signed
NET_DEVICE_INFO=ven_rsi_sdio ven_rsi_91x
OBEX_TARGET=00:02:72:C5:F9:1F
OPEN_AC_SSID=ubuntu-cert-ac-open
OPEN_BG_SSID=ubuntu-cert-bg-open
OPEN_N_SSID=ubuntu-cert-n-open
STRESS_BOOT_ITERATIONS=100
STRESS_BOOT_WAIT_DELAY=120
STRESS_BOOT_WAKEUP_DELAY=60
STRESS_S3_ITERATIONS=100
STRESS_S3_SLEEP_DELAY=60
STRESS_S3_WAIT_DELAY=120
STRESS_S4_ITERATIONS=100
STRESS_S4_SLEEP_DELAY=60
STRESS_S4_WAIT_DELAY=120
TEST_TARGET_IPERF=10.101.47.93
TPM2TOOLS_DEVICE_FILE=/dev/tpm0
TPM2TOOLS_TCTI_NAME=device
WATCHDOG_KERNEL_MOD=iTCO_wdt
WIFI_AP_SETUPTIME=30
WIFI_INTERFACE=mlan0
WPA_AC_PSK=insecure
WPA_AC_SSID=ubuntu-cert-ac-wpa
WPA_AX_PSK=insecure
WPA_AX_SSID=ubuntu-cert-ax-wpa
WPA_BG_PSK=insecure
WPA_BG_SSID=ubuntu-cert-bg-wpa
WPA_N_PSK=insecure
WPA_N_SSID=ubuntu-cert-n-wpa
WPA3_AX_PSK=insecure
WPA3_AX_SSID=ubuntu-cert-ax-wpa3
WWAN_APN=internet
WWAN_CONTROL_IF=ttyACM3
WWAN_NET_IF=ppp0
WWAN_SETUPTIME=30
# modify checkbox configuration
$ sudo checkbox-ce-oem.configure WIFI_AP_SETUPTIME=50
```

## Launch checkbox session
```
$ checkbox-ce-oem.test-runner
```

# Use it as checkbox content provider
## Getting started
checkbox-ce-oem will define a slot *provider-ce-oem* to allow checkbox interface sanp to connect to access the test jobs and plans.

## In checkbox interface snap
You have to modify two parts and rebuild your SNAP of checkbox interface snap.
### snapcraft.yaml
Add a plug into plugs section in *snapcraft.yaml* of your checkbox interface snap if you are testing on Core image.
```
example:
plugs:
provider-ce-oem:
interface: content
target: $SNAP/providers/checkbox-provider-ce-oem
```
### wrapper_local
Add export PATH for checkbox-ce-oem in *wrapper_local* of your checkbox interface snap.
```
example:
export PATH="$PATH:$SNAP/usr/bin:$SNAP/usr/sbin:$SNAP/sbin:/snap/bin:$SNAP/bin:/snap/checkbox-ce-oem/current/usr/bin/:/snap/checkbox-ce-oem/current/usr/sbin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/snap/checkbox-ce-oem/current/usr/lib/$ARCH
```
### After rebuild SNAP for checkbox interface snap
Install the SNAP of checkbox interface snap and checkbox-ce-oem. Connect slot and plug of *provider-ce-oem*.

`$ sudo snap connect checkbox:provider-ce-oem checkbox-ce-oem`

### Start to using test jobs and plans in checkbox-provider-ce-oem
Now, you are able to include the job, plan or utility from checkbox-provider-ce-oem.
```
example for running a job:
$ sudo checkbox{interface snap}.checkbox-cli run com.canonical.qa.ceoem::location/gps_coordinate
example for using utility:
$ sudo checkbox{interface snap}.shell
$ checkbox{interface snap}.shell> lsmtd
```
### Config informations
Some of the jobs that in provider-ce-oem requires addtional variables define in checkbox config. Please refer to following:

```
id: ce-oem-gpio-leds
GPIO_LEDS={name1}:{port1} {name2}:{port2} ...
e.g. GPIO_LEDS=dl1:488 dl2:489 dl44:507
id: ce-oem-sysfs-leds
SYS_LEDS={position1}:{path1} {position2}:{path2} ...
{path} under "/sys/class/leds/{path}"
e.g. SYS_LEDS=DL1:beat-yel-led DL2:shtdwn-grn-led
id: ce-oem-gpio-button-mapping
GPIO_BUTTONS={name1}:{port1} {name2}:{port2} ...
e.g. GPIO_BUTTONS=sys_restore:71 ip_addr:72 sys_discover:465
id: ce-oem-interrupts-button-mapping
INTERRUPTS_BUTTONS={name1} {name2} ...
Button {name} under "/proc/interrupts"
e.g. INTERRUPTS_BUTTONS=s1 s2
id: ce-oem-mtd/check-total-numbers
TOTAL_MTD_NUM = {numbers}
e.g. TOTAL_MTD_NUM=2
id: ce-oem-buzzer/input-pcspkr
BEEP_PATH={pc-speaker-path}
e.g. BEEP_PATH=/dev/input/event1
id: ce-oem-gpio-buzzer-mapping
GPIO_BUZZER=name1:port1:enable_value1 name2:port2:enable_value2 ...
e.g. GPIO_BUZZER=buzzer1:498:0
id: ce-oem-pwm-buzzer-mapping
PWM_BUZZER=name1:chip1:port1:enable_value1 name2:chip2:port2:enable_value2 ...
e.g. PWM_BUZZER=buzzer1:1:0:1
id: ce-oem-rtc/rtc_number
TOTAL_RTC_NUM={total-num-of-rtc}
e.g. TOTAL_RTC_NUM=2
id: ce-oem-serial/rs485-list
RS485_PORTS={port1} {port2}
e.g. RS485_PORTS=/dev/ttymxc1 /dev/ttymxc2
```

0 comments on commit 9192322

Please sign in to comment.