Megan Wachs [Fri, 22 Sep 2017 20:55:55 +0000 (13:55 -0700)]
signal_bundles: add missing file
Megan Wachs [Fri, 22 Sep 2017 20:17:31 +0000 (13:17 -0700)]
pinctrl: Create extendable Signal classes
Megan Wachs [Wed, 20 Sep 2017 23:43:42 +0000 (16:43 -0700)]
device pins: Create classes that can be something other than a Pin subclass
Megan Wachs [Wed, 20 Sep 2017 23:21:21 +0000 (16:21 -0700)]
SPI: Make it easier to build arbitrary bundles
Henry Cook [Fri, 15 Sep 2017 21:54:10 +0000 (14:54 -0700)]
uart: use PeripheryBusKey (#38)
Megan Wachs [Thu, 7 Sep 2017 20:34:14 +0000 (13:34 -0700)]
Merge pull request #37 from sifive/synchronizers
remove duplicate ResetCatchAndSync definition
Megan Wachs [Wed, 6 Sep 2017 17:59:07 +0000 (10:59 -0700)]
shiftregs: Use SyncResetSynchronizerShiftReg primitives where appropriate
Megan Wachs [Wed, 6 Sep 2017 01:40:22 +0000 (18:40 -0700)]
i2c/uart: Name the synchronizers
Megan Wachs [Wed, 6 Sep 2017 01:35:09 +0000 (18:35 -0700)]
gpio: Use Synchronizer for the inputs
Megan Wachs [Wed, 6 Sep 2017 01:32:37 +0000 (18:32 -0700)]
i2c, uart: Use Synchronizer primitives for the inputs
Megan Wachs [Wed, 6 Sep 2017 00:51:40 +0000 (17:51 -0700)]
ShiftRegInit: use the rocket-chip version since it is there now
Megan Wachs [Wed, 6 Sep 2017 00:33:32 +0000 (17:33 -0700)]
regs: remove duplicate ShiftReg file which is now in rocket-chip
Megan Wachs [Fri, 25 Aug 2017 01:12:36 +0000 (18:12 -0700)]
remove duplicate ResetCatchAndSync definition
Megan Wachs [Sun, 20 Aug 2017 23:47:01 +0000 (16:47 -0700)]
Merge pull request #35 from sifive/spi-buffers
spi: put a request buffer infront of SPI
Megan Wachs [Sun, 20 Aug 2017 19:39:38 +0000 (12:39 -0700)]
spi: Make memory mapped interface depth a parameter
Wesley W. Terpstra [Sat, 19 Aug 2017 19:36:28 +0000 (12:36 -0700)]
spi: put a request buffer infront of SPI
This will prevent SPI from blocking other pbus requests.
Shreesha Srinath [Fri, 18 Aug 2017 21:27:57 +0000 (14:27 -0700)]
Merge pull request #34 from ss2783/master
Updates to go with the fpga-shells directory
Shreesha Srinath [Fri, 18 Aug 2017 01:22:51 +0000 (18:22 -0700)]
Renamed ShiftReg to ShiftRegister
Shreesha Srinath [Fri, 18 Aug 2017 01:11:07 +0000 (18:11 -0700)]
Updates to go with the fpga-shells directory
Wesley W. Terpstra [Thu, 10 Aug 2017 23:32:48 +0000 (16:32 -0700)]
uart: make it easy to simulate large text printouts (#33)
Shreesha Srinath [Fri, 4 Aug 2017 18:46:06 +0000 (11:46 -0700)]
Merge pull request #31 from ss2783/fix-mockaon
mockaon: Adds logic to detect external rtc toggles
Shreesha Srinath [Thu, 3 Aug 2017 01:11:05 +0000 (18:11 -0700)]
mockaon: Adds logic to detect external rtc toggles
Albert Ou [Wed, 2 Aug 2017 22:33:11 +0000 (13:33 -0900)]
Merge pull request #30 from sifive/spi
spi: Fix invalid D channel response when flash interface is disabled
Albert Ou [Wed, 2 Aug 2017 20:50:00 +0000 (13:50 -0700)]
spi: Fix invalid D channel response when flash interface is disabled
Issue: When the memory-mapped flash region is accessed while the flash
read mode is disabled (fctrl.en flag is clear), the SPI flash controller
generates an invalid response on the D channel.
This may cause the TileLink bus to deadlock.
Workaround: Software should avoid accessing the memory-mapped flash
region when the SPI controller is not in the flash read mode.
Henry Cook [Wed, 2 Aug 2017 18:46:27 +0000 (11:46 -0700)]
allow bundle content params to be specified via a def (#29)
Wesley W. Terpstra [Wed, 26 Jul 2017 23:02:44 +0000 (16:02 -0700)]
spi: remove removed sink arg
Yunsup Lee [Tue, 25 Jul 2017 23:37:46 +0000 (16:37 -0700)]
Merge pull request #27 from sifive/typed_pad_ctrl
Seperate GPIO Peripheral Functionality
Yunsup Lee [Tue, 25 Jul 2017 22:02:22 +0000 (15:02 -0700)]
mockaon: rename pads to pins
Megan Wachs [Tue, 25 Jul 2017 15:36:28 +0000 (08:36 -0700)]
Ports: Rename the 'fromXYZPort' to 'fromPort' since it's redundant
Megan Wachs [Tue, 25 Jul 2017 14:05:22 +0000 (07:05 -0700)]
Merge remote-tracking branch 'origin/master' into typed_pad_ctrl
Yunsup Lee [Tue, 25 Jul 2017 07:56:22 +0000 (00:56 -0700)]
uart: use PeripheryBusParams.frequency to calculate default divisor (#28)
Megan Wachs [Mon, 24 Jul 2017 16:17:53 +0000 (09:17 -0700)]
Merge remote-tracking branch 'origin/master' into typed_pad_ctrl
Henry Cook [Sun, 23 Jul 2017 15:31:44 +0000 (08:31 -0700)]
periphery: peripherals now in coreplex (#26)
* periphery: peripherals now in coreplex
* use fromAsyncFIFOMaster
Megan Wachs [Thu, 20 Jul 2017 21:53:34 +0000 (14:53 -0700)]
gpio: Add missing file
Megan Wachs [Thu, 20 Jul 2017 18:36:31 +0000 (11:36 -0700)]
Add missing cloneType methods to pin bundles
Megan Wachs [Thu, 20 Jul 2017 17:53:44 +0000 (10:53 -0700)]
i2c: Remove pluralization on the bundle name, i2c not i2cs
Megan Wachs [Wed, 19 Jul 2017 21:51:50 +0000 (14:51 -0700)]
Remove pluralization on interface names. Require clocks and resets explicitly when necessary
Megan Wachs [Tue, 18 Jul 2017 17:58:04 +0000 (10:58 -0700)]
Make it possible to adjust the type of pad controls used,
and seperate out some of the "GPIO Peripheral" from "Pin Control"
Henry Cook [Fri, 7 Jul 2017 17:48:57 +0000 (10:48 -0700)]
Refactor package hierarchy. (#25)
Wesley W. Terpstra [Fri, 30 Jun 2017 19:36:33 +0000 (12:36 -0700)]
vc707 axi enhancements (#24)
1 - Print AXI-ID mappings
2 - Use half as many Deinterleaver buffers for the L2 backside
3 - Limit the Q depth on the PCIe control port to 2 (was 1584!)
Wesley W. Terpstra [Thu, 29 Jun 2017 20:41:30 +0000 (13:41 -0700)]
mig: fix MemoryDevice to use 'reg' properly
Wesley W. Terpstra [Thu, 29 Jun 2017 00:46:45 +0000 (17:46 -0700)]
spi: include mem region (#23)
Wesley W. Terpstra [Thu, 29 Jun 2017 00:45:18 +0000 (17:45 -0700)]
diplomacy: add reg-names to devices (#22)
Megan Wachs [Mon, 19 Jun 2017 19:41:38 +0000 (12:41 -0700)]
gpio: Make IOF optional (#21)
* gpio: Make IOF optional
* IOF: Make the default false
Henry Cook [Thu, 15 Jun 2017 02:47:56 +0000 (19:47 -0700)]
make some base bundle classes easier to clone (#20)
Wesley W. Terpstra [Thu, 15 Jun 2017 00:06:55 +0000 (17:06 -0700)]
spi: add dts ranges field for memory mapped spi (#19)
Henry Cook [Tue, 13 Jun 2017 22:52:11 +0000 (15:52 -0700)]
Merge pull request #18 from sifive/lazy-raw-module-imp
periphery: convert bundle traits
Megan Wachs [Tue, 13 Jun 2017 18:00:29 +0000 (11:00 -0700)]
More Peripheral-to-pins cleanups
Megan Wachs [Tue, 13 Jun 2017 01:08:35 +0000 (18:08 -0700)]
UART: actually return the pins, not just the module. We should do this for the other peripherals as well
Megan Wachs [Tue, 13 Jun 2017 00:53:51 +0000 (17:53 -0700)]
GPIO/SPI/I2C: Add sync stages in place of dummy variable since we need them and they are more useful.
Megan Wachs [Tue, 13 Jun 2017 00:53:08 +0000 (17:53 -0700)]
GPIO/SPI/I2C: Add sync stages in place of dummy variable since we need them and they are more useful.
Henry Cook [Mon, 5 Jun 2017 21:33:53 +0000 (14:33 -0700)]
periphery: convert periphery bundle traits to work with system-level multi-io module
Megan Wachs [Sat, 10 Jun 2017 05:07:43 +0000 (22:07 -0700)]
Merge pull request #17 from sifive/peripheral_options
Make more peripherals "listable" to allow for 0 or more
Megan Wachs [Fri, 9 Jun 2017 20:53:22 +0000 (13:53 -0700)]
peripheral_options: Actually compiles
Megan Wachs [Thu, 8 Jun 2017 23:29:01 +0000 (16:29 -0700)]
SPIFlash: make it listable
Megan Wachs [Thu, 8 Jun 2017 23:25:20 +0000 (16:25 -0700)]
GPIO: Make GPIO peripheral another listable one
Wesley W. Terpstra [Fri, 2 Jun 2017 22:56:18 +0000 (15:56 -0700)]
vc707axi: track rocketchip API changes (#16)
Wesley W. Terpstra [Sun, 14 May 2017 06:38:20 +0000 (23:38 -0700)]
uart: power-on with the right divider for the design (#15)
Wesley W. Terpstra [Sat, 13 May 2017 06:15:14 +0000 (23:15 -0700)]
Merge pull request #14 from sifive/async-pcie
Async PCIe
Wesley W. Terpstra [Sat, 13 May 2017 06:07:10 +0000 (23:07 -0700)]
vc707mig: use an external ibuf
This makes it possible to also drive a PLL of our own from the crystal.
Wesley W. Terpstra [Sat, 13 May 2017 05:59:48 +0000 (22:59 -0700)]
xilinxvc707pciex1: push to a dedicated clock domain
Wesley W. Terpstra [Thu, 11 May 2017 18:50:07 +0000 (11:50 -0700)]
xilinx mig: put a buffer infront of the controller (#13)
This makes placement of the L2 and DDR controller easier.
Wesley W. Terpstra [Mon, 8 May 2017 08:08:37 +0000 (01:08 -0700)]
xilinxvc707pciex1: better wrapper for AXI4-Lite control node (#12)
Henry Cook [Wed, 3 May 2017 18:46:30 +0000 (11:46 -0700)]
Merge pull request #10 from sifive/axi-mmio
axi4: switch to new pipelined converters
Yunsup Lee [Tue, 2 May 2017 21:36:39 +0000 (14:36 -0700)]
Merge pull request #11 from sifive/spi
SPI errata fixes
Albert Ou [Tue, 2 May 2017 19:35:34 +0000 (12:35 -0700)]
spi: Fix off-by-one error in calculating cycles per data frame
Issue: Configuring the frame length to certain values causes incorrect
operation.
Symptoms: Certain frame lengths result in the master sending one extra
clock pulse. The slave device may then become desynchronized.
Workaround: The following frame lengths are supported and can be used.
Do not use other frame lengths.
* Serial mode: 0, 2, 4, 6, 8
* Dual mode: 0, 1, 3, 5, 7, 8
* Quad mode: 0, 1, 2, 3, 5, 6, 7, 8
Albert Ou [Tue, 2 May 2017 19:07:37 +0000 (12:07 -0700)]
spi: Fix io.port.dq(3) output enable
Issue: The output enable signal for DQ[3] is not driven properly.
Symptoms: Output data from master to slave is not properly transmitted
in quad mode. Data received from the slave is unaffected.
Workaround: When interfacing with SPI flash devices, do not use the
"Quad Input/Output Fast Read" command (opcode 0xEB) while in the
Extended SPI protocol. Do not use the Native Quad SPI protocol.
Wesley W. Terpstra [Wed, 26 Apr 2017 20:10:50 +0000 (13:10 -0700)]
axi4: switch to new pipelined converters
Henry Styles [Tue, 25 Apr 2017 17:18:46 +0000 (10:18 -0700)]
Merge pull request #9 from sifive/vc707_mig_analog_inout
Use _chisel3 analog for MIG inout
Henry Styles [Tue, 25 Apr 2017 17:15:00 +0000 (10:15 -0700)]
Use _chisel3 analog for MIG inout
solomatnikov [Tue, 25 Apr 2017 16:14:00 +0000 (09:14 -0700)]
Added stall for read after write (#8)
Megan Wachs [Mon, 10 Apr 2017 21:25:08 +0000 (14:25 -0700)]
Merge pull request #7 from sifive/ndreset
MockAON: Accept the non-debug interrupt as an input to overall reset.
Megan Wachs [Fri, 7 Apr 2017 23:42:32 +0000 (16:42 -0700)]
MockAON: Accept the non-debug interrupt as an input to overall reset.
Megan Wachs [Fri, 31 Mar 2017 22:14:35 +0000 (15:14 -0700)]
Merge pull request #6 from sifive/debug_v013
Debug v013
Megan Wachs [Fri, 31 Mar 2017 20:49:34 +0000 (13:49 -0700)]
spi: correct polarity of FIRRTL combo loop detection workaround.
Megan Wachs [Fri, 31 Mar 2017 03:01:30 +0000 (20:01 -0700)]
Merge remote-tracking branch 'origin/fix-false-comb-loop' into HEAD
Jack Koenig [Fri, 31 Mar 2017 02:12:15 +0000 (19:12 -0700)]
"Fix" false combinational loop through SPIArbiter
Mux1H converts aggregates to UInt, muxes, then converts back which can
look like a cominational loop.
Megan Wachs [Tue, 28 Mar 2017 01:48:24 +0000 (18:48 -0700)]
Merge remote-tracking branch 'origin/master' into debug-0.13
Yunsup Lee [Sat, 25 Mar 2017 04:38:31 +0000 (21:38 -0700)]
rename l2FrontendBus as fsb
Yunsup Lee [Sat, 25 Mar 2017 04:38:31 +0000 (21:38 -0700)]
rename l2FrontendBus as fsb
Megan Wachs [Sat, 25 Mar 2017 00:27:55 +0000 (17:27 -0700)]
JTAG: make TRSTn optional for all helpers as well to match the IO.
Megan Wachs [Thu, 23 Mar 2017 02:16:20 +0000 (19:16 -0700)]
Merge remote-tracking branch 'origin/master' into debug-0.13
Yunsup Lee [Wed, 22 Mar 2017 05:12:37 +0000 (22:12 -0700)]
update TLRegisterNode to take Seq of AddressSet
Megan Wachs [Wed, 22 Mar 2017 00:51:28 +0000 (17:51 -0700)]
TLSPI: address parameter must now be a sequence.
Megan Wachs [Tue, 14 Mar 2017 21:52:39 +0000 (14:52 -0700)]
Adjust JTAG for rocket-chip changes
Megan Wachs [Fri, 10 Mar 2017 22:09:24 +0000 (14:09 -0800)]
Merge remote-tracking branch 'origin/master' into debug-0.13
Wesley W. Terpstra [Fri, 3 Mar 2017 05:22:41 +0000 (21:22 -0800)]
xilinx pcie: add the high PCIe address bits (physical path)
The format is taken from here:
http://lxr.free-electrons.com/source/Documentation/devicetree/bindings/pci/xilinx-pcie.txt
Wesley W. Terpstra [Fri, 3 Mar 2017 05:00:44 +0000 (21:00 -0800)]
Merge pull request #4 from sifive/periphery-keys
DTS
Wesley W. Terpstra [Fri, 3 Mar 2017 04:28:38 +0000 (20:28 -0800)]
devices: include DTS meta-data
Wesley W. Terpstra [Thu, 23 Feb 2017 02:42:47 +0000 (18:42 -0800)]
devices: create periphery keys for all devices
Standardize how they are connected to the periphery bus
Megan Wachs [Thu, 2 Mar 2017 22:46:34 +0000 (14:46 -0800)]
jtag: The jtag interfaces have moved to a different package.
Megan Wachs [Fri, 17 Feb 2017 02:45:48 +0000 (18:45 -0800)]
Merge pull request #2 from sifive/homogenous_bag_peripherals
Use HeterogenousBag to handle lists of peripherals
Megan Wachs [Fri, 17 Feb 2017 01:52:24 +0000 (17:52 -0800)]
Use HomogenousBag to handle lists of peripherals
Previously we had to do weird things to make non-homogenous
lists of items (e.g. PWM Peripherals where ncmp were different from one to
the other) into a vector. But now Chisel supports a Record type,
and we use the HomogenousBag utility to do this more naturally.
This also deletes all the cruft which was introduced to get
around the limitation which doesn't exist anymore.
solomatnikov [Fri, 10 Feb 2017 22:30:01 +0000 (14:30 -0800)]
Merge pull request #1 from sifive/i2c
I2c implementation
Alex Solomatnikov [Fri, 10 Feb 2017 02:45:35 +0000 (18:45 -0800)]
Merge remote-tracking branch 'origin/master' into i2c
Alex Solomatnikov [Thu, 9 Feb 2017 19:37:40 +0000 (11:37 -0800)]
Flipped polarity of output enables to match Guava pins logic
Alex Solomatnikov [Thu, 9 Feb 2017 19:36:19 +0000 (11:36 -0800)]
Made regs 32-bit word aligned to match the rest of the system
Alex Solomatnikov [Wed, 8 Feb 2017 00:14:28 +0000 (16:14 -0800)]
Added note: WISHBONE interface replaced by Tilelink2
Alex Solomatnikov [Tue, 7 Feb 2017 23:58:04 +0000 (15:58 -0800)]
Added license
Alex Solomatnikov [Mon, 6 Feb 2017 18:39:47 +0000 (10:39 -0800)]
Renamed i2cDevices to i2c