lowRISC / lowRISC/opentitan

[sw/flash_ctrl_testutils] Add utility to determine whether a particular address is scramble or ecc enabled

Open
#13,773 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component:Software Earlgrey-PROD Candidate IP:flash_ctrl Priority:P2 Type:Enhancement Type:Task
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

The flash_ctrl testutil currently does not allow partial flash item programs.

This is correct behavior if the flash address belonged to a page that has either scramble or ecc enabled.
If neither scramble nor ecc is enabled, the specific location is allowed to be written on word boundaries (partial flash item write).

The testutil needs to be enhanced with such a utility check to ensure the address checks are done correctly.

estimate 4

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in sw/device/lib/testing/flash_ctrl_testutils.c around line 172 and inspect how partial flash item programs are rejected. Trace the address and flash-page configuration checks to determine how scramble and ECC status applies to a particular location. Done means the test utility can identify whether the address has either feature enabled and the address checks allow valid word-boundary partial writes otherwise.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.