Skip to content

Loading builds...

Changes

#178 (Apr 16, 2026, 1:59:23 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#177 (Apr 16, 2026, 1:55:48 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#176 (Apr 16, 2026, 1:46:17 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#175 (Apr 16, 2026, 1:44:13 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#174 (Apr 16, 2026, 1:29:53 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#173 (Apr 16, 2026, 1:19:26 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#172 (Apr 16, 2026, 1:15:17 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#171 (Apr 16, 2026, 1:09:45 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#170 (Apr 16, 2026, 1:05:17 PM)

tests/fetch_image: support copying from artifact

Allow copying the image from another job in
octsim_osmo-ccid-firmware-artifacts job.

Related: osmo-ci I736b2b194813e6edff0197145fe08168c3e66903
Change-Id: I9445d6d5e4723bf6a87d4bffcdc638560471328b
Oliver Smith at

#169 (Apr 16, 2026, 5:47:49 AM)

formatting: update .clang-format

Updates the formatting rules derived from linux kernel
098b6e44cbaa2d526d06af90c862d13fb414a0ec

At the same time tell clang-format to keep the bespoke formatting
used for the fsm and usb descs.

Change-Id: I1fd4d38897946693b5495fa4d0b61925eb9d07f7
benispeter at

#168 (Apr 15, 2026, 5:16:21 PM)

octsim: usb_descriptors: use LE16/LE32 for consistancy

Even this is ran on ARM and most likely on x86, add byte ordering
function (LE16/LE32) to 16 bit and 32 bit fields as the remaining
usb descriptor does.

Change-Id: Ia77d65faf56c5d3c57cc76c91af33fce4fbbff5c
lynxis at

#167 (Apr 15, 2026, 5:16:18 PM)

octsim: main: document the fixed allocation sizes for msgb

Use the same allocation for all msgb to prevent
heap allocation fragmentation.
Add a comment to document it.

Change-Id: I33809d2c1973231627f6da5d9b01e9525f2b38c1
lynxis at

#166 (Apr 15, 2026, 2:27:57 PM)

octsim: usb_descriptors: use LE16/LE32 for consistancy

Even this is ran on ARM and most likely on x86, add byte ordering
function (LE16/LE32) to 16 bit and 32 bit fields as the remaining
usb descriptor does.

Change-Id: Ia77d65faf56c5d3c57cc76c91af33fce4fbbff5c
lynxis at

#165 (Apr 14, 2026, 6:49:11 PM)

octsim: main: reduce msgb_alloc for irqs to 8 bytes

The message itself is only 3 bytes, but the usb stack might benefit
from 8 byte buffers.

Change-Id: I33809d2c1973231627f6da5d9b01e9525f2b38c1
lynxis at

#164 (Apr 14, 2026, 6:49:11 PM)

octsim: usb_descriptor: reduce IRQ endpoint max packet size to 4 bytes

The largest message on the endpoint is the 4 byte hardware error.
The slot status is 3 bytes for 8 slots.

Change-Id: I615ff16d9bc0e8d39156015e41b4abe4502aaca1
lynxis at

#163 (Apr 14, 2026, 6:49:11 PM)

octsim: usb_descriptors: use LE16/LE32 for consistancy

Even this is ran on ARM and most likely on x86, add byte ordering
function (LE16/LE32) to 16 bit and 32 bit fields as the remaining
usb descriptor does.

Change-Id: Ia77d65faf56c5d3c57cc76c91af33fce4fbbff5c
lynxis at

#162 (Apr 14, 2026, 4:39:49 PM)

cosmetic: fix missing spaces in string_req_h

Change-Id: Ia92ac605d83718399f19db67057e740ceaa8c37f
lynxis at

#161 (Apr 14, 2026, 4:39:47 PM)

Implement vendor requests to set debug/break_on_panic

Use vendor request in to read and set the break_on_panic.
In the future this vendor request could be also used to set other
debug related options.

Change-Id: Ia2bffa05b96e3857610cb3ad2f9122fa75a90780
lynxis at

#160 (Apr 14, 2026, 4:21:27 PM)

Implement vendor requests to set debug/break_on_panic

Use vendor request in to read and set the break_on_panic.
In the future this vendor request could be also used to set other
debug related options.

Change-Id: Ia2bffa05b96e3857610cb3ad2f9122fa75a90780
lynxis at

#159 (Apr 14, 2026, 4:16:07 PM)

Implement vendor requests to set debug/break_on_panic

Use vendor request in to read and set the break_on_panic.
In the future this vendor request could be also used to set other
debug related options.

Change-Id: Ia2bffa05b96e3857610cb3ad2f9122fa75a90780
lynxis at

#158 (Apr 14, 2026, 3:10:18 PM)

Rework default IRQ handler and osmo panic handler

Don't break on panic by default. Using a variable allows
to set it by SWD or later by a usb message.

Use the same handler for osmo panics as well as unknown IRQ.
Including faults (bus, hard).

Change-Id: Ibcabe0c58ff14ebe76159470dd90fdef064febea
lynxis at

#157 (Apr 2, 2026, 10:03:16 AM)

contrib/jenkins: add SKIP_FIRMWARE_CLEAN argument

If this is set, then don't clean the firmware at the end. This is needed
to store the built firmware as artifact in jenkins, for passing it along
to another job.

Related: SYS#7963
Change-Id: I9e2342b8111645ef5d3b7bf4ac364ca592aa600b
Oliver Smith at

#156 (Mar 30, 2026, 2:09:47 PM)

firmware: werror on missing return

Silently ignoring a missing return just broke all timers,
so prevent similar mistakes in the future.

Change-Id: I2e25884077af6334c9e9ddace3900b04061fae04
ewild at

#155 (Mar 30, 2026, 2:02:44 PM)

firmware: fix timers, add missing return

Change-Id: I5b12284c88d8fe6e4fe55cc4cd2aad550d276af4
ewild at

#154 (Mar 27, 2026, 7:55:07 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#153 (Mar 27, 2026, 6:15:19 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#152 (Mar 26, 2026, 5:35:28 PM)

firmware: add tear-free 64bit load/store helpers for jiffies

On Cortex-M4 a 64bit load may compile to two separate LDR
instructions which can lead to torn reads due to interrupts.
LDRD/STRD are restartable, they either complete or restart from
scratch, so the result is always consistent. The only "downside" is the
required alignment, which is fine.

Change-Id: I729c0fdfb5b228b03c2df1cf098743100b1ea625
ewild at

#151 (Mar 26, 2026, 5:35:28 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#150 (Mar 26, 2026, 3:57:44 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#149 (Mar 26, 2026, 3:57:44 PM)

firmware: add tear-free 64bit load/store helpers for jiffies

On Cortex-M4 a 64bit load may compile to two separate LDR
instructions which can lead to torn reads due to interrupts.
LDRD/STRD are restartable, they either complete or restart from
scratch, so the result is always consistent. The only "downside" is the
required alignment, which is fine.

Change-Id: I729c0fdfb5b228b03c2df1cf098743100b1ea625
ewild at

#148 (Mar 26, 2026, 12:42:11 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#147 (Mar 26, 2026, 12:37:16 PM)

firmware: add tear-free 64bit load/store helpers for jiffies

On Cortex-M4 a 64bit load may compile to two separate LDR
instructions which can lead to torn reads due to interrupts.
LDRD/STRD are restartable, they either complete or restart from
scratch, so the result is always consistent. The only "downside" is the
required alignment, which is fine.

Change-Id: I729c0fdfb5b228b03c2df1cf098743100b1ea625
ewild at

#146 (Mar 26, 2026, 12:37:16 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#145 (Mar 24, 2026, 4:42:52 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

This clashes with the host build which does not have jiffies, and
is pretty much a burden because it requires special casing code due to
the completely different targets even though it was last used many years
ago and might not even work, so disable it.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#144 (Mar 24, 2026, 3:52:23 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

This clashes with the host build which does not have jiffies, and
is pretty much a burden because it requires special casing code due to
the completely different targets even though it was last used many years
ago and might not even work, so disable it.

Additionally ignore checkpatch jiffies complaints because we're trying
to do firmware here.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#143 (Mar 24, 2026, 3:43:49 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

This clashes with the host build which does not have jiffies, and
is pretty much a burden because it requires special casing code due to
the completely different targets even though it was last used many years
ago and might not even work, so disable it.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at

#142 (Mar 24, 2026, 3:12:14 PM)

firmware: replace libosmocore fsm timers

Concurrent access from main loop and the different uart irqs was not
going well and caused crashes. The libosmocore fsm does still allocate
one internal timer, but it is not used by the firmware, so libosmocore
will not touch the rbtree.

Closes: SYS#7877
Change-Id: Id2bd67b3946bb451008965f0b68b4a919f4d10bd
ewild at