drivers: ambiq: Change the way to power on ambiq drivers
This commit changes to use ambiq hal power control APIs
to replace the previous register settings to power on
ambiq drivers.
Signed-off-by: Hao Luo <hluo@ambiq.com>
diff --git a/drivers/adc/adc_ambiq.c b/drivers/adc/adc_ambiq.c
index 66c40ef..0ebdc24 100644
--- a/drivers/adc/adc_ambiq.c
+++ b/drivers/adc/adc_ambiq.c
@@ -21,8 +21,6 @@
#include <zephyr/logging/log.h>
LOG_MODULE_REGISTER(adc_ambiq, CONFIG_ADC_LOG_LEVEL);
-typedef int (*ambiq_adc_pwr_func_t)(void);
-#define PWRCTRL_MAX_WAIT_US 5
/* Number of slots available. */
#define AMBIQ_ADC_SLOT_NUMBER AM_HAL_ADC_MAX_SLOTS
@@ -32,7 +30,6 @@
uint8_t num_channels;
void (*irq_config_func)(void);
const struct pinctrl_dev_config *pin_cfg;
- ambiq_adc_pwr_func_t pwr_func;
};
struct adc_ambiq_data {
@@ -290,7 +287,7 @@
}
/* power on ADC*/
- ret = cfg->pwr_func();
+ ret = am_hal_adc_power_control(data->adcHandle, AM_HAL_SYSCTRL_WAKE, false);
/* Set up the ADC configuration parameters. These settings are reasonable
* for accurate measurements at a low sample rate.
@@ -404,14 +401,6 @@
#define ADC_AMBIQ_INIT(n) \
PINCTRL_DT_INST_DEFINE(n); \
ADC_AMBIQ_DRIVER_API(n); \
- static int pwr_on_ambiq_adc_##n(void) \
- { \
- uint32_t addr = DT_REG_ADDR(DT_INST_PHANDLE(n, ambiq_pwrcfg)) + \
- DT_INST_PHA(n, ambiq_pwrcfg, offset); \
- sys_write32((sys_read32(addr) | DT_INST_PHA(n, ambiq_pwrcfg, mask)), addr); \
- k_busy_wait(PWRCTRL_MAX_WAIT_US); \
- return 0; \
- } \
static void adc_irq_config_func_##n(void) \
{ \
IRQ_CONNECT(DT_INST_IRQN(n), DT_INST_IRQ(n, priority), adc_ambiq_isr, \
@@ -429,7 +418,6 @@
.num_channels = DT_PROP(DT_DRV_INST(n), channel_count), \
.irq_config_func = adc_irq_config_func_##n, \
.pin_cfg = PINCTRL_DT_INST_DEV_CONFIG_GET(n), \
- .pwr_func = pwr_on_ambiq_adc_##n, \
}; \
PM_DEVICE_DT_INST_DEFINE(n, adc_ambiq_pm_action); \
DEVICE_DT_INST_DEFINE(n, &adc_ambiq_init, PM_DEVICE_DT_INST_GET(n), &adc_ambiq_data_##n, \
diff --git a/drivers/i2c/i2c_ambiq.c b/drivers/i2c/i2c_ambiq.c
index 993f13d..ae4fd1d 100644
--- a/drivers/i2c/i2c_ambiq.c
+++ b/drivers/i2c/i2c_ambiq.c
@@ -43,9 +43,6 @@
LOG_MODULE_REGISTER(ambiq_i2c, CONFIG_I2C_LOG_LEVEL);
-typedef int (*ambiq_i2c_pwr_func_t)(void);
-
-#define PWRCTRL_MAX_WAIT_US 5
#define I2C_TRANSFER_TIMEOUT_MSEC 500 /* Transfer timeout period */
#include "i2c-priv.h"
@@ -59,7 +56,6 @@
int size;
uint32_t bitrate;
const struct pinctrl_dev_config *pcfg;
- ambiq_i2c_pwr_func_t pwr_func;
void (*irq_config_func)(void);
};
@@ -420,7 +416,7 @@
return -ENXIO;
}
- ret = config->pwr_func();
+ ret = am_hal_iom_power_ctrl(data->iom_handler, AM_HAL_SYSCTRL_WAKE, false);
ret |= i2c_ambiq_configure(dev, I2C_MODE_CONTROLLER | bitrate_cfg);
if (ret < 0) {
@@ -492,14 +488,6 @@
#define AMBIQ_I2C_DEFINE(n) \
PINCTRL_DT_INST_DEFINE(n); \
- static int pwr_on_ambiq_i2c_##n(void) \
- { \
- uint32_t addr = DT_REG_ADDR(DT_INST_PHANDLE(n, ambiq_pwrcfg)) + \
- DT_INST_PHA(n, ambiq_pwrcfg, offset); \
- sys_write32((sys_read32(addr) | DT_INST_PHA(n, ambiq_pwrcfg, mask)), addr); \
- k_busy_wait(PWRCTRL_MAX_WAIT_US); \
- return 0; \
- } \
static void i2c_irq_config_func_##n(void) \
{ \
IRQ_CONNECT(DT_INST_IRQN(n), DT_INST_IRQ(n, priority), i2c_ambiq_isr, \
@@ -517,7 +505,6 @@
.bitrate = DT_INST_PROP(n, clock_frequency), \
.pcfg = PINCTRL_DT_INST_DEV_CONFIG_GET(n), \
.irq_config_func = i2c_irq_config_func_##n, \
- .pwr_func = pwr_on_ambiq_i2c_##n, \
IF_ENABLED(CONFIG_I2C_AMBIQ_BUS_RECOVERY, \
(.scl = GPIO_DT_SPEC_INST_GET_OR(n, scl_gpios, {0}),\
.sda = GPIO_DT_SPEC_INST_GET_OR(n, sda_gpios, {0}),)) }; \
diff --git a/drivers/serial/uart_pl011_ambiq.h b/drivers/serial/uart_pl011_ambiq.h
index 5efb0e5..704a469 100644
--- a/drivers/serial/uart_pl011_ambiq.h
+++ b/drivers/serial/uart_pl011_ambiq.h
@@ -15,8 +15,6 @@
#include "uart_pl011_registers.h"
#include <am_mcu_apollo.h>
-#define PWRCTRL_MAX_WAIT_US 5
-
static inline void pl011_ambiq_enable_clk(const struct device *dev)
{
get_uart(dev)->cr |= PL011_CR_AMBIQ_CLKEN;
diff --git a/drivers/spi/spi_ambiq_bleif.c b/drivers/spi/spi_ambiq_bleif.c
index 2999208..92b94a1 100644
--- a/drivers/spi/spi_ambiq_bleif.c
+++ b/drivers/spi/spi_ambiq_bleif.c
@@ -23,15 +23,10 @@
#include "spi_context.h"
#include <am_mcu_apollo.h>
-#define PWRCTRL_MAX_WAIT_US 5
-
-typedef int (*ambiq_spi_pwr_func_t)(void);
-
struct spi_ambiq_config {
uint32_t base;
int size;
const struct pinctrl_dev_config *pcfg;
- ambiq_spi_pwr_func_t pwr_func;
};
struct spi_ambiq_data {
@@ -190,29 +185,18 @@
return ret;
}
- ret = cfg->pwr_func();
-
return ret;
}
#define AMBIQ_SPI_BLEIF_INIT(n) \
PINCTRL_DT_INST_DEFINE(n); \
- static int pwr_on_ambiq_spi_##n(void) \
- { \
- uint32_t addr = DT_REG_ADDR(DT_INST_PHANDLE(n, ambiq_pwrcfg)) + \
- DT_INST_PHA(n, ambiq_pwrcfg, offset); \
- sys_write32((sys_read32(addr) | DT_INST_PHA(n, ambiq_pwrcfg, mask)), addr); \
- k_busy_wait(PWRCTRL_MAX_WAIT_US); \
- return 0; \
- } \
static struct spi_ambiq_data spi_ambiq_data##n = { \
SPI_CONTEXT_INIT_LOCK(spi_ambiq_data##n, ctx), \
SPI_CONTEXT_INIT_SYNC(spi_ambiq_data##n, ctx)}; \
static const struct spi_ambiq_config spi_ambiq_config##n = { \
.base = DT_INST_REG_ADDR(n), \
.size = DT_INST_REG_SIZE(n), \
- .pcfg = PINCTRL_DT_INST_DEV_CONFIG_GET(n), \
- .pwr_func = pwr_on_ambiq_spi_##n}; \
+ .pcfg = PINCTRL_DT_INST_DEV_CONFIG_GET(n)}; \
SPI_DEVICE_DT_INST_DEFINE(n, spi_ambiq_init, NULL, &spi_ambiq_data##n, \
&spi_ambiq_config##n, POST_KERNEL, CONFIG_SPI_INIT_PRIORITY, \
&spi_ambiq_driver_api);
diff --git a/drivers/spi/spi_ambiq_spic.c b/drivers/spi/spi_ambiq_spic.c
index 5dac263..2a1dae1 100644
--- a/drivers/spi/spi_ambiq_spic.c
+++ b/drivers/spi/spi_ambiq_spic.c
@@ -41,16 +41,11 @@
#define SPI_AMBIQ_MANUAL_CACHE_COHERENCY_REQUIRED 0
#endif /* defined(CONFIG_DCACHE) && !defined(CONFIG_NOCACHE_MEMORY) */
-#define PWRCTRL_MAX_WAIT_US 5
-
-typedef int (*ambiq_spi_pwr_func_t)(void);
-
struct spi_ambiq_config {
uint32_t base;
int size;
uint32_t clock_freq;
const struct pinctrl_dev_config *pcfg;
- ambiq_spi_pwr_func_t pwr_func;
void (*irq_config_func)(void);
};
@@ -517,7 +512,7 @@
return -ENXIO;
}
- ret = cfg->pwr_func();
+ ret = am_hal_iom_power_ctrl(data->iom_handler, AM_HAL_SYSCTRL_WAKE, false);
ret |= pinctrl_apply_state(cfg->pcfg, PINCTRL_STATE_DEFAULT);
ret |= spi_context_cs_configure_all(&data->ctx);
@@ -571,14 +566,6 @@
#define AMBIQ_SPI_INIT(n) \
PINCTRL_DT_INST_DEFINE(n); \
- static int pwr_on_ambiq_spi_##n(void) \
- { \
- uint32_t addr = DT_REG_ADDR(DT_INST_PHANDLE(n, ambiq_pwrcfg)) + \
- DT_INST_PHA(n, ambiq_pwrcfg, offset); \
- sys_write32((sys_read32(addr) | DT_INST_PHA(n, ambiq_pwrcfg, mask)), addr); \
- k_busy_wait(PWRCTRL_MAX_WAIT_US); \
- return 0; \
- } \
static void spi_irq_config_func_##n(void) \
{ \
IRQ_CONNECT(DT_INST_IRQN(n), DT_INST_IRQ(n, priority), spi_ambiq_isr, \
@@ -594,8 +581,7 @@
.size = DT_INST_REG_SIZE(n), \
.clock_freq = DT_INST_PROP(n, clock_frequency), \
.pcfg = PINCTRL_DT_INST_DEV_CONFIG_GET(n), \
- .irq_config_func = spi_irq_config_func_##n, \
- .pwr_func = pwr_on_ambiq_spi_##n}; \
+ .irq_config_func = spi_irq_config_func_##n}; \
PM_DEVICE_DT_INST_DEFINE(n, spi_ambiq_pm_action); \
SPI_DEVICE_DT_INST_DEFINE(n, spi_ambiq_init, PM_DEVICE_DT_INST_GET(n), &spi_ambiq_data##n, \
&spi_ambiq_config##n, POST_KERNEL, CONFIG_SPI_INIT_PRIORITY, \
diff --git a/drivers/spi/spi_ambiq_spid.c b/drivers/spi/spi_ambiq_spid.c
index 822332a..be19fcf 100644
--- a/drivers/spi/spi_ambiq_spid.c
+++ b/drivers/spi/spi_ambiq_spid.c
@@ -22,16 +22,11 @@
#include "spi_context.h"
#include <am_mcu_apollo.h>
-#define AMBIQ_SPID_PWRCTRL_MAX_WAIT_US 5
-
-typedef int (*ambiq_spi_pwr_func_t)(void);
-
struct spi_ambiq_config {
const struct gpio_dt_spec int_gpios;
uint32_t base;
int size;
const struct pinctrl_dev_config *pcfg;
- ambiq_spi_pwr_func_t pwr_func;
void (*irq_config_func)(void);
};
@@ -342,7 +337,7 @@
return -ENXIO;
}
- ret = cfg->pwr_func();
+ ret = am_hal_ios_power_ctrl(data->ios_handler, AM_HAL_SYSCTRL_WAKE, false);
ret |= pinctrl_apply_state(cfg->pcfg, PINCTRL_STATE_DEFAULT);
if (ret < 0) {
@@ -396,14 +391,6 @@
#define AMBIQ_SPID_INIT(n) \
PINCTRL_DT_INST_DEFINE(n); \
- static int pwr_on_ambiq_spi_##n(void) \
- { \
- uint32_t addr = DT_REG_ADDR(DT_INST_PHANDLE(n, ambiq_pwrcfg)) + \
- DT_INST_PHA(n, ambiq_pwrcfg, offset); \
- sys_write32((sys_read32(addr) | DT_INST_PHA(n, ambiq_pwrcfg, mask)), addr); \
- k_busy_wait(AMBIQ_SPID_PWRCTRL_MAX_WAIT_US); \
- return 0; \
- } \
static void spi_irq_config_func_##n(void) \
{ \
IRQ_CONNECT(DT_INST_IRQN(n), DT_INST_IRQ(n, priority), spi_ambiq_isr, \
@@ -420,8 +407,7 @@
.base = DT_INST_REG_ADDR(n), \
.size = DT_INST_REG_SIZE(n), \
.pcfg = PINCTRL_DT_INST_DEV_CONFIG_GET(n), \
- .irq_config_func = spi_irq_config_func_##n, \
- .pwr_func = pwr_on_ambiq_spi_##n}; \
+ .irq_config_func = spi_irq_config_func_##n}; \
PM_DEVICE_DT_INST_DEFINE(n, spi_ambiq_pm_action); \
SPI_DEVICE_DT_INST_DEFINE(n, spi_ambiq_init, PM_DEVICE_DT_INST_GET(n), &spi_ambiq_data##n, \
&spi_ambiq_config##n, POST_KERNEL, CONFIG_SPI_INIT_PRIORITY, \
diff --git a/dts/arm/ambiq/ambiq_apollo3_blue.dtsi b/dts/arm/ambiq/ambiq_apollo3_blue.dtsi
index cf764f1..76ffc6e 100644
--- a/dts/arm/ambiq/ambiq_apollo3_blue.dtsi
+++ b/dts/arm/ambiq/ambiq_apollo3_blue.dtsi
@@ -204,7 +204,6 @@
#size-cells = <0>;
interrupts = <4 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0>;
zephyr,pm-device-runtime-auto;
};
@@ -215,7 +214,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x2>;
zephyr,pm-device-runtime-auto;
};
@@ -226,7 +224,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x4>;
zephyr,pm-device-runtime-auto;
};
@@ -237,7 +234,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x8>;
zephyr,pm-device-runtime-auto;
};
@@ -248,7 +244,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x10>;
zephyr,pm-device-runtime-auto;
};
@@ -259,7 +254,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x20>;
zephyr,pm-device-runtime-auto;
};
@@ -270,7 +264,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x40>;
zephyr,pm-device-runtime-auto;
};
@@ -281,7 +274,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x2>;
zephyr,pm-device-runtime-auto;
};
@@ -292,7 +284,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x4>;
zephyr,pm-device-runtime-auto;
};
@@ -303,7 +294,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x8>;
zephyr,pm-device-runtime-auto;
};
@@ -314,7 +304,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x10>;
zephyr,pm-device-runtime-auto;
};
@@ -325,7 +314,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x20>;
zephyr,pm-device-runtime-auto;
};
@@ -336,7 +324,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x40>;
zephyr,pm-device-runtime-auto;
};
@@ -349,7 +336,6 @@
internal-vref-mv = <1500>;
status = "disabled";
#io-channel-cells = <1>;
- ambiq,pwrcfg = <&pwrcfg 0x8 0x200>;
};
mspi0: spi@40020000 {
@@ -359,7 +345,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x800>;
};
rtc0: rtc@40004240 {
@@ -377,7 +362,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x8000>;
bt_hci_apollo: bt-hci@0 {
compatible = "ambiq,bt-hci-spi";
diff --git a/dts/arm/ambiq/ambiq_apollo3p_blue.dtsi b/dts/arm/ambiq/ambiq_apollo3p_blue.dtsi
index 10ae318..f185cb9 100644
--- a/dts/arm/ambiq/ambiq_apollo3p_blue.dtsi
+++ b/dts/arm/ambiq/ambiq_apollo3p_blue.dtsi
@@ -222,7 +222,6 @@
#size-cells = <0>;
interrupts = <4 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0>;
zephyr,pm-device-runtime-auto;
};
@@ -233,7 +232,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x2>;
zephyr,pm-device-runtime-auto;
};
@@ -244,7 +242,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x4>;
zephyr,pm-device-runtime-auto;
};
@@ -255,7 +252,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x8>;
zephyr,pm-device-runtime-auto;
};
@@ -266,7 +262,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x10>;
zephyr,pm-device-runtime-auto;
};
@@ -277,7 +272,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x20>;
zephyr,pm-device-runtime-auto;
};
@@ -288,7 +282,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x40>;
zephyr,pm-device-runtime-auto;
};
@@ -299,7 +292,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x2>;
zephyr,pm-device-runtime-auto;
};
@@ -310,7 +302,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x4>;
zephyr,pm-device-runtime-auto;
};
@@ -321,7 +312,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x8>;
zephyr,pm-device-runtime-auto;
};
@@ -332,7 +322,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x10>;
zephyr,pm-device-runtime-auto;
};
@@ -343,7 +332,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x20>;
zephyr,pm-device-runtime-auto;
};
@@ -354,7 +342,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x40>;
zephyr,pm-device-runtime-auto;
};
@@ -367,7 +354,6 @@
internal-vref-mv = <1500>;
status = "disabled";
#io-channel-cells = <1>;
- ambiq,pwrcfg = <&pwrcfg 0x8 0x200>;
};
mspi0: mspi@50014000 {
@@ -378,7 +364,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x800>;
};
mspi1: mspi@50015000 {
@@ -389,7 +374,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x1000>;
};
mspi2: mspi@50016000 {
@@ -400,7 +384,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x2000>;
};
rtc0: rtc@40004240 {
@@ -418,7 +401,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x8 0x8000>;
bt_hci_apollo: bt-hci@0 {
compatible = "ambiq,bt-hci-spi";
diff --git a/dts/arm/ambiq/ambiq_apollo4p.dtsi b/dts/arm/ambiq/ambiq_apollo4p.dtsi
index b40744a..56c7e74 100644
--- a/dts/arm/ambiq/ambiq_apollo4p.dtsi
+++ b/dts/arm/ambiq/ambiq_apollo4p.dtsi
@@ -160,7 +160,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x2>;
};
iom0_i2c: i2c@40050000 {
@@ -170,7 +169,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x2>;
};
iom1_spi: spi@40051000 {
@@ -180,7 +178,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x4>;
};
iom1_i2c: i2c@40051000 {
@@ -190,7 +187,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x4>;
};
iom2_spi: spi@40052000 {
@@ -200,7 +196,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x8>;
};
iom2_i2c: i2c@40052000 {
@@ -210,7 +205,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x8>;
};
iom3_spi: spi@40053000 {
@@ -220,7 +214,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x10>;
};
iom3_i2c: i2c@40053000 {
@@ -230,7 +223,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x10>;
};
iom4_spi: spi@40054000 {
@@ -240,7 +232,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x20>;
};
iom4_i2c: i2c@40054000 {
@@ -250,7 +241,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x20>;
};
iom5_spi: spi@40055000 {
@@ -260,7 +250,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x40>;
};
iom5_i2c: i2c@40055000 {
@@ -270,7 +259,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x40>;
};
iom6_spi: spi@40056000 {
@@ -280,7 +268,6 @@
#size-cells = <0>;
interrupts = <12 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x80>;
};
iom6_i2c: i2c@40056000 {
@@ -290,7 +277,6 @@
#size-cells = <0>;
interrupts = <12 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x80>;
};
iom7_spi: spi@40057000 {
@@ -300,7 +286,6 @@
#size-cells = <0>;
interrupts = <13 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x100>;
};
iom7_i2c: i2c@40057000 {
@@ -310,7 +295,6 @@
#size-cells = <0>;
interrupts = <13 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x100>;
};
adc0: adc@40038000 {
@@ -322,7 +306,6 @@
internal-vref-mv = <1190>;
status = "disabled";
#io-channel-cells = <1>;
- ambiq,pwrcfg = <&pwrcfg 0x4 0x2000>;
};
mspi0: spi@40060000 {
@@ -332,7 +315,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x4000>;
};
mspi1: spi@40061000 {
@@ -342,7 +324,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x8000>;
};
mspi2: spi@40062000 {
@@ -352,7 +333,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x10000>;
};
rtc0: rtc@40004800 {
@@ -370,7 +350,6 @@
num-bidir-endpoints = <6>;
maximum-speed = "full-speed";
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x400000>;
};
pinctrl: pin-controller@40010000 {
diff --git a/dts/arm/ambiq/ambiq_apollo4p_blue.dtsi b/dts/arm/ambiq/ambiq_apollo4p_blue.dtsi
index cf9c2bf..5833a64 100644
--- a/dts/arm/ambiq/ambiq_apollo4p_blue.dtsi
+++ b/dts/arm/ambiq/ambiq_apollo4p_blue.dtsi
@@ -141,7 +141,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x2>;
};
spi1: spi@40051000 {
@@ -151,7 +150,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x4>;
};
spi2: spi@40052000 {
@@ -161,7 +159,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x8>;
};
spi3: spi@40053000 {
@@ -171,7 +168,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x10>;
};
spi4: spi@40054000 {
@@ -184,7 +180,6 @@
cs-gpios = <&gpio32_63 22 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
clock-frequency = <DT_FREQ_M(24)>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x20>;
bt_hci_apollo: bt-hci@0 {
compatible = "ambiq,bt-hci-spi";
@@ -203,7 +198,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x40>;
};
spi6: spi@40056000 {
@@ -213,7 +207,6 @@
#size-cells = <0>;
interrupts = <12 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x80>;
};
spi7: spi@40057000 {
@@ -223,7 +216,6 @@
#size-cells = <0>;
interrupts = <13 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x100>;
};
i2c0: i2c@40050000 {
@@ -233,7 +225,6 @@
#size-cells = <0>;
interrupts = <6 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x2>;
};
i2c1: i2c@40051000 {
@@ -243,7 +234,6 @@
#size-cells = <0>;
interrupts = <7 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x4>;
};
i2c2: i2c@40052000 {
@@ -253,7 +243,6 @@
#size-cells = <0>;
interrupts = <8 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x8>;
};
i2c3: i2c@40053000 {
@@ -263,7 +252,6 @@
#size-cells = <0>;
interrupts = <9 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x10>;
};
i2c4: i2c@40054000 {
@@ -273,7 +261,6 @@
#size-cells = <0>;
interrupts = <10 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x20>;
};
i2c5: i2c@40055000 {
@@ -283,7 +270,6 @@
#size-cells = <0>;
interrupts = <11 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x40>;
};
i2c6: i2c@40056000 {
@@ -293,7 +279,6 @@
#size-cells = <0>;
interrupts = <12 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x80>;
};
i2c7: i2c@40057000 {
@@ -303,7 +288,6 @@
#size-cells = <0>;
interrupts = <13 0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x100>;
};
mspi0: spi@40060000 {
@@ -313,7 +297,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x4000>;
};
mspi1: spi@40061000 {
@@ -323,7 +306,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x8000>;
};
mspi2: spi@40062000 {
@@ -333,7 +315,6 @@
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x10000>;
};
usb: usb@400b0000 {
@@ -343,7 +324,6 @@
num-bidir-endpoints = <6>;
maximum-speed = "full-speed";
status = "disabled";
- ambiq,pwrcfg = <&pwrcfg 0x4 0x400000>;
};
rtc0: rtc@40004800 {
diff --git a/dts/bindings/adc/ambiq,adc.yaml b/dts/bindings/adc/ambiq,adc.yaml
index 034eadf..73f1381 100644
--- a/dts/bindings/adc/ambiq,adc.yaml
+++ b/dts/bindings/adc/ambiq,adc.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,adc"
-include: [adc-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [adc-controller.yaml, pinctrl-device.yaml]
properties:
reg:
required: true
diff --git a/dts/bindings/i2c/ambiq,i2c.yaml b/dts/bindings/i2c/ambiq,i2c.yaml
index 7d7a876..a181cbe 100644
--- a/dts/bindings/i2c/ambiq,i2c.yaml
+++ b/dts/bindings/i2c/ambiq,i2c.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,i2c"
-include: [i2c-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [i2c-controller.yaml, pinctrl-device.yaml]
properties:
reg:
@@ -14,9 +14,6 @@
interrupts:
required: true
- ambiq,pwrcfg:
- required: true
-
scl-gpios:
type: phandle-array
description: |
diff --git a/dts/bindings/mspi/ambiq,mspi-controller.yaml b/dts/bindings/mspi/ambiq,mspi-controller.yaml
index 44b5cad..380bcf4 100644
--- a/dts/bindings/mspi/ambiq,mspi-controller.yaml
+++ b/dts/bindings/mspi/ambiq,mspi-controller.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,mspi-controller"
-include: [mspi-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [mspi-controller.yaml, pinctrl-device.yaml]
properties:
reg:
@@ -14,9 +14,6 @@
interrupts:
required: true
- ambiq,pwrcfg:
- required: true
-
ce-gpios:
required: true
diff --git a/dts/bindings/spi/ambiq,mspi.yaml b/dts/bindings/spi/ambiq,mspi.yaml
index 0c48f66..0e8caa7 100644
--- a/dts/bindings/spi/ambiq,mspi.yaml
+++ b/dts/bindings/spi/ambiq,mspi.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,mspi"
-include: [spi-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [spi-controller.yaml, pinctrl-device.yaml]
properties:
reg:
@@ -13,6 +13,3 @@
interrupts:
required: true
-
- ambiq,pwrcfg:
- required: true
diff --git a/dts/bindings/spi/ambiq,spi-bleif.yaml b/dts/bindings/spi/ambiq,spi-bleif.yaml
index 2be2ee1..3983c87 100644
--- a/dts/bindings/spi/ambiq,spi-bleif.yaml
+++ b/dts/bindings/spi/ambiq,spi-bleif.yaml
@@ -8,11 +8,8 @@
compatible: "ambiq,spi-bleif"
-include: [spi-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [spi-controller.yaml, pinctrl-device.yaml]
properties:
reg:
required: true
-
- ambiq,pwrcfg:
- required: true
diff --git a/dts/bindings/spi/ambiq,spi.yaml b/dts/bindings/spi/ambiq,spi.yaml
index 425c7fc..5c9af55 100644
--- a/dts/bindings/spi/ambiq,spi.yaml
+++ b/dts/bindings/spi/ambiq,spi.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,spi"
-include: [spi-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [spi-controller.yaml, pinctrl-device.yaml]
properties:
reg:
@@ -16,6 +16,3 @@
clock-frequency:
required: true
-
- ambiq,pwrcfg:
- required: true
diff --git a/dts/bindings/spi/ambiq,spid.yaml b/dts/bindings/spi/ambiq,spid.yaml
index d6d4be5..c04db4a 100644
--- a/dts/bindings/spi/ambiq,spid.yaml
+++ b/dts/bindings/spi/ambiq,spid.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,spid"
-include: [spi-controller.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [spi-controller.yaml, pinctrl-device.yaml]
properties:
int-gpios:
diff --git a/dts/bindings/usb/ambiq,usb.yaml b/dts/bindings/usb/ambiq,usb.yaml
index f460e72..ecff0bf 100644
--- a/dts/bindings/usb/ambiq,usb.yaml
+++ b/dts/bindings/usb/ambiq,usb.yaml
@@ -5,7 +5,7 @@
compatible: "ambiq,usb"
-include: [usb-ep.yaml, pinctrl-device.yaml, ambiq-pwrcfg.yaml]
+include: [usb-ep.yaml, pinctrl-device.yaml]
properties:
reg:
@@ -14,9 +14,6 @@
interrupts:
required: true
- ambiq,pwrcfg:
- required: true
-
vddusb33-gpios:
type: phandle-array
description: |