Commit Graph

19 Commits

Author SHA1 Message Date
Jan Matyas 0a70e59cb8
Fix: Set proper debug_reason in deassert_reset() (#687)
* Fix checkpatch workflow: ignore changes in .github/

Ignore changes in .github/ directory when running checkpatch.

Checkpatch emits false alarms on substrings "CC:" found in *.yml
workflow files, apparently thinking it is a "Cc:" signature in
commit message.

Change-Id: Id977d5a8838797e4676758066af4825651c41a87

* Fix: Set proper debug_reason in deassert_reset()

The issue was visible for example when user's .cfg file ended
with "reset halt" command:

In such case, the hart would remain halted but the debug_reason would not be
updated and may retain an incorrect value, e.g. DBG_REASON_NOTHALTED.
In such cases, gdb_last_signal() would provide an incorrect reply to GDB.

Change-Id: Ie6f050295fb5cbe9db38b189c4bc385662acf5b4
Signed-off-by: Jan Matyas <matyas@codasip.com>

* Fix checkpatch workflow: add 'apt-get update'

Change-Id: Ic5843ec86d16a187d01970a3253caade3d13b7ab
Signed-off-by: Jan Matyas <matyas@codasip.com>
2022-03-23 09:47:57 -07:00
Jan Matyas f732956b03
Fix & improvements in Linux Build workflow (#686)
* Fix of Linux Build workflow: add missing apt-get update

Change-Id: I69cd1693b2ad5405574affe5b85e5c4c9c76e278
Signed-off-by: Jan Matyas <matyas@codasip.com>

* Minor improvements in Linux Build workflow

- Use parallel build (use -j for make)
- Check that the resulting OpenOCD executable can actually be launched (call openocd --version)

Change-Id: I6b8c56688a39cae436986954fbd517082dc8160d
Signed-off-by: Jan Matyas <matyas@codasip.com>
2022-03-17 10:01:34 -07:00
Tim Newsome f3c69c7292 Don't use oscan1 on 32-bit build.
It requires libusb, and I'm not off-hand seeing a 32-bit libusb to link
with.

Change-Id: Ib676982b9c17369326ffc63eab5ef895add48569
Signed-off-by: Tim Newsome <tim@sifive.com>
2021-12-13 13:36:06 -08:00
Tim Newsome deab0f4638 Also install the library itself.
Change-Id: I86579f6f5abeecf6b85ccbc6c736cc7aa0922a16
Signed-off-by: Tim Newsome <tim@sifive.com>
2021-12-13 13:32:22 -08:00
Tim Newsome 26c9e64d3d Install libusb
Change-Id: I711c814ff3c9d4fada58aac530e406df662024a4
Signed-off-by: Tim Newsome <tim@sifive.com>
2021-12-13 13:28:53 -08:00
Tim Newsome 8599254e29 --enable-ftdi-oscan1 in Linux build.
Change-Id: I531cd283a1020d94eaeee36e81140c8c4801c69e
Signed-off-by: Tim Newsome <tim@sifive.com>
2021-12-13 13:25:09 -08:00
Tim Newsome a1146731a8 Merge branch 'master' into from_upstream
Conflicts:
	src/flash/nor/fespi.c
	src/jtag/drivers/ftdi.c
	src/rtos/FreeRTOS.c
	src/rtos/hwthread.c
	src/rtos/rtos.c
	src/rtos/rtos.h
	src/rtos/rtos_ecos_stackings.c
	src/rtos/rtos_embkernel_stackings.c
	src/rtos/rtos_standard_stackings.c
	src/rtos/rtos_standard_stackings.h
	src/rtos/rtos_ucos_iii_stackings.c
	src/server/gdb_server.c
	src/server/server.c
	src/target/riscv/riscv-013.c
	src/target/target.c
	src/target/target.h

Change-Id: If0924a3e799260c33fae5feb85975b1273b45a0f
2021-08-30 15:03:59 -07:00
Tarek BOCHKATI 88c3e767b2 github/workflow: disable libusb static link for windows build
Current github build for windows is using dynamic libraries,
but libftdi is requiring libusb static libraries.

As a quick solution, just get rid of libftdi till it can be linked without
static libusb.

Change-Id: I9c7cb0b8853459ca48589674498403e255ade5cc
Reported-by: Xiaofan <xiaofanc@gmail.com>
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: https://review.openocd.org/c/openocd/+/6384
Reviewed-by: Xiaofan <xiaofanc@gmail.com>
Reviewed-by: Paul Fertser <fercerpav@gmail.com>
Tested-by: jenkins
2021-08-22 08:39:59 +00:00
Tarek BOCHKATI 3d9534b8a8 github/workflow: upgrade libraries in windows build to latest versions
Change-Id: I11fb6eb948531f1a2e8c0c3926cac52cf92765b9
Reported-by: Xiaofan <xiaofanc@gmail.com>
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: http://openocd.zylin.com/6383
Reviewed-by: Xiaofan <xiaofanc@gmail.com>
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2021-07-31 10:10:46 +01:00
Jan Matyas 9eefd63066 .github/workflows: Add missing 'apt-get update' to the snapshot workflow
During the build of the OpenOCD snapshot via GitHub Actions, ensure that
the local package database is first updated, prior to installing any
packages via apt-get install. Otherwise the apt-get install could fail.

Change-Id: If3c29faeb1496d5e2be75350f6352575b1f3a42e
Signed-off-by: Jan Matyas <matyas@codasip.com>
Reviewed-on: http://openocd.zylin.com/6378
Reviewed-by: Xiaofan <xiaofanc@gmail.com>
Tested-by: jenkins
Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-by: Tim Newsome <tim@sifive.com>
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2021-07-31 10:10:32 +01:00
Tim Newsome 9aa8bab63f
Perform these actions on pull requests, not push. (#636)
Otherwise they don't happen if somebody makes a PR from a different
fork.

Change-Id: Ic09eb8a556e2dfbc0900e3df9f07cf7aff3d5309
Signed-off-by: Tim Newsome <tim@sifive.com>
2021-07-27 11:13:30 -07:00
Jan Matyas f260fb8753
Added 'apt-get update' to snapshot workflow (#635) 2021-07-23 12:07:42 -07:00
Tim Newsome f30837f04c
Use github actions for automated builds (#627)
* Copy snapshot workflow from mainline.

Travis died. We need something that checks OpenOCD builds.

Change-Id: I7c018caaa3a13884fc526733271697bc90edc891
Signed-off-by: Tim Newsome <tim@sifive.com>

* Run checkpatch like we used to do with travis.

Nervous about this because upstream often messes things up.

Change-Id: I0ca0229ea2bd4422d7ffe4800e8861acc716cf56
Signed-off-by: Tim Newsome <tim@sifive.com>

* Fetch more, install filterdiff.

Change-Id: I8cca61c5adc91b845619f2cc89accbb5217ce73a
Signed-off-by: Tim Newsome <tim@sifive.com>

* It's patchutils, not filterdiff.

Change-Id: I2afe78bc4153462283a61571e15ee147f9f20b10
Signed-off-by: Tim Newsome <tim@sifive.com>

* Fetch more revisions.

Change-Id: Ieb5269494721f7b78d93d67c502203f1b1fbbba7
Signed-off-by: Tim Newsome <tim@sifive.com>

* gnulib no longer exists.

Change-Id: I97fc797c99f19f6b504952f7cb9c7072181c1e72
Signed-off-by: Tim Newsome <tim@sifive.com>

* Working on Linux build.

Change-Id: I6b70fbf5bd2dbb5f1540d0d929310b29b312566e
Signed-off-by: Tim Newsome <tim@sifive.com>

* Don't actually publish any artifacts.

Change-Id: Ic363744e0530288f3f78268d1becfbfb6b47b505
Signed-off-by: Tim Newsome <tim@sifive.com>

* Add 32-bit build?

Change-Id: I44866e0da539db7b8e3bd0536d305bee0595a301
Signed-off-by: Tim Newsome <tim@sifive.com>

* Fix environment.

Change-Id: I19c3ef2cc886350db243a07185d2441ca9328dfa
Signed-off-by: Tim Newsome <tim@sifive.com>

* Fix syntax error.

Change-Id: I80ba08d9929d4c2f0e57b393b6b53462202f5bce
Signed-off-by: Tim Newsome <tim@sifive.com>

* More syntax error.

Change-Id: I24c5270683626b7007f9c100f1a36c9fa28a3405
Signed-off-by: Tim Newsome <tim@sifive.com>

* Shooting in the dark trying to fix problem.

Change-Id: Iecb3dc67ec6a0b932167b65dd0a5b82da9a1518f
Signed-off-by: Tim Newsome <tim@sifive.com>

* More syntax fixing.

Change-Id: I01f014f38e742b9a6c0d7c2e5b31058536572506
Signed-off-by: Tim Newsome <tim@sifive.com>

* Install clang.

Signed-off-by: Tim Newsome <tim@sifive.com>
Change-Id: I1d6828554ade149f7319f0797238a4e23f073a25

* Store config.log

Change-Id: I8275341de2c042ef32c6d57687c420b6dc53c8ab
Signed-off-by: Tim Newsome <tim@sifive.com>

* Install gcc-multilib

Change-Id: I08f233f58f3a4cbc89ae5dd0314d99319bf5724c
Signed-off-by: Tim Newsome <tim@sifive.com>

* Check final executable.

Intentionally supposed to fail.

Change-Id: I003dba85e766e3cf3ef4d6925d96f5b09a9fe80f
Signed-off-by: Tim Newsome <tim@sifive.com>

* All done!

Change-Id: I37ed2142082fdbce01157e0989c4e2122229abb7
Signed-off-by: Tim Newsome <tim@sifive.com>
2021-07-12 11:21:46 -07:00
Tarek BOCHKATI a9c004d2c8 github/action: create a permanent 'latest' release
this commit extends the existing snapshot action to create a release named
'latest' with the built binaries for windows.

this 'latest' release will be updated after every push to github.

Change-Id: I75a64c598169241743add3ac9aa7a0337fbab7f2
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: http://openocd.zylin.com/6127
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2021-05-22 10:05:35 +01:00
Tarek BOCHKATI 3ead2633af github: fix github wokflow while pushing a tag
this fix permits to add correctly the generated artifact (windows binaries)
into the release section.

Change-Id: Ia982370d3a1e08c623ebcabb5ac97e9fb49d00e0
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: http://openocd.zylin.com/6047
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2021-02-03 09:27:03 +00:00
Tim Newsome b8620764c0
Add `riscv info` command. (#558)
Add `riscv info` command. Final output is "TCL format" and looks like this:
```
hart.xlen              64
hart.trigger_count      4
dm.abits                6
dm.progbufsize          2
dm.sbversion            0
dm.sbasize              0
dm.sbaccess128          0
dm.sbaccess64           0
dm.sbaccess32           0
dm.sbaccess16           0
dm.sbaccess8            0
```

* Add `riscv info` command.

This command displays some basic information that OpenOCD has detected
about the target. The output is displayed in YAML so it can easily be
parsed. Example of current output:
```
Hart:
  XLEN: 32
  trigger count: 4
Debug Module:
  abits: 6
  progbufsize: 2
  sbversion: 0
  sbasize: 0
  sbaccess128: 0
  sbaccess64: 0
  sbaccess32: 0
  sbaccess16: 0
  sbaccess8: 0
```

Change-Id: If920c083ff6ec9f482c50f913cd8ceaa62461217
Signed-off-by: Tim Newsome <tim@sifive.com>

* Disable workflow inherited from upstream.

Change-Id: Ifc5ed1b4f5ec2278b8bcf3279c9fd462e469fefa
Signed-off-by: Tim Newsome <tim@sifive.com>

* Switch from YAML to TCL "set array" input format.

Change-Id: I3833210e5bf6d7cffc9934c04ec5201ae7732ad8
Signed-off-by: Tim Newsome <tim@sifive.com>

* Remove indent in `riscv info` output.

That was getting a little too cute, and probably more confusing than
helpful.

Change-Id: Ie51416f53ab4b69294962f0565767d370db82867
Signed-off-by: Tim Newsome <tim@sifive.com>
2020-12-14 12:40:08 -08:00
Tarek BOCHKATI 6dbfdcd00f GitHub/WorkFlow: fix for CVE-2020-15228
According the CVE-2020-15228 documented in:
 - https://github.com/advisories/GHSA-mfwh-5m23-j46w
 - https://nvd.nist.gov/vuln/detail/CVE-2020-15228

the `set-env` commands will be disabled in the near future
and should be replaced by:
    echo "FOO=BAR" >> $GITHUB_ENV

idem for `add-path`, should be replaced by:
    echo "/path/to/add" >> $GITHUB_PATH

Change-Id: I725c9ccd861a0d1580ac22491b6d716ec65973d1
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: http://openocd.zylin.com/5866
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2020-11-07 20:51:35 +00:00
Tarek BOCHKATI 2edcb065d4 Github: add capstone in windows snapshots
Change-Id: I402c18ff72de715ce4012bce3df72aaed7159d50
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: http://openocd.zylin.com/5915
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2020-11-07 20:51:28 +00:00
Tarek BOCHKATI c20f65b632 GitHub: add workflow to provide an openocd snapshot binaries for win32
This change could be used within OpenOCD GitHub forks.

Once workflow actions are enabled in the GitHub project, this workflow
will be run automatically on each push into OpenOCD.

This workflow will provide a neutral build of openocd for win32, then
the package will be available for download in Actions section.
Note: the artifact will be deleted after 90 day (actual GitHub rules)

If the push is a tag, the generated package will be uploaded to release
pane under the corresponding release, and it will resides forever.

The built openocd enables libusb1, hidapi and libftdi adapters,
and could be extended to cover more adapters and Oses

PS: ./contrib/cross-build.sh updated to build libftdi from source like
libusb1 and hidapi.

Change-Id: I290c8aa14a12548e2dcb6a0eee456430ea44ab9f
Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Reviewed-on: http://openocd.zylin.com/5594
Tested-by: jenkins
Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2020-09-20 14:34:48 +01:00