Francesco Conti
7308922ffa
Add nocluster.c file with empty synch_barrier
...
This makes many tests compatible with execution on PULPissimo
2025-01-31 15:03:42 +01:00
Francesco Conti
133f3cfe2f
Remove absurd -U__riscv__ flag in compilation with CV32
...
The targets using CV32 were compiled using a completely absurd -U__riscv__
flag. The result is that several regression tests were using code
targeting the OpenRISC ISA (!!!) and OR10N (!!!), roughly with 10
years of delay.
Clearly, that did not end well, resulting in errors like the following
```
testAddSubNorm.c: Assembler messages:
testAddSubNorm.c:116: Error: unrecognized opcode `l.addnru a2,a2,a5,5'
testAddSubNorm.c:122: Error: unrecognized opcode `l.addnrru a2,a2,a5,5'
```
Frankly speaking, I do not have the faintest idea how such regressions
could pass using the same source, compiler, and compiler flags in the past.
But they did!!!
Bonkers..
2025-01-31 11:21:39 +01:00
Francesco Conti
7ddcb0037e
Support fast_debug bootmode in Verilator
2025-01-21 18:35:59 +01:00
Francesco Conti
26f3f15a15
Align to Verilatable PULPissimo
2025-01-21 18:24:43 +01:00
Francesco Conti
326f85ce9a
Reset caller-saved registers in crt0.S
...
Probably not necessary, but better safe then sorry
2024-05-22 23:21:53 +02:00
Francesco Conti
a4c7916fff
Convenience fixes
2024-05-19 23:39:57 +02:00
Francesco Conti
3b10f5f51e
Make init.c LLVM-compliant by disabling .ctors
2024-05-19 23:39:46 +02:00
Francesco Conti
d812c92404
tabs -> spaces
2024-05-19 23:35:56 +02:00
Francesco Conti
a8486d33a2
Add memchr from freeBSD (to enable printf!)
2024-05-19 23:35:28 +02:00
Francesco Conti
7b50643266
Target LLVM instead of GCC
...
Only for CV32E40X, at least for now. This commit also adds a script
objdump2itb.py from core-v-verif:
4e6e8604fa/bin/objdump2itb
This is used to generate an instruction table file that is, in turn,
used to populate instruction traces.
The script is lightly patched to support llvm-objdump's output.
2024-05-19 16:23:42 +02:00
Francesco Conti
fcca7032d4
Fix broken sym-linking
2024-05-15 22:11:44 +02:00
Francesco Conti
1a3eafb9a0
Add PULPissimo CV32E40X target
2024-04-23 19:07:11 +02:00
Michael Rogenmoser
2b98d1baa4
Fix bwruntests yaml loader
2024-03-22 17:16:05 +01:00
Michael Rogenmoser
13e7333c4b
Add default platform setting to RTL
2024-02-26 13:51:55 +01:00
Manuel Eggimann
259fd9c780
Patch shebang of slm_hyper python script
2022-12-09 01:46:58 +01:00
Manuel Eggimann
baad1c5fff
Add new drivers for new gpio and io_mux
2022-12-08 18:08:21 +01:00
Manuel Eggimann
d8dc704518
Add first driver draft for new gpio peripheral
2022-12-07 21:35:03 +01:00
Manuel Eggimann
d69fbeff36
Add guard to disable cluster pll init
2022-12-07 20:22:02 +01:00
bluew
1ddf10447c
Merge branch 'control-pulp' into master
2022-06-17 16:03:01 +02:00
bluew
07c26b52ac
pulp-runtime/control-pulp: Use priv_1_12
2022-06-10 18:54:00 +02:00
bluew
7a39de8996
archi: Update privileged level constants
2022-06-10 18:53:40 +02:00
bluew
1059c010a9
treewide: Update JTAG manufacturer code
...
PULP Platform now has a code
2022-06-08 22:14:20 +02:00
aottaviano
1294f4956b
pulp-runtime: Add idma APIs
...
* Add idma archi and hal sources
* Switch with mchan is still manual
2022-06-01 13:42:02 +02:00
aottaviano
9724be258c
pulp-runtime: Add ARCHI_HAS_DMA_DEMUX property to mchan
...
* If the cluster core demux and peripheral demux have a direct connection
to the dma, allow the cluster cores to use this connection.
2022-06-01 13:41:55 +02:00
aottaviano
77fa6799ed
pulp-runtime: Add kairos target
2022-05-17 08:41:20 +02:00
bluew
dd39b06789
Merge pull request #32 from pulp-platform/cv32
...
Add PULPissimo/CV32E40P support
2022-04-08 01:12:31 +02:00
bluew
01df5a78eb
Add and update CV32E40P + PULPissimo configurations
2022-04-08 01:10:39 +02:00
bluew
cc161f4134
rules/pulpos/default_rules: Be verbose by default
...
Hides too many bugs
2022-04-08 01:09:59 +02:00
bluew
564ca51f85
pulpissimo_cv32e40p: Use plusargs to pass simulation parameters
2022-04-08 01:00:46 +02:00
bluew
1fd6eeb0d2
Merge pull request #31 from pulp-platform/vsim_version
...
vsim compatibility updates
2022-04-05 18:02:21 +02:00
Michael Rogenmoser
16675bb56b
symlink work directory to build folder
2022-03-17 11:16:26 +01:00
Michael Rogenmoser
cbf6592ba2
VSIM variable can override vsim version
2022-03-17 11:15:54 +01:00
Corrado Bonfanti
18ab940220
Add AVS BUS support and basic test
...
* Add configuration register to set AVS mode
* Add connections to the SPI controller and txrx interface
* Set idle level of sdio[0] signal of SPI master to '1', according to
the AVS protocol
* Add SPI slave device capability to trigger an event for requesting a read from
master by driving low the MISO (SDATA for AVS) when AVS mode is set.
This happens during tx/rx idle phases
* Add basic Write commit/Read test with pulp-runtime. AVS slave is
simulated in tb_avs.sv and tb_avs_fpga.sv.
2022-02-10 20:03:42 +01:00
aottaviano
735f29948c
treewide: Fix I2C slave module and testsuite
...
* Fix wrong signals in RTL hierarchy
* Add I2C slv tb for FPGA wrapper (dump test)
* Add I2C slv tb for ASIC wrapper (irq test)
* Add dump and irq tests
Please enter the commit message for your changes. Lines starting
2021-12-21 09:45:00 +01:00
bluew
0f4e0e588d
pulp-runtime/control-pulp: Fix vector base set and get
...
So that rt_irq_set_fc_vector_base() and co. pick the correct
implemention using csr mtvec.
2021-11-23 11:01:00 +01:00
bluew
82d3ee5f32
pulp-runtime: Link vsim work dir into build dir
2021-11-09 08:49:15 +01:00
bluew
026a98d56a
pulp-runtime: Fix uart frequency and bad fll access
...
Control-pulp doesn't have an FLL so we hardcode the frequency domain
values. Furthermore we allow these hardcoded values to change depending
on whether we target the FPGA (zcu102) or rtl sim.
2021-11-04 17:47:57 +01:00
bluew
5d17a774bd
Merge pull request #28 from pulp-platform/udma_i2c_update
...
Update UDMA configuration in line with pulp-open
2021-09-24 13:35:36 +02:00
Michael Rogenmoser
b45d16cdd2
Update UDMA configuration in line with pulp-open
2021-09-21 16:51:02 +02:00
bluew
f87c703ac9
Merge commit '637a2a3be976063a1df52ba3d1b0f0e034c7f310' into bump-runtime
2021-08-10 16:03:33 +02:00
bluew
609df214b7
Merge pull request #27 from pulp-platform/fix-hal
...
hal: Add missing return value
2021-08-10 16:01:19 +02:00
bluew
879eb13dbd
hal: Add missing return value
2021-08-10 16:00:56 +02:00
bluew
2ecc920172
Merge pull request #26 from pulp-platform/fix-control-pulp
...
Fix control pulp
2021-07-30 16:58:01 +02:00
bluew
48e1bfb305
rules/control-pulp: Fix wrong include and file paths
2021-07-30 16:57:04 +02:00
bluew
868a80fdcd
hal/control-pulp: Remove unnecessary camera include
...
We don't have a camera interface in control-pulp.
2021-07-30 16:56:14 +02:00
aottaviano
57d9714142
Merge commit 'e20aa040e59ac8796257f2bb25239b6e86aecae5' into zfinx
2021-07-28 14:25:30 +02:00
bluew
3214d697d0
Merge pull request #25 from pulp-platform/control-pulp-zfinx
...
Use zfinx for control-pulp
2021-07-28 04:10:27 +02:00
bluew
863f6009aa
Use zfinx for control-pulp
2021-07-27 23:58:48 +02:00
bluew
cfdfec9df5
Merge pull request #24 from pulp-platform/control-pulp-periph
...
Fixes for I/O in control-pulp
2021-07-26 16:26:08 +02:00
aottaviano
3829557a94
include/archi: Fixes for I/O in control-pulp
2021-07-25 19:53:51 +02:00