Skip to content

Commit

Permalink
squishy: big-renovation-wip
Browse files Browse the repository at this point in the history
  • Loading branch information
lethalbit committed Nov 8, 2024
1 parent 269ee52 commit e366e4b
Show file tree
Hide file tree
Showing 123 changed files with 4,139 additions and 4,987 deletions.
8 changes: 8 additions & 0 deletions docs/_static/css/styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,14 @@ code.literal {
border-radius: 5px;
}

div.sidebar-container {
width: 25em;
}

div.toc-drawer {
width: 20em;
}

svg.WaveDrom {
padding: 10px;
border-radius: 5px;
Expand Down
4 changes: 2 additions & 2 deletions docs/applets/api/device.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# `squishy.core.device.SquishyHardwareDevice`
# `squishy.device.SquishyDevice`

```{toctree}
:hidden:
Expand All @@ -10,7 +10,7 @@ Flesh this out

```{eval-rst}
.. autoclass:: squishy.core.device.SquishyHardwareDevice
.. autoclass:: squishy.device.SquishyDevice
:members:
```
4 changes: 1 addition & 3 deletions docs/applets/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
:hidden:
analyzer
taperipper
api/index
```

Expand All @@ -16,13 +15,12 @@ Flesh this section out
Squishy allows for the development of modular pieces of combined code and [Torii HDL] gateware called an applet. It gives Squishy it's functionality and allows for the extension of said functionality and/or entirely new custom functionality.


There are currently two built-in applets, the [analyzer], and [taperipper]applets. With more built-in applets are planned for the future.
There is currently one built-in applet, the [analyzer], with more built-in applets are planned for the future.

Squishy allows you to run your own custom applets, any python packages in the `SQUISHY_APPLETS` directory are attempted to be loaded as an applet, and then exposed to the user to allow them to invoke.

For more details on custom applets, see the [Custom Applet] tutorial for a walkthrough of developing your own Squishy applet.

[Custom Applet]: ../tutorials/applets/index.md
[analyzer]: ./analyzer.md
[taperipper]: ./taperipper.md
[Torii HDL]: https://github.com/shrine-maiden-heavy-industries/torii-hdl
7 changes: 0 additions & 7 deletions docs/applets/taperipper.md

This file was deleted.

25 changes: 13 additions & 12 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,11 @@
'.md': 'markdown',
}

pygments_style = 'monokai'
autodoc_member_order = 'bysource'
graphviz_output_format = 'svg'
todo_include_todos = True
pygments_style = 'monokai'
autodoc_member_order = 'bysource'
autodoc_docstring_signature = False
graphviz_output_format = 'svg'
todo_include_todos = True

intersphinx_mapping = {
'python' : ('https://docs.python.org/3', None),
Expand All @@ -43,12 +44,13 @@
'construct': ('https://construct.readthedocs.io/en/latest', None),
}

napoleon_google_docstring = False
napoleon_numpy_docstring = True
napoleon_use_ivar = True
napoleon_custom_sections = [
'Platform overrides'
]
napoleon_google_docstring = True
napoleon_numpy_docstring = True
napoleon_use_ivar = True
napoleon_use_admonition_for_notes = True
napoleon_use_admonition_for_examples = True
napoleon_use_admonition_for_references = True


myst_heading_anchors = 3

Expand Down Expand Up @@ -79,8 +81,7 @@
ogp_image = f'{html_baseurl}/_images/og-image.png'

autosectionlabel_prefix_document = True
# Disable CDN so we use the local copy
mermaid_version = ''


offline_skin_js_path = '_static/js/wavedrom.skin.js'
offline_wavedrom_js_path = '_static/js/wavedrom.min.js'
Expand Down
6 changes: 3 additions & 3 deletions docs/hardware/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ There are two main ways to get squishy hardware, buying it, or building it.
### Buying Hardware

```{note}
As of 2024-03-10, Squishy hardware is not available for sale, however, once engineering and validation of Revision 2 is completed, rev2 units are expected to be available to purchase.
As of 2024-11-07, Squishy hardware is not available for sale, however, once engineering and validation of Revision 2 is completed, rev2 units are expected to be available to purchase.
```

### Building Hardware
Expand All @@ -48,11 +48,11 @@ If you buy a pre-built Squishy, it will already be provisioned, but in case some

### Work-In-Progress Hardware

The hardware is always a work in progress, you can view a live rendering of the WIP hardware in your web browser [here](https://kicanvas.org/?github=https%3A%2F%2Fgithub.com%2Fsquishy-scsi%2Fhardware%2Ftree%2Fmain%2Fboards%2Fsquishy), thanks to [KiCanvas].
The hardware is always a work in progress, you can view a live rendering of the WIP hardware in your web browser [here](https://kicanvas.org/?github=https://github.com/squishy-scsi/hardware/blob/main/boards/squishy/main-unit/squishy-main.kicad_pro), thanks to [KiCanvas].


[provisioning]: ../tutorials/provisioning.md
[`rev1`]: ./rev1.md
[`rev2`]: ./rev2.md
[here]: https://kicanvas.org/?github=https%3A%2F%2Fgithub.com%2Fsquishy-scsi%2Fhardware%2Ftree%2Fmain%2Fboards%2Fsquishy
[here]: https://kicanvas.org/?github=https://github.com/squishy-scsi/hardware/blob/main/boards/squishy/main-unit/squishy-main.kicad_pro
[KiCanvas]: https://kicanvas.org
3 changes: 1 addition & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Squishy is not a *specialized* device targeting only a single aspect of the SCSI

## What Squishy Is

Squishy is a platform, it allows you to accomplish almost any goal you wish to that involves a SCSI bus. It can do things as mundane as emulating a SCSI hard drive, but also you can use it to [sniff, analyze, and replay SCSI bus traffic], or even [boot a modern system from 9-track tape].
Squishy is a platform, it allows you to accomplish almost any goal you wish to that involves a SCSI bus. It can do things as mundane as emulating a SCSI hard drive, but also you can use it to [sniff, analyze, and replay SCSI bus traffic], or even boot a modern system from 9-track tape.

You can think of Squishy as being "Software Defined SCSI", much like how a Software Defined Radio works with a hardware transceiver and a software ecosystem, Squishy provides the same, but for SCSI.

Expand Down Expand Up @@ -99,7 +99,6 @@ There are also [GitHub Discussions] enabled on the repository if you have any qu
Squishy does not have an official discord, nor any endorsed discord servers, for an explanation as to why, see the [F.A.Q.]
```
[sniff, analyze, and replay SCSI bus traffic]: ./applets/analyzer.md
[boot a modern system from 9-track tape]: ./applets/taperipper.md
[gateware]: ./library/gateware/index.md
[python]: ./library/python/index.md
[hardware]: ./hardware/index.md
Expand Down
12 changes: 12 additions & 0 deletions docs/library/gateware/applet/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# `squishy.gateware.applet`

```{toctree}
:hidden:
```

```{eval-rst}
.. automodule:: squishy.gateware.applet
:members:
```
11 changes: 2 additions & 9 deletions docs/library/gateware/bootloader/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,16 @@

```{eval-rst}
.. automodule:: squishy.gateware.bootloader
```


```{eval-rst}
.. automodule:: squishy.gateware.bootloader.bitstream
:members:
```


```{eval-rst}
.. automodule:: squishy.gateware.bootloader.dfu
.. automodule:: squishy.gateware.bootloader.rev1
:members:
```


```{eval-rst}
.. automodule:: squishy.gateware.bootloader.rev1
.. automodule:: squishy.gateware.bootloader.rev2
:members:
```
4 changes: 0 additions & 4 deletions docs/library/gateware/core/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,6 @@
```{toctree}
:hidden:
pll
scsi
spi
uart
```

```{eval-rst}
Expand Down
11 changes: 0 additions & 11 deletions docs/library/gateware/core/pll.md

This file was deleted.

11 changes: 0 additions & 11 deletions docs/library/gateware/core/scsi.md

This file was deleted.

11 changes: 0 additions & 11 deletions docs/library/gateware/core/spi.md

This file was deleted.

11 changes: 0 additions & 11 deletions docs/library/gateware/core/uart.md

This file was deleted.

5 changes: 3 additions & 2 deletions docs/library/gateware/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,13 @@
```{toctree}
:hidden:
applet/index
bootloader/index
core/index
peripherals/index
platform/index
scsi/index
usb/index
quirks/index
bootloader/index
```

Expand Down
21 changes: 21 additions & 0 deletions docs/library/gateware/peripherals/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# `squishy.gateware.peripherals`

```{toctree}
:hidden:
```

```{eval-rst}
.. automodule:: squishy.gateware.peripherals
```

```{eval-rst}
.. automodule:: squishy.gateware.peripherals.spi
:members:
```

```{eval-rst}
.. automodule:: squishy.gateware.peripherals.flash
:members:
```
5 changes: 2 additions & 3 deletions docs/library/gateware/platform/index.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
# `squishy.gateware.platform`
# `Squishy Hardware Platforms`

```{toctree}
:hidden:
rev1
rev2
mixins
resources
```

```{eval-rst}
.. automodule:: squishy.gateware.platform
:members:
```
11 changes: 0 additions & 11 deletions docs/library/gateware/platform/mixins.md

This file was deleted.

8 changes: 1 addition & 7 deletions docs/library/gateware/platform/resources.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# `squishy.gateware.platform.resources`
# `Squishy Platform Resources`

```{toctree}
:hidden:
Expand All @@ -8,9 +8,3 @@
.. automodule:: squishy.gateware.platform.resources
```

```{eval-rst}
.. automodule:: squishy.gateware.platform.resources.scsi
:members:
```
4 changes: 3 additions & 1 deletion docs/library/gateware/platform/rev1.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# `squishy.gateware.platform.rev1`
# `Squishy Rev1 Platform`

```{toctree}
:hidden:
Expand All @@ -8,4 +8,6 @@
.. automodule:: squishy.gateware.platform.rev1
:members:
.. autoclass:: squishy.gateware.platform.rev1.Rev1ClockDomainGenerator
```
5 changes: 4 additions & 1 deletion docs/library/gateware/platform/rev2.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# `squishy.gateware.platform.rev2`
# `Squishy Rev2 Platform`

```{toctree}
:hidden:
Expand All @@ -8,4 +8,7 @@
.. automodule:: squishy.gateware.platform.rev2
:members:
.. autoclass:: squishy.gateware.platform.rev2.Rev2ClockDomainGenerator
```
24 changes: 0 additions & 24 deletions docs/library/gateware/quirks/index.md

This file was deleted.

11 changes: 0 additions & 11 deletions docs/library/gateware/scsi/common.md

This file was deleted.

Loading

0 comments on commit e366e4b

Please sign in to comment.