summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaptor Engineering Development Team <support@raptorengineering.com>2018-01-22 01:58:31 -0600
committerRaptor Engineering Development Team <support@raptorengineering.com>2018-01-22 01:59:20 -0600
commitc0e2de66f8b7b4bd5e105e7ea245e216f97c166b (patch)
tree46bf49e3ccf41381c8803dd098412a0ee6cb782a
parenta11af6c3972179a3f7311822b3c60788b8853319 (diff)
downloadtalos-system-fpga-c0e2de66f8b7b4bd5e105e7ea245e216f97c166b.tar.gz
talos-system-fpga-c0e2de66f8b7b4bd5e105e7ea245e216f97c166b.zip
Separate BMC status and chassis reset request lines
-rw-r--r--main.v21
-rw-r--r--system_fpga.pcf3
2 files changed, 8 insertions, 16 deletions
diff --git a/main.v b/main.v
index b2f5e36..c294dd6 100644
--- a/main.v
+++ b/main.v
@@ -14,6 +14,9 @@ module system_fpga_top
output reg sysgood,
input wire debug_in,
+ // BMC status
+ input wire bmc_boot_phase_in,
+
// Enable outputs
output reg vdda_en,
output reg vddb_en,
@@ -169,21 +172,6 @@ module system_fpga_top
.D_OUT_0(1'b1)
);
- // The chassis reset request line serves two purposes
- // 1.) While the BMC is offline, it indicates U-Boot / Kernel boot phase (1 / 0, respectively)
- // 2.) When the BMC goes online, it serves as the active low chassis reset request line
- reg chassis_reset_request = 1'b0;
- wire bmc_boot_phase_in;
- SB_IO #(
- .PIN_TYPE(6'b101001),
- .PULLUP(1'b1)
- ) bmc_system_reset_request_n_io (
- .PACKAGE_PIN(bmc_system_reset_request_n),
- .OUTPUT_ENABLE(~bmc_boot_complete_n),
- .D_OUT_0(~chassis_reset_request),
- .D_IN_0(bmc_boot_phase_in)
- );
-
// I2C pin control lines
wire i2c_scl_in;
wire i2c_scl_out;
@@ -459,6 +447,7 @@ module system_fpga_top
if (!bmc_rst || (bmc_boot_complete_n && (bmc_boot_phase == 2))) begin
bmc_boot_phase = 0;
end else begin
+ // While the BMC is offline, bmc_boot_phase_in indicates U-Boot / Kernel boot phase (1 / 0, respectively)
if (bmc_boot_phase == 0) begin
if (!bmc_boot_phase_in) begin
bmc_boot_phase = 1;
@@ -961,7 +950,7 @@ module system_fpga_top
// Generate master reset request signals
always @(posedge clk_in) begin
master_reset_reqest = ~(panel_reset_in_l & flexver_reset_in_l);
- chassis_reset_request = master_reset_reqest;
+ bmc_system_reset_request_n = master_reset_reqest;
end
endmodule
diff --git a/system_fpga.pcf b/system_fpga.pcf
index 4d1a0cd..7c33711 100644
--- a/system_fpga.pcf
+++ b/system_fpga.pcf
@@ -34,6 +34,9 @@ set_io sysen 15
set_io sysgood 53
set_io debug_in 25
+# BMC status
+set_io bmc_boot_phase_in 100
+
# Power Plane Enable
set_io vdda_en 72
set_io vddb_en 79
OpenPOWER on IntegriCloud