Open-source contributions

In addition to the design and development of the ERIKA Enterprise open-source RTOS, Evidence Srl has contributed to several open-source projects, including the Linux kernel, the Jailhouse hypervisor, ARM's LISA framework, U-Boot bootloader and SOEM EtherCAT stack.

Here is a list of the major contributions.


Linux kernel

 Besides the implementation of the original proposal of the SCHED_DEADLINE scheduler, Evidence has made the following contributions:

Git commit nb. Description
bb4e30a48045c9cc16c4efe447489542750397cc sched/deadline/Documentation: Add overrun signal and GRUB-PA documentation
e97a90f7069b740575bcb1dae86596e0484b8957 sched/cpufreq: Rate limits for SCHED_DEADLINE
e0367b12674bf4420870cd0237e3ebafb2ec9593 sched/deadline: Move CPU frequency selection triggering points*
d4edd662ac1657126df7ffd74a278958b133a77d sched/cpufreq: Use the DEADLINE utilization signal*
34be39305a77b8b1ec9f279163c7cdb6cc719b91 sched/deadline: Implement "runtime overrun signal" support*
5c0342ca7ef17220d8dd2da68d0d349c26ab19df sched/deadline: Fix the description of runtime accounting in the documentation
ccc9d651a7d26fec88d2375c4dd4e097cc0f8de7 sched/deadline: Add documentation about GRUB reclaiming
8fd27231c3302e0c7e1907df1252db97b65eb241 sched/deadline: Track the "total rq utilization" too*
7de962c0c79a810585eb323b90561b5923614ec8 cpufreq: Documentation: Updates based on current code*
b717727ef25d4b73f73e3666341c07a034f908a6 umc-bus.c: fix usage of device_trylock
4840ae17ba7e21f2932120383a2c9a0f30e66123 USB: isp1362-hcd.c: usb message always saved in case of underrun
dbf1115d3f8c7052788aa4e6e46abd27f3b3eeba atmel_serial: fix spinlock lockup in RS485 code
b53fc7c2974a50913f49e1d800fe904a28c338e3 fs/proc/meminfo.c: fix compilation error
91a13c281d7d4648c0b32dede11a0144c4e7984c drivers/base/node.c: fix compilation error with older versions of gcc
93f3350c46fa5dfcc9650eb19b186e71ffc924c3 RS485: fix inconsistencies in the meaning of some variables
83cac9f3b45ba8e99c5305be42c67f1c83adf0aa atmel_serial: RS485: receiving enabled when sending data
5dfbd1d734ef5415bc47b034df7433ba21e40e7b atmel_serial: fix RTS high after initialization in RS485 mode
5b04ec4ad8e2ffdc9d1f27fd6eb5118e919bc87d serial: cpm_uat: reducing CPM serial latency*
63295cb2ff4329f563579f3d20c5855a96a866d5 serial: add Documentation about RS485 serial communications
c7213fc4ed592070f1010da39b0bf0eb2395b619 CRIS: Fix RS485 delay handling.*
1b6331848b69d1ed165a6bdc75c4046d68767563 serial: general fixes in the serial_rs485 structure
f1d23ed8218ca5afaf178a6495253dbb7fc98f57 CRIS: ioctl for getting RS485 information
e8faff7330a3501eafc9bfe5f4f15af444be29f5 ARM: 6092/1: atmel_serial: support for RS485 communications
93f6ced9e442de2ee817c244048fde3e6350be8d atmel_lcdfb.c: fix printk() type mismatch
6603a4fd5195a004dec5f9568e38ff76bae630c1 ARM: 5776/1: Check compiler version and EABI support when adding ARM unwind support.
e4af3bf6334341435740fce9ff236ba814686b99 mtd: atmel_nand: unused variable removed
dc1972d02747d2170fb1d78d114801f5ecb27506 i2c: Fix stuck transaction on cpm-i2c driver
6fd1af4cf98936f4034caf8f132c7826a6ffd0fa tty: Use the generic RS485 ioctl on CRIS
01ab10393c510342ec4ce85df11ccfa3df06bbb2 sh: Fix up DSP context save/restore.
47fee6fedd3ea08e9b0f1172bc74e59ee7a6b3d9 Unused variable 'reg' removed.
f58e2c33ffa31b8d4a71609a5e71e8d893574a07 sched: new documentation about CFS
6e10efefaae45989f2f143bacfef75af55068378 atmel_serial: remove duplicated macro definition

 * Co-authored by Evidence Srl, as explained in the commit message


Jailhouse hypervisor

Git commit nb. Description
6f119f396d1bbe87c8ccccd66e8fd4c0669f53b5 tsc_read() renamed tsc_read_ns() to avoid misunderstandings.
1b7a63610ea8078d940410eb4c1f6c0764f2c3bb Jetson TX2: fix root cell config for GPU acceleration
aad818e95fd65be73d6dd8bdffc20c04c6606467 Documentation: Add TX2 to the list of supported hardware
108d84d82be82bfbc23af3545515440f934599e9 Jetson TX2: add demo cell config
48c4909226cb1177083e48a665c7896160ece0cf Jetson TX2: add inmate support
765365f4c4868e0e9ad30d7ca6e2e094b0c405ce Jetson TX2: root cell config
965d0bf9853baad2842cbec8e39001f3ba8feaf5 README: support for NXP IMX8*
81c31c23bf69488e3a64cc5cf19e7214a18dda63 Cell configs for imx8mq EVK board.*
2482c47bc2d05fecb0bd46a1de4e20c6c949a9e1 arm64: ignore SIPs used for low-power modes*
a56e6c0759bb40785486f22d66c9bbf52d56c674 imx8mq: add UART support*
cf4c4691fd48c8b98f19ea01fdaa03f39d5fd7d3 Documentation: supported free OSs; memory reservation through DT
0def9fe93c25694add9f74fa25b198cbb4748542 FAQ: handling inmates that do not reply to requests
3f1eba5aa77b42650eae2613f0624546acb6797d Stop waiting for message reply after a certain amount of time
3d8d1b6ed9f889e20ab4e5d07024d22bc5b1b56c Rename cell_send_message() to cell_exchange_message()
607251b44397666a3cbbf859d784dccf20aba016 Provide the inmate library under BSD-2 license too.
87c82cfb06e6a207048075de4401ce1584ea6747 Update config files for TX1
eb8ad9089979b980e5c149319eac42e704af5948 Split jetson-demo config between TK1 and TX1
92b45930eec3e1502b2a42d166c4ac458001893d README: add Nvidia TX1 among the supported boards
0ad8e73f96ca6cc44493ee97370cd5ce13d7dad9 configs: rename jetson-tk1-demo.c to jetson-demo.c
0b165bb0c87780e9c05bd8f8754607c5c4fbe51c configs: add config files for Jetson TX1
1be5fdef659bd83c221228b01cffa9b427642dda inmates: add support for Tegra TX1
c65edaf35f6ca595544ea493acdb5726295f61b1 README: more explicit requirements
fbeafd5b3251cec198544865db6d68667548413b Additional headers for old kernel versions
2818e74e64beef3fa0b0e9b26a2d460aa6d7ce8b FAQ: explain how to build automatic documentation.
3e373832198e0c6647d87d557af52ea1c1e3b62c Driver: change function name jailhouse_fw_name()
6ede7227baca62cea95f40e7151a5ed114bd3408 arch: general comments in the source code
cb0eb56d3f6fa326b6bcffdcf94e7a43dc793581 Core: general comments in the source code
96f707f1568d1afa3bf1ca1dbee5fa4be256b47f Driver: general comments in the source code
8ca10bfc3c8063bb1dd1ebd36f689123b28eccb2 Documentation: suggest three escape characters for memmap on GRUB2
ddcabdd33ea254544c014716062c2db2ce79bad5 Documentation: FAQ: how to enable error tracing
e6a4a9be518a77a5840c3cabe5f5fac6e8154116 Documentation: highlight questions in the FAQ
756cc02e51c8f64b4ecde10a3880e5637240cd34 Documentation: Add working URL for mailing list's archive

 * Co-authored by Evidence Srl, as explained in the commit message


SOEM EtherCAT master stack

Git commit nb. Description
29df9ba013bdb37cdb8b7e64260a100244c7da97 Add ERIKA Enterprise RTOS support
45e5b4e6eb31e6efd03ea7c3935c4be1417f80ca Tutorial: explain how to access CoE SDOs and PDOs
e0d880d7bde6fa1be819432fb983e093ca906319 Avoid OSAL_THREAD usage when EC_MAX_MAPT=1
7beba91c6286900f07c8831afe1e1468b665815f Fix typos in comments.
770e4c93d64335a6bfe5e3ea58b20e84dc838257 README: link to the documentation
26cde1dc945786fab5d63f3be64829031ba13978 Introduce platform-specific EC_PRINT
826be99bab1d612b8a1a58c3818cfa68f6637f1c .gitignore: ignore ctags file

Copyright © 2002-2012 Evidence Srl - Via Squartini 42, 56121 Ospedaletto - Pisa - Italy - Phone: +39 050 991 1122 - E-mail: - Capitale sociale interamente versato: 27200 euro - Codice Fisc. e Partita IVA: 01638690501 - Iscrizione nella sezione ordinaria della Camera di Commercio di Pisa (REA): 142992