litex.git
5 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

5 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

5 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)

5 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)

5 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

5 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).

5 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.

5 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).

5 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)

5 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)

5 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

5 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

5 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

5 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

5 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

5 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

5 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)

5 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

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

5 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`

5 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>
5 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>
5 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.

5 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

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

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

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

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

5 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)

5 years agointegration/soc_core: add get_mem_data function to read memory content from file
Florent Kermarrec [Wed, 19 Sep 2018 22:46:06 +0000 (00:46 +0200)]
integration/soc_core: add get_mem_data function to read memory content from file

5 years agosoc/intergration/builder: fix when no sdram
Florent Kermarrec [Wed, 19 Sep 2018 21:59:42 +0000 (23:59 +0200)]
soc/intergration/builder: fix when no sdram

5 years agotargets/sim: merge in a single class and ease configuration
Florent Kermarrec [Wed, 19 Sep 2018 20:19:51 +0000 (22:19 +0200)]
targets/sim: merge in a single class and ease configuration

5 years agoMerge branch 'master' of http://github.com/enjoy-digital/litex
Florent Kermarrec [Wed, 19 Sep 2018 17:21:14 +0000 (19:21 +0200)]
Merge branch 'master' of github.com/enjoy-digital/litex

5 years agotargets: replace MiniSoC with EthernetSoC
Florent Kermarrec [Wed, 19 Sep 2018 17:19:50 +0000 (19:19 +0200)]
targets: replace MiniSoC with EthernetSoC

5 years agotargets/sim: add EtherboneSoC target (allow accessing wishbone over in simulation...
Florent Kermarrec [Wed, 19 Sep 2018 17:17:32 +0000 (19:17 +0200)]
targets/sim: add EtherboneSoC target (allow accessing wishbone over in simulation with litex_server)

5 years agoMerge pull request #101 from cr1901/icestorm-migen-pull
enjoy-digital [Tue, 18 Sep 2018 06:19:09 +0000 (08:19 +0200)]
Merge pull request #101 from cr1901/icestorm-migen-pull

Icestorm Improvements

5 years agoPull in b2740d9 from Migen. nextpnr now default, write out build scripts on dry run.
William D. Jones [Tue, 18 Sep 2018 01:17:24 +0000 (21:17 -0400)]
Pull in b2740d9 from Migen. nextpnr now default, write out build scripts on dry run.

5 years agobios/sdram: mode sdhw()
Florent Kermarrec [Thu, 13 Sep 2018 04:33:54 +0000 (06:33 +0200)]
bios/sdram: mode sdhw()

5 years agobios/sdram: add missing #ifdef
Florent Kermarrec [Thu, 13 Sep 2018 04:30:37 +0000 (06:30 +0200)]
bios/sdram: add missing #ifdef

5 years agotargets: self.pll_sys --> pll_sys
Florent Kermarrec [Thu, 13 Sep 2018 03:31:35 +0000 (05:31 +0200)]
targets: self.pll_sys --> pll_sys

5 years agobios/sdram: show all read scans when failing.
Florent Kermarrec [Thu, 13 Sep 2018 03:26:51 +0000 (05:26 +0200)]
bios/sdram: show all read scans when failing.

5 years agocpu/lm32: re-enable multiplier/divider in minimal variant (does not seem to work...
Florent Kermarrec [Wed, 12 Sep 2018 04:02:23 +0000 (06:02 +0200)]
cpu/lm32: re-enable multiplier/divider in minimal variant (does not seem to work correctly on hardware otherwise)

5 years agosoc_sdram: update with litedram
Florent Kermarrec [Sun, 9 Sep 2018 00:10:50 +0000 (02:10 +0200)]
soc_sdram: update with litedram

5 years agoMerge pull request #99 from cr1901/mk-copy-main-ram
enjoy-digital [Sat, 8 Sep 2018 01:55:23 +0000 (03:55 +0200)]
Merge pull request #99 from cr1901/mk-copy-main-ram

Add COPY_TO_MAIN_RAM generated Makefile variable to distinguish systems with/without "main_ram" region.

5 years agoAdd COPY_TO_MAIN_RAM generated Makefile variable to distinguish systems with/without...
William D. Jones [Sat, 8 Sep 2018 01:49:24 +0000 (21:49 -0400)]
Add COPY_TO_MAIN_RAM generated Makefile variable to distinguish systems with/without main_ram region.

5 years agoMerge pull request #100 from cr1901/tinyprog-fix
enjoy-digital [Sat, 8 Sep 2018 01:48:04 +0000 (03:48 +0200)]
Merge pull request #100 from cr1901/tinyprog-fix

lattice/programmer: Use --program-image option with tinyprog if addre…

5 years agosoc_sdram: revert vivado l2 cache workaround (still seems to cause issues on some...
Florent Kermarrec [Fri, 7 Sep 2018 09:51:17 +0000 (11:51 +0200)]
soc_sdram: revert vivado l2 cache workaround (still seems to cause issues on some cases...)

5 years agotargets: pass endianness to LiteEThMAC, tftp working with RISC-V, still need to fix...
Florent Kermarrec [Fri, 7 Sep 2018 08:37:15 +0000 (10:37 +0200)]
targets: pass endianness to LiteEThMAC, tftp working with RISC-V, still need to fix txlen

5 years agolattice/programmer: Use --program-image option with tinyprog if address is given.
William D. Jones [Fri, 7 Sep 2018 08:05:49 +0000 (04:05 -0400)]
lattice/programmer: Use --program-image option with tinyprog if address is given.

5 years agolibnet/microudp: (WIP) fix endianness issues
Jean-François Nguyen [Mon, 3 Sep 2018 18:31:16 +0000 (20:31 +0200)]
libnet/microudp: (WIP) fix endianness issues

5 years agoMerge pull request #98 from jfng/fix_typo
enjoy-digital [Thu, 6 Sep 2018 16:23:29 +0000 (18:23 +0200)]
Merge pull request #98 from jfng/fix_typo

fix typo and unused include

5 years agofix typo and unused include
Jean-François Nguyen [Thu, 6 Sep 2018 15:07:14 +0000 (17:07 +0200)]
fix typo and unused include

5 years agocpu/minerva: add workaround on import until code is released
Florent Kermarrec [Thu, 6 Sep 2018 14:40:30 +0000 (16:40 +0200)]
cpu/minerva: add workaround on import until code is released

5 years agosetup.py: create litex_sim exec to ease simulation
Florent Kermarrec [Thu, 6 Sep 2018 06:48:14 +0000 (08:48 +0200)]
setup.py: create litex_sim exec to ease simulation

5 years agoadd Minerva support
Jean-François Nguyen [Wed, 5 Sep 2018 18:36:17 +0000 (20:36 +0200)]
add Minerva support

5 years agolitex_server: update pcie and remove bar_size parameter
Florent Kermarrec [Wed, 5 Sep 2018 11:01:51 +0000 (13:01 +0200)]
litex_server: update pcie and remove bar_size parameter

5 years agoMerge pull request #96 from cr1901/tinyfpga_bx
Tim Ansell [Tue, 4 Sep 2018 03:49:33 +0000 (20:49 -0700)]
Merge pull request #96 from cr1901/tinyfpga_bx

build/platforms: Add TinyFPGA BX board and programmer.

5 years agobuild/platforms: Add TinyFPGA BX board and programmer.
William D. Jones [Tue, 28 Aug 2018 21:08:45 +0000 (17:08 -0400)]
build/platforms: Add TinyFPGA BX board and programmer.

5 years agoMerge pull request #95 from cr1901/lm32-lite
Tim Ansell [Tue, 4 Sep 2018 03:13:45 +0000 (20:13 -0700)]
Merge pull request #95 from cr1901/lm32-lite

Add lm32 "lite" variant, remove mult/div from "minimal" and update compiler flags accordingly.

5 years agoAdd lm32 "lite" variant, remove mult/div from "minimal" and update compiler flags...
William D. Jones [Mon, 3 Sep 2018 23:48:19 +0000 (19:48 -0400)]
Add lm32 "lite" variant, remove mult/div from "minimal" and update compiler flags accordingly.

5 years agoREADME: update
Florent Kermarrec [Fri, 31 Aug 2018 06:44:22 +0000 (08:44 +0200)]
README: update

5 years agoMerge pull request #94 from cr1901/nextpnr
enjoy-digital [Tue, 28 Aug 2018 09:46:35 +0000 (11:46 +0200)]
Merge pull request #94 from cr1901/nextpnr

lattice/icestorm: Add nextpnr pnr as alternate pnr tool.

5 years agolattice/icestorm: Add nextpnr pnr as alternate pnr tool.
William D. Jones [Tue, 28 Aug 2018 09:17:32 +0000 (05:17 -0400)]
lattice/icestorm: Add nextpnr pnr as alternate pnr tool.

5 years agoMerge pull request #93 from phlipped/master
Tim Ansell [Fri, 24 Aug 2018 04:08:28 +0000 (14:08 +1000)]
Merge pull request #93 from phlipped/master

Fix URL for liteUSB

5 years agoFix URL for liteUSB
phlipped [Fri, 24 Aug 2018 04:03:16 +0000 (14:03 +1000)]
Fix URL for liteUSB

5 years agoMerge pull request #91 from cr1901/ignore-fix
Tim Ansell [Thu, 23 Aug 2018 03:17:40 +0000 (13:17 +1000)]
Merge pull request #91 from cr1901/ignore-fix

.gitignore: litex/build contains valid source, so exclude from .gitig…

5 years agoMerge pull request #92 from cr1901/l2-gate
Tim Ansell [Thu, 23 Aug 2018 03:15:49 +0000 (13:15 +1000)]
Merge pull request #92 from cr1901/l2-gate

software/bios: Gate flush_l2_cache() if L2 Cache isn't present.

5 years ago.gitignore: litex/build contains valid source, so exclude from .gitignore.
William D. Jones [Thu, 23 Aug 2018 03:04:20 +0000 (23:04 -0400)]
.gitignore: litex/build contains valid source, so exclude from .gitignore.

5 years agosoftware/bios: Gate flush_l2_cache() if L2 Cache isn't present.
William D. Jones [Thu, 23 Aug 2018 03:03:08 +0000 (23:03 -0400)]
software/bios: Gate flush_l2_cache() if L2 Cache isn't present.

5 years agobios/sdram: improve/simplify read window selection
Florent Kermarrec [Wed, 22 Aug 2018 21:15:32 +0000 (23:15 +0200)]
bios/sdram: improve/simplify read window selection

Compute a score for each window and select the best

5 years agosim: run as root only when needed (ethernet module present)
Florent Kermarrec [Wed, 22 Aug 2018 13:20:28 +0000 (15:20 +0200)]
sim: run as root only when needed (ethernet module present)

5 years agobuilder: change call to get_sdram_phy_c_header and also pass timing_settings
Florent Kermarrec [Wed, 22 Aug 2018 12:28:37 +0000 (14:28 +0200)]
builder: change call to get_sdram_phy_c_header and also pass timing_settings

5 years agosoc_sdram: cosmetic
Florent Kermarrec [Wed, 22 Aug 2018 11:40:22 +0000 (13:40 +0200)]
soc_sdram: cosmetic

5 years agosoc_sdram: vivado is now able to implement the l2_cache correctly (tested with vivado...
Florent Kermarrec [Wed, 22 Aug 2018 11:28:23 +0000 (13:28 +0200)]
soc_sdram: vivado is now able to implement the l2_cache correctly (tested with vivado 2017.2 and >)

5 years agosoc_core: add cpu_endianness
Florent Kermarrec [Tue, 21 Aug 2018 17:10:22 +0000 (19:10 +0200)]
soc_core: add cpu_endianness

5 years agobuilder: get_sdram_phy_header renamed to get_sdram_phy_c_header
Florent Kermarrec [Tue, 21 Aug 2018 16:15:57 +0000 (18:15 +0200)]
builder: get_sdram_phy_header renamed to get_sdram_phy_c_header

5 years agosoc_sdram: use new LiteDRAMWishbone2Native and port.data_width
Florent Kermarrec [Tue, 21 Aug 2018 12:52:28 +0000 (14:52 +0200)]
soc_sdram: use new LiteDRAMWishbone2Native and port.data_width

5 years agovexriscv: update
Florent Kermarrec [Tue, 21 Aug 2018 09:04:15 +0000 (11:04 +0200)]
vexriscv: update

5 years agosoc/integration: move sdram_init to litedram
Florent Kermarrec [Mon, 20 Aug 2018 13:36:51 +0000 (15:36 +0200)]
soc/integration: move sdram_init to litedram

5 years agoVexriscv: update csr-defs.h
Florent Kermarrec [Sat, 18 Aug 2018 12:15:43 +0000 (14:15 +0200)]
Vexriscv: update csr-defs.h

5 years agoupdate Vexriscv
Florent Kermarrec [Sat, 18 Aug 2018 12:14:00 +0000 (14:14 +0200)]
update Vexriscv

5 years agobios/sdram: changes to ease manual read window selection
Florent Kermarrec [Sat, 18 Aug 2018 11:45:22 +0000 (13:45 +0200)]
bios/sdram: changes to ease manual read window selection

5 years agolitex_server: allow multiple clients to connect to the same server
Florent Kermarrec [Fri, 17 Aug 2018 14:08:32 +0000 (16:08 +0200)]
litex_server: allow multiple clients to connect to the same server

5 years agocpu/lm32: add minimal variant with no i/d cache, pipelined barrel shifter and multipl...
Florent Kermarrec [Fri, 17 Aug 2018 06:32:32 +0000 (08:32 +0200)]
cpu/lm32: add minimal variant with no i/d cache, pipelined barrel shifter and multiplier (useful to build SoC on small FPGAs like ice40)

5 years agobios/boot: flush all caches before running from ram
Florent Kermarrec [Thu, 16 Aug 2018 17:47:43 +0000 (19:47 +0200)]
bios/boot: flush all caches before running from ram

5 years agosim/verilator: catch ctrl-c on exit and revert default termios settings
Florent Kermarrec [Thu, 16 Aug 2018 13:13:27 +0000 (15:13 +0200)]
sim/verilator: catch ctrl-c on exit and revert default termios settings

5 years agocpu_interace: use riscv64-unknown-elf if available else riscv32-unknown-elf
Florent Kermarrec [Thu, 16 Aug 2018 08:03:43 +0000 (10:03 +0200)]
cpu_interace: use riscv64-unknown-elf if available else riscv32-unknown-elf

5 years agobios/sdram: fix read_level_scan result
Florent Kermarrec [Tue, 14 Aug 2018 16:33:28 +0000 (18:33 +0200)]
bios/sdram: fix read_level_scan result

5 years agoMerge pull request #86 from pgielda/patch-1
enjoy-digital [Sun, 12 Aug 2018 17:34:52 +0000 (19:34 +0200)]
Merge pull request #86 from pgielda/patch-1

Fix generating csr.csv file

5 years agoFix generating csr.csv file
Peter Gielda [Sun, 12 Aug 2018 11:37:39 +0000 (13:37 +0200)]
Fix generating csr.csv file

Fix generating csr.csv file when no absolute path is given.

6 years agosoc/intergration/cpu_interface: typo
Florent Kermarrec [Wed, 8 Aug 2018 06:53:54 +0000 (08:53 +0200)]
soc/intergration/cpu_interface: typo

6 years agobios/main: use edata instead of erodata
Florent Kermarrec [Tue, 7 Aug 2018 07:02:09 +0000 (09:02 +0200)]
bios/main: use edata instead of erodata

6 years agopicorv32: add reset signal
Florent Kermarrec [Tue, 7 Aug 2018 06:59:34 +0000 (08:59 +0200)]
picorv32: add reset signal

6 years agosoc/software/bios: add reboot command
Florent Kermarrec [Mon, 6 Aug 2018 10:23:50 +0000 (12:23 +0200)]
soc/software/bios: add reboot command

6 years agosoc/integration/soc_core: add Controller with reset, scratch and bus_errors registers
Florent Kermarrec [Mon, 6 Aug 2018 10:23:16 +0000 (12:23 +0200)]
soc/integration/soc_core: add Controller with reset, scratch and bus_errors registers

6 years agosoc/interconnect/wishbone: add Timeout to avoid stalling bus when not responding...
Florent Kermarrec [Mon, 6 Aug 2018 10:21:18 +0000 (12:21 +0200)]
soc/interconnect/wishbone: add Timeout to avoid stalling bus when not responding and generate error.

6 years agosoc/cores/cpu: add reset signal
Florent Kermarrec [Mon, 6 Aug 2018 10:19:23 +0000 (12:19 +0200)]
soc/cores/cpu: add reset signal

6 years agoMerge pull request #81 from xobs/vexriscv-to-wishbone
enjoy-digital [Fri, 27 Jul 2018 09:59:28 +0000 (11:59 +0200)]
Merge pull request #81 from xobs/vexriscv-to-wishbone

Push Vexriscv debug directly on the Wishbone bus

6 years agotools: remove vexriscv_debug
Sean Cross [Fri, 27 Jul 2018 07:21:19 +0000 (15:21 +0800)]
tools: remove vexriscv_debug

This program is no longer needed.

The `openocd_vexriscv` package natively supports `etherbone`, and now
that the vexriscv debug module is available on Wishbone instead of as a
CSR, this module no longer works.

This change simplifies both tooling (because there is one fewer program
to run) and integration (because you don't need to modify your CSRs
anymore, just `register_mem()`.)

Signed-off-by: Sean Cross <sean@xobs.io>
6 years agovexriscv: reset wishbone bus on CPU reset
Sean Cross [Fri, 27 Jul 2018 07:02:31 +0000 (15:02 +0800)]
vexriscv: reset wishbone bus on CPU reset

If the CPU is resetting during a Wishbone transfer, assert the ERR line.

Because the resetOut line is likely multiple cycles long, this should
give Wishbone enough time to finish its transfer, which will cause d.stb
and i.stb to go to 0, which will return d_err and i_err to 0.

Signed-off-by: Sean Cross <sean@xobs.io>