diff --git a/drivers/adc/adc_ad559x.c b/drivers/adc/adc_ad559x.c index fdde4bb0124..ccb5860c527 100644 --- a/drivers/adc/adc_ad559x.c +++ b/drivers/adc/adc_ad559x.c @@ -297,7 +297,7 @@ static int adc_ad559x_init(const struct device *dev) #endif #define ADC_AD559X_DRIVER_API(inst) \ - static const struct adc_driver_api adc_ad559x_api##inst = { \ + static DEVICE_API(adc, adc_ad559x_api##inst) = { \ .channel_setup = adc_ad559x_channel_setup, \ .read = adc_ad559x_read, \ .ref_internal = AD559X_ADC_VREF_MV * (1 + DT_INST_PROP(inst, double_input_range)), \ diff --git a/drivers/adc/adc_ads1112.c b/drivers/adc/adc_ads1112.c index ecf8ddf469d..42fa391fd11 100644 --- a/drivers/adc/adc_ads1112.c +++ b/drivers/adc/adc_ads1112.c @@ -379,7 +379,7 @@ static int ads1112_init(const struct device *dev) return rc; } -static const struct adc_driver_api api = { +static DEVICE_API(adc, api) = { .channel_setup = ads1112_channel_setup, .read = ads1112_read, .ref_internal = ADS1112_REF_INTERNAL, diff --git a/drivers/adc/adc_ads1119.c b/drivers/adc/adc_ads1119.c index 638b83fc2b2..ef4b84b70fa 100644 --- a/drivers/adc/adc_ads1119.c +++ b/drivers/adc/adc_ads1119.c @@ -481,7 +481,7 @@ static int ads1119_init(const struct device *dev) return rc; } -static const struct adc_driver_api api = { +static DEVICE_API(adc, api) = { .channel_setup = ads1119_channel_setup, .read = ads1119_read, .ref_internal = ADS1119_REF_INTERNAL, diff --git a/drivers/adc/adc_ads114s0x.c b/drivers/adc/adc_ads114s0x.c index 9864fd689f4..36e3eaefac4 100644 --- a/drivers/adc/adc_ads114s0x.c +++ b/drivers/adc/adc_ads114s0x.c @@ -1472,7 +1472,7 @@ static int ads114s0x_init(const struct device *dev) return result; } -static const struct adc_driver_api api = { +static DEVICE_API(adc, api) = { .channel_setup = ads114s0x_channel_setup, .read = ads114s0x_read, .ref_internal = ADS114S0X_REF_INTERNAL, diff --git a/drivers/adc/adc_ads1x1x.c b/drivers/adc/adc_ads1x1x.c index 0502eb0c878..f984de435b9 100644 --- a/drivers/adc/adc_ads1x1x.c +++ b/drivers/adc/adc_ads1x1x.c @@ -786,7 +786,7 @@ static int ads1x1x_init(const struct device *dev) return 0; } -static const struct adc_driver_api ads1x1x_api = { +static DEVICE_API(adc, ads1x1x_api) = { .channel_setup = ads1x1x_channel_setup, .read = ads1x1x_read, .ref_internal = 2048, diff --git a/drivers/adc/adc_ads7052.c b/drivers/adc/adc_ads7052.c index c4ae2264e1e..c86e2de8ea4 100644 --- a/drivers/adc/adc_ads7052.c +++ b/drivers/adc/adc_ads7052.c @@ -284,7 +284,7 @@ static int adc_ads7052_init(const struct device *dev) return 0; } -static const struct adc_driver_api ads7052_api = { +static DEVICE_API(adc, ads7052_api) = { .channel_setup = adc_ads7052_channel_setup, .read = adc_ads7052_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_ambiq.c b/drivers/adc/adc_ambiq.c index ce8ee479d16..66c40efac83 100644 --- a/drivers/adc/adc_ambiq.c +++ b/drivers/adc/adc_ambiq.c @@ -386,7 +386,7 @@ static int adc_ambiq_pm_action(const struct device *dev, enum pm_device_action a #ifdef CONFIG_ADC_ASYNC #define ADC_AMBIQ_DRIVER_API(n) \ - static const struct adc_driver_api adc_ambiq_driver_api_##n = { \ + static DEVICE_API(adc, adc_ambiq_driver_api_##n) = { \ .channel_setup = adc_ambiq_channel_setup, \ .read = adc_ambiq_read, \ .read_async = adc_ambiq_read_async, \ @@ -394,7 +394,7 @@ static int adc_ambiq_pm_action(const struct device *dev, enum pm_device_action a }; #else #define ADC_AMBIQ_DRIVER_API(n) \ - static const struct adc_driver_api adc_ambiq_driver_api_##n = { \ + static DEVICE_API(adc, adc_ambiq_driver_api_##n) = { \ .channel_setup = adc_ambiq_channel_setup, \ .read = adc_ambiq_read, \ .ref_internal = DT_INST_PROP(n, internal_vref_mv), \ diff --git a/drivers/adc/adc_b91.c b/drivers/adc/adc_b91.c index 30e76c88a76..1649730ccfd 100644 --- a/drivers/adc/adc_b91.c +++ b/drivers/adc/adc_b91.c @@ -452,7 +452,7 @@ static const struct b91_adc_cfg cfg_0 = { .vref_internal_mv = DT_INST_PROP(0, vref_internal_mv), }; -static const struct adc_driver_api adc_b91_driver_api = { +static DEVICE_API(adc, adc_b91_driver_api) = { .channel_setup = adc_b91_channel_setup, .read = adc_b91_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_cc13xx_cc26xx.c b/drivers/adc/adc_cc13xx_cc26xx.c index b75aac176ad..a46b1e13849 100644 --- a/drivers/adc/adc_cc13xx_cc26xx.c +++ b/drivers/adc/adc_cc13xx_cc26xx.c @@ -274,7 +274,7 @@ static void adc_cc13xx_cc26xx_isr(const struct device *dev) adc_context_on_sampling_done(&data->ctx, dev); } -static const struct adc_driver_api cc13xx_cc26xx_driver_api = { +static DEVICE_API(adc, cc13xx_cc26xx_driver_api) = { .channel_setup = adc_cc13xx_cc26xx_channel_setup, .read = adc_cc13xx_cc26xx_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_cc32xx.c b/drivers/adc/adc_cc32xx.c index 3fff3b84e73..cdec99770a4 100644 --- a/drivers/adc/adc_cc32xx.c +++ b/drivers/adc/adc_cc32xx.c @@ -279,7 +279,7 @@ static void adc_cc32xx_isr_ch3(const struct device *dev) adc_cc32xx_isr(dev, 3); } -static const struct adc_driver_api cc32xx_driver_api = { +static DEVICE_API(adc, cc32xx_driver_api) = { .channel_setup = adc_cc32xx_channel_setup, .read = adc_cc32xx_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_emul.c b/drivers/adc/adc_emul.c index c06fbe892e4..8630516d821 100644 --- a/drivers/adc/adc_emul.c +++ b/drivers/adc/adc_emul.c @@ -546,7 +546,7 @@ static int adc_emul_init(const struct device *dev) } #define ADC_EMUL_INIT(_num) \ - static const struct adc_driver_api adc_emul_api_##_num = { \ + static DEVICE_API(adc, adc_emul_api_##_num) = { \ .channel_setup = adc_emul_channel_setup, \ .read = adc_emul_read, \ .ref_internal = DT_INST_PROP(_num, ref_internal_mv), \ diff --git a/drivers/adc/adc_ene_kb1200.c b/drivers/adc/adc_ene_kb1200.c index 51b0eb93bbb..3078d0b915d 100644 --- a/drivers/adc/adc_ene_kb1200.c +++ b/drivers/adc/adc_ene_kb1200.c @@ -212,7 +212,7 @@ static void adc_context_update_buffer_pointer(struct adc_context *ctx, bool repe } } -struct adc_driver_api adc_kb1200_api = { +static DEVICE_API(adc, adc_kb1200_api) = { .channel_setup = adc_kb1200_channel_setup, .read = adc_kb1200_read, .ref_internal = ADC_VREF_ANALOG, diff --git a/drivers/adc/adc_esp32.c b/drivers/adc/adc_esp32.c index 1740d96b0cc..e6d43b0c7e7 100644 --- a/drivers/adc/adc_esp32.c +++ b/drivers/adc/adc_esp32.c @@ -706,7 +706,7 @@ static int adc_esp32_init(const struct device *dev) return 0; } -static const struct adc_driver_api api_esp32_driver_api = { +static DEVICE_API(adc, api_esp32_driver_api) = { .channel_setup = adc_esp32_channel_setup, .read = adc_esp32_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_gd32.c b/drivers/adc/adc_gd32.c index 46fbfc783b7..4703f565678 100644 --- a/drivers/adc/adc_gd32.c +++ b/drivers/adc/adc_gd32.c @@ -356,7 +356,7 @@ static int adc_gd32_read_async(const struct device *dev, } #endif /* CONFIG_ADC_ASYNC */ -static struct adc_driver_api adc_gd32_driver_api = { +static DEVICE_API(adc, adc_gd32_driver_api) = { .channel_setup = adc_gd32_channel_setup, .read = adc_gd32_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_gecko.c b/drivers/adc/adc_gecko.c index d8544cebd61..adf042204bb 100644 --- a/drivers/adc/adc_gecko.c +++ b/drivers/adc/adc_gecko.c @@ -280,7 +280,7 @@ static int adc_gecko_init(const struct device *dev) return 0; } -static const struct adc_driver_api api_gecko_adc_driver_api = { +static DEVICE_API(adc, api_gecko_adc_driver_api) = { .channel_setup = adc_gecko_channel_setup, .read = adc_gecko_read, }; diff --git a/drivers/adc/adc_ifx_cat1.c b/drivers/adc/adc_ifx_cat1.c index 095f860b8eb..e247ee96209 100644 --- a/drivers/adc/adc_ifx_cat1.c +++ b/drivers/adc/adc_ifx_cat1.c @@ -266,7 +266,7 @@ static int ifx_cat1_adc_init(const struct device *dev) return 0; } -static const struct adc_driver_api adc_cat1_driver_api = { +static DEVICE_API(adc, adc_cat1_driver_api) = { .channel_setup = ifx_cat1_adc_channel_setup, .read = ifx_cat1_adc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_ite_it8xxx2.c b/drivers/adc/adc_ite_it8xxx2.c index 53aec279fd2..3645dac7e85 100644 --- a/drivers/adc/adc_ite_it8xxx2.c +++ b/drivers/adc/adc_ite_it8xxx2.c @@ -387,7 +387,7 @@ static void adc_it8xxx2_isr(const struct device *dev) k_sem_give(&data->sem); } -static const struct adc_driver_api api_it8xxx2_driver_api = { +static DEVICE_API(adc, api_it8xxx2_driver_api) = { .channel_setup = adc_it8xxx2_channel_setup, .read = adc_it8xxx2_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_lmp90xxx.c b/drivers/adc/adc_lmp90xxx.c index f71d6f4fa38..ab06960b41d 100644 --- a/drivers/adc/adc_lmp90xxx.c +++ b/drivers/adc/adc_lmp90xxx.c @@ -1036,7 +1036,7 @@ static int lmp90xxx_init(const struct device *dev) return 0; } -static const struct adc_driver_api lmp90xxx_adc_api = { +static DEVICE_API(adc, lmp90xxx_adc_api) = { .channel_setup = lmp90xxx_adc_channel_setup, .read = lmp90xxx_adc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_ltc2451.c b/drivers/adc/adc_ltc2451.c index 95b86f30d68..a576a5d0cae 100644 --- a/drivers/adc/adc_ltc2451.c +++ b/drivers/adc/adc_ltc2451.c @@ -87,7 +87,7 @@ static int ltc2451_init(const struct device *dev) return ltc2451_set_conversion_speed(dev, config->conversion_speed); } -static const struct adc_driver_api ltc2451_api = { +static DEVICE_API(adc, ltc2451_api) = { .channel_setup = ltc2451_channel_setup, .read = ltc2451_read_latest_conversion, }; diff --git a/drivers/adc/adc_max11102_17.c b/drivers/adc/adc_max11102_17.c index 5443de03753..45c95971eaa 100644 --- a/drivers/adc/adc_max11102_17.c +++ b/drivers/adc/adc_max11102_17.c @@ -389,7 +389,7 @@ static int max11102_17_init(const struct device *dev) return result; } -static const struct adc_driver_api api = { +static DEVICE_API(adc, api) = { .channel_setup = max11102_17_channel_setup, .read = max11102_17_read, .ref_internal = 0, diff --git a/drivers/adc/adc_max1125x.c b/drivers/adc/adc_max1125x.c index a70748d420e..aa277cd1861 100644 --- a/drivers/adc/adc_max1125x.c +++ b/drivers/adc/adc_max1125x.c @@ -765,7 +765,7 @@ static int max1125x_init(const struct device *dev) return 0; } -static const struct adc_driver_api max1125x_api = { +static DEVICE_API(adc, max1125x_api) = { .channel_setup = max1125x_channel_setup, .read = max1125x_read, .ref_internal = 2048, diff --git a/drivers/adc/adc_max32.c b/drivers/adc/adc_max32.c index f09d8695a12..af04b00f573 100644 --- a/drivers/adc/adc_max32.c +++ b/drivers/adc/adc_max32.c @@ -296,7 +296,7 @@ static void adc_max32_isr(const struct device *dev) } } -static const struct adc_driver_api adc_max32_driver_api = { +static DEVICE_API(adc, adc_max32_driver_api) = { .channel_setup = adc_max32_channel_setup, .read = adc_max32_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_mchp_xec.c b/drivers/adc/adc_mchp_xec.c index 948b8e894a9..a3167b7479e 100644 --- a/drivers/adc/adc_mchp_xec.c +++ b/drivers/adc/adc_mchp_xec.c @@ -397,7 +397,7 @@ static int adc_xec_pm_action(const struct device *dev, enum pm_device_action act } #endif /* CONFIG_PM_DEVICE */ -struct adc_driver_api adc_xec_api = { +static DEVICE_API(adc, adc_xec_api) = { .channel_setup = adc_xec_channel_setup, .read = adc_xec_read, #if defined(CONFIG_ADC_ASYNC) diff --git a/drivers/adc/adc_mcp320x.c b/drivers/adc/adc_mcp320x.c index 7fc0e421fd8..1722b78bfce 100644 --- a/drivers/adc/adc_mcp320x.c +++ b/drivers/adc/adc_mcp320x.c @@ -297,7 +297,7 @@ static int mcp320x_init(const struct device *dev) return 0; } -static const struct adc_driver_api mcp320x_adc_api = { +static DEVICE_API(adc, mcp320x_adc_api) = { .channel_setup = mcp320x_channel_setup, .read = mcp320x_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_mcux_12b1msps_sar.c b/drivers/adc/adc_mcux_12b1msps_sar.c index 059ec7c3cd9..b9820b49ea0 100644 --- a/drivers/adc/adc_mcux_12b1msps_sar.c +++ b/drivers/adc/adc_mcux_12b1msps_sar.c @@ -262,7 +262,7 @@ static int mcux_12b1msps_sar_adc_init(const struct device *dev) return 0; } -static const struct adc_driver_api mcux_12b1msps_sar_adc_driver_api = { +static DEVICE_API(adc, mcux_12b1msps_sar_adc_driver_api) = { .channel_setup = mcux_12b1msps_sar_adc_channel_setup, .read = mcux_12b1msps_sar_adc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_mcux_adc12.c b/drivers/adc/adc_mcux_adc12.c index a8b176dd58e..5a2b1cba0d8 100644 --- a/drivers/adc/adc_mcux_adc12.c +++ b/drivers/adc/adc_mcux_adc12.c @@ -269,7 +269,7 @@ static int mcux_adc12_init(const struct device *dev) (kADC12_ReferenceVoltageSourceVref)) #define ADC12_MCUX_DRIVER_API(n) \ - static const struct adc_driver_api mcux_adc12_driver_api_##n = { \ + static DEVICE_API(adc, mcux_adc12_driver_api_##n) = { \ .channel_setup = mcux_adc12_channel_setup, \ .read = mcux_adc12_read, \ IF_ENABLED(CONFIG_ADC_ASYNC, (.read_async = mcux_adc12_read_async,)) \ diff --git a/drivers/adc/adc_mcux_adc16.c b/drivers/adc/adc_mcux_adc16.c index 49e89de58ce..f0d5a829107 100644 --- a/drivers/adc/adc_mcux_adc16.c +++ b/drivers/adc/adc_mcux_adc16.c @@ -432,7 +432,7 @@ static int mcux_adc16_init(const struct device *dev) return 0; } -static const struct adc_driver_api mcux_adc16_driver_api = { +static DEVICE_API(adc, mcux_adc16_driver_api) = { .channel_setup = mcux_adc16_channel_setup, .read = mcux_adc16_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_mcux_gau_adc.c b/drivers/adc/adc_mcux_gau_adc.c index 137c33feeaf..c3b31250d4f 100644 --- a/drivers/adc/adc_mcux_gau_adc.c +++ b/drivers/adc/adc_mcux_gau_adc.c @@ -351,7 +351,7 @@ static int mcux_gau_adc_init(const struct device *dev) return 0; } -static const struct adc_driver_api mcux_gau_adc_driver_api = { +static DEVICE_API(adc, mcux_gau_adc_driver_api) = { .channel_setup = mcux_gau_adc_channel_setup, .read = mcux_gau_adc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_mcux_lpadc.c b/drivers/adc/adc_mcux_lpadc.c index 8300935c21f..9b0fbd475f6 100644 --- a/drivers/adc/adc_mcux_lpadc.c +++ b/drivers/adc/adc_mcux_lpadc.c @@ -543,7 +543,7 @@ static int mcux_lpadc_init(const struct device *dev) return 0; } -static const struct adc_driver_api mcux_lpadc_driver_api = { +static DEVICE_API(adc, mcux_lpadc_driver_api) = { .channel_setup = mcux_lpadc_channel_setup, .read = mcux_lpadc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_npcx.c b/drivers/adc/adc_npcx.c index ae1cf65ffbb..da506734986 100644 --- a/drivers/adc/adc_npcx.c +++ b/drivers/adc/adc_npcx.c @@ -841,7 +841,7 @@ static int adc_npcx_init(const struct device *dev) irq_enable(DT_INST_IRQN(n)); \ } \ \ - static const struct adc_driver_api adc_npcx_driver_api_##n = { \ + static DEVICE_API(adc, adc_npcx_driver_api_##n) = { \ .channel_setup = adc_npcx_channel_setup, \ .read = adc_npcx_read, \ .ref_internal = DT_INST_PROP(n, vref_mv), \ diff --git a/drivers/adc/adc_nrfx_adc.c b/drivers/adc/adc_nrfx_adc.c index ec96e244bcd..85b0940be51 100644 --- a/drivers/adc/adc_nrfx_adc.c +++ b/drivers/adc/adc_nrfx_adc.c @@ -281,7 +281,7 @@ static int init_adc(const struct device *dev) return 0; } -static const struct adc_driver_api adc_nrfx_driver_api = { +static DEVICE_API(adc, adc_nrfx_driver_api) = { .channel_setup = adc_nrfx_channel_setup, .read = adc_nrfx_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_nrfx_saadc.c b/drivers/adc/adc_nrfx_saadc.c index c5b68f564a8..279ba412651 100644 --- a/drivers/adc/adc_nrfx_saadc.c +++ b/drivers/adc/adc_nrfx_saadc.c @@ -661,7 +661,7 @@ static int init_saadc(const struct device *dev) return 0; } -static const struct adc_driver_api adc_nrfx_driver_api = { +static DEVICE_API(adc, adc_nrfx_driver_api) = { .channel_setup = adc_nrfx_channel_setup, .read = adc_nrfx_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_numaker.c b/drivers/adc/adc_numaker.c index 42d3b7ad5dd..5c96bfc35b0 100644 --- a/drivers/adc/adc_numaker.c +++ b/drivers/adc/adc_numaker.c @@ -301,7 +301,7 @@ static int adc_numaker_read_async(const struct device *dev, } #endif -static const struct adc_driver_api adc_numaker_driver_api = { +static DEVICE_API(adc, adc_numaker_driver_api) = { .channel_setup = adc_numaker_channel_setup, .read = adc_numaker_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_nxp_s32_adc_sar.c b/drivers/adc/adc_nxp_s32_adc_sar.c index e4c9f269b72..bc65466310e 100644 --- a/drivers/adc/adc_nxp_s32_adc_sar.c +++ b/drivers/adc/adc_nxp_s32_adc_sar.c @@ -334,7 +334,7 @@ static void adc_nxp_s32_isr(const struct device *dev) } #define ADC_NXP_S32_DRIVER_API(n) \ - static const struct adc_driver_api adc_nxp_s32_driver_api_##n = { \ + static DEVICE_API(adc, adc_nxp_s32_driver_api_##n) = { \ .channel_setup = adc_nxp_s32_channel_setup, \ .read = adc_nxp_s32_read, \ IF_ENABLED(CONFIG_ADC_ASYNC, (.read_async = adc_nxp_s32_read_async,))\ diff --git a/drivers/adc/adc_renesas_ra.c b/drivers/adc/adc_renesas_ra.c index d1054f9721c..8c1225040ed 100644 --- a/drivers/adc/adc_renesas_ra.c +++ b/drivers/adc/adc_renesas_ra.c @@ -342,7 +342,7 @@ const adc_extended_cfg_t g_adc_cfg_extend = { #define ADC_RA_INIT(idx) \ IRQ_CONFIGURE_FUNC(idx) \ PINCTRL_DT_INST_DEFINE(idx); \ - static struct adc_driver_api adc_ra_api_##idx = { \ + static DEVICE_API(adc, adc_ra_api_##idx) = { \ .channel_setup = adc_ra_channel_setup, \ .read = adc_ra_read, \ .ref_internal = DT_INST_PROP(idx, vref_mv), \ diff --git a/drivers/adc/adc_rpi_pico.c b/drivers/adc/adc_rpi_pico.c index 3f63924a9d5..5dffdd6ba00 100644 --- a/drivers/adc/adc_rpi_pico.c +++ b/drivers/adc/adc_rpi_pico.c @@ -354,7 +354,7 @@ static int adc_rpi_init(const struct device *dev) #define ADC_RPI_INIT(idx) \ IRQ_CONFIGURE_FUNC(idx) \ PINCTRL_DT_INST_DEFINE(idx); \ - static struct adc_driver_api adc_rpi_api_##idx = { \ + static DEVICE_API(adc, adc_rpi_api_##idx) = { \ .channel_setup = adc_rpi_channel_setup, \ .read = adc_rpi_read, \ .ref_internal = DT_INST_PROP(idx, vref_mv), \ diff --git a/drivers/adc/adc_sam.c b/drivers/adc/adc_sam.c index 3536a88af4d..32b8450ef0f 100644 --- a/drivers/adc/adc_sam.c +++ b/drivers/adc/adc_sam.c @@ -376,7 +376,7 @@ static int adc_sam_read_async(const struct device *dev, } #endif -static const struct adc_driver_api adc_sam_api = { +static DEVICE_API(adc, adc_sam_api) = { .channel_setup = adc_sam_channel_setup, .read = adc_sam_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_sam0.c b/drivers/adc/adc_sam0.c index b7b1f59aa8e..7cf31bc2ef5 100644 --- a/drivers/adc/adc_sam0.c +++ b/drivers/adc/adc_sam0.c @@ -503,7 +503,7 @@ static int adc_sam0_read_async(const struct device *dev, } #endif -static const struct adc_driver_api adc_sam0_api = { +static DEVICE_API(adc, adc_sam0_api) = { .channel_setup = adc_sam0_channel_setup, .read = adc_sam0_read, .ref_internal = 1000U, /* Fixed 1.0 V reference */ diff --git a/drivers/adc/adc_sam_afec.c b/drivers/adc/adc_sam_afec.c index 8096ca9236e..46bdf646a07 100644 --- a/drivers/adc/adc_sam_afec.c +++ b/drivers/adc/adc_sam_afec.c @@ -331,7 +331,7 @@ static int adc_sam_read_async(const struct device *dev, } #endif -static const struct adc_driver_api adc_sam_api = { +static DEVICE_API(adc, adc_sam_api) = { .channel_setup = adc_sam_channel_setup, .read = adc_sam_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_smartbond_gpadc.c b/drivers/adc/adc_smartbond_gpadc.c index 76bdaede510..e1be9f3f1ff 100644 --- a/drivers/adc/adc_smartbond_gpadc.c +++ b/drivers/adc/adc_smartbond_gpadc.c @@ -389,7 +389,7 @@ static int adc_smartbond_init(const struct device *dev) return ret; } -static const struct adc_driver_api adc_smartbond_driver_api = { +static DEVICE_API(adc, adc_smartbond_driver_api) = { .channel_setup = adc_smartbond_channel_setup, .read = adc_smartbond_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_smartbond_sdadc.c b/drivers/adc/adc_smartbond_sdadc.c index de7b7188829..f6633078e81 100644 --- a/drivers/adc/adc_smartbond_sdadc.c +++ b/drivers/adc/adc_smartbond_sdadc.c @@ -393,7 +393,7 @@ static int sdadc_smartbond_init(const struct device *dev) return ret; } -static const struct adc_driver_api sdadc_smartbond_driver_api = { +static DEVICE_API(adc, sdadc_smartbond_driver_api) = { .channel_setup = sdadc_smartbond_channel_setup, .read = sdadc_smartbond_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_stm32.c b/drivers/adc/adc_stm32.c index 81e44ccab2f..85f12aa7e49 100644 --- a/drivers/adc/adc_stm32.c +++ b/drivers/adc/adc_stm32.c @@ -1727,7 +1727,7 @@ static int adc_stm32_pm_action(const struct device *dev, } #endif /* CONFIG_PM_DEVICE */ -static const struct adc_driver_api api_stm32_driver_api = { +static DEVICE_API(adc, api_stm32_driver_api) = { .channel_setup = adc_stm32_channel_setup, .read = adc_stm32_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_stm32wb0.c b/drivers/adc/adc_stm32wb0.c index e36cee7631c..e71357364d2 100644 --- a/drivers/adc/adc_stm32wb0.c +++ b/drivers/adc/adc_stm32wb0.c @@ -1056,7 +1056,7 @@ int adc_stm32wb0_read_async(const struct device *dev, } #endif /* CONFIG_ADC_ASYNC */ -static const struct adc_driver_api api_stm32wb0_driver_api = { +static DEVICE_API(adc, api_stm32wb0_driver_api) = { .channel_setup = adc_stm32wb0_channel_setup, .read = adc_stm32wb0_read, #if defined(CONFIG_ADC_ASYNC) diff --git a/drivers/adc/adc_test.c b/drivers/adc/adc_test.c index 09f30ddace9..bb8a557ecd3 100644 --- a/drivers/adc/adc_test.c +++ b/drivers/adc/adc_test.c @@ -37,7 +37,7 @@ static int vnd_adc_read_async(const struct device *dev, } #endif -static const struct adc_driver_api vnd_adc_api = { +static DEVICE_API(adc, vnd_adc_api) = { .channel_setup = vnd_adc_channel_setup, .read = vnd_adc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_tla2021.c b/drivers/adc/adc_tla2021.c index 7c08a8292b0..c4bfb50082f 100644 --- a/drivers/adc/adc_tla2021.c +++ b/drivers/adc/adc_tla2021.c @@ -295,7 +295,7 @@ static int tla2021_init(const struct device *dev) return 0; } -static const struct adc_driver_api tla2021_driver_api = { +static DEVICE_API(adc, tla2021_driver_api) = { .channel_setup = tla2021_channel_setup, .read = tla2021_read, .ref_internal = 4096, diff --git a/drivers/adc/adc_vf610.c b/drivers/adc/adc_vf610.c index 1fa8b090af9..d7d8da7411e 100644 --- a/drivers/adc/adc_vf610.c +++ b/drivers/adc/adc_vf610.c @@ -233,7 +233,7 @@ static int vf610_adc_init(const struct device *dev) return 0; } -static const struct adc_driver_api vf610_adc_driver_api = { +static DEVICE_API(adc, vf610_adc_driver_api) = { .channel_setup = vf610_adc_channel_setup, .read = vf610_adc_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/adc_xmc4xxx.c b/drivers/adc/adc_xmc4xxx.c index b5b935b53d0..e7b25fdb64d 100644 --- a/drivers/adc/adc_xmc4xxx.c +++ b/drivers/adc/adc_xmc4xxx.c @@ -300,7 +300,7 @@ static int adc_xmc4xxx_init(const struct device *dev) return 0; } -static const struct adc_driver_api api_xmc4xxx_driver_api = { +static DEVICE_API(adc, api_xmc4xxx_driver_api) = { .channel_setup = adc_xmc4xxx_channel_setup, .read = adc_xmc4xxx_read, #ifdef CONFIG_ADC_ASYNC diff --git a/drivers/adc/iadc_gecko.c b/drivers/adc/iadc_gecko.c index d9dc542a5bf..3e76794d55e 100644 --- a/drivers/adc/iadc_gecko.c +++ b/drivers/adc/iadc_gecko.c @@ -453,7 +453,7 @@ static int adc_gecko_init(const struct device *dev) return 0; } -static const struct adc_driver_api api_gecko_adc_driver_api = { +static DEVICE_API(adc, api_gecko_adc_driver_api) = { .channel_setup = adc_gecko_channel_setup, .read = adc_gecko_read, #ifdef CONFIG_ADC_ASYNC diff --git a/include/zephyr/drivers/adc.h b/include/zephyr/drivers/adc.h index 583c04cd0e7..1c95baa9707 100644 --- a/include/zephyr/drivers/adc.h +++ b/include/zephyr/drivers/adc.h @@ -726,10 +726,7 @@ __syscall int adc_channel_setup(const struct device *dev, static inline int z_impl_adc_channel_setup(const struct device *dev, const struct adc_channel_cfg *channel_cfg) { - const struct adc_driver_api *api = - (const struct adc_driver_api *)dev->api; - - return api->channel_setup(dev, channel_cfg); + return DEVICE_API_GET(adc, dev)->channel_setup(dev, channel_cfg); } /** @@ -777,10 +774,7 @@ __syscall int adc_read(const struct device *dev, static inline int z_impl_adc_read(const struct device *dev, const struct adc_sequence *sequence) { - const struct adc_driver_api *api = - (const struct adc_driver_api *)dev->api; - - return api->read(dev, sequence); + return DEVICE_API_GET(adc, dev)->read(dev, sequence); } /** @@ -828,10 +822,7 @@ static inline int z_impl_adc_read_async(const struct device *dev, const struct adc_sequence *sequence, struct k_poll_signal *async) { - const struct adc_driver_api *api = - (const struct adc_driver_api *)dev->api; - - return api->read_async(dev, sequence, async); + return DEVICE_API_GET(adc, dev)->read_async(dev, sequence, async); } #endif /* CONFIG_ADC_ASYNC */ @@ -846,10 +837,7 @@ static inline int z_impl_adc_read_async(const struct device *dev, */ static inline uint16_t adc_ref_internal(const struct device *dev) { - const struct adc_driver_api *api = - (const struct adc_driver_api *)dev->api; - - return api->ref_internal; + return DEVICE_API_GET(adc, dev)->ref_internal; } /**