|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Test-access surface for ra8_dmac internal helpers (MC/DC). More...
Go to the source code of this file.
Functions | |
| bool | priv_ra8_dmac_internal_mode_disables_dts (uint32_t mode_normal_val, uint32_t mode_repeat_block_val, uint32_t mode) |
| Pure predicate for the DMTMD-DTS "no repeat" decision. | |
| bool | priv_ra8_dmac_internal_dmint_extra_irq (bool irq_each, uint32_t mode_repeat_block_val, uint32_t mode) |
| Pure predicate for the DMINT "extra IRQ bits" decision. | |
Test-access surface for ra8_dmac internal helpers (MC/DC).
Not part of the public API. Tests under tests/ MAY include this header to drive compound boolean decisions that sit in TU-private helpers behind the public ra8_dmac facade. See CLAUDE.md "Test access to internal symbols (MC/DC scope)".
Definition in file ra8_dmac_internal.h.
| bool priv_ra8_dmac_internal_dmint_extra_irq | ( | bool | irq_each, |
| uint32_t | mode_repeat_block_val, | ||
| uint32_t | mode ) |
Pure predicate for the DMINT "extra IRQ bits" decision.
Returns true iff irq_each is set AND mode is not REPEAT_BLOCK. Promoted from the inline compound AND at libs/ra8_hal/src/ra8_dmac.c inside internal_dmint_value.
| [in] | irq_each | Boolean: per-block IRQ enable. |
| [in] | mode_repeat_block_val | Numeric value of k_ra8_dmac_mode_repeat_block. |
| [in] | mode | Candidate mode value. |
| true | Caller must OR in RPTIE | ESIE. |
| false | Caller leaves RPTIE / ESIE clear. |
Pure predicate for the DMINT "extra IRQ bits" decision.
Promoted helper so the line-246 AND can be driven under MC/DC.
| [in] | irq_each | Boolean: per-block IRQ enable. |
| [in] | mode_repeat_block_val | Numeric value of k_ra8_dmac_mode_repeat_block. |
| [in] | mode | Candidate mode value. |
| true | Caller must OR in RPTIE | ESIE. |
| false | Leave RPTIE / ESIE clear. |
Definition at line 87 of file ra8_dmac.c.
Referenced by internal_dmint_value().
| bool priv_ra8_dmac_internal_mode_disables_dts | ( | uint32_t | mode_normal_val, |
| uint32_t | mode_repeat_block_val, | ||
| uint32_t | mode ) |
Pure predicate for the DMTMD-DTS "no repeat" decision.
Returns true iff the transfer mode is NORMAL or REPEAT_BLOCK (the two modes that disable DTS). Promoted from the inline compound OR at libs/ra8_hal/src/ra8_dmac.c inside internal_dts_code so the decision can be driven directly under -fcoverage-mcdc. Both inputs are plain integers (the enum values from ra8_dmac_mode_t); the helper performs no register I/O and has no preconditions.
| [in] | mode_normal_val | Numeric value of k_ra8_dmac_mode_normal. |
| [in] | mode_repeat_block_val | Numeric value of k_ra8_dmac_mode_repeat_block. |
| [in] | mode | Candidate mode value. |
| true | Mode disables DTS (NORMAL or REPEAT_BLOCK). |
| false | Mode requires a non-zero DTS code. |
Pure predicate for the DMTMD-DTS "no repeat" decision.
Promoted helper so the line-151 OR can be driven under MC/DC.
| [in] | mode_normal_val | Numeric value of k_ra8_dmac_mode_normal. |
| [in] | mode_repeat_block_val | Numeric value of k_ra8_dmac_mode_repeat_block. |
| [in] | mode | Candidate mode value. |
| true | Mode disables DTS. |
| false | Mode requires non-zero DTS code. |
Definition at line 64 of file ra8_dmac.c.
Referenced by internal_dts_code().