Skip to content

Remove flash ctrl ipgen - #31043

Merged
vogelpi merged 1 commit into
lowRISC:masterfrom
gautschimi:remove_flash_ctrl_ipgen
Aug 21, 2026
Merged

vogelpi merged 1 commit into
lowRISC:masterfrom
gautschimi:remove_flash_ctrl_ipgen

Conversation

@gautschimi

@gautschimi gautschimi commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

This PR removes the flash_ctrl ipgen files.

Needs #30913 to be merged first - done

closes #31029

@gautschimi
gautschimi requested review from a team and cfrantz as code owners August 18, 2026 11:32
@gautschimi
gautschimi requested review from engdoreis and rswarbrick and removed request for a team August 18, 2026 11:32
@gautschimi
gautschimi force-pushed the remove_flash_ctrl_ipgen branch from c606509 to f1b144b Compare August 19, 2026 14:31
@gautschimi gautschimi added the CI:Rerun Rerun failed CI jobs label Aug 20, 2026
@github-actions github-actions Bot removed the CI:Rerun Rerun failed CI jobs label Aug 20, 2026
@gautschimi

Copy link
Copy Markdown
Contributor Author

rerunning CI after the merge of #30913

@gautschimi
gautschimi force-pushed the remove_flash_ctrl_ipgen branch from f1b144b to c2bf18d Compare August 20, 2026 11:23

@rswarbrick rswarbrick left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a big fan of this diff :-)

@rswarbrick

Copy link
Copy Markdown
Contributor

The "unauthorized changes" check dies because the list of files is too long! However, the changes here are just deleting files that aren't used: no unexpected risk to the design.

Please consider this an appropriately reasoned "CHANGE AUTHORIZED: this commit" comment.

@andreaskurth andreaskurth left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @gautschimi for this cleanup, LGTM overall!

Only minor comments from me; nothing that blocks the removal itself.

Two comments that don't attach to the diff:

hw/ip/prim/README.md still uses flash_ctrl in two FuseSoC examples that this PR invalidates. Line 187 shows "lowrisc:virtual_ip:flash_ctrl_prim_reg_top": "lowrisc:earlgrey_ip:flash_ctrl_prim_reg_top" as a mapping in hw/top_earlgrey/top_earlgrey.core, and line 292 lists lowrisc:earlgrey_ip:flash_ctrl_prim_reg_top (plus prim_tech:flash / prim_generic:flash) in the hw/top_earlgrey/chip_earlgrey_asic.core example. Neither line is in the real file any more, and the core itself is gone after this PR. Could the examples be re-synced with the current files? For line 292 that just means dropping the flash entries. For line 187, the surviving Earl Grey virtual_ip pair would be lowrisc:virtual_ip:otp_ctrl_top_specific_pkg -> lowrisc:earlgrey_ip:otp_ctrl_top_specific_pkg:1.0, though note that no .core file has a virtual_ip mapping any more, so one of the virtual_constants mappings that really is in top_earlgrey.core might be the more accurate example.

hw/top_earlgrey/dv/cov/chip_cover_reg_top.cfg:33 still carries +node tb.dut.top_earlgrey.earlgrey_pd_main.u_flash_ctrl *tl_* for an instance that no longer exists. Would you mind dropping it as part of this cleanup?

Comment thread hw/dv/tools/z01x/README.md Outdated
$ cd opentitan/
$ ./util/prepare_dvsim_z01x.sh
$ dvsim hw/top_earlgrey/ip_autogen/flash_ctrl/dv/flash_ctrl_fi_sim_cfg.hjson \
$ dvsim hw/top_englishbreakfast/ip_autogen/flash_ctrl/dv/flash_ctrl_fi_sim_cfg.hjson \

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the FI flow actually work against the Englishbreakfast config? hw/top_englishbreakfast/ip_autogen/flash_ctrl/dv/flash_ctrl_fi_sim_cfg.hjson:10 sets fi_core: "lowrisc:earlgrey_dv:flash_ctrl_fi_sim:0.1" (the core this PR deletes) while its fusesoc_core (from flash_ctrl_base_fi_sim_cfg.hjson) is lowrisc:englishbreakfast_dv:flash_ctrl_fi_sim:0.1.

Or should we just use hw/ip/sram_ctrl/dv/sram_ctrl_base_fi_sim_cfg.hjson instead in that README?

Cc @nasahlpa

@gautschimi gautschimi Aug 21, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lowrisc:englishbreakfast_dv:flash_ctrl_fi_sim:0.1 also exists. I updated to point to that one.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok I had to update the flash_ctrl template for this. Would be good if you can double check @nasahlpa

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I have never tested it on EB, I'd suggest to switch to the SRAM controller instead.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok changed back to sram ctrl. are you ok with this @nasahlpa ?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, yes

@gautschimi
gautschimi force-pushed the remove_flash_ctrl_ipgen branch from c2bf18d to 7ed2e96 Compare August 21, 2026 06:53
@gautschimi

gautschimi commented Aug 21, 2026

Copy link
Copy Markdown
Contributor Author

hw/ip/prim/README.md still uses flash_ctrl in two FuseSoC examples that this PR invalidates. Line 187 shows "lowrisc:virtual_ip:flash_ctrl_prim_reg_top": "lowrisc:earlgrey_ip:flash_ctrl_prim_reg_top" as a mapping in hw/top_earlgrey/top_earlgrey.core, and line 292 lists lowrisc:earlgrey_ip:flash_ctrl_prim_reg_top (plus prim_tech:flash / prim_generic:flash) in the hw/top_earlgrey/chip_earlgrey_asic.core example. Neither line is in the real file any more, and the core itself is gone after this PR. Could the examples be re-synced with the current files? For line 292 that just means dropping the flash entries. For line 187, the surviving Earl Grey virtual_ip pair would be lowrisc:virtual_ip:otp_ctrl_top_specific_pkg -> lowrisc:earlgrey_ip:otp_ctrl_top_specific_pkg:1.0, though note that no .core file has a virtual_ip mapping any more, so one of the virtual_constants mappings that really is in top_earlgrey.core might be the more accurate example.

this is fixed. but otp_ctrl_top_specific was never mapped I think. Leaving this out and just dropping the flash example. The rram_macro will need to be a virtual module, I will add that one to the README once it is ready. #31074

hw/top_earlgrey/dv/cov/chip_cover_reg_top.cfg:33 still carries +node tb.dut.top_earlgrey.earlgrey_pd_main.u_flash_ctrl *tl_* for an instance that no longer exists. Would you mind dropping it as part of this cleanup?

this is fixed

@gautschimi
gautschimi force-pushed the remove_flash_ctrl_ipgen branch 2 times, most recently from 03adff8 to 7496e5d Compare August 21, 2026 08:46

@andreaskurth andreaskurth left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @gautschimi, everything from the last round LGTM. A small comment on this round, below

Comment thread hw/ip_templates/flash_ctrl/data/flash_ctrl.hjson.tpl Outdated
Since EarlGrey is using rram_ctrl, the flash_ctrl sources are no longer
used.

Signed-off-by: Michael Gautschi <mgautschi@lowrisc.org>
@gautschimi
gautschimi force-pushed the remove_flash_ctrl_ipgen branch from 7496e5d to daf4b4d Compare August 21, 2026 10:04
@andreaskurth

Copy link
Copy Markdown
Contributor

CHANGE AUTHORIZED: BLOCKFILE

Removing hw/top_earlgrey/ip_autogen/flash_ctrl/data/flash_ctrl.hjson.

CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_arb.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_erase.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_prog.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_rd.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_lcmgr.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_info_cfg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_region_cfg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_mp.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_mp_data_region_sel.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_core.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_erase.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_prog.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd_buf_dep.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd_buffers.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_scramble.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_pkg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_core_reg_top.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_prim_reg_top.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_reg_pkg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_top_specific_pkg.sv

Files deleted because removed from Earlgrey.

@nasahlpa

Copy link
Copy Markdown
Contributor

CHANGE AUTHORIZED: BLOCKFILE

Removing hw/top_earlgrey/ip_autogen/flash_ctrl/data/flash_ctrl.hjson.

CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_arb.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_erase.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_prog.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_rd.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_lcmgr.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_info_cfg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_region_cfg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_mp.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_mp_data_region_sel.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_core.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_erase.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_prog.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd_buf_dep.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd_buffers.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_scramble.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_pkg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_core_reg_top.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_prim_reg_top.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_reg_pkg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_top_specific_pkg.sv

Files deleted because removed from Earlgrey.

1 similar comment
@vogelpi

vogelpi commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

CHANGE AUTHORIZED: BLOCKFILE

Removing hw/top_earlgrey/ip_autogen/flash_ctrl/data/flash_ctrl.hjson.

CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_arb.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_erase.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_prog.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_rd.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_lcmgr.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_info_cfg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_region_cfg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_mp.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_mp_data_region_sel.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_core.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_erase.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_prog.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd_buf_dep.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_rd_buffers.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_scramble.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_phy_pkg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_core_reg_top.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_prim_reg_top.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_reg_pkg.sv
CHANGE AUTHORIZED: hw/top_earlgrey/ip_autogen/flash_ctrl/rtl/flash_ctrl_top_specific_pkg.sv

Files deleted because removed from Earlgrey.

@vogelpi vogelpi added the CI:Rerun Rerun failed CI jobs label Aug 21, 2026
@github-actions github-actions Bot removed the CI:Rerun Rerun failed CI jobs label Aug 21, 2026
@vogelpi
vogelpi added this pull request to the merge queue Aug 21, 2026
Merged via the queue into lowRISC:master with commit 8403e41 Aug 21, 2026
73 of 78 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[rram_ctrl] remove autogen flash_ctrl files from earlgrey

5 participants