aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2021-11-17debian: don't package simtrace2-firmware anymoreosmith/wipOliver Smith3-14/+7
Don't attempt to build the firmware with the random default compiler from the distribution anymore. With some GCC versions, the DFU loader does not fit the partition anymore. Related: OS#5260 Change-Id: I95a8472b458db203ad14efd57268ca922c75aeb1
2021-11-02jenkins: build bootloader updaterEric Wild1-4/+4
Change-Id: I8b2023921a67b0e8945d8f24e4c8076de3e12acf
2021-11-02firmware: add missing usb strings to blupdate that prevented building itEric Wild1-0/+6
Change-Id: I8d0d9bf98748d475427d9b0c78f2e0532ee4bca1
2021-11-01add our default clang-format fileEric Wild1-0/+563
Change-Id: I77aab70400bdbb46cbdd83e428e2a28ebf29b8dd
2021-11-01firmware: drop cref printingEric Wild1-1/+1
No one reads this, no one wants to know this. Change-Id: Ie2281e207164f82d8ee29bd596a5593c22aaf198
2021-11-01firmware: increase reset delay before usb reattachEric Wild2-2/+2
The previous value was way too low and led to reenumeration issues when switching from app to bl because the hosts are fairly lenient and feature long delays until they accept disappearing devices as gone for good instead of ignoring a presuambly flaky usb cable or connection. Related: SYS5061 Change-Id: I9b8c8bf794ad5b94fc7ea2a01d1ebf4e36862c36
2021-11-01firmware: remove usb pullup that dates back to simtrace1Eric Wild5-32/+0
All the parts are DNP and never existed on the simtrace2 with sam3; the sam3 has internal pullups that are part of the usb peripheral. Change-Id: I04a703a2eba6ff1dc64692c089213389d0c1066d
2021-11-01firmware: add bootloader update "app"Eric Wild5-9/+192
This bl updater can be flashed as app and will update the bootloader and then delete itself before resetting the sam3, so the device will end up in the newly updated dfu bootloader afterwards, without having to press the bootloader button or requring any other manual interaction, ready to receive a new application image. Building the blupdater requires a previously built dfu-flash bootloader bin file that will then be embedded into the app during building. Related: OS#1704 Related: SYS5061 Change-Id: I53dea57bba790a2ab3245d9483e0ff1c8d19d5e3
2021-10-25cardem-pcsc: Fix return of uninitialized variableHarald Welte1-0/+1
Fixes: CID#240740 Change-Id: I97431f491f60e2a6537502ef88042907723b7de6
2021-10-20fix bootloader led config crashEric Wild1-1/+1
This led to occasional crashes for targets with leds since it was introduced 3 years ago The interesting thing is that most of the time it didn't crash... Change-Id: Ia6a1b1fc0e44a301b4fb1d9c9fdbc27d61dcab97
2021-10-20clang build supportEric Wild2-11/+30
Supposed to be used with https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm + distro provided binutils-arm-none-eabi package, might provide better and more reliable binary sizes, especially for the bootloader. Just run USE_CLANG=1 make Change-Id: I1a19f40d44797efad5c46121e73115ed738a095b
2021-10-20drop unused exidx sections when linkingEric Wild2-12/+6
clang might emit those even though they are neither needed or wanted, so just get rid of them. Change-Id: I159b4405cebe72af4d98b27f876c48835ffd6e2d
2021-10-20add the ngff cardem to default build targetsEric Wild1-1/+4
Change-Id: Icec4966fe419eee9f7ace67e46e3d88738812b38
2021-10-06simtrace2-tool: Initialize logging to avoid error on first log outputHarald Welte1-0/+5
This avoids ERROR: osmo_log_info == NULL! You must call log_init() before using logging in log_check_level() Change-Id: Id355ef33e10164f8e8eb40c2fd0b606bc8e9b6f7
2021-10-06simtrace2-cardem-pcsc: Remove double libusb initializationHarald Welte1-6/+0
This code already calls osmo_libusb_init further above in the top of the main() function, so there's no use of calling libusb_init() directly in the same function lines below. Change-Id: I2e0c7446aaa644c5aae1059ce91ff9f729903cbc
2021-10-06Use osmo_libusb_{init,exit}() instead of libusb_{init,exit}()Harald Welte4-6/+6
We use other osmo_libusb_* functions later in the code, so it is best to initialize the library via libosmousb, and not directly. Change-Id: I2fd981935e1420e529f5dd8a98edd347c317284c
2021-10-06jenkins.sh: Build 'trace' firmware for ngff_cardemHarald Welte1-1/+1
Let's create and publish binary builds for 'trace' on BOARD=ngff_carde. According to SYS#5525 this is verified working since two months ago, so there's no reason to withhold the binary builds for it. Change-Id: I8a98002ef5aa58e5a3d49627323fe11505508bc8 Related: SYS#5525
2021-10-04Revert "firmware: data sections"Eric Wild1-1/+1
This reverts commit e6a76c7bf40d93c20dd5117806c39e3f8b0e6ad7. Might or might not cause weird issues depending on gcc and binutils versions, let's see if this helps. Change-Id: I2f593fd5e0f1494aae6b9fcfb2160a6c9168f5b8
2021-10-04contrib/jenkins.sh: lower trace to make bl fitEric Wild2-6/+2
We keep running out of rom space, so reduce tracing to nothing for alle dfu targets, and let's hope newer gcc versions stop producing more code... Change-Id: I7d2947c84097035bed00ad489a175d614b4c388e
2021-08-09contrib: allow manually forcing bulk simtrace dissectionEric Wild1-2/+1
Change-Id: I5fcfe3c221b87b02e21c857ac51d0392c3b4de3c
2021-08-09contrib/jenkins.sh: build ngff_Cardem dfu bootloaderEric Wild1-2/+7
It does fit with some compiler versions, while others overflow the bl region, so just reduce the trace level a bit to make it fits all the time. Change-Id: I168a847da8dfc585aaeef0030f95fc225a713147
2021-08-08contrib/jenkins.sh: Build APP=cardem for BOARD=ngff_cardemHarald Welte1-0/+1
This makes sure downloads.osmocom.org will get cardem images for the new ngff_cardem board. The dfu loader was not enabled as it currently overflows the ROM region by 200 bytes, see OS#5210. Change-Id: Id2b7925c823fb19f880e06a205764d2b19de4ad4 Related: OS#5210
2021-08-08cardem: fix spurious NULL bytes during transfersEric Wild1-0/+1
The "wait time extension timer" was apparently not being reset during normal tx operations, which led to occasional NULL (0x60) bytes getting injected into transfers, which in turn led to more tx bytes than what the reader side expects... The odd thing is that this was only noticeable with high baud rates, probably due to the very long default WT of 9600 ETU, and even then only because it led to weird ngff modem resets after benign transfers. Change-Id: I15b0b83b7d93b8e5589f3640bd6eb2fc82f93394 Related: SYS#5553
2021-08-03simtrace2.spec: Add simtrace2-tool binary to packageHarald Welte1-0/+1
This fixes RPM build issues reported as [ 59s] error: Installed (but unpackaged) file(s) found: [ 59s] /usr/bin/simtrace2-tool Change-Id: I1fd5980a686652afb47cd1c30e12919de626aec7
2021-08-02firmware: trace for ngffEric Wild0-0/+0
Change-Id: Iee1eedd93d72c02880fd59fb8588abe14d05e77b
2021-08-02contrib: more cardem dissectionEric Wild1-2/+27
Change-Id: Ia74d3674f854b390c9745a1cb8d5756bd5d39540
2021-08-02simtrace2-cardem: use local sim on exitEric Wild1-0/+1
There is no obvious reason why the st should be stuck in cardem mode without a working running util on the host side since there is no state that is being kept, so switch back to using the local sim upon reset. Change-Id: Ib622af0027d40b4e8afbb0fa0d3689f0dbfcac92
2021-08-02firmware: make the ngff beakout blinkEric Wild3-2/+11
..but only if the cardem sim is active Change-Id: I65f1fbeb06690a143ef4c792728c9cb917a4ffde
2021-08-02firmware: proper makefile depsEric Wild1-2/+2
Single threaded evaluation is (assumed to be!) left to right, depth first - but with concurrent make using -j this breaks, because the actual usb string header is generated after the attempt to concurrently compile the code that needs it, since there is no explicit order among the all: dependencies. This is fixed by properly adding a dependency on that header. Change-Id: I0bdf915deabeda861f6398e654764918e58a64c2
2021-08-02firmware: data sectionsEric Wild1-1/+1
Might or might not be compiler default, but why guess? Change-Id: Id3da816611afea0858466949dcc47db5e5d5493a
2021-08-02introduce support for new ngff_cardem boardHarald Welte19-8/+798
This adds support for the new ngff_cardem board, a board that basically combines a ngff breakout board with a built-in SIMtrace2. Cardem works, but depending on the modem it might need a adjusted ATR to ensure a lower baud rate is used by the modem, high rates might lead to weird power cycling of the card after a few transfers. Trace was also tested and appears to work as expected. Change-Id: Ia96124fbe8a752c98e7fd4096d542a3b2b9bc255
2021-08-02Introduce simtrace2-toolHarald Welte2-1/+335
The simtrace-tool is a command line tool which can be used to e.g. manually request a modem reset. Change-Id: I3a8896ac2b3caef7590b51118359e5caed820a40
2021-07-30gitreview: new fileOliver Smith1-0/+3
Change-Id: I650fe7c930392d24042e65295fa49400478ffab9
2021-07-09contrib/flash.py: Add OCTSIMTEST supportHarald Welte1-1/+2
Change-Id: Id906d955f45a204ac0b00f56d8f5149c64c62f32
2021-07-0999-simtrace2.rules: Add OCTSIMTESTHarald Welte1-0/+2
Change-Id: I226ee21e0937f851428578578f81075fa703dd54
2021-07-01board_gpio.gnumeric: Add ngff-cardem pin-outHarald Welte1-0/+0
Change-Id: Ie1a7be85200e331232ad52aa0468c748ff053142
2021-06-30simtrace2-list: Use osmo_st2_compatible_dev_ids[]Harald Welte1-8/+2
we shouldn't use a local copy of the device id list, which is already outdated now that OCTSIMTEST support has been added to libosmo-st2 Change-Id: I2231006b94c33fe3b28ce37b0d54c67206751058
2021-06-30don't printf() directly from library code, go via libosmocore loggingHarald Welte1-6/+16
This allows us to use different log levels, and permits the user to use other log targets. Change-Id: I08ef7cfa5d8734882746a11ccd5f059d757401ae
2021-06-26cardemu: support 1v8 for the testerEric Wild1-0/+4
The tester has shifters, while the original simtrace relies upon the reader restarting the powerup attempt with > 1v8 after not respondig due to a lack of shifters and therefore 1v8 support. Change-Id: I520aa26c6e0fb34568a4f632943efa59a0da831c
2021-06-21cardem: free the bufEric Wild1-0/+1
This leak was probably hard to notice since config commands are usually rarely sent. Change-Id: I21411ef78a32a5258a7008272774cdb83119b413
2021-06-21contrib: add a basic simtrace lua dissector for wiresharkEric Wild1-0/+67
See Help->About Wireshark->Folders tab,the usual place this should go is ~/.local/lib/wireshark/plugins Hot reload possible after editing using Analyze->Reload Lua Plugins Change-Id: I360ab522dabc3a378969df36efd3b48fc4cade3c
2021-06-06firmware: octsimtest: ensure all card_insert GPIO are 0 after resetHarald Welte1-1/+3
Change-Id: I3c3744673ba53750cb66aa5023c8228edb006bfc
2021-06-06firmware: octsimtest: Add i/I command for setting card-insert via I2C GPIOHarald Welte1-4/+10
Change-Id: Ie1483ccf8465df0d640d55e50421fda910dced4a
2021-06-03firmware: octsimtest: Fix disabling the card_insert signalHarald Welte1-2/+7
Back in I8c9b0c3d862a967832134b24252577739182da62 we added support for enabling the card_insert signal, but not for explicit disable of it. Let's fix that. Change-Id: I6f32bde60674119c9912e51059a53b5ee74d074a
2021-06-03firmware: octsimtest: use TRACE_* macros instead of direct printfHarald Welte2-5/+5
Change-Id: I41864bc2f64905a4f2ccb50769b1840e8a490c76
2021-06-03firmware: octsimtest: Support SIMTRACE_MSGT_DT_CEMU_CARDINSERTHarald Welte5-0/+35
The octsimtest board can control the card-insert contact of the OCTSIM under test via an external I2C gpio multiplexer; let's add support for that. Change-Id: I8c9b0c3d862a967832134b24252577739182da62
2021-06-03firmware: cardem: re-factor CARDINSERT command processingHarald Welte1-12/+17
move it out of the general command dispatch switch statement and into a separate function. Change-Id: Ia40c3d9999be68248da0dcc69d298450ca6e4869
2021-06-03firmware: octsimtest: mcp23017 initializaitonHarald Welte3-10/+20
* driver should not have hard-coded understanding about I/O directions * board code should pass the I/O direction to driver * board code should use the correct I/O directions (A0..7, B0: output) Change-Id: Id4a8e012a33cee01bb489e612e17920760b9be59
2021-06-03firmware: octsimtest: Make slot mux configurable via USBHarald Welte5-2/+36
Change-Id: I4cdb250d2e1dbc5b8b0169f8b7c21e288b492e1d
2021-06-03firmware: octsimtest: Fix IO_DIR pin definitionHarald Welte1-1/+1
Change-Id: I776c9106bcd4ceb24a5d50ea05c6025dedb73822