fix errors in generated headers/SVD (#2599)
Some checks are pending
Bazel presubmit checks / bazel-build-check (macos-latest) (push) Waiting to run
Bazel presubmit checks / bazel-build-check (ubuntu-latest) (push) Waiting to run
Bazel presubmit checks / other-bazel-checks (push) Waiting to run
Check Configs / check-configs (push) Waiting to run
CMake / build (push) Waiting to run
Build on macOS / build (push) Waiting to run
Build on Windows / build (push) Waiting to run

This commit is contained in:
Graham Sanderson 2025-07-28 12:22:50 -05:00 committed by GitHub
parent 3f6f0fc0ef
commit c493a3a64d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 187 additions and 130 deletions

View file

@ -1759,7 +1759,7 @@ SPDX-License-Identifier: BSD-3-Clause
<name>CLK_SYS_CTRL</name>
<addressOffset>0x0000003c</addressOffset>
<description>Clock control, can be changed on-the-fly (except for auxsrc)</description>
<resetValue>0x00000000</resetValue>
<resetValue>0x00000041</resetValue>
<fields>
<field>
<name>AUXSRC</name>
@ -43232,7 +43232,8 @@ SPDX-License-Identifier: BSD-3-Clause
<fields>
<field>
<name>AUXCTRL</name>
<description>* Bits 7:2: Reserved
<description>* Bits 7:3: Reserved
* Bit 2: Set to mask OTP power analogue power supply detection from resetting OTP controller and PSM
* Bit 1: When clear, the LPOSC output is XORed into the TRNG ROSC output as an additional, uncorrelated entropy source. When set, this behaviour is disabled.
@ -47936,9 +47937,9 @@ SPDX-License-Identifier: BSD-3-Clause
<name>FREQ_RANGE</name>
<description>Controls the number of delay stages in the ROSC ring
LOW uses stages 0 to 7
MEDIUM uses stages 2 to 7
HIGH uses stages 4 to 7
TOOHIGH uses stages 6 to 7 and should not be used because its frequency exceeds design specifications
MEDIUM uses stages 0 to 5
HIGH uses stages 0 to 3
TOOHIGH uses stages 0 to 1 and should not be used because its frequency exceeds design specifications
The clock output will not glitch when changing the range up one step at a time
The clock output will glitch when changing the range down
Note: the values here are gray coded which is why HIGH comes before TOOHIGH</description>
@ -47976,7 +47977,7 @@ SPDX-License-Identifier: BSD-3-Clause
2 bits set triples drive strength
3 bits set quadruples drive strength
For frequency randomisation set both DS0_RANDOM=1 &amp; DS1_RANDOM=1</description>
<resetValue>0x00000000</resetValue>
<resetValue>0x00000088</resetValue>
<fields>
<field>
<name>PASSWD</name>
@ -49053,51 +49054,56 @@ SPDX-License-Identifier: BSD-3-Clause
bit 0 = SRAM1
0 = powered up
1 = powered down
When POWMAN_STATE_REQ is written, the POWMAN_STATE_WAITING flag is set while the Power Manager determines what is required. If an invalid transition is requested the Power Manager will still register the request in POWMAN_STATE_REQ but will also set the POWMAN_BAD_REQ flag. It will then implement the power-up requests and ignore the power down requests. To do nothing would risk entering an unrecoverable lock-up state. Invalid requests are: any combination of power up and power down requests any request that results in swcore boing powered and xip unpowered If the request is to power down the switched-core domain then POWMAN_STATE_WAITING stays active until the processors halt. During this time the POWMAN_STATE_REQ field can be re-written to change or cancel the request. When the power state transition begins the POWMAN_STATE_WAITING_flag is cleared, the POWMAN_STATE_CHANGING flag is set and POWMAN register writes are ignored until the transition completes.</description>
When POWMAN_STATE_REQ is written, the POWMAN_STATE_WAITING flag is set while the Power Manager determines what is required. If an invalid transition is requested the Power Manager will still register the request in POWMAN_STATE_REQ but will also set the POWMAN_BAD_REQ flag. It will then implement the power-up requests and ignore the power down requests. To do nothing would risk entering an unrecoverable lock-up state. Invalid requests are: any combination of power up and power down requests any request that results in swcore being powered and xip unpowered If the request is to power down the switched-core domain then POWMAN_STATE_WAITING stays active until the processors halt. During this time the POWMAN_STATE_REQ field can be re-written to change or cancel the request. When the power state transition begins the POWMAN_STATE_WAITING_flag is cleared, the POWMAN_STATE_CHANGING flag is set and POWMAN register writes are ignored until the transition completes.</description>
<resetValue>0x0000000f</resetValue>
<fields>
<field>
<name>CHANGING</name>
<description>Indicates a power state change is in progress</description>
<bitRange>[13:13]</bitRange>
<access>read-only</access>
</field>
<field>
<name>WAITING</name>
<description>Indicates the power manager has received a state change request and is waiting for other actions to complete before executing it</description>
<bitRange>[12:12]</bitRange>
<access>read-only</access>
</field>
<field>
<name>BAD_HW_REQ</name>
<description>Bad hardware initiated state request. Went back to state 0 (i.e. everything powered up)</description>
<description>Invalid hardware initiated state request, power up requests actioned, power down requests ignored</description>
<bitRange>[11:11]</bitRange>
<access>read-only</access>
</field>
<field>
<name>BAD_SW_REQ</name>
<description>Bad software initiated state request. No action taken.</description>
<description>Invalid software initiated state request ignored</description>
<bitRange>[10:10]</bitRange>
<access>read-only</access>
</field>
<field>
<name>PWRUP_WHILE_WAITING</name>
<description>Request ignored because of a pending pwrup request. See current_pwrup_req. Note this blocks powering up AND powering down.</description>
<description>Indicates that a power state change request was ignored because of a pending power state change request</description>
<bitRange>[9:9]</bitRange>
<access>read-write</access>
<modifiedWriteValues>oneToClear</modifiedWriteValues>
</field>
<field>
<name>REQ_IGNORED</name>
<description>Indicates that a software state change request was ignored because it clashed with an ongoing hardware or debugger request</description>
<bitRange>[8:8]</bitRange>
<access>read-write</access>
<modifiedWriteValues>oneToClear</modifiedWriteValues>
</field>
<field>
<name>REQ</name>
<description>This is written by software or hardware to request a new power state</description>
<bitRange>[7:4]</bitRange>
<access>read-write</access>
</field>
<field>
<name>CURRENT</name>
<description>Indicates the current power state</description>
<bitRange>[3:0]</bitRange>
<access>read-only</access>
</field>
@ -77606,7 +77612,7 @@ SPDX-License-Identifier: BSD-3-Clause
</field>
<field>
<name>SUSPENDED</name>
<description>Bus in suspended state. Valid for device. Device will go into suspend if neither Keep Alive / SOF frames are enabled.</description>
<description>Bus in suspended state. Valid for device and host. Host and device will go into suspend if neither Keep Alive / SOF frames are enabled.</description>
<bitRange>[4:4]</bitRange>
<access>read-write</access>
<modifiedWriteValues>oneToClear</modifiedWriteValues>

View file

@ -615,7 +615,7 @@
// Description : Clock control, can be changed on-the-fly (except for auxsrc)
#define CLOCKS_CLK_SYS_CTRL_OFFSET _u(0x0000003c)
#define CLOCKS_CLK_SYS_CTRL_BITS _u(0x000000e1)
#define CLOCKS_CLK_SYS_CTRL_RESET _u(0x00000000)
#define CLOCKS_CLK_SYS_CTRL_RESET _u(0x00000041)
// -----------------------------------------------------------------------------
// Field : CLOCKS_CLK_SYS_CTRL_AUXSRC
// Description : Selects the auxiliary clock source, will glitch when switching
@ -625,7 +625,7 @@
// 0x3 -> xosc_clksrc
// 0x4 -> clksrc_gpin0
// 0x5 -> clksrc_gpin1
#define CLOCKS_CLK_SYS_CTRL_AUXSRC_RESET _u(0x0)
#define CLOCKS_CLK_SYS_CTRL_AUXSRC_RESET _u(0x2)
#define CLOCKS_CLK_SYS_CTRL_AUXSRC_BITS _u(0x000000e0)
#define CLOCKS_CLK_SYS_CTRL_AUXSRC_MSB _u(7)
#define CLOCKS_CLK_SYS_CTRL_AUXSRC_LSB _u(5)
@ -642,7 +642,7 @@
// fly
// 0x0 -> clk_ref
// 0x1 -> clksrc_clk_sys_aux
#define CLOCKS_CLK_SYS_CTRL_SRC_RESET _u(0x0)
#define CLOCKS_CLK_SYS_CTRL_SRC_RESET _u(0x1)
#define CLOCKS_CLK_SYS_CTRL_SRC_BITS _u(0x00000001)
#define CLOCKS_CLK_SYS_CTRL_SRC_MSB _u(0)
#define CLOCKS_CLK_SYS_CTRL_SRC_LSB _u(0)

View file

@ -121,8 +121,8 @@ typedef enum dreq_num_rp2350 {
DREQ_PWM_WRAP7 = 39, ///< Select PWM Counter 7's Wrap Value as DREQ
DREQ_PWM_WRAP8 = 40, ///< Select PWM Counter 8's Wrap Value as DREQ
DREQ_PWM_WRAP9 = 41, ///< Select PWM Counter 9's Wrap Value as DREQ
DREQ_PWM_WRAP10 = 42, ///< Select PWM Counter 0's Wrap Value as DREQ
DREQ_PWM_WRAP11 = 43, ///< Select PWM Counter 1's Wrap Value as DREQ
DREQ_PWM_WRAP10 = 42, ///< Select PWM Counter 10's Wrap Value as DREQ
DREQ_PWM_WRAP11 = 43, ///< Select PWM Counter 11's Wrap Value as DREQ
DREQ_I2C0_TX = 44, ///< Select I2C0's TX FIFO as DREQ
DREQ_I2C0_RX = 45, ///< Select I2C0's RX FIFO as DREQ
DREQ_I2C1_TX = 46, ///< Select I2C1's TX FIFO as DREQ
@ -135,8 +135,8 @@ typedef enum dreq_num_rp2350 {
DREQ_CORESIGHT = 53, ///< Select CORESIGHT as DREQ
DREQ_SHA256 = 54, ///< Select SHA256 as DREQ
DREQ_DMA_TIMER0 = 59, ///< Select DMA_TIMER0 as DREQ
DREQ_DMA_TIMER1 = 60, ///< Select DMA_TIMER0 as DREQ
DREQ_DMA_TIMER2 = 61, ///< Select DMA_TIMER1 as DREQ
DREQ_DMA_TIMER1 = 60, ///< Select DMA_TIMER1 as DREQ
DREQ_DMA_TIMER2 = 61, ///< Select DMA_TIMER2 as DREQ
DREQ_DMA_TIMER3 = 62, ///< Select DMA_TIMER3 as DREQ
DREQ_FORCE = 63, ///< Select FORCE as DREQ
DREQ_COUNT

View file

@ -37,8 +37,7 @@
#define GLITCH_DETECTOR_ARM_VALUE_YES _u(0x0000)
// =============================================================================
// Register : GLITCH_DETECTOR_DISARM
// Description : None
// Forcibly disarm the glitch detectors, if they are armed by OTP.
// Description : Forcibly disarm the glitch detectors, if they are armed by OTP.
// Ignored if ARM is YES.
//
// This register is Secure read/write only.
@ -142,8 +141,7 @@
#define GLITCH_DETECTOR_SENSITIVITY_DET0_ACCESS "RW"
// =============================================================================
// Register : GLITCH_DETECTOR_LOCK
// Description : None
// Write any nonzero value to disable writes to ARM, DISARM,
// Description : Write any nonzero value to disable writes to ARM, DISARM,
// SENSITIVITY and LOCK. This register is Secure read/write only.
#define GLITCH_DETECTOR_LOCK_OFFSET _u(0x0000000c)
#define GLITCH_DETECTOR_LOCK_BITS _u(0x000000ff)

View file

@ -79,8 +79,8 @@ typedef enum irq_num_rp2350 {
TIMER1_IRQ_1 = 5, ///< Select TIMER1's IRQ 1 output
TIMER1_IRQ_2 = 6, ///< Select TIMER1's IRQ 2 output
TIMER1_IRQ_3 = 7, ///< Select TIMER1's IRQ 3 output
PWM_IRQ_WRAP_0 = 8, ///< Select PWM's IRQ_WRAP 0 output
PWM_IRQ_WRAP_1 = 9, ///< Select PWM's IRQ_WRAP 1 output
PWM_IRQ_WRAP_0 = 8, ///< Select PWM's WRAP_0 IRQ output
PWM_IRQ_WRAP_1 = 9, ///< Select PWM's WRAP_1 IRQ output
DMA_IRQ_0 = 10, ///< Select DMA's IRQ 0 output
DMA_IRQ_1 = 11, ///< Select DMA's IRQ 1 output
DMA_IRQ_2 = 12, ///< Select DMA's IRQ 2 output
@ -96,27 +96,27 @@ typedef enum irq_num_rp2350 {
IO_IRQ_BANK0_NS = 22, ///< Select IO_BANK0_NS's IRQ output
IO_IRQ_QSPI = 23, ///< Select IO_QSPI's IRQ output
IO_IRQ_QSPI_NS = 24, ///< Select IO_QSPI_NS's IRQ output
SIO_IRQ_FIFO = 25, ///< Select SIO's IRQ_FIFO output
SIO_IRQ_BELL = 26, ///< Select SIO's IRQ_BELL output
SIO_IRQ_FIFO_NS = 27, ///< Select SIO_NS's IRQ_FIFO output
SIO_IRQ_BELL_NS = 28, ///< Select SIO_NS's IRQ_BELL output
SIO_IRQ_MTIMECMP = 29, ///< Select SIO_IRQ_MTIMECMP's IRQ output
SIO_IRQ_FIFO = 25, ///< Select SIO's FIFO IRQ output
SIO_IRQ_BELL = 26, ///< Select SIO's BELL IRQ output
SIO_IRQ_FIFO_NS = 27, ///< Select SIO_NS's FIFO IRQ output
SIO_IRQ_BELL_NS = 28, ///< Select SIO_NS's BELL IRQ output
SIO_IRQ_MTIMECMP = 29, ///< Select SIO's MTIMECMP IRQ output
CLOCKS_IRQ = 30, ///< Select CLOCKS's IRQ output
SPI0_IRQ = 31, ///< Select SPI0's IRQ output
SPI1_IRQ = 32, ///< Select SPI1's IRQ output
UART0_IRQ = 33, ///< Select UART0's IRQ output
UART1_IRQ = 34, ///< Select UART1's IRQ output
ADC_IRQ_FIFO = 35, ///< Select ADC's IRQ_FIFO output
ADC_IRQ_FIFO = 35, ///< Select ADC's FIFO IRQ output
I2C0_IRQ = 36, ///< Select I2C0's IRQ output
I2C1_IRQ = 37, ///< Select I2C1's IRQ output
OTP_IRQ = 38, ///< Select OTP's IRQ output
TRNG_IRQ = 39, ///< Select TRNG's IRQ output
PROC0_IRQ_CTI = 40, ///< Select PROC0's IRQ_CTI output
PROC1_IRQ_CTI = 41, ///< Select PROC1's IRQ_CTI output
PROC0_IRQ_CTI = 40, ///< Select PROC0's CTI IRQ output
PROC1_IRQ_CTI = 41, ///< Select PROC1's CTI IRQ output
PLL_SYS_IRQ = 42, ///< Select PLL_SYS's IRQ output
PLL_USB_IRQ = 43, ///< Select PLL_USB's IRQ output
POWMAN_IRQ_POW = 44, ///< Select POWMAN's IRQ_POW output
POWMAN_IRQ_TIMER = 45, ///< Select POWMAN's IRQ_TIMER output
POWMAN_IRQ_POW = 44, ///< Select POWMAN's POW IRQ output
POWMAN_IRQ_TIMER = 45, ///< Select POWMAN's TIMER IRQ output
SPARE_IRQ_0 = 46, ///< Select SPARE IRQ 0
SPARE_IRQ_1 = 47, ///< Select SPARE IRQ 1
SPARE_IRQ_2 = 48, ///< Select SPARE IRQ 2

View file

@ -461,8 +461,7 @@
// =============================================================================
// Register : PIO_DBG_PADOUT
// Description : Read to sample the pad output values PIO is currently driving
// to the GPIOs. On RP2040 there are 30 GPIOs, so the two most
// significant bits are hardwired to 0.
// to the GPIOs.
#define PIO_DBG_PADOUT_OFFSET _u(0x0000003c)
#define PIO_DBG_PADOUT_BITS _u(0xffffffff)
#define PIO_DBG_PADOUT_RESET _u(0x00000000)
@ -472,8 +471,7 @@
// =============================================================================
// Register : PIO_DBG_PADOE
// Description : Read to sample the pad output enables (direction) PIO is
// currently driving to the GPIOs. On RP2040 there are 30 GPIOs,
// so the two most significant bits are hardwired to 0.
// currently driving to the GPIOs.
#define PIO_DBG_PADOE_OFFSET _u(0x00000040)
#define PIO_DBG_PADOE_BITS _u(0xffffffff)
#define PIO_DBG_PADOE_RESET _u(0x00000000)

View file

@ -944,7 +944,7 @@
// requests and ignore the power down requests. To do nothing
// would risk entering an unrecoverable lock-up state. Invalid
// requests are: any combination of power up and power down
// requests any request that results in swcore boing powered and
// requests any request that results in swcore being powered and
// xip unpowered If the request is to power down the switched-core
// domain then POWMAN_STATE_WAITING stays active until the
// processors halt. During this time the POWMAN_STATE_REQ field
@ -957,6 +957,7 @@
#define POWMAN_STATE_RESET _u(0x0000000f)
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_CHANGING
// Description : Indicates a power state change is in progress
#define POWMAN_STATE_CHANGING_RESET _u(0x0)
#define POWMAN_STATE_CHANGING_BITS _u(0x00002000)
#define POWMAN_STATE_CHANGING_MSB _u(13)
@ -964,6 +965,9 @@
#define POWMAN_STATE_CHANGING_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_WAITING
// Description : Indicates the power manager has received a state change request
// and is waiting for other actions to complete before executing
// it
#define POWMAN_STATE_WAITING_RESET _u(0x0)
#define POWMAN_STATE_WAITING_BITS _u(0x00001000)
#define POWMAN_STATE_WAITING_MSB _u(12)
@ -971,8 +975,8 @@
#define POWMAN_STATE_WAITING_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_BAD_HW_REQ
// Description : Bad hardware initiated state request. Went back to state 0
// (i.e. everything powered up)
// Description : Invalid hardware initiated state request, power up requests
// actioned, power down requests ignored
#define POWMAN_STATE_BAD_HW_REQ_RESET _u(0x0)
#define POWMAN_STATE_BAD_HW_REQ_BITS _u(0x00000800)
#define POWMAN_STATE_BAD_HW_REQ_MSB _u(11)
@ -980,7 +984,7 @@
#define POWMAN_STATE_BAD_HW_REQ_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_BAD_SW_REQ
// Description : Bad software initiated state request. No action taken.
// Description : Invalid software initiated state request ignored
#define POWMAN_STATE_BAD_SW_REQ_RESET _u(0x0)
#define POWMAN_STATE_BAD_SW_REQ_BITS _u(0x00000400)
#define POWMAN_STATE_BAD_SW_REQ_MSB _u(10)
@ -988,9 +992,8 @@
#define POWMAN_STATE_BAD_SW_REQ_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_PWRUP_WHILE_WAITING
// Description : Request ignored because of a pending pwrup request. See
// current_pwrup_req. Note this blocks powering up AND powering
// down.
// Description : Indicates that a power state change request was ignored because
// of a pending power state change request
#define POWMAN_STATE_PWRUP_WHILE_WAITING_RESET _u(0x0)
#define POWMAN_STATE_PWRUP_WHILE_WAITING_BITS _u(0x00000200)
#define POWMAN_STATE_PWRUP_WHILE_WAITING_MSB _u(9)
@ -998,6 +1001,8 @@
#define POWMAN_STATE_PWRUP_WHILE_WAITING_ACCESS "WC"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_REQ_IGNORED
// Description : Indicates that a software state change request was ignored
// because it clashed with an ongoing hardware or debugger request
#define POWMAN_STATE_REQ_IGNORED_RESET _u(0x0)
#define POWMAN_STATE_REQ_IGNORED_BITS _u(0x00000100)
#define POWMAN_STATE_REQ_IGNORED_MSB _u(8)
@ -1005,6 +1010,8 @@
#define POWMAN_STATE_REQ_IGNORED_ACCESS "WC"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_REQ
// Description : This is written by software or hardware to request a new power
// state
#define POWMAN_STATE_REQ_RESET _u(0x0)
#define POWMAN_STATE_REQ_BITS _u(0x000000f0)
#define POWMAN_STATE_REQ_MSB _u(7)
@ -1012,6 +1019,7 @@
#define POWMAN_STATE_REQ_ACCESS "RW"
// -----------------------------------------------------------------------------
// Field : POWMAN_STATE_CURRENT
// Description : Indicates the current power state
#define POWMAN_STATE_CURRENT_RESET _u(0xf)
#define POWMAN_STATE_CURRENT_BITS _u(0x0000000f)
#define POWMAN_STATE_CURRENT_MSB _u(3)
@ -1019,8 +1027,7 @@
#define POWMAN_STATE_CURRENT_ACCESS "RO"
// =============================================================================
// Register : POWMAN_POW_FASTDIV
// Description : None
// divides the POWMAN clock to provide a tick for the delay module
// Description : divides the POWMAN clock to provide a tick for the delay module
// and state machines
// when clk_pow is running from the slow clock it is not divided
// when clk_pow is running from the fast clock it is divided by
@ -1187,6 +1194,10 @@
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_MSB _u(1)
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_LSB _u(0)
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_ACCESS "RW"
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_VALUE_GPIO12 _u(0x0)
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_VALUE_GPIO20 _u(0x1)
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_VALUE_GPIO14 _u(0x2)
#define POWMAN_EXT_TIME_REF_SOURCE_SEL_VALUE_GPIO22 _u(0x3)
// =============================================================================
// Register : POWMAN_LPOSC_FREQ_KHZ_INT
// Description : Informs the AON Timer of the integer component of the clock
@ -1241,8 +1252,7 @@
#define POWMAN_XOSC_FREQ_KHZ_FRAC_ACCESS "RW"
// =============================================================================
// Register : POWMAN_SET_TIME_63TO48
// Description : None
// For setting the time, do not use for reading the time, use
// Description : For setting the time, do not use for reading the time, use
// POWMAN_READ_TIME_UPPER and POWMAN_READ_TIME_LOWER. This field
// must only be written when POWMAN_TIMER_RUN=0
#define POWMAN_SET_TIME_63TO48_OFFSET _u(0x00000060)
@ -1253,8 +1263,7 @@
#define POWMAN_SET_TIME_63TO48_ACCESS "RW"
// =============================================================================
// Register : POWMAN_SET_TIME_47TO32
// Description : None
// For setting the time, do not use for reading the time, use
// Description : For setting the time, do not use for reading the time, use
// POWMAN_READ_TIME_UPPER and POWMAN_READ_TIME_LOWER. This field
// must only be written when POWMAN_TIMER_RUN=0
#define POWMAN_SET_TIME_47TO32_OFFSET _u(0x00000064)
@ -1265,8 +1274,7 @@
#define POWMAN_SET_TIME_47TO32_ACCESS "RW"
// =============================================================================
// Register : POWMAN_SET_TIME_31TO16
// Description : None
// For setting the time, do not use for reading the time, use
// Description : For setting the time, do not use for reading the time, use
// POWMAN_READ_TIME_UPPER and POWMAN_READ_TIME_LOWER. This field
// must only be written when POWMAN_TIMER_RUN=0
#define POWMAN_SET_TIME_31TO16_OFFSET _u(0x00000068)
@ -1277,8 +1285,7 @@
#define POWMAN_SET_TIME_31TO16_ACCESS "RW"
// =============================================================================
// Register : POWMAN_SET_TIME_15TO0
// Description : None
// For setting the time, do not use for reading the time, use
// Description : For setting the time, do not use for reading the time, use
// POWMAN_READ_TIME_UPPER and POWMAN_READ_TIME_LOWER. This field
// must only be written when POWMAN_TIMER_RUN=0
#define POWMAN_SET_TIME_15TO0_OFFSET _u(0x0000006c)
@ -1289,8 +1296,7 @@
#define POWMAN_SET_TIME_15TO0_ACCESS "RW"
// =============================================================================
// Register : POWMAN_READ_TIME_UPPER
// Description : None
// For reading bits 63:32 of the timer. When reading all 64 bits
// Description : For reading bits 63:32 of the timer. When reading all 64 bits
// it is possible for the LOWER count to rollover during the read.
// It is recommended to read UPPER, then LOWER, then re-read UPPER
// and, if it has changed, re-read LOWER.
@ -1302,8 +1308,7 @@
#define POWMAN_READ_TIME_UPPER_ACCESS "RO"
// =============================================================================
// Register : POWMAN_READ_TIME_LOWER
// Description : None
// For reading bits 31:0 of the timer.
// Description : For reading bits 31:0 of the timer.
#define POWMAN_READ_TIME_LOWER_OFFSET _u(0x00000074)
#define POWMAN_READ_TIME_LOWER_BITS _u(0xffffffff)
#define POWMAN_READ_TIME_LOWER_RESET _u(0x00000000)
@ -1312,8 +1317,7 @@
#define POWMAN_READ_TIME_LOWER_ACCESS "RO"
// =============================================================================
// Register : POWMAN_ALARM_TIME_63TO48
// Description : None
// This field must only be written when POWMAN_ALARM_ENAB=0
// Description : This field must only be written when POWMAN_ALARM_ENAB=0
#define POWMAN_ALARM_TIME_63TO48_OFFSET _u(0x00000078)
#define POWMAN_ALARM_TIME_63TO48_BITS _u(0x0000ffff)
#define POWMAN_ALARM_TIME_63TO48_RESET _u(0x00000000)
@ -1322,8 +1326,7 @@
#define POWMAN_ALARM_TIME_63TO48_ACCESS "RW"
// =============================================================================
// Register : POWMAN_ALARM_TIME_47TO32
// Description : None
// This field must only be written when POWMAN_ALARM_ENAB=0
// Description : This field must only be written when POWMAN_ALARM_ENAB=0
#define POWMAN_ALARM_TIME_47TO32_OFFSET _u(0x0000007c)
#define POWMAN_ALARM_TIME_47TO32_BITS _u(0x0000ffff)
#define POWMAN_ALARM_TIME_47TO32_RESET _u(0x00000000)
@ -1332,8 +1335,7 @@
#define POWMAN_ALARM_TIME_47TO32_ACCESS "RW"
// =============================================================================
// Register : POWMAN_ALARM_TIME_31TO16
// Description : None
// This field must only be written when POWMAN_ALARM_ENAB=0
// Description : This field must only be written when POWMAN_ALARM_ENAB=0
#define POWMAN_ALARM_TIME_31TO16_OFFSET _u(0x00000080)
#define POWMAN_ALARM_TIME_31TO16_BITS _u(0x0000ffff)
#define POWMAN_ALARM_TIME_31TO16_RESET _u(0x00000000)
@ -1342,8 +1344,7 @@
#define POWMAN_ALARM_TIME_31TO16_ACCESS "RW"
// =============================================================================
// Register : POWMAN_ALARM_TIME_15TO0
// Description : None
// This field must only be written when POWMAN_ALARM_ENAB=0
// Description : This field must only be written when POWMAN_ALARM_ENAB=0
#define POWMAN_ALARM_TIME_15TO0_OFFSET _u(0x00000084)
#define POWMAN_ALARM_TIME_15TO0_BITS _u(0x0000ffff)
#define POWMAN_ALARM_TIME_15TO0_RESET _u(0x00000000)

View file

@ -39,9 +39,9 @@
// Field : ROSC_CTRL_FREQ_RANGE
// Description : Controls the number of delay stages in the ROSC ring
// LOW uses stages 0 to 7
// MEDIUM uses stages 2 to 7
// HIGH uses stages 4 to 7
// TOOHIGH uses stages 6 to 7 and should not be used because its
// MEDIUM uses stages 0 to 5
// HIGH uses stages 0 to 3
// TOOHIGH uses stages 0 to 1 and should not be used because its
// frequency exceeds design specifications
// The clock output will not glitch when changing the range up one
// step at a time
@ -77,7 +77,7 @@
// DS1_RANDOM=1
#define ROSC_FREQA_OFFSET _u(0x00000004)
#define ROSC_FREQA_BITS _u(0xffff77ff)
#define ROSC_FREQA_RESET _u(0x00000000)
#define ROSC_FREQA_RESET _u(0x00000088)
// -----------------------------------------------------------------------------
// Field : ROSC_FREQA_PASSWD
// Description : Set to 0x9696 to apply the settings
@ -108,7 +108,7 @@
// -----------------------------------------------------------------------------
// Field : ROSC_FREQA_DS1_RANDOM
// Description : Randomises the stage 1 drive strength
#define ROSC_FREQA_DS1_RANDOM_RESET _u(0x0)
#define ROSC_FREQA_DS1_RANDOM_RESET _u(0x1)
#define ROSC_FREQA_DS1_RANDOM_BITS _u(0x00000080)
#define ROSC_FREQA_DS1_RANDOM_MSB _u(7)
#define ROSC_FREQA_DS1_RANDOM_LSB _u(7)
@ -124,7 +124,7 @@
// -----------------------------------------------------------------------------
// Field : ROSC_FREQA_DS0_RANDOM
// Description : Randomises the stage 0 drive strength
#define ROSC_FREQA_DS0_RANDOM_RESET _u(0x0)
#define ROSC_FREQA_DS0_RANDOM_RESET _u(0x1)
#define ROSC_FREQA_DS0_RANDOM_BITS _u(0x00000008)
#define ROSC_FREQA_DS0_RANDOM_MSB _u(3)
#define ROSC_FREQA_DS0_RANDOM_LSB _u(3)
@ -206,7 +206,7 @@
// On power-up this field is initialised to WAKE
// An invalid write will also select WAKE
// Warning: setup the irq before selecting dormant mode
// 0x636f6d61 -> dormant
// 0x636f6d61 -> DORMANT
// 0x77616b65 -> WAKE
#define ROSC_DORMANT_OFFSET _u(0x00000010)
#define ROSC_DORMANT_BITS _u(0xffffffff)

View file

@ -86,7 +86,7 @@
// In addition the following custom extensions are configured:
// Xh3bm, Xh3power, Xh3irq, Xh3pmpm
#define RVCSR_MISA_OFFSET _u(0x00000301)
#define RVCSR_MISA_BITS _u(0xc0901107)
#define RVCSR_MISA_BITS _u(0xc0b511bf)
#define RVCSR_MISA_RESET _u(0x40901105)
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_MXL
@ -106,6 +106,14 @@
#define RVCSR_MISA_X_LSB _u(23)
#define RVCSR_MISA_X_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_V
// Description : Vector extension (not implemented).
#define RVCSR_MISA_V_RESET _u(0x0)
#define RVCSR_MISA_V_BITS _u(0x00200000)
#define RVCSR_MISA_V_MSB _u(21)
#define RVCSR_MISA_V_LSB _u(21)
#define RVCSR_MISA_V_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_U
// Description : Value of 1 indicates U-mode is implemented.
#define RVCSR_MISA_U_RESET _u(0x1)
@ -114,6 +122,22 @@
#define RVCSR_MISA_U_LSB _u(20)
#define RVCSR_MISA_U_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_S
// Description : Supervisor extension (not implemented).
#define RVCSR_MISA_S_RESET _u(0x0)
#define RVCSR_MISA_S_BITS _u(0x00040000)
#define RVCSR_MISA_S_MSB _u(18)
#define RVCSR_MISA_S_LSB _u(18)
#define RVCSR_MISA_S_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_Q
// Description : Quad-precision floating point extension (not implemented).
#define RVCSR_MISA_Q_RESET _u(0x0)
#define RVCSR_MISA_Q_BITS _u(0x00010000)
#define RVCSR_MISA_Q_MSB _u(16)
#define RVCSR_MISA_Q_LSB _u(16)
#define RVCSR_MISA_Q_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_M
// Description : Value of 1 indicates the M extension (integer multiply/divide)
// is implemented.
@ -132,6 +156,39 @@
#define RVCSR_MISA_I_LSB _u(8)
#define RVCSR_MISA_I_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_H
// Description : Hypervisor extension (not implemented, I agree it would be
// pretty cool on a microcontroller through).
#define RVCSR_MISA_H_RESET _u(0x0)
#define RVCSR_MISA_H_BITS _u(0x00000080)
#define RVCSR_MISA_H_MSB _u(7)
#define RVCSR_MISA_H_LSB _u(7)
#define RVCSR_MISA_H_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_F
// Description : Single-precision floating point extension (not implemented).
#define RVCSR_MISA_F_RESET _u(0x0)
#define RVCSR_MISA_F_BITS _u(0x00000020)
#define RVCSR_MISA_F_MSB _u(5)
#define RVCSR_MISA_F_LSB _u(5)
#define RVCSR_MISA_F_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_E
// Description : RV32E/64E base ISA (not implemented).
#define RVCSR_MISA_E_RESET _u(0x0)
#define RVCSR_MISA_E_BITS _u(0x00000010)
#define RVCSR_MISA_E_MSB _u(4)
#define RVCSR_MISA_E_LSB _u(4)
#define RVCSR_MISA_E_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_D
// Description : Double-precision floating point extension (not implemented).
#define RVCSR_MISA_D_RESET _u(0x0)
#define RVCSR_MISA_D_BITS _u(0x00000008)
#define RVCSR_MISA_D_MSB _u(3)
#define RVCSR_MISA_D_LSB _u(3)
#define RVCSR_MISA_D_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MISA_C
// Description : Value of 1 indicates the C extension (compressed instructions)
// is implemented.
@ -207,7 +264,7 @@
// Description : Timer interrupt enable. The processor transfers to the timer
// interrupt vector when `mie.mtie`, `mip.mtip` and `mstatus.mie`
// are all 1, unless a software or external interrupt request is
// also valid at this time.
// also both pending and enabled at this time.
#define RVCSR_MIE_MTIE_RESET _u(0x0)
#define RVCSR_MIE_MTIE_BITS _u(0x00000080)
#define RVCSR_MIE_MTIE_MSB _u(7)
@ -216,9 +273,9 @@
// -----------------------------------------------------------------------------
// Field : RVCSR_MIE_MSIE
// Description : Software interrupt enable. The processor transfers to the
// software interrupt vector `mie.msie`, `mip.msip` and
// software interrupt vector when `mie.msie`, `mip.msip` and
// `mstatus.mie` are all 1, unless an external interrupt request
// is also valid at this time.
// is also both pending and enabled at this time.
#define RVCSR_MIE_MSIE_RESET _u(0x0)
#define RVCSR_MIE_MSIE_BITS _u(0x00000008)
#define RVCSR_MIE_MSIE_MSB _u(3)
@ -336,7 +393,7 @@
#define RVCSR_MENVCFGH_RESET _u(0x00000000)
#define RVCSR_MENVCFGH_MSB _u(31)
#define RVCSR_MENVCFGH_LSB _u(0)
#define RVCSR_MENVCFGH_ACCESS "RW"
#define RVCSR_MENVCFGH_ACCESS "-"
// =============================================================================
// Register : RVCSR_MCOUNTINHIBIT
// Description : Count inhibit register for `mcycle`/`minstret`
@ -732,7 +789,7 @@
// Description : Timer interrupt pending. The processor transfers to the timer
// interrupt vector when `mie.mtie`, `mip.mtip` and `mstatus.mie`
// are all 1, unless a software or external interrupt request is
// also valid at this time.
// also both pending and enabled at this time.
#define RVCSR_MIP_MTIP_RESET _u(0x0)
#define RVCSR_MIP_MTIP_BITS _u(0x00000080)
#define RVCSR_MIP_MTIP_MSB _u(7)
@ -741,9 +798,9 @@
// -----------------------------------------------------------------------------
// Field : RVCSR_MIP_MSIP
// Description : Software interrupt pending. The processor transfers to the
// software interrupt vector `mie.msie`, `mip.msip` and
// software interrupt vector when `mie.msie`, `mip.msip` and
// `mstatus.mie` are all 1, unless an external interrupt request
// is also valid at this time.
// is also both pending and enabled at this time.
#define RVCSR_MIP_MSIP_RESET _u(0x0)
#define RVCSR_MIP_MSIP_BITS _u(0x00000008)
#define RVCSR_MIP_MSIP_MSB _u(3)
@ -3099,14 +3156,18 @@
#define RVCSR_MVENDORID_RESET _u(0x00000000)
// -----------------------------------------------------------------------------
// Field : RVCSR_MVENDORID_BANK
#define RVCSR_MVENDORID_BANK_RESET "-"
// Description : Value of 9 indicates 9 continuation codes, which is JEP106 bank
// 10.
#define RVCSR_MVENDORID_BANK_RESET _u(0x0000009)
#define RVCSR_MVENDORID_BANK_BITS _u(0xffffff80)
#define RVCSR_MVENDORID_BANK_MSB _u(31)
#define RVCSR_MVENDORID_BANK_LSB _u(7)
#define RVCSR_MVENDORID_BANK_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : RVCSR_MVENDORID_OFFSET
#define RVCSR_MVENDORID_OFFSET_RESET "-"
// Description : ID 0x13 in bank 10 is the JEP106 ID for Raspberry Pi Ltd, the
// vendor of RP2350.
#define RVCSR_MVENDORID_OFFSET_RESET _u(0x13)
#define RVCSR_MVENDORID_OFFSET_BITS _u(0x0000007f)
#define RVCSR_MVENDORID_OFFSET_MSB _u(6)
#define RVCSR_MVENDORID_OFFSET_LSB _u(0)
@ -3122,10 +3183,11 @@
#define RVCSR_MARCHID_ACCESS "RO"
// =============================================================================
// Register : RVCSR_MIMPID
// Description : Implementation ID
// Description : Implementation ID. On RP2350 this reads as 0x86fc4e3f, which is
// release v1.0-rc1 of Hazard3.
#define RVCSR_MIMPID_OFFSET _u(0x00000f13)
#define RVCSR_MIMPID_BITS _u(0xffffffff)
#define RVCSR_MIMPID_RESET "-"
#define RVCSR_MIMPID_RESET _u(0x86fc4e3f)
#define RVCSR_MIMPID_MSB _u(31)
#define RVCSR_MIMPID_LSB _u(0)
#define RVCSR_MIMPID_ACCESS "RO"

View file

@ -255,7 +255,10 @@
// =============================================================================
// Register : SYSCFG_AUXCTRL
// Description : Auxiliary system control register
// * Bits 7:2: Reserved
// * Bits 7:3: Reserved
//
// * Bit 2: Set to mask OTP power analogue power supply detection
// from resetting OTP controller and PSM
//
// * Bit 1: When clear, the LPOSC output is XORed into the TRNG
// ROSC output as an additional, uncorrelated entropy source. When

View file

@ -36,8 +36,7 @@
#define TICKS_PROC0_CTRL_ENABLE_ACCESS "RW"
// =============================================================================
// Register : TICKS_PROC0_CYCLES
// Description : None
// Total number of clk_tick cycles before the next tick.
// Description : Total number of clk_tick cycles before the next tick.
#define TICKS_PROC0_CYCLES_OFFSET _u(0x00000004)
#define TICKS_PROC0_CYCLES_BITS _u(0x000001ff)
#define TICKS_PROC0_CYCLES_RESET _u(0x00000000)
@ -46,8 +45,7 @@
#define TICKS_PROC0_CYCLES_ACCESS "RW"
// =============================================================================
// Register : TICKS_PROC0_COUNT
// Description : None
// Count down timer: the remaining number clk_tick cycles before
// Description : Count down timer: the remaining number clk_tick cycles before
// the next tick is generated.
#define TICKS_PROC0_COUNT_OFFSET _u(0x00000008)
#define TICKS_PROC0_COUNT_BITS _u(0x000001ff)
@ -79,8 +77,7 @@
#define TICKS_PROC1_CTRL_ENABLE_ACCESS "RW"
// =============================================================================
// Register : TICKS_PROC1_CYCLES
// Description : None
// Total number of clk_tick cycles before the next tick.
// Description : Total number of clk_tick cycles before the next tick.
#define TICKS_PROC1_CYCLES_OFFSET _u(0x00000010)
#define TICKS_PROC1_CYCLES_BITS _u(0x000001ff)
#define TICKS_PROC1_CYCLES_RESET _u(0x00000000)
@ -89,8 +86,7 @@
#define TICKS_PROC1_CYCLES_ACCESS "RW"
// =============================================================================
// Register : TICKS_PROC1_COUNT
// Description : None
// Count down timer: the remaining number clk_tick cycles before
// Description : Count down timer: the remaining number clk_tick cycles before
// the next tick is generated.
#define TICKS_PROC1_COUNT_OFFSET _u(0x00000014)
#define TICKS_PROC1_COUNT_BITS _u(0x000001ff)
@ -122,8 +118,7 @@
#define TICKS_TIMER0_CTRL_ENABLE_ACCESS "RW"
// =============================================================================
// Register : TICKS_TIMER0_CYCLES
// Description : None
// Total number of clk_tick cycles before the next tick.
// Description : Total number of clk_tick cycles before the next tick.
#define TICKS_TIMER0_CYCLES_OFFSET _u(0x0000001c)
#define TICKS_TIMER0_CYCLES_BITS _u(0x000001ff)
#define TICKS_TIMER0_CYCLES_RESET _u(0x00000000)
@ -132,8 +127,7 @@
#define TICKS_TIMER0_CYCLES_ACCESS "RW"
// =============================================================================
// Register : TICKS_TIMER0_COUNT
// Description : None
// Count down timer: the remaining number clk_tick cycles before
// Description : Count down timer: the remaining number clk_tick cycles before
// the next tick is generated.
#define TICKS_TIMER0_COUNT_OFFSET _u(0x00000020)
#define TICKS_TIMER0_COUNT_BITS _u(0x000001ff)
@ -165,8 +159,7 @@
#define TICKS_TIMER1_CTRL_ENABLE_ACCESS "RW"
// =============================================================================
// Register : TICKS_TIMER1_CYCLES
// Description : None
// Total number of clk_tick cycles before the next tick.
// Description : Total number of clk_tick cycles before the next tick.
#define TICKS_TIMER1_CYCLES_OFFSET _u(0x00000028)
#define TICKS_TIMER1_CYCLES_BITS _u(0x000001ff)
#define TICKS_TIMER1_CYCLES_RESET _u(0x00000000)
@ -175,8 +168,7 @@
#define TICKS_TIMER1_CYCLES_ACCESS "RW"
// =============================================================================
// Register : TICKS_TIMER1_COUNT
// Description : None
// Count down timer: the remaining number clk_tick cycles before
// Description : Count down timer: the remaining number clk_tick cycles before
// the next tick is generated.
#define TICKS_TIMER1_COUNT_OFFSET _u(0x0000002c)
#define TICKS_TIMER1_COUNT_BITS _u(0x000001ff)
@ -208,8 +200,7 @@
#define TICKS_WATCHDOG_CTRL_ENABLE_ACCESS "RW"
// =============================================================================
// Register : TICKS_WATCHDOG_CYCLES
// Description : None
// Total number of clk_tick cycles before the next tick.
// Description : Total number of clk_tick cycles before the next tick.
#define TICKS_WATCHDOG_CYCLES_OFFSET _u(0x00000034)
#define TICKS_WATCHDOG_CYCLES_BITS _u(0x000001ff)
#define TICKS_WATCHDOG_CYCLES_RESET _u(0x00000000)
@ -218,8 +209,7 @@
#define TICKS_WATCHDOG_CYCLES_ACCESS "RW"
// =============================================================================
// Register : TICKS_WATCHDOG_COUNT
// Description : None
// Count down timer: the remaining number clk_tick cycles before
// Description : Count down timer: the remaining number clk_tick cycles before
// the next tick is generated.
#define TICKS_WATCHDOG_COUNT_OFFSET _u(0x00000038)
#define TICKS_WATCHDOG_COUNT_BITS _u(0x000001ff)
@ -251,8 +241,7 @@
#define TICKS_RISCV_CTRL_ENABLE_ACCESS "RW"
// =============================================================================
// Register : TICKS_RISCV_CYCLES
// Description : None
// Total number of clk_tick cycles before the next tick.
// Description : Total number of clk_tick cycles before the next tick.
#define TICKS_RISCV_CYCLES_OFFSET _u(0x00000040)
#define TICKS_RISCV_CYCLES_BITS _u(0x000001ff)
#define TICKS_RISCV_CYCLES_RESET _u(0x00000000)
@ -261,8 +250,7 @@
#define TICKS_RISCV_CYCLES_ACCESS "RW"
// =============================================================================
// Register : TICKS_RISCV_COUNT
// Description : None
// Count down timer: the remaining number clk_tick cycles before
// Description : Count down timer: the remaining number clk_tick cycles before
// the next tick is generated.
#define TICKS_RISCV_COUNT_OFFSET _u(0x00000044)
#define TICKS_RISCV_COUNT_BITS _u(0x000001ff)

View file

@ -1082,13 +1082,14 @@
#define USB_SIE_STATUS_SPEED_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : USB_SIE_STATUS_SUSPENDED
// Description : Bus in suspended state. Valid for device. Device will go into
// suspend if neither Keep Alive / SOF frames are enabled.
// Description : Bus in suspended state. Valid for device and host. Host and
// device will go into suspend if neither Keep Alive / SOF frames
// are enabled.
#define USB_SIE_STATUS_SUSPENDED_RESET _u(0x0)
#define USB_SIE_STATUS_SUSPENDED_BITS _u(0x00000010)
#define USB_SIE_STATUS_SUSPENDED_MSB _u(4)
#define USB_SIE_STATUS_SUSPENDED_LSB _u(4)
#define USB_SIE_STATUS_SUSPENDED_ACCESS "WC"
#define USB_SIE_STATUS_SUSPENDED_ACCESS "RO"
// -----------------------------------------------------------------------------
// Field : USB_SIE_STATUS_LINE_STATE
// Description : USB bus line state

View file

@ -137,14 +137,14 @@ typedef struct {
_REG_(POWMAN_STATE_OFFSET) // POWMAN_STATE
// This register controls the power state of the 4 power domains
// 0x00002000 [13] CHANGING (0)
// 0x00001000 [12] WAITING (0)
// 0x00000800 [11] BAD_HW_REQ (0) Bad hardware initiated state request
// 0x00000400 [10] BAD_SW_REQ (0) Bad software initiated state request
// 0x00000200 [9] PWRUP_WHILE_WAITING (0) Request ignored because of a pending pwrup request
// 0x00000100 [8] REQ_IGNORED (0)
// 0x000000f0 [7:4] REQ (0x0)
// 0x0000000f [3:0] CURRENT (0xf)
// 0x00002000 [13] CHANGING (0) Indicates a power state change is in progress
// 0x00001000 [12] WAITING (0) Indicates the power manager has received a state change...
// 0x00000800 [11] BAD_HW_REQ (0) Invalid hardware initiated state request, power up...
// 0x00000400 [10] BAD_SW_REQ (0) Invalid software initiated state request ignored
// 0x00000200 [9] PWRUP_WHILE_WAITING (0) Indicates that a power state change request was ignored...
// 0x00000100 [8] REQ_IGNORED (0) Indicates that a software state change request was...
// 0x000000f0 [7:4] REQ (0x0) This is written by software or hardware to request a new...
// 0x0000000f [3:0] CURRENT (0xf) Indicates the current power state
io_rw_32 state;
_REG_(POWMAN_POW_FASTDIV_OFFSET) // POWMAN_POW_FASTDIV

View file

@ -35,9 +35,9 @@ typedef struct {
// 0xffff0000 [31:16] PASSWD (0x0000) Set to 0x9696 to apply the settings +
// 0x00007000 [14:12] DS3 (0x0) Stage 3 drive strength
// 0x00000700 [10:8] DS2 (0x0) Stage 2 drive strength
// 0x00000080 [7] DS1_RANDOM (0) Randomises the stage 1 drive strength
// 0x00000080 [7] DS1_RANDOM (1) Randomises the stage 1 drive strength
// 0x00000070 [6:4] DS1 (0x0) Stage 1 drive strength
// 0x00000008 [3] DS0_RANDOM (0) Randomises the stage 0 drive strength
// 0x00000008 [3] DS0_RANDOM (1) Randomises the stage 0 drive strength
// 0x00000007 [2:0] DS0 (0x0) Stage 0 drive strength
io_rw_32 freqa;

View file

@ -72,7 +72,7 @@ typedef struct {
_REG_(SYSCFG_AUXCTRL_OFFSET) // SYSCFG_AUXCTRL
// Auxiliary system control register
// 0x000000ff [7:0] AUXCTRL (0x00) * Bits 7:2: Reserved
// 0x000000ff [7:0] AUXCTRL (0x00) * Bits 7:3: Reserved
io_rw_32 auxctrl;
} syscfg_hw_t;

View file

@ -4,10 +4,10 @@
* @file src/rp2_common/cmsis/stub/CMSIS/Device/RP2350/Include/RP2350.h
* @brief CMSIS HeaderFile
* @version 0.1
* @date Thu Aug 8 04:04:02 2024
* @note Generated by SVDConv V3.3.47
* from File 'src/rp2_common/cmsis/../../rp2350/hardware_regs/RP2350.svd',
* last modified on Thu Aug 8 03:59:33 2024
* @date Mon Jul 28 11:37:41 2025
* @note Generated by SVDConv V3.3.45
* from File 'src/rp2350/hardware_regs/RP2350.svd',
* last modified on Mon Jul 28 11:35:05 2025
*/
@ -2028,7 +2028,7 @@ typedef struct { /*!< POWMAN Structure
ignore the power down requests. To do nothing would risk
entering an unrecoverable lock-up state. Invalid requests
are: any combination of power up and power down requests
any request that results in swcore boing powered and xip
any request that results in swcore being powered and xip
unpowered If the request is to power down the switched-core
domain then POWMAN_STATE_WAITING stays active until the
processors halt. During this time the POWMAN_STATE_REQ