Access Restricted
This page contains internal documentation that is not publicly available.
DHWCtrl.FlashActivate
Apply the pin routing described by PinMap and bring up
the flash slot on PeripheralIndex. Returns the slot
geometry (SectorSize, SectorCount) so the host
can size
FlashRead / FlashWrite / FlashErase calls without
carrying the geometry out-of-band.
Properties
- Command code: 0xE130
- Command timeout: 100 ms
- Possible status codes: General status codes, DHWCtrl.ErrInvalidIndex, DHWCtrl.ErrAlreadyActive, DHWCtrl.ErrInvalidParam, DHWCtrl.ErrHardware
Parameters (request frame)
| Name | Type/Size | Description | ||
|---|---|---|---|---|
| Length of PinMap | Integer (8 bits) |
Number of elements in the PinMap array |
||
| PinMap | Array | Logical-to-physical pin assignments for this slot (SDMMC: SdmmcClk / SdmmcCmd / SdmmcDat0..7). Must contain exactly the functions this instance requires; unknown, surplus, or duplicate names are rejected with ErrInvalidParam. | ||
| Entry.Name | Enumeration (8 bits) |
Logical peripheral function this pin carries.
Logical pin-function identifier, prefixed by electrical bus/signal family (not by DHWCtrl peripheral category). A signal shared by 2 roles on the same bus reuses a single keyword - e.g. UsbDp / UsbDm serve both a USB host and a (future) USB device role. It is used as the logical side of a DHWCtrlPinMapEntry; a given Activate accepts only the names of the one or more buses its category uses. Values (24):
|
||
| Entry.Pin.Port | Enumeration (8 bits) |
GPIO bank letter (A..Z).
SoC-native GPIO bank identifier. The keyword letters mirror the bank designators on STM32-style parts; not every part implements the full A..Z range. The firmware rejects banks it doesn't support with ErrInvalidParam. Values (26):
|
||
| Entry.Pin.Number | Integer (8 bits) | Pin number within the bank. Practical range is SoC-specific (typically 0..15 on STM32). Named Number rather than Index to avoid a NameChecker collision with the peripheral-instance Index in ListPeripherals's Pins array (struct parents don't currently participate in field-name namespacing). | ||
| PeripheralIndex | Integer (8 bits) | Zero-based instance index within this peripheral category; defaults to 0 (the first instance). The valid range is firmware/hardware-variant specific; discoverable via ListPeripherals. | ||
Returned values (response frame)
| Name | Type/Size | Description |
|---|---|---|
| SectorSize | Integer (16 bits) | Size of one sector in bytes. All FlashRead / FlashWrite / FlashErase transfers are expressed in whole sectors of this size. |
| SectorCount | Integer (32 bits) | Total number of sectors in the slot. Valid Sector indices are 0 .. SectorCount - 1. |