litex.git
6 years agocpu/picorv32: Create minimal variant (disable mul/div insns, most speed optimizations).
William D. Jones [Mon, 29 Oct 2018 05:41:02 +0000 (01:41 -0400)]
cpu/picorv32: Create minimal variant (disable mul/div insns, most speed optimizations).

6 years agocpu/picorv32: Extract picorv32 parameters from Instance constructor to facilitate...
William D. Jones [Mon, 29 Oct 2018 04:59:13 +0000 (00:59 -0400)]
cpu/picorv32: Extract picorv32 parameters from Instance constructor to facilitate creating variant CPUs.

6 years agobuild/lattice/prjtrellis: fix default toolchain_path
Florent Kermarrec [Tue, 30 Oct 2018 09:28:12 +0000 (10:28 +0100)]
build/lattice/prjtrellis: fix default toolchain_path

6 years agosoc/cores/spi_flash: add endianness parameter
Florent Kermarrec [Tue, 30 Oct 2018 09:19:21 +0000 (10:19 +0100)]
soc/cores/spi_flash: add endianness parameter

6 years agosoc/interconnect/stream_packet: use reverse_bytes from litex.gen
Florent Kermarrec [Tue, 30 Oct 2018 09:16:55 +0000 (10:16 +0100)]
soc/interconnect/stream_packet: use reverse_bytes from litex.gen

6 years agogen: add common with reverse_bits/reverse_bytes functions
Florent Kermarrec [Tue, 30 Oct 2018 09:15:29 +0000 (10:15 +0100)]
gen: add common with reverse_bits/reverse_bytes functions

6 years agoboards/targets/ulx3s: reduce l2_size
Florent Kermarrec [Tue, 30 Oct 2018 09:14:48 +0000 (10:14 +0100)]
boards/targets/ulx3s: reduce l2_size

6 years agobuild/lattice/prjtrellis: fix typo
Florent Kermarrec [Tue, 30 Oct 2018 09:14:30 +0000 (10:14 +0100)]
build/lattice/prjtrellis: fix typo

6 years agobuild/lattice/prjtrellis: modify generated verilog instead of creating a wrapper...
Florent Kermarrec [Tue, 30 Oct 2018 07:51:23 +0000 (08:51 +0100)]
build/lattice/prjtrellis: modify generated verilog instead of creating a wrapper, handle inouts.

nextpnr expects TRELLIS_IO on all ios, it's not possible to ensure that with a wrapper.
We now just modify the generated verilog to insert the io constraints and TRELLIS_IOs.

6 years agobuild/lattice/common: fix LatticeECPXPrjTrellisTristateImpl
Florent Kermarrec [Tue, 30 Oct 2018 07:32:24 +0000 (08:32 +0100)]
build/lattice/common: fix LatticeECPXPrjTrellisTristateImpl

6 years agoMerge pull request #121 from cr1901/patch-3
Tim Ansell [Tue, 30 Oct 2018 03:54:23 +0000 (20:54 -0700)]
Merge pull request #121 from cr1901/patch-3

Update vivado.py

6 years agoUpdate vivado.py
William D. Jones [Tue, 30 Oct 2018 03:43:32 +0000 (23:43 -0400)]
Update vivado.py

Fix regression which caused Vivado to not be run at all.

6 years agoboards/targets: add ulx3s
Florent Kermarrec [Mon, 29 Oct 2018 18:24:28 +0000 (19:24 +0100)]
boards/targets: add ulx3s

6 years agoboards/platforms: add ulx3s
Florent Kermarrec [Mon, 29 Oct 2018 18:23:59 +0000 (19:23 +0100)]
boards/platforms: add ulx3s

6 years agobuild/lattice/prjtrellis: add inout support
Florent Kermarrec [Mon, 29 Oct 2018 18:23:21 +0000 (19:23 +0100)]
build/lattice/prjtrellis: add inout support

6 years agobuild/lattice/common: add tristate support
Florent Kermarrec [Mon, 29 Oct 2018 18:22:04 +0000 (19:22 +0100)]
build/lattice/common: add tristate support

6 years agoboards/targets/versaecp55g_prjtrellis: simple.py example working, specific target...
Florent Kermarrec [Mon, 29 Oct 2018 15:02:25 +0000 (16:02 +0100)]
boards/targets/versaecp55g_prjtrellis: simple.py example working, specific target no longer needed

simple.py configuration tested:
python3 simple.py --cpu-type=lm32 --gateware-toolchain=prjtrellis litex.boards.platforms.versaecp55g
python3 simple.py --cpu-type=vexriscv --gateware-toolchain=prjtrellis litex.boards.platforms.versaecp55g

6 years agobuild/lattice/prjtrellis: set default toolchain_path to "/opt/prjtrellis"
Florent Kermarrec [Mon, 29 Oct 2018 14:58:54 +0000 (15:58 +0100)]
build/lattice/prjtrellis: set default toolchain_path to "/opt/prjtrellis"

6 years agoboards/targets/simple: add gateware-toolchain parameter
Florent Kermarrec [Mon, 29 Oct 2018 14:56:46 +0000 (15:56 +0100)]
boards/targets/simple: add gateware-toolchain parameter

6 years agoboards/platforms/versaecp55g: use ftdi serial pins
Florent Kermarrec [Mon, 29 Oct 2018 14:39:51 +0000 (15:39 +0100)]
boards/platforms/versaecp55g: use ftdi serial pins

6 years agobuild/lattice/prjtrellis: test and fix iowrapper multi-bit signals support
Florent Kermarrec [Mon, 29 Oct 2018 12:26:29 +0000 (13:26 +0100)]
build/lattice/prjtrellis: test and fix iowrapper multi-bit signals support

6 years agoMerge branch 'master' of http://github.com/enjoy-digital/litex
Florent Kermarrec [Mon, 29 Oct 2018 10:48:10 +0000 (11:48 +0100)]
Merge branch 'master' of github.com/enjoy-digital/litex

6 years agoboards/targets/versaecp55g: use new iowrapper support, basic led blink and ios working :)
Florent Kermarrec [Mon, 29 Oct 2018 10:46:03 +0000 (11:46 +0100)]
boards/targets/versaecp55g: use new iowrapper support, basic led blink and ios working :)

6 years agobuild/lattice/prjtrellis: generate iowrapper to set constraints and TRELLIS_IO
Florent Kermarrec [Mon, 29 Oct 2018 10:44:31 +0000 (11:44 +0100)]
build/lattice/prjtrellis: generate iowrapper to set constraints and TRELLIS_IO

PrjTrellis does not yet have constraint files support, constraints are set
with signal attributes and specific TRELLIS_IO instances are requested. This
iowrapper does this work for us automatically.

Remove this code and replace with a constraint file generation code when
PrjTrellis will have constraint file support.

6 years agogen/fhdl/verilog: set direction to io signals
Florent Kermarrec [Mon, 29 Oct 2018 10:41:04 +0000 (11:41 +0100)]
gen/fhdl/verilog: set direction to io signals

6 years agoMerge pull request #120 from mithro/master
Tim Ansell [Mon, 29 Oct 2018 09:08:20 +0000 (02:08 -0700)]
Merge pull request #120 from mithro/master

litex/build: Always run Vivado.

6 years agolitex/build: Always run Vivado.
Tim 'mithro' Ansell [Mon, 29 Oct 2018 09:04:44 +0000 (02:04 -0700)]
litex/build: Always run Vivado.

When using Yosys for synthesis, still need Vivado for place and route.

6 years agobuild/lattice/prjtrellis: simplify code, remove some workarounds
Florent Kermarrec [Mon, 29 Oct 2018 07:49:32 +0000 (08:49 +0100)]
build/lattice/prjtrellis: simplify code, remove some workarounds

6 years agobuild/xilinx/vivado: fix merge issue
Florent Kermarrec [Mon, 29 Oct 2018 07:26:13 +0000 (08:26 +0100)]
build/xilinx/vivado: fix merge issue

6 years agoboards/targets: add versa ecp55g prjtrellis target (experimental)
Florent Kermarrec [Sun, 28 Oct 2018 16:55:40 +0000 (17:55 +0100)]
boards/targets: add versa ecp55g prjtrellis target (experimental)

6 years agobuild/lattice: add initial prjtrellis support
Florent Kermarrec [Sun, 28 Oct 2018 16:51:16 +0000 (17:51 +0100)]
build/lattice: add initial prjtrellis support

6 years agobuild/lattice/diamond: use bash on linux
Florent Kermarrec [Sun, 28 Oct 2018 14:40:52 +0000 (15:40 +0100)]
build/lattice/diamond: use bash on linux

6 years agobuild/lattice: improve special_overrides names (vendor_family)
Florent Kermarrec [Sun, 28 Oct 2018 14:40:10 +0000 (15:40 +0100)]
build/lattice: improve special_overrides names (vendor_family)

6 years agoMerge pull request #114 from mithro/xilinx+yosys
enjoy-digital [Sun, 28 Oct 2018 14:00:06 +0000 (15:00 +0100)]
Merge pull request #114 from mithro/xilinx+yosys

WIP: Allow Yosys to be used for synthesis with Vivado

6 years agoMerge branch 'master' into xilinx+yosys
enjoy-digital [Sun, 28 Oct 2018 13:59:03 +0000 (14:59 +0100)]
Merge branch 'master' into xilinx+yosys

6 years agoMerge pull request #118 from mithro/uart-sync
enjoy-digital [Sun, 28 Oct 2018 07:02:22 +0000 (08:02 +0100)]
Merge pull request #118 from mithro/uart-sync

uart: Enable buffering the FIFO.

6 years agouart: Enable buffering the FIFO.
Tim 'mithro' Ansell [Sat, 27 Oct 2018 23:02:53 +0000 (16:02 -0700)]
uart: Enable buffering the FIFO.

On the iCE40 FPGA, adding buffering allows the SyncFIFO to be placed in
block RAM rather than consuming a large amount of resources.

6 years agoREADME: improve instructions for litex_sim
Florent Kermarrec [Sat, 27 Oct 2018 09:06:53 +0000 (11:06 +0200)]
README: improve instructions for litex_sim

6 years agobuild/sim/verilator: don't use THEADS parameters when threads=1
Florent Kermarrec [Sat, 27 Oct 2018 09:06:34 +0000 (11:06 +0200)]
build/sim/verilator: don't use THEADS parameters when threads=1

Allow using old (non multi-threaded) version of Verilator

6 years agosoc_sdram: update litedram
Florent Kermarrec [Fri, 19 Oct 2018 16:37:55 +0000 (18:37 +0200)]
soc_sdram: update litedram

6 years agobios/sdram: s7ddrphy now has bitslip in fabric, show scan for each module/bitslip...
Florent Kermarrec [Thu, 18 Oct 2018 11:42:51 +0000 (13:42 +0200)]
bios/sdram: s7ddrphy now has bitslip in fabric, show scan for each module/bitslip and remove silent mode

6 years agobuild/xilinx/vivado: enable xpm libraries
Florent Kermarrec [Thu, 18 Oct 2018 07:25:34 +0000 (09:25 +0200)]
build/xilinx/vivado: enable xpm libraries

6 years agosoc/cores/clock: add margin parameter to create_clkout (default = 1%)
Florent Kermarrec [Tue, 16 Oct 2018 12:57:37 +0000 (14:57 +0200)]
soc/cores/clock: add margin parameter to create_clkout (default = 1%)

6 years agobios/sdram: improve write/read leveling
Florent Kermarrec [Wed, 10 Oct 2018 08:42:56 +0000 (10:42 +0200)]
bios/sdram: improve write/read leveling

write_leveling: select last 0 to 1 transition.
read_leveling: do it by module (select best bitslip for each module)

6 years agoplatforms/kc705: add ddram_dual_rank
Florent Kermarrec [Tue, 9 Oct 2018 13:39:03 +0000 (15:39 +0200)]
platforms/kc705: add ddram_dual_rank

6 years agobios/main: handle all types of carriage return (\r, \n, \r\n or \n\r)
Florent Kermarrec [Tue, 9 Oct 2018 08:06:32 +0000 (10:06 +0200)]
bios/main: handle all types of carriage return (\r, \n, \r\n or \n\r)

6 years agoMerge pull request #116 from stffrdhrn/sim-uart
enjoy-digital [Tue, 9 Oct 2018 05:32:31 +0000 (07:32 +0200)]
Merge pull request #116 from stffrdhrn/sim-uart

sim: serial: Send '\r\n' instead of just '\n'

6 years agosim: serial: Send '\r\n' instead of just '\n'
Stafford Horne [Tue, 9 Oct 2018 02:16:05 +0000 (11:16 +0900)]
sim: serial: Send '\r\n' instead of just '\n'

This fixes an issue when running with the HDMI2USB firmware which
expects \r\n to come from the UART.  Since the verilator adapter
is just sending \n commands cannot be executed.

Also, one minor whitespace cleanup. (could remove if needed)

6 years agocpu_interface: fix select_triple when only one specified
Florent Kermarrec [Mon, 8 Oct 2018 15:01:04 +0000 (17:01 +0200)]
cpu_interface: fix select_triple when only one specified

6 years agosoc/integration/cpu_interface: generate error if unable to find any of the cross...
Florent Kermarrec [Sat, 6 Oct 2018 19:32:38 +0000 (21:32 +0200)]
soc/integration/cpu_interface: generate error if unable to find any of the cross compilation toolchains

6 years agosoc_core: add csr range check
Florent Kermarrec [Sat, 6 Oct 2018 18:55:16 +0000 (20:55 +0200)]
soc_core: add csr range check

6 years agobuild.xilinx: Convert attributes to something Yosys understands.
Tim 'mithro' Ansell [Fri, 5 Oct 2018 19:48:30 +0000 (12:48 -0700)]
build.xilinx: Convert attributes to something Yosys understands.

Convert keep, dont_touch and async_reg to something Yosys understands.

Write out an EDIF file with the attributes so that Vivado can use them.
(Requires Yosys with commit
https://github.com/YosysHQ/yosys/commit/115ca576475a2e8d30e63b339ae6a1b5db6906a6)

6 years agoMerge pull request #112 from cr1901/8k-b-evn
enjoy-digital [Thu, 4 Oct 2018 19:12:33 +0000 (21:12 +0200)]
Merge pull request #112 from cr1901/8k-b-evn

build/platforms: Add ice40_hx8k_b_evn from Migen.

6 years agoMerge pull request #113 from stffrdhrn/litex-trivial
enjoy-digital [Thu, 4 Oct 2018 14:25:11 +0000 (16:25 +0200)]
Merge pull request #113 from stffrdhrn/litex-trivial

Litex trivial

6 years agoFix help for or1k builds
Stafford Horne [Thu, 4 Oct 2018 14:09:49 +0000 (23:09 +0900)]
Fix help for or1k builds

The help said cpu-type could be mor1kx, which is correct but you must
pass or1k to get mor1kx.  Fix the message to properly represent what
needs to be passed to the commandline.

6 years agoFix compiler warnings from GCC 8.1
Stafford Horne [Thu, 4 Oct 2018 14:07:48 +0000 (23:07 +0900)]
Fix compiler warnings from GCC 8.1

Fix these 2 warnings:

 litex/build/sim/core/libdylib.c:42:5: warning: 'strncpy' specified bound 2048 equals destination size
 [-Wstringop-truncation]
     strncpy(last_err, s, ERR_MAX_SIZE);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In function 'set_last_error',

 litex/soc/software/libbase/exception.c:28:13: warning: function declaration isn't a prototype [-Wstrict-prototypes]
  static char emerg_getc()

6 years agobuild/xilinx/common: update XilinxDDRInputImplS7 and XilinxDDRInputImplKU (from migen)
Florent Kermarrec [Thu, 4 Oct 2018 06:17:44 +0000 (08:17 +0200)]
build/xilinx/common: update XilinxDDRInputImplS7 and XilinxDDRInputImplKU (from migen)

6 years agoxilinx/viviado: Allow yosys for synthesis.
Tim 'mithro' Ansell [Thu, 4 Oct 2018 04:58:03 +0000 (21:58 -0700)]
xilinx/viviado: Allow yosys for synthesis.

6 years agocpu/mor1kx: Adding verilog include directory.
Tim 'mithro' Ansell [Thu, 4 Oct 2018 04:57:24 +0000 (21:57 -0700)]
cpu/mor1kx: Adding verilog include directory.

6 years agobuild/platforms: Add ice40_hx8k_b_evn from Migen.
William D. Jones [Wed, 3 Oct 2018 22:21:45 +0000 (18:21 -0400)]
build/platforms: Add ice40_hx8k_b_evn from Migen.

6 years agobuild.xilinx: Run `phys_opt_design` and generate timing report.
Tim 'mithro' Ansell [Wed, 3 Oct 2018 23:02:43 +0000 (16:02 -0700)]
build.xilinx: Run `phys_opt_design` and generate timing report.

Makes the flow more similar to migen.

6 years agocores/cpu: revert vexriscv (it seems there is a regression in last version)
Florent Kermarrec [Tue, 2 Oct 2018 10:20:32 +0000 (12:20 +0200)]
cores/cpu: revert vexriscv (it seems there is a regression in last version)

6 years agotargets/sim: fix integrated_main_ram_size when with_sdram
Florent Kermarrec [Tue, 2 Oct 2018 09:31:08 +0000 (11:31 +0200)]
targets/sim: fix integrated_main_ram_size when with_sdram

6 years agobios/sdram: rewrite write_leveling (simplify and improve robustness)
Florent Kermarrec [Mon, 1 Oct 2018 13:38:19 +0000 (15:38 +0200)]
bios/sdram: rewrite write_leveling (simplify and improve robustness)

6 years agoplatforms/genesys2: add eth clock timing constraint
Florent Kermarrec [Mon, 1 Oct 2018 13:37:34 +0000 (15:37 +0200)]
platforms/genesys2: add eth clock timing constraint

6 years agosoc/cores/clock: add expose_drp on S7PLL/S7MMCM
Florent Kermarrec [Fri, 28 Sep 2018 11:02:10 +0000 (13:02 +0200)]
soc/cores/clock: add expose_drp on S7PLL/S7MMCM

6 years agoMerge pull request #109 from cr1901/xip-improve
enjoy-digital [Tue, 25 Sep 2018 13:32:04 +0000 (15:32 +0200)]
Merge pull request #109 from cr1901/xip-improve

Improve XIP Support

6 years agotargets: use new clock abstraction on all 7-series targets
Florent Kermarrec [Tue, 25 Sep 2018 07:31:30 +0000 (09:31 +0200)]
targets: use new clock abstraction on all 7-series targets

6 years agosoc/cores/clock: different clkin_freq_range for pll and mmcm
Florent Kermarrec [Tue, 25 Sep 2018 07:09:47 +0000 (09:09 +0200)]
soc/cores/clock: different clkin_freq_range for pll and mmcm

6 years agosoc/cores/clock: different vco_freq_range for pll and mmcm
Florent Kermarrec [Tue, 25 Sep 2018 07:04:38 +0000 (09:04 +0200)]
soc/cores/clock: different vco_freq_range for pll and mmcm

6 years agosoc/core/clock: allow selecting buffer type (None, BUFG, BUFR). (default = BUFG)
Florent Kermarrec [Tue, 25 Sep 2018 06:35:50 +0000 (08:35 +0200)]
soc/core/clock: allow selecting buffer type (None, BUFG, BUFR). (default = BUFG)

6 years agosoc/cores/clock: create specific S7IDELAYCTRL module
Florent Kermarrec [Mon, 24 Sep 2018 21:22:59 +0000 (23:22 +0200)]
soc/cores/clock: create specific S7IDELAYCTRL module

6 years agosoc/cores/clock: add S7MMCM support
Florent Kermarrec [Mon, 24 Sep 2018 21:20:12 +0000 (23:20 +0200)]
soc/cores/clock: add S7MMCM support

6 years agosoc/cores/clocks/S7PLL: add speedgrade support, default to -1 (slowest)
Florent Kermarrec [Mon, 24 Sep 2018 20:58:23 +0000 (22:58 +0200)]
soc/cores/clocks/S7PLL: add speedgrade support, default to -1 (slowest)

6 years agotargets/arty: use new clock abstraction module (compile, untested on board)
Florent Kermarrec [Mon, 24 Sep 2018 20:49:30 +0000 (22:49 +0200)]
targets/arty: use new clock abstraction module (compile, untested on board)

6 years agosoc/cores: init clock abstraction module
Florent Kermarrec [Mon, 24 Sep 2018 18:25:57 +0000 (20:25 +0200)]
soc/cores: init clock abstraction module

6 years agoDistinguish crt0 variants more clearly, update BIOS to use CTR variant (as it has...
William D. Jones [Mon, 24 Sep 2018 18:48:54 +0000 (14:48 -0400)]
Distinguish crt0 variants more clearly, update BIOS to use CTR variant (as it has no .data section).

6 years agointegration/builder: Create EXECUTE_IN_PLACE Makefile variable to complement COPY_TO_...
William D. Jones [Mon, 24 Sep 2018 16:28:45 +0000 (12:28 -0400)]
integration/builder: Create EXECUTE_IN_PLACE Makefile variable to complement COPY_TO_MAIN_RAM.

6 years agointegration/builder: Add LiteX define to generated variables (to distinguish MiSoC...
William D. Jones [Mon, 24 Sep 2018 15:04:57 +0000 (11:04 -0400)]
integration/builder: Add LiteX define to generated variables (to distinguish MiSoC and LiteX).

6 years agosim/verilator: add multithread support (default=1)
Florent Kermarrec [Mon, 24 Sep 2018 10:43:29 +0000 (12:43 +0200)]
sim/verilator: add multithread support (default=1)

6 years agosoc_core: use cpu instead of cpu_or_bridge internally (keep retro-compat for now)
Florent Kermarrec [Mon, 24 Sep 2018 08:59:32 +0000 (10:59 +0200)]
soc_core: use cpu instead of cpu_or_bridge internally (keep retro-compat for now)

6 years agoboards/targets: uniformize things between targets
Florent Kermarrec [Mon, 24 Sep 2018 08:58:10 +0000 (10:58 +0200)]
boards/targets: uniformize things between targets

6 years agosoc_core/get_mem_data: add endianness support and use it in builder/initialize_rom...
Florent Kermarrec [Mon, 24 Sep 2018 06:01:32 +0000 (08:01 +0200)]
soc_core/get_mem_data: add endianness support and use it in builder/initialize_rom to avoid duplication

6 years agocores/cpu: add software informations to cpu and simplify cpu_interface
Florent Kermarrec [Mon, 24 Sep 2018 00:45:05 +0000 (02:45 +0200)]
cores/cpu: add software informations to cpu and simplify cpu_interface

6 years agoboards/plarforms: fix issues found while testing simple design on all platforms
Florent Kermarrec [Mon, 24 Sep 2018 00:03:30 +0000 (02:03 +0200)]
boards/plarforms: fix issues found while testing simple design on all platforms

6 years agotest/test_targets: test simple design with all platforms
Florent Kermarrec [Mon, 24 Sep 2018 00:01:47 +0000 (02:01 +0200)]
test/test_targets: test simple design with all platforms

6 years agosoc_core: add uart-stub argument
Florent Kermarrec [Mon, 24 Sep 2018 00:01:15 +0000 (02:01 +0200)]
soc_core: add uart-stub argument

6 years agosetup.py: add litex_simple exec (to ease building simple design)
Florent Kermarrec [Sun, 23 Sep 2018 23:24:51 +0000 (01:24 +0200)]
setup.py: add litex_simple exec (to ease building simple design)

6 years agotest/test_targets: update and reorganize targets
Florent Kermarrec [Sun, 23 Sep 2018 23:15:33 +0000 (01:15 +0200)]
test/test_targets: update and reorganize targets

6 years agoease RemoteClient import
Florent Kermarrec [Sun, 23 Sep 2018 08:23:00 +0000 (10:23 +0200)]
ease RemoteClient import

6 years agoMerge pull request #108 from xobs/use-csr-accessors
enjoy-digital [Sun, 23 Sep 2018 07:59:37 +0000 (09:59 +0200)]
Merge pull request #108 from xobs/use-csr-accessors

Use csr accessors when generating `csr.h`

6 years agocsr: use external csr_readl()/csr_writel() if present
Sean Cross [Sat, 22 Sep 2018 14:33:15 +0000 (16:33 +0200)]
csr: use external csr_readl()/csr_writel() if present

If the variable CSR_ACCESSORS_DEFINED is set, then use external
csr_readl() and csr_writel() instead of locally-generated inline
functions.

With this patch, csr.h can be used with etherbone.h and litex_server to
prototype drivers remotely.

Signed-off-by: Sean Cross <sean@xobs.io>
6 years agocsr: use readl()/writel() accessors for accessing mmio
Sean Cross [Sat, 22 Sep 2018 14:30:05 +0000 (16:30 +0200)]
csr: use readl()/writel() accessors for accessing mmio

Instead of directly dereferencing pointers, use variants on readl()/writel().
This way we can replace these functions with others for remote access
when writing drivers and code outside of the litex environment.

Signed-off-by: Sean Cross <sean@xobs.io>
6 years agoMerge pull request #106 from cr1901/data-crt0
Tim Ansell [Sat, 22 Sep 2018 14:21:35 +0000 (15:21 +0100)]
Merge pull request #106 from cr1901/data-crt0

libbase/crt0-lm32.S: Add provisions for loading .data from flash.

6 years agolibbase/crt0-lm32.S: Add provisions for loading .data from flash.
William D. Jones [Fri, 21 Sep 2018 14:14:50 +0000 (10:14 -0400)]
libbase/crt0-lm32.S: Add provisions for loading .data from flash.

:100644 100644 e0cd7153 34428845 M litex/soc/software/libbase/crt0-lm32.S

6 years agoREADME: add migen/litex clarification
Florent Kermarrec [Fri, 21 Sep 2018 05:37:31 +0000 (07:37 +0200)]
README: add migen/litex clarification

6 years agotargets/sim: generate analyzer.csv
Florent Kermarrec [Thu, 20 Sep 2018 10:20:48 +0000 (12:20 +0200)]
targets/sim: generate analyzer.csv

6 years agotargets/sim: generate csr.csv
Florent Kermarrec [Thu, 20 Sep 2018 09:17:18 +0000 (11:17 +0200)]
targets/sim: generate csr.csv

6 years agotargets/sim: add rom-init
Florent Kermarrec [Wed, 19 Sep 2018 23:14:00 +0000 (01:14 +0200)]
targets/sim: add rom-init

6 years agotargets/sim: add ram-init param to allow initializing ram from file (faster than...
Florent Kermarrec [Wed, 19 Sep 2018 22:49:38 +0000 (00:49 +0200)]
targets/sim: add ram-init param to allow initializing ram from file (faster than tftp)