Skip to content

Commit

Permalink
Add support for the Great Scott Gadgets Cynthion board.
Browse files Browse the repository at this point in the history
  • Loading branch information
antoinevg committed Oct 7, 2024
1 parent e6705c8 commit 2112d40
Show file tree
Hide file tree
Showing 5 changed files with 600 additions and 1 deletion.
15 changes: 15 additions & 0 deletions app/resources/boards/Cynthion-r1.4/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"label": "Cynthion-r1.4",
"SysClkMhz": 60,
"datasheet": "https://cynthion.readthedocs.io",
"interface": "MCU",
"arch" : "ecp5",
"toolchain": "apio",
"FPGAResources": {
"ffs": 12064,
"luts": 12064,
"pios": 39,
"plbs": 660,
"brams": 30,
}
}
138 changes: 138 additions & 0 deletions app/resources/boards/Cynthion-r1.4/pinout.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
[
{"type": "input", "name": "clk", "value": "A8"},

{"type": "output", "name": "led_0", "value": "E13"},
{"type": "output", "name": "led_1", "value": "C13"},
{"type": "output", "name": "led_2", "value": "B14"},
{"type": "output", "name": "led_3", "value": "A15"},
{"type": "output", "name": "led_4", "value": "D12"},
{"type": "output", "name": "led_5", "value": "C11"},

{"type": "input", "name": "button_user", "value": "M14", "pullmode" : "NONE"},

{"type": "output", "name": "pmod_a_0", "value": "C9"},
{"type": "output", "name": "pmod_a_1", "value": "B9"},
{"type": "output", "name": "pmod_a_2", "value": "D11"},
{"type": "output", "name": "pmod_a_3", "value": "C12"},
{"type": "output", "name": "pmod_a_4", "value": "C8"},
{"type": "output", "name": "pmod_a_5", "value": "D8"},
{"type": "output", "name": "pmod_a_6", "value": "D9"},
{"type": "output", "name": "pmod_a_7", "value": "C10"},

{"type": "output", "name": "pmod_b_0", "value": "B4"},
{"type": "output", "name": "pmod_b_1", "value": "B5"},
{"type": "output", "name": "pmod_b_2", "value": "B6"},
{"type": "output", "name": "pmod_b_3", "value": "B7"},
{"type": "output", "name": "pmod_b_4", "value": "C5"},
{"type": "output", "name": "pmod_b_5", "value": "A5"},
{"type": "output", "name": "pmod_b_6", "value": "A6"},
{"type": "output", "name": "pmod_b_7", "value": "A7"},

{"type": "input", "name": "uart_rx", "value": "R14"},
{"type": "output", "name": "uart_tx", "value": "T14", "pullmode" : "UP"},

{"type": "output", "name": "spi_flash_sdi", "value": "T8"},
{"type": "input", "name": "spi_flash_sdo", "value": "T7"},
{"type": "output", "name": "spi_flash_cs", "value": "N8"},

{"type": "inout", "name": "qspi_flash_dq0", "value": "T8"},
{"type": "inout", "name": "qspi_flash_dq1", "value": "T7"},
{"type": "inout", "name": "qspi_flash_dq2", "value": "M7"},
{"type": "inout", "name": "qspi_flash_dq3", "value": "N7"},
{"type": "output", "name": "qspi_flash_cs", "value": "N8"},

{"type": "output", "name": "int", "value": "T6"},
{"type": "output", "name": "self_program", "value": "T13", "pullmode" : "UP" },

{"type": "output", "name": "target_phy_clk", "value": "D16"},
{"type": "inout", "name": "target_phy_data0", "value": "R2"},
{"type": "inout", "name": "target_phy_data1", "value": "R1"},
{"type": "inout", "name": "target_phy_data2", "value": "P2"},
{"type": "inout", "name": "target_phy_data3", "value": "P1"},
{"type": "inout", "name": "target_phy_data4", "value": "N3"},
{"type": "inout", "name": "target_phy_data5", "value": "N1"},
{"type": "inout", "name": "target_phy_data6", "value": "M2"},
{"type": "inout", "name": "target_phy_data7", "value": "M1"},
{"type": "input", "name": "target_phy_dir", "value": "R3"},
{"type": "input", "name": "target_phy_nxt", "value": "T2"},
{"type": "output", "name": "target_phy_rst", "value": "R4"},
{"type": "output", "name": "target_phy_stp", "value": "T3"},

{"type": "output", "name": "aux_phy_clk", "value": "D16"},
{"type": "inout", "name": "aux_phy_data0", "value": "F16"},
{"type": "inout", "name": "aux_phy_data1", "value": "G15"},
{"type": "inout", "name": "aux_phy_data2", "value": "G16"},
{"type": "inout", "name": "aux_phy_data3", "value": "H15"},
{"type": "inout", "name": "aux_phy_data4", "value": "J15"},
{"type": "inout", "name": "aux_phy_data5", "value": "J16"},
{"type": "inout", "name": "aux_phy_data6", "value": "K15"},
{"type": "inout", "name": "aux_phy_data7", "value": "K16"},
{"type": "input", "name": "aux_phy_dir", "value": "E16"},
{"type": "input", "name": "aux_phy_nxt", "value": "F15"},
{"type": "output", "name": "aux_phy_rst", "value": "J13"},
{"type": "output", "name": "aux_phy_stp", "value": "E15"},

{"type": "output", "name": "control_phy_clk", "value": "L14"},
{"type": "inout", "name": "control_phy_data0", "value": "N16"},
{"type": "inout", "name": "control_phy_data1", "value": "N14"},
{"type": "inout", "name": "control_phy_data2", "value": "P16"},
{"type": "inout", "name": "control_phy_data3", "value": "P15"},
{"type": "inout", "name": "control_phy_data4", "value": "R16"},
{"type": "inout", "name": "control_phy_data5", "value": "R15"},
{"type": "inout", "name": "control_phy_data6", "value": "T15"},
{"type": "inout", "name": "control_phy_data7", "value": "P14"},
{"type": "input", "name": "control_phy_dir", "value": "M16"},
{"type": "input", "name": "control_phy_nxt", "value": "M15"},
{"type": "output", "name": "control_phy_rst", "value": "L16"},
{"type": "output", "name": "control_phy_stp", "value": "L15"},

{"type": "input", "name": "target_usb_diff_p", "value": "N4", "pullmode" : "NONE"},
{"type": "input", "name": "target_usb_diff_m", "value": "P3", "pullmode" : "NONE"},
{"type": "input", "name": "target_usb_dp", "value": "P3", "pullmode" : "NONE"},
{"type": "input", "name": "target_usb_dm", "value": "P3", "pullmode" : "NONE"},

{"type": "output", "name": "target_type_c_scl", "value": "A4", "pullmode" : "NONE"},
{"type": "inout", "name": "target_type_c_sda", "value": "C4", "pullmode" : "NONE"},
{"type": "input", "name": "target_type_c_int", "value": "A3", "pullmode" : "UP"},
{"type": "input", "name": "target_type_c_fault", "value": "D3", "pullmode" : "UP"},
{"type": "inout", "name": "target_type_c_sbu1", "value": "A2"},
{"type": "inout", "name": "target_type_c_sbu2", "value": "E4"},

{"type": "output", "name": "aux_type_c_scl", "value": "H12", "pullmode" : "NONE"},
{"type": "inout", "name": "aux_type_c_sda", "value": "G14", "pullmode" : "NONE"},
{"type": "input", "name": "aux_type_c_int", "value": "H14", "pullmode" : "UP"},
{"type": "input", "name": "aux_type_c_fault", "value": "J14", "pullmode" : "UP"},
{"type": "inout", "name": "aux_type_c_sbu1", "value": "H13"},
{"type": "inout", "name": "aux_type_c_sbu2", "value": "K14"},

{"type": "output", "name": "control_vbus_in_en", "value": "K13"},
{"type": "output", "name": "aux_vbus_in_en", "value": "L13"},

{"type": "output", "name": "target_vbus_en", "value": "K5"},
{"type": "output", "name": "control_vbus_en", "value": "L1"},
{"type": "output", "name": "aux_vbus_en", "value": "L2"},
{"type": "output", "name": "target_a_discharge", "value": "K4"},

{"type": "output", "name": "power_monitor_scl", "value": "D7", "pullmode" : "NONE"},
{"type": "inout", "name": "power_monitor_sda", "value": "C7", "pullmode" : "NONE"},
{"type": "output", "name": "power_monitor_pwrdn", "value": "D5", "pullmode" : "UP"},
{"type": "inout", "name": "power_monitor_slow", "value": "C6", "pullmode" : "UP"},
{"type": "inout", "name": "power_monitor_gpio", "value": "D6", "pullmode" : "UP"},

{"type": "output", "name": "ram_clk_p", "value": "C3"},
{"type": "output", "name": "ram_clk_m", "value": "D3"},
{"type": "inout", "name": "ram_dq0", "value": "F2"},
{"type": "inout", "name": "ram_dq1", "value": "B1"},
{"type": "inout", "name": "ram_dq2", "value": "C2"},
{"type": "inout", "name": "ram_dq3", "value": "E1"},
{"type": "inout", "name": "ram_dq4", "value": "E3"},
{"type": "inout", "name": "ram_dq5", "value": "E2"},
{"type": "inout", "name": "ram_dq6", "value": "F3"},
{"type": "inout", "name": "ram_dq7", "value": "G4"},
{"type": "inout", "name": "ram_rwds", "value": "D1"},
{"type": "output", "name": "ram_cs", "value": "B2"},
{"type": "output", "name": "ram_reset", "value": "C1"},

{"type": "output", "name": "NULL", "value": "NULL", "pullmode" : "NONE"},
{"type": "input", "name": "NULL", "value": "NULL", "pullmode" : "NONE"}
]
Loading

0 comments on commit 2112d40

Please sign in to comment.