From ce81ae59d7478b72d8acd97680e53d8bd442e290 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 8 Jul 2024 18:23:00 +0300 Subject: [PATCH 01/29] include: Add no_os_device.h To be included in all no-OS drivers. struct no_os_device will hold, among other details, the mandatory compatible string information. Signed-off-by: Dragos Bogdan --- include/no_os_device.h | 52 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 include/no_os_device.h diff --git a/include/no_os_device.h b/include/no_os_device.h new file mode 100644 index 00000000000..e5b31a3f17a --- /dev/null +++ b/include/no_os_device.h @@ -0,0 +1,52 @@ +/***************************************************************************//** +* @file no_os_device.h +* @brief no-OS device information header +* @author Dragos Bogdan (dragos.bogdan@analog.com) +******************************************************************************** +* Copyright 2024(c) Analog Devices, Inc. +* +* All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* - Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* - Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in +* the documentation and/or other materials provided with the +* distribution. +* - Neither the name of Analog Devices, Inc. nor the names of its +* contributors may be used to endorse or promote products derived +* from this software without specific prior written permission. +* - The use of this software may or may not infringe the patent rights +* of one or more patent holders. This license does not release you +* from the requirement that you obtain separate licenses from these +* patent holders to use this software. +* - Use of the software either in source or binary form, must be run +* on or directly connected to an Analog Devices Inc. component. +* +* THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED +* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY +* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +* IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, +* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +* LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR +* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*******************************************************************************/ + +#ifndef _NO_OS_DEVICE_H_ +#define _NO_OS_DEVICE_H_ + +/** + * @struct no_os_device + * @brief Structure holding device specific information + */ +struct no_os_device { + char compatible[32]; + void *extra; +}; + +#endif // _NO_OS_DEVICE_H_ From 1ea123345dfefab5d96554ecbfc8ce715c4a2bf6 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 8 Jul 2024 18:35:01 +0300 Subject: [PATCH 02/29] drivers: accel: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/accel/adxl313/adxl313.c | 11 +++++++++++ drivers/accel/adxl345/adxl345.c | 10 ++++++++++ drivers/accel/adxl355/adxl355.c | 11 +++++++++++ drivers/accel/adxl362/adxl362.c | 11 +++++++++++ drivers/accel/adxl367/adxl367.c | 9 +++++++++ drivers/accel/adxl372/adxl372.c | 9 +++++++++ drivers/accel/adxl38x/adxl38x.c | 10 ++++++++++ 7 files changed, 71 insertions(+) diff --git a/drivers/accel/adxl313/adxl313.c b/drivers/accel/adxl313/adxl313.c index a6b293ea85b..a273e4e3d79 100644 --- a/drivers/accel/adxl313/adxl313.c +++ b/drivers/accel/adxl313/adxl313.c @@ -48,6 +48,17 @@ #include "no_os_util.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl313_device_table[] = { + {.compatible = "adi,adxl312"}, + {.compatible = "adi,adxl313"}, + {.compatible = "adi,adxl314"}, + {} +}; /******************************************************************************/ /************************ Functions Declarations ******************************/ diff --git a/drivers/accel/adxl345/adxl345.c b/drivers/accel/adxl345/adxl345.c index e7a208d54e6..ea9b2dea559 100644 --- a/drivers/accel/adxl345/adxl345.c +++ b/drivers/accel/adxl345/adxl345.c @@ -43,6 +43,16 @@ #include #include "adxl345.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl345_device_table[] = { + {.compatible = "adi,adxl345"}, + {.compatible = "adi,adxl346"}, + {} +}; /******************************************************************************/ /************************ Variable Declarations ******************************/ diff --git a/drivers/accel/adxl355/adxl355.c b/drivers/accel/adxl355/adxl355.c index e4716f7d249..b3ab2516f13 100644 --- a/drivers/accel/adxl355/adxl355.c +++ b/drivers/accel/adxl355/adxl355.c @@ -45,6 +45,17 @@ #include "adxl355.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl355_device_table[] = { + {.compatible = "adi,adxl355"}, + {.compatible = "adi,adxl357"}, + {.compatible = "adi,adxl359"}, + {} +}; /******************************************************************************/ /************************ Variable Declarations ******************************/ diff --git a/drivers/accel/adxl362/adxl362.c b/drivers/accel/adxl362/adxl362.c index c7829c1ccdd..a9decf5947b 100644 --- a/drivers/accel/adxl362/adxl362.c +++ b/drivers/accel/adxl362/adxl362.c @@ -43,6 +43,17 @@ #include #include "adxl362.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl362_device_table[] = { + {.compatible = "adi,adxl355"}, + {.compatible = "adi,adxl357"}, + {.compatible = "adi,adxl359"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/accel/adxl367/adxl367.c b/drivers/accel/adxl367/adxl367.c index dc07043a4a0..ede28574c65 100644 --- a/drivers/accel/adxl367/adxl367.c +++ b/drivers/accel/adxl367/adxl367.c @@ -47,6 +47,15 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl367_device_table[] = { + {.compatible = "adi,adxl367"}, + {} +}; /******************************************************************************/ /************************ Variable Declarations ******************************/ diff --git a/drivers/accel/adxl372/adxl372.c b/drivers/accel/adxl372/adxl372.c index 42d4cc930ae..cde4f2d0f75 100644 --- a/drivers/accel/adxl372/adxl372.c +++ b/drivers/accel/adxl372/adxl372.c @@ -46,6 +46,15 @@ #include #include "adxl372.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl372_device_table[] = { + {.compatible = "adi,adxl372"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/accel/adxl38x/adxl38x.c b/drivers/accel/adxl38x/adxl38x.c index 26e854b6a9e..f0f7c9e75f7 100644 --- a/drivers/accel/adxl38x/adxl38x.c +++ b/drivers/accel/adxl38x/adxl38x.c @@ -46,6 +46,16 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include "no_os_util.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxl38x_device_table[] = { + {.compatible = "adi,adxl380"}, + {.compatible = "adi,adxl382"}, + {} +}; /******************************************************************************/ /********************Variable & Constants Declarations ************************/ From 020a31bb50231c32fe329ffe6823ea71d28af3a9 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 9 Jul 2024 19:18:34 +0300 Subject: [PATCH 03/29] drivers: temperature: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/temperature/adt7420/adt7420.c | 13 +++++++++++++ drivers/temperature/adt75/adt75.c | 9 +++++++++ drivers/temperature/max31855/max31855.c | 9 +++++++++ drivers/temperature/max31865pmb1/max31865.c | 9 +++++++++ drivers/temperature/max31875/max31875.c | 9 +++++++++ 5 files changed, 49 insertions(+) diff --git a/drivers/temperature/adt7420/adt7420.c b/drivers/temperature/adt7420/adt7420.c index f533554f1b3..d269402fc21 100644 --- a/drivers/temperature/adt7420/adt7420.c +++ b/drivers/temperature/adt7420/adt7420.c @@ -45,6 +45,19 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "adt7420.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adt7420_device_table[] = { + {.compatible = "adi,adt7310"}, + {.compatible = "adi,adt7320"}, + {.compatible = "adi,adt7410"}, + {.compatible = "adi,adt7420"}, + {.compatible = "adi,adt7422"}, + {} +}; const struct adt7420_chip_info chip_info[] = { [ID_ADT7410] = { diff --git a/drivers/temperature/adt75/adt75.c b/drivers/temperature/adt75/adt75.c index d0ef4d370d8..7c688ce685e 100644 --- a/drivers/temperature/adt75/adt75.c +++ b/drivers/temperature/adt75/adt75.c @@ -46,6 +46,15 @@ #include "no_os_util.h" #include "no_os_units.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adt75_device_table[] = { + {.compatible = "adi,adt75"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/temperature/max31855/max31855.c b/drivers/temperature/max31855/max31855.c index ca274862e8c..91bafb673a8 100644 --- a/drivers/temperature/max31855/max31855.c +++ b/drivers/temperature/max31855/max31855.c @@ -48,6 +48,15 @@ #include "no_os_spi.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max31855_device_table[] = { + {.compatible = "adi,max31855"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/temperature/max31865pmb1/max31865.c b/drivers/temperature/max31865pmb1/max31865.c index 7ebc1798a28..e045e82d134 100644 --- a/drivers/temperature/max31865pmb1/max31865.c +++ b/drivers/temperature/max31865pmb1/max31865.c @@ -50,6 +50,15 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "no_os_delay.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max31865_device_table[] = { + {.compatible = "adi,max31865"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/temperature/max31875/max31875.c b/drivers/temperature/max31875/max31875.c index 9e1fa5ae221..2f5dfe816e8 100644 --- a/drivers/temperature/max31875/max31875.c +++ b/drivers/temperature/max31875/max31875.c @@ -44,6 +44,15 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "max31875.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max31875_device_table[] = { + {.compatible = "adi,max31875"}, + {} +}; /******************************************************************************/ /************************* Functions Definition *******************************/ From 0102c17f154c29d6de3193d2f6be4f39c7092b17 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 9 Jul 2024 19:23:24 +0300 Subject: [PATCH 04/29] drivers: rtc: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/rtc/pcf85263/pcf85263.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/rtc/pcf85263/pcf85263.c b/drivers/rtc/pcf85263/pcf85263.c index 042166649c9..20ad74476bb 100644 --- a/drivers/rtc/pcf85263/pcf85263.c +++ b/drivers/rtc/pcf85263/pcf85263.c @@ -45,6 +45,15 @@ #include "pcf85263.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device pcf85263_device_table[] = { + {.compatible = "nxp,pcf85263"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ From e598b9f88bb2bf1fd4099e2cc114868c643b6fc8 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 02:13:48 +0300 Subject: [PATCH 05/29] drivers: adc: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/adc/ad400x/ad400x.c | 35 ++++++++++++++++++++++++++++++++ drivers/adc/ad405x/ad405x.c | 10 +++++++++ drivers/adc/ad4080/ad4080.c | 9 ++++++++ drivers/adc/ad4170/ad4170.c | 12 +++++++++++ drivers/adc/ad463x/ad463x.c | 19 +++++++++++++++++ drivers/adc/ad469x/ad469x.c | 12 +++++++++++ drivers/adc/ad4858/ad4858.c | 17 ++++++++++++++++ drivers/adc/ad6673/ad6673.c | 9 ++++++++ drivers/adc/ad6676/ad6676.c | 9 ++++++++ drivers/adc/ad7091r/ad7091r.c | 9 ++++++++ drivers/adc/ad7091r5/ad7091r5.c | 9 ++++++++ drivers/adc/ad7091r8/ad7091r8.c | 11 ++++++++++ drivers/adc/ad7124/ad7124.c | 10 +++++++++ drivers/adc/ad713x/ad713x.c | 12 +++++++++++ drivers/adc/ad717x/ad717x.c | 20 ++++++++++++++++++ drivers/adc/ad719x/ad719x.c | 13 ++++++++++++ drivers/adc/ad7280a/ad7280a.c | 9 ++++++++ drivers/adc/ad738x/ad738x.c | 32 +++++++++++++++++++++++++++++ drivers/adc/ad74xx/ad74xx.c | 19 +++++++++++++++++ drivers/adc/ad7606/ad7606.c | 17 ++++++++++++++++ drivers/adc/ad7616/ad7616.c | 10 +++++++++ drivers/adc/ad7689/ad7689.c | 12 +++++++++++ drivers/adc/ad7768-1/ad77681.c | 9 ++++++++ drivers/adc/ad7768/ad7768.c | 9 ++++++++ drivers/adc/ad7779/ad7779.c | 11 ++++++++++ drivers/adc/ad7780/ad7780.c | 9 ++++++++ drivers/adc/ad7799/ad7799.c | 10 +++++++++ drivers/adc/ad796x/ad796x.c | 9 ++++++++ drivers/adc/ad7980/ad7980.c | 9 ++++++++ drivers/adc/ad799x/ad799x.c | 11 ++++++++++ drivers/adc/ad9081/ad9081.c | 11 ++++++++++ drivers/adc/ad9083/ad9083.c | 9 ++++++++ drivers/adc/ad9208/ad9208.c | 9 ++++++++ drivers/adc/ad9250/ad9250.c | 9 ++++++++ drivers/adc/ad9265/ad9265.c | 9 ++++++++ drivers/adc/ad9434/ad9434.c | 9 ++++++++ drivers/adc/ad9467/ad9467.c | 9 ++++++++ drivers/adc/ad9625/ad9625.c | 9 ++++++++ drivers/adc/ad9656/ad9656.c | 9 ++++++++ drivers/adc/ad9680/ad9680.c | 9 ++++++++ drivers/adc/adaq7980/adaq7980.c | 9 ++++++++ drivers/adc/adaq8092/adaq8092.c | 9 ++++++++ drivers/adc/adc_demo/adc_demo.c | 9 ++++++++ drivers/adc/adm1177/adm1177.c | 9 ++++++++ drivers/adc/ltc2312/ltc2312.c | 10 +++++++++ drivers/adc/ltc2358/ltc2358.c | 9 ++++++++ drivers/adc/max11205/max11205.c | 9 ++++++++ drivers/adc/max14001/max14001.c | 9 ++++++++ drivers/adc/max9611pmb/max9611.c | 9 ++++++++ 49 files changed, 566 insertions(+) diff --git a/drivers/adc/ad400x/ad400x.c b/drivers/adc/ad400x/ad400x.c index aa70b679f86..9bf2f857418 100644 --- a/drivers/adc/ad400x/ad400x.c +++ b/drivers/adc/ad400x/ad400x.c @@ -51,6 +51,41 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "no_os_util.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad400x_device_table[] = { + {.compatible = "adi,ad4000"}, + {.compatible = "adi,ad4001"}, + {.compatible = "adi,ad4002"}, + {.compatible = "adi,ad4003"}, + {.compatible = "adi,ad4004"}, + {.compatible = "adi,ad4005"}, + {.compatible = "adi,ad4006"}, + {.compatible = "adi,ad4007"}, + {.compatible = "adi,ad4008"}, + {.compatible = "adi,ad4010"}, + {.compatible = "adi,ad4011"}, + {.compatible = "adi,ad4020"}, + {.compatible = "adi,ad4021"}, + {.compatible = "adi,ad4022"}, + {.compatible = "adi,adaq4003"}, + {.compatible = "adi,ad7690"}, + {.compatible = "adi,ad7691"}, + {.compatible = "adi,ad7693"}, + {.compatible = "adi,ad7942"}, + {.compatible = "adi,ad7944"}, + {.compatible = "adi,ad7946"}, + {.compatible = "adi,ad7980"}, + {.compatible = "adi,ad7982"}, + {.compatible = "adi,ad7983"}, + {.compatible = "adi,ad7984"}, + {.compatible = "adi,ad7985"}, + {.compatible = "adi,ad7986"}, + {} +}; const struct ad400x_dev_info ad400x_devices[] = { [ID_AD4000] = {.resolution = 16, .sign = 'u', .max_rate = 2000}, diff --git a/drivers/adc/ad405x/ad405x.c b/drivers/adc/ad405x/ad405x.c index 8cbb1db37bd..5fb0da5901b 100644 --- a/drivers/adc/ad405x/ad405x.c +++ b/drivers/adc/ad405x/ad405x.c @@ -47,6 +47,16 @@ #include "ad405x.h" #include "no_os_delay.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad405x_device_table[] = { + {.compatible = "adi,ad4050"}, + {.compatible = "adi,ad4052"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/adc/ad4080/ad4080.c b/drivers/adc/ad4080/ad4080.c index a53a288cf14..16d74930523 100644 --- a/drivers/adc/ad4080/ad4080.c +++ b/drivers/adc/ad4080/ad4080.c @@ -45,6 +45,15 @@ #include #include "ad4080.h" #include "no_os_delay.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad4080_device_table[] = { + {.compatible = "adi,ad4080"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad4170/ad4170.c b/drivers/adc/ad4170/ad4170.c index c55f60e9d4c..2f03be797b2 100644 --- a/drivers/adc/ad4170/ad4170.c +++ b/drivers/adc/ad4170/ad4170.c @@ -46,6 +46,18 @@ #include "no_os_delay.h" #include "no_os_crc8.h" #include "ad4170.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad4170_device_table[] = { + {.compatible = "adi,ad4170"}, + {.compatible = "adi,ad4171"}, + {.compatible = "adi,ad4172"}, + {.compatible = "adi,ad4190"}, + {} +}; NO_OS_DECLARE_CRC8_TABLE(ad4170_crc8); diff --git a/drivers/adc/ad463x/ad463x.c b/drivers/adc/ad463x/ad463x.c index 625c927cfa5..56f3e42e5fb 100644 --- a/drivers/adc/ad463x/ad463x.c +++ b/drivers/adc/ad463x/ad463x.c @@ -50,6 +50,25 @@ #include "no_os_print_log.h" #include "no_os_alloc.h" #include "no_os_spi.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad463x_device_table[] = { + {.compatible = "adi,ad4630-24"}, + {.compatible = "adi,ad4630-20"}, + {.compatible = "adi,ad4630-16"}, + {.compatible = "adi,ad4631-24"}, + {.compatible = "adi,ad4631-20"}, + {.compatible = "adi,ad4631-16"}, + {.compatible = "adi,ad4632-24"}, + {.compatible = "adi,ad4632-20"}, + {.compatible = "adi,ad4632-16"}, + {.compatible = "adi,ad4030"}, + {.compatible = "adi,adaq4224"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/adc/ad469x/ad469x.c b/drivers/adc/ad469x/ad469x.c index cc42372477a..15a432a34b2 100644 --- a/drivers/adc/ad469x/ad469x.c +++ b/drivers/adc/ad469x/ad469x.c @@ -51,6 +51,18 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad469x_device_table[] = { + {.compatible = "adi,ad4695"}, + {.compatible = "adi,ad4696"}, + {.compatible = "adi,ad4697"}, + {.compatible = "adi,ad4698"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/adc/ad4858/ad4858.c b/drivers/adc/ad4858/ad4858.c index 8bfac23ae2f..66ff341f8e2 100644 --- a/drivers/adc/ad4858/ad4858.c +++ b/drivers/adc/ad4858/ad4858.c @@ -41,6 +41,23 @@ #include "ad4858.h" #include "no_os_delay.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad4858_device_table[] = { + {.compatible = "adi,ad4858"}, + {.compatible = "adi,ad4857"}, + {.compatible = "adi,ad4856"}, + {.compatible = "adi,ad4855"}, + {.compatible = "adi,ad4854"}, + {.compatible = "adi,ad4853"}, + {.compatible = "adi,ad4852"}, + {.compatible = "adi,ad4851"}, + {.compatible = "adi,ad4858i"}, + {} +}; /** * @brief Write device register. diff --git a/drivers/adc/ad6673/ad6673.c b/drivers/adc/ad6673/ad6673.c index 8e367758a55..94c07806c42 100644 --- a/drivers/adc/ad6673/ad6673.c +++ b/drivers/adc/ad6673/ad6673.c @@ -44,6 +44,15 @@ #include "ad6673.h" #include "ad6673_cfg.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad6673_device_table[] = { + {.compatible = "adi,ad6673"}, + {} +}; /*****************************************************************************/ /***************************** Constant definition ***************************/ diff --git a/drivers/adc/ad6676/ad6676.c b/drivers/adc/ad6676/ad6676.c index 62f6ba10fc6..04f337e8322 100644 --- a/drivers/adc/ad6676/ad6676.c +++ b/drivers/adc/ad6676/ad6676.c @@ -45,6 +45,15 @@ #include #include "ad6676.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad6676_device_table[] = { + {.compatible = "adi,ad6676"}, + {} +}; /***************************************************************************//** * @brief SPI read from device. diff --git a/drivers/adc/ad7091r/ad7091r.c b/drivers/adc/ad7091r/ad7091r.c index 3ccfc36472d..07b48caf53d 100644 --- a/drivers/adc/ad7091r/ad7091r.c +++ b/drivers/adc/ad7091r/ad7091r.c @@ -43,6 +43,15 @@ #include #include "ad7091r.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7091r_device_table[] = { + {.compatible = "adi,ad7091r"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad7091r5/ad7091r5.c b/drivers/adc/ad7091r5/ad7091r5.c index 89879d7165b..d6c6f30f0d4 100644 --- a/drivers/adc/ad7091r5/ad7091r5.c +++ b/drivers/adc/ad7091r5/ad7091r5.c @@ -48,6 +48,15 @@ #include "no_os_delay.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7091r5_device_table[] = { + {.compatible = "adi,ad7091r-5"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/adc/ad7091r8/ad7091r8.c b/drivers/adc/ad7091r8/ad7091r8.c index d5dbb59ad8b..8099d0a9121 100644 --- a/drivers/adc/ad7091r8/ad7091r8.c +++ b/drivers/adc/ad7091r8/ad7091r8.c @@ -45,6 +45,17 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_delay.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7091r8_device_table[] = { + {.compatible = "adi,ad7091r-2"}, + {.compatible = "adi,ad7091r-4"}, + {.compatible = "adi,ad7091r-8"}, + {} +}; /** * Pull the CONVST line up then down to signal to the start of a read/write diff --git a/drivers/adc/ad7124/ad7124.c b/drivers/adc/ad7124/ad7124.c index 24f04df7c79..f8d4b0d3544 100644 --- a/drivers/adc/ad7124/ad7124.c +++ b/drivers/adc/ad7124/ad7124.c @@ -47,6 +47,16 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include "no_os_error.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7124_device_table[] = { + {.compatible = "adi,ad7124-4"}, + {.compatible = "adi,ad7124-8"}, + {} +}; /* * Post reset delay required to ensure all internal config done diff --git a/drivers/adc/ad713x/ad713x.c b/drivers/adc/ad713x/ad713x.c index da3f0de5ef2..55b27cf1ef1 100644 --- a/drivers/adc/ad713x/ad713x.c +++ b/drivers/adc/ad713x/ad713x.c @@ -53,6 +53,18 @@ #include "no_os_delay.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad713x_device_table[] = { + {.compatible = "adi,ad7132"}, + {.compatible = "adi,ad7134"}, + {.compatible = "adi,ad7136"}, + {.compatible = "adi,ad4134"}, + {} +}; /******************************************************************************/ /***************************** Variable definition ****************************/ diff --git a/drivers/adc/ad717x/ad717x.c b/drivers/adc/ad717x/ad717x.c index 9d5aebc488d..50a6e5302e8 100644 --- a/drivers/adc/ad717x/ad717x.c +++ b/drivers/adc/ad717x/ad717x.c @@ -48,6 +48,26 @@ #include "ad717x.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad717x_device_table[] = { + {.compatible = "adi,ad4111"}, + {.compatible = "adi,ad4112"}, + {.compatible = "adi,ad4114"}, + {.compatible = "adi,ad4115"}, + {.compatible = "adi,ad4116"}, + {.compatible = "adi,ad7172-2"}, + {.compatible = "adi,ad7172-4"}, + {.compatible = "adi,ad7173-8"}, + {.compatible = "adi,ad7175-2"}, + {.compatible = "adi,ad7175-8"}, + {.compatible = "adi,ad7176-2"}, + {.compatible = "adi,ad7177-2"}, + {} +}; /* Error codes */ #define INVALID_VAL -1 /* Invalid argument */ diff --git a/drivers/adc/ad719x/ad719x.c b/drivers/adc/ad719x/ad719x.c index f9f2ba07ddd..0cf02d9b8c6 100644 --- a/drivers/adc/ad719x/ad719x.c +++ b/drivers/adc/ad719x/ad719x.c @@ -46,6 +46,19 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad719x_device_table[] = { + {.compatible = "adi,ad7190"}, + {.compatible = "adi,ad7192"}, + {.compatible = "adi,ad7193"}, + {.compatible = "adi,ad7194"}, + {.compatible = "adi,ad7195"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad7280a/ad7280a.c b/drivers/adc/ad7280a/ad7280a.c index 42bca8e4c7c..e1ccde73859 100644 --- a/drivers/adc/ad7280a/ad7280a.c +++ b/drivers/adc/ad7280a/ad7280a.c @@ -45,6 +45,15 @@ #include #include "ad7280a.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7280a_device_table[] = { + {.compatible = "adi,ad7280a"}, + {} +}; /*****************************************************************************/ /************************ Functions Definitions ******************************/ diff --git a/drivers/adc/ad738x/ad738x.c b/drivers/adc/ad738x/ad738x.c index 0392e1551ab..0c5e7ad524e 100644 --- a/drivers/adc/ad738x/ad738x.c +++ b/drivers/adc/ad738x/ad738x.c @@ -51,6 +51,38 @@ #include "no_os_delay.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad738x_device_table[] = { + {.compatible = "adi,ad7380"}, + {.compatible = "adi,ad7381"}, + {.compatible = "adi,ad7382"}, + {.compatible = "adi,ad7383"}, + {.compatible = "adi,ad7384"}, + {.compatible = "adi,ad7385"}, + {.compatible = "adi,ad7386"}, + {.compatible = "adi,ad7387"}, + {.compatible = "adi,ad7388"}, + {.compatible = "adi,ad7380-4"}, + {.compatible = "adi,ad7381-4"}, + {.compatible = "adi,ad7382-4"}, + {.compatible = "adi,ad7383-4"}, + {.compatible = "adi,ad7384-4"}, + {.compatible = "adi,ad7385-4"}, + {.compatible = "adi,ad7386-4"}, + {.compatible = "adi,ad7387-4"}, + {.compatible = "adi,ad7388-4"}, + {.compatible = "adi,ad4680"}, + {.compatible = "adi,ad4681"}, + {.compatible = "adi,ad4682"}, + {.compatible = "adi,ad4683"}, + {.compatible = "adi,ad4684"}, + {.compatible = "adi,ad4685"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/adc/ad74xx/ad74xx.c b/drivers/adc/ad74xx/ad74xx.c index 247b5a815f6..c3796affeba 100644 --- a/drivers/adc/ad74xx/ad74xx.c +++ b/drivers/adc/ad74xx/ad74xx.c @@ -43,6 +43,25 @@ #include #include "ad74xx.h" // AD74xx definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad74xx_device_table[] = { + {.compatible = "adi,ad7466"}, + {.compatible = "adi,ad7467"}, + {.compatible = "adi,ad7468"}, + {.compatible = "adi,ad7475"}, + {.compatible = "adi,ad7476"}, + {.compatible = "adi,ad7476a"}, + {.compatible = "adi,ad7477"}, + {.compatible = "adi,ad7477a"}, + {.compatible = "adi,ad7478"}, + {.compatible = "adi,ad7478a"}, + {.compatible = "adi,ad7495"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad7606/ad7606.c b/drivers/adc/ad7606/ad7606.c index 8a173da9c21..0b88d06d505 100644 --- a/drivers/adc/ad7606/ad7606.c +++ b/drivers/adc/ad7606/ad7606.c @@ -51,6 +51,23 @@ #include "no_os_util.h" #include "no_os_crc.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7606_device_table[] = { + {.compatible = "adi,ad7605-4"}, + {.compatible = "adi,ad7606-4"}, + {.compatible = "adi,ad7606-6"}, + {.compatible = "adi,ad7606-8"}, + {.compatible = "adi,ad7606b"}, + {.compatible = "adi,ad7606c-16"}, + {.compatible = "adi,ad7606c-18"}, + {.compatible = "adi,ad7608"}, + {.compatible = "adi,ad7609"}, + {} +}; struct ad7606_chip_info { const char *name; diff --git a/drivers/adc/ad7616/ad7616.c b/drivers/adc/ad7616/ad7616.c index e8b91bcbbde..ee2c1a2f70d 100644 --- a/drivers/adc/ad7616/ad7616.c +++ b/drivers/adc/ad7616/ad7616.c @@ -66,6 +66,16 @@ #include "no_os_spi.h" #endif +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7616_device_table[] = { + {.compatible = "adi,ad7616"}, + {} +}; + #define AD7616_GET_BIT(v, b) ((v >> b) & 1) #define AD7616_TOGGLE_TIMEOUT_DELAY (8192 * 1024) #define SPI_ENGINE_WORDS_PER_READ 1 diff --git a/drivers/adc/ad7689/ad7689.c b/drivers/adc/ad7689/ad7689.c index 3ecbccedf71..5ff69e1a544 100644 --- a/drivers/adc/ad7689/ad7689.c +++ b/drivers/adc/ad7689/ad7689.c @@ -43,6 +43,18 @@ #include "no_os_print_log.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7689_device_table[] = { + {.compatible = "adi,ad7689"}, + {.compatible = "adi,ad7682"}, + {.compatible = "adi,ad7949"}, + {.compatible = "adi,ad7699"}, + {} +}; const char *ad7689_device_name[] = { "AD7689", diff --git a/drivers/adc/ad7768-1/ad77681.c b/drivers/adc/ad7768-1/ad77681.c index 38ac2ba8ee8..51d0f201cff 100644 --- a/drivers/adc/ad7768-1/ad77681.c +++ b/drivers/adc/ad7768-1/ad77681.c @@ -48,6 +48,15 @@ #include "no_os_error.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad77681_device_table[] = { + {.compatible = "adi,ad7768-1"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/adc/ad7768/ad7768.c b/drivers/adc/ad7768/ad7768.c index 22d9fdff59b..c205bb12a63 100644 --- a/drivers/adc/ad7768/ad7768.c +++ b/drivers/adc/ad7768/ad7768.c @@ -46,6 +46,15 @@ #include "no_os_alloc.h" #include "no_os_error.h" #include "no_os_util.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7768_device_table[] = { + {.compatible = "adi,ad7768"}, + {} +}; const uint8_t standard_pin_ctrl_mode_sel[3][4] = { // MCLK/1, MCLK/2, MCLK/4, MCLK/8 diff --git a/drivers/adc/ad7779/ad7779.c b/drivers/adc/ad7779/ad7779.c index a27c2dff3ec..1f84376438f 100644 --- a/drivers/adc/ad7779/ad7779.c +++ b/drivers/adc/ad7779/ad7779.c @@ -46,6 +46,17 @@ #include "no_os_util.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7779_device_table[] = { + {.compatible = "adi,ad7770"}, + {.compatible = "adi,ad7771"}, + {.compatible = "adi,ad7779"}, + {} +}; /******************************************************************************/ /*************************** Constants Definitions ****************************/ diff --git a/drivers/adc/ad7780/ad7780.c b/drivers/adc/ad7780/ad7780.c index 1685ef05d51..ccabeda6a3a 100644 --- a/drivers/adc/ad7780/ad7780.c +++ b/drivers/adc/ad7780/ad7780.c @@ -43,6 +43,15 @@ #include #include "ad7780.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7780_device_table[] = { + {.compatible = "adi,ad7780"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad7799/ad7799.c b/drivers/adc/ad7799/ad7799.c index 6194cd80e49..f6e124821fb 100644 --- a/drivers/adc/ad7799/ad7799.c +++ b/drivers/adc/ad7799/ad7799.c @@ -46,6 +46,16 @@ #include "no_os_error.h" #include "ad7799.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7799_device_table[] = { + {.compatible = "adi,ad7798"}, + {.compatible = "adi,ad7799"}, + {} +}; /*****************************************************************************/ /***************************** Constant definition ***************************/ diff --git a/drivers/adc/ad796x/ad796x.c b/drivers/adc/ad796x/ad796x.c index ddd408ded3f..eaec0e23332 100644 --- a/drivers/adc/ad796x/ad796x.c +++ b/drivers/adc/ad796x/ad796x.c @@ -45,6 +45,15 @@ #include "ad796x.h" #include "no_os_alloc.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad796x_device_table[] = { + {.compatible = "adi,ad7960"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/adc/ad7980/ad7980.c b/drivers/adc/ad7980/ad7980.c index c951880db36..41faea3cc2e 100644 --- a/drivers/adc/ad7980/ad7980.c +++ b/drivers/adc/ad7980/ad7980.c @@ -43,6 +43,15 @@ #include #include "ad7980.h" // AD7980 definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7980_device_table[] = { + {.compatible = "adi,ad7980"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad799x/ad799x.c b/drivers/adc/ad799x/ad799x.c index ad8d924b5c0..9f2a8de464c 100644 --- a/drivers/adc/ad799x/ad799x.c +++ b/drivers/adc/ad799x/ad799x.c @@ -43,6 +43,17 @@ #include #include "ad799x.h" // AD799x definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad799x_device_table[] = { + {.compatible = "adi,ad7991"}, + {.compatible = "adi,ad7995"}, + {.compatible = "adi,ad7999"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ad9081/ad9081.c b/drivers/adc/ad9081/ad9081.c index 1b0f0c81058..d082b7fd2d3 100644 --- a/drivers/adc/ad9081/ad9081.c +++ b/drivers/adc/ad9081/ad9081.c @@ -54,6 +54,17 @@ #define __STDC_FORMAT_MACROS #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9081_device_table[] = { + {.compatible = "adi,ad9081"}, + {.compatible = "adi,ad9082"}, + {} +}; + /* ffh: 2 - gpio6, 3 - gpio7, 4 - gpio8, 5 - gpio9, 6 - gpio10, 7 - syncinb1_p, 8 - syncinb1_n */ #define AD9081_PERI_SEL_GPIO6 2 diff --git a/drivers/adc/ad9083/ad9083.c b/drivers/adc/ad9083/ad9083.c index 9b58c15d510..b0e4c112e74 100644 --- a/drivers/adc/ad9083/ad9083.c +++ b/drivers/adc/ad9083/ad9083.c @@ -53,6 +53,15 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9083_device_table[] = { + {.compatible = "adi,ad9083"}, + {} +}; /******************************************************************************/ /*************************** Types Declarations *******************************/ diff --git a/drivers/adc/ad9208/ad9208.c b/drivers/adc/ad9208/ad9208.c index dc48f95ad45..1170cd132a1 100644 --- a/drivers/adc/ad9208/ad9208.c +++ b/drivers/adc/ad9208/ad9208.c @@ -48,6 +48,15 @@ #include #include "api_def.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9208_device_table[] = { + {.compatible = "adi,ad9208"}, + {} +}; /** * Spi write and read compatible with ad9208 API diff --git a/drivers/adc/ad9250/ad9250.c b/drivers/adc/ad9250/ad9250.c index a5b7a4298a5..0abf0f0a332 100644 --- a/drivers/adc/ad9250/ad9250.c +++ b/drivers/adc/ad9250/ad9250.c @@ -44,6 +44,15 @@ #include "ad9250.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9250_device_table[] = { + {.compatible = "adi,ad9250"}, + {} +}; /*****************************************************************************/ /***************************** Constant definition ***************************/ diff --git a/drivers/adc/ad9265/ad9265.c b/drivers/adc/ad9265/ad9265.c index b018812a7d2..28f3650ca8e 100644 --- a/drivers/adc/ad9265/ad9265.c +++ b/drivers/adc/ad9265/ad9265.c @@ -45,6 +45,15 @@ #include "axi_adc_core.h" #include "ad9265.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9265_device_table[] = { + {.compatible = "adi,ad9265"}, + {} +}; #define DCO_DEBUG diff --git a/drivers/adc/ad9434/ad9434.c b/drivers/adc/ad9434/ad9434.c index b6f4538cd07..d33e62605aa 100644 --- a/drivers/adc/ad9434/ad9434.c +++ b/drivers/adc/ad9434/ad9434.c @@ -44,6 +44,15 @@ #include #include "ad9434.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9434_device_table[] = { + {.compatible = "adi,ad9434"}, + {} +}; #define DCO_DEBUG diff --git a/drivers/adc/ad9467/ad9467.c b/drivers/adc/ad9467/ad9467.c index 8af21d1d6e1..07e79593c41 100644 --- a/drivers/adc/ad9467/ad9467.c +++ b/drivers/adc/ad9467/ad9467.c @@ -43,6 +43,15 @@ #include #include "ad9467.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9467_device_table[] = { + {.compatible = "adi,ad9467"}, + {} +}; /***************************************************************************//** * @brief Configures the test mode and the output mode to a default state. diff --git a/drivers/adc/ad9625/ad9625.c b/drivers/adc/ad9625/ad9625.c index f2832f441f4..ca01dc01925 100644 --- a/drivers/adc/ad9625/ad9625.c +++ b/drivers/adc/ad9625/ad9625.c @@ -44,6 +44,15 @@ #include #include "ad9625.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9625_device_table[] = { + {.compatible = "adi,ad9625"}, + {} +}; /***************************************************************************//** * @brief ad9625_spi_read diff --git a/drivers/adc/ad9656/ad9656.c b/drivers/adc/ad9656/ad9656.c index 145a47636c8..9edb1765b04 100644 --- a/drivers/adc/ad9656/ad9656.c +++ b/drivers/adc/ad9656/ad9656.c @@ -47,6 +47,15 @@ #include "ad9656.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9656_device_table[] = { + {.compatible = "adi,ad9656"}, + {} +}; /** * @brief Reads from the ad9656 that is contected to the SPI diff --git a/drivers/adc/ad9680/ad9680.c b/drivers/adc/ad9680/ad9680.c index 28ece3f8d3e..ce1f99eba12 100644 --- a/drivers/adc/ad9680/ad9680.c +++ b/drivers/adc/ad9680/ad9680.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_print_log.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9680_device_table[] = { + {.compatible = "adi,ad9680"}, + {} +}; struct ad9680_jesd204_priv { struct ad9680_dev *dev; diff --git a/drivers/adc/adaq7980/adaq7980.c b/drivers/adc/adaq7980/adaq7980.c index f29c3fb6afe..f938bf9dea2 100644 --- a/drivers/adc/adaq7980/adaq7980.c +++ b/drivers/adc/adaq7980/adaq7980.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adaq7980_device_table[] = { + {.compatible = "adi,adaq7980"}, + {} +}; /** * @brief Read from device. diff --git a/drivers/adc/adaq8092/adaq8092.c b/drivers/adc/adaq8092/adaq8092.c index bbd3100988c..39204cb2bab 100644 --- a/drivers/adc/adaq8092/adaq8092.c +++ b/drivers/adc/adaq8092/adaq8092.c @@ -45,6 +45,15 @@ #include "adaq8092.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adaq8092_device_table[] = { + {.compatible = "adi,adaq8092"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/adc_demo/adc_demo.c b/drivers/adc/adc_demo/adc_demo.c index b2b55c20d5a..c47da5b5703 100644 --- a/drivers/adc/adc_demo/adc_demo.c +++ b/drivers/adc/adc_demo/adc_demo.c @@ -48,6 +48,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adc_demo_device_table[] = { + {.compatible = "adi,adc-demo"}, + {} +}; /* default sine lookup table to be used if ext_buff is not available */ const uint16_t sine_lut[128] = { diff --git a/drivers/adc/adm1177/adm1177.c b/drivers/adc/adm1177/adm1177.c index b15e65b4212..39fad4f1c05 100644 --- a/drivers/adc/adm1177/adm1177.c +++ b/drivers/adc/adm1177/adm1177.c @@ -42,6 +42,15 @@ #include "no_os_alloc.h" #include "no_os_delay.h" #include "no_os_error.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adm1177_device_table[] = { + {.compatible = "adi,adm1177"}, + {} +}; /**************************************************************************//** * @brief Initializes I2C. diff --git a/drivers/adc/ltc2312/ltc2312.c b/drivers/adc/ltc2312/ltc2312.c index 68139c05449..8524562b1f2 100644 --- a/drivers/adc/ltc2312/ltc2312.c +++ b/drivers/adc/ltc2312/ltc2312.c @@ -51,6 +51,16 @@ ongoing work. #include #include "ltc2312.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc2312_device_table[] = { + {.compatible = "adi,ltc2312-12"}, + {.compatible = "adi,ltc2312-14"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/ltc2358/ltc2358.c b/drivers/adc/ltc2358/ltc2358.c index 5197e914a45..5cd36d14d6e 100644 --- a/drivers/adc/ltc2358/ltc2358.c +++ b/drivers/adc/ltc2358/ltc2358.c @@ -45,6 +45,15 @@ #include "ltc2358.h" #include "errno.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc2358_device_table[] = { + {.compatible = "adi,ltc2358"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/max11205/max11205.c b/drivers/adc/max11205/max11205.c index b679168bc77..8eb673fa536 100644 --- a/drivers/adc/max11205/max11205.c +++ b/drivers/adc/max11205/max11205.c @@ -44,6 +44,15 @@ #include "max11205.h" #include "errno.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max11205_device_table[] = { + {.compatible = "adi,max11205"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/max14001/max14001.c b/drivers/adc/max14001/max14001.c index 477b1f18c90..41d48fb36ca 100644 --- a/drivers/adc/max14001/max14001.c +++ b/drivers/adc/max14001/max14001.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max14001_device_table[] = { + {.compatible = "adi,max14001"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/adc/max9611pmb/max9611.c b/drivers/adc/max9611pmb/max9611.c index 73dfd266c84..275913aa690 100644 --- a/drivers/adc/max9611pmb/max9611.c +++ b/drivers/adc/max9611pmb/max9611.c @@ -49,6 +49,15 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include "max9611.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max9611_device_table[] = { + {.compatible = "adi,max9611"}, + {} +}; /***************************************************************************//** * @brief Generates slave address based on A1 and A0 pin values From 176afea240b72d16ececfdd032696e4b1ce4697d Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 11:57:18 +0300 Subject: [PATCH 06/29] drivers: adc-dac: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/adc-dac/ad5592r/ad5592r.c | 9 +++++++++ drivers/adc-dac/ad5592r/ad5593r.c | 9 +++++++++ drivers/adc-dac/ad74413r/ad74413r.c | 9 +++++++++ drivers/adc-dac/ad74416h/ad74416h.c | 9 +++++++++ 4 files changed, 36 insertions(+) diff --git a/drivers/adc-dac/ad5592r/ad5592r.c b/drivers/adc-dac/ad5592r/ad5592r.c index 30ce75caa94..3d4ea3f6204 100644 --- a/drivers/adc-dac/ad5592r/ad5592r.c +++ b/drivers/adc-dac/ad5592r/ad5592r.c @@ -39,6 +39,15 @@ #include "no_os_error.h" #include "ad5592r-base.h" #include "ad5592r.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5592r_device_table[] = { + {.compatible = "adi,ad5592r"}, + {} +}; const struct ad5592r_rw_ops ad5592r_rw_ops = { .write_dac = ad5592r_write_dac, diff --git a/drivers/adc-dac/ad5592r/ad5593r.c b/drivers/adc-dac/ad5592r/ad5593r.c index 503cb9ce982..56b8b945d29 100644 --- a/drivers/adc-dac/ad5592r/ad5593r.c +++ b/drivers/adc-dac/ad5592r/ad5593r.c @@ -40,6 +40,15 @@ #include "ad5592r-base.h" #include "no_os_error.h" #include "ad5593r.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5593r_device_table[] = { + {.compatible = "adi,ad5593r"}, + {} +}; #define AD5593R_MODE_CONF (0 << 4) #define AD5593R_MODE_DAC_WRITE (1 << 4) diff --git a/drivers/adc-dac/ad74413r/ad74413r.c b/drivers/adc-dac/ad74413r/ad74413r.c index 994f357ee6b..fc5c2d6429f 100644 --- a/drivers/adc-dac/ad74413r/ad74413r.c +++ b/drivers/adc-dac/ad74413r/ad74413r.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad74413r_device_table[] = { + {.compatible = "adi,ad74413r"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/adc-dac/ad74416h/ad74416h.c b/drivers/adc-dac/ad74416h/ad74416h.c index e20749ab3c4..8feaaa750c6 100644 --- a/drivers/adc-dac/ad74416h/ad74416h.c +++ b/drivers/adc-dac/ad74416h/ad74416h.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad74416h_device_table[] = { + {.compatible = "adi,ad74416h"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ From a8096da137b547ebc44b715d6133670ca8f82955 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 12:04:27 +0300 Subject: [PATCH 07/29] drivers: afe: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/afe/ad4110/ad4110.c | 9 +++++++++ drivers/afe/ad413x/ad413x.c | 9 +++++++++ drivers/afe/ad5940/ad5940.c | 9 +++++++++ 3 files changed, 27 insertions(+) diff --git a/drivers/afe/ad4110/ad4110.c b/drivers/afe/ad4110/ad4110.c index e72a5fcb751..5189794f567 100644 --- a/drivers/afe/ad4110/ad4110.c +++ b/drivers/afe/ad4110/ad4110.c @@ -51,6 +51,15 @@ #include "no_os_irq.h" #include "no_os_print_log.h" #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad4110_device_table[] = { + {.compatible = "adi,ad4110"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/afe/ad413x/ad413x.c b/drivers/afe/ad413x/ad413x.c index af0685fa5d0..0f57615ddba 100644 --- a/drivers/afe/ad413x/ad413x.c +++ b/drivers/afe/ad413x/ad413x.c @@ -50,6 +50,15 @@ #include "no_os_crc8.h" #include "no_os_spi.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad413x_device_table[] = { + {.compatible = "adi,ad4130-8"}, + {} +}; NO_OS_DECLARE_CRC8_TABLE(ad413x_crc8); uint32_t timeout = 0xFFFFFF; diff --git a/drivers/afe/ad5940/ad5940.c b/drivers/afe/ad5940/ad5940.c index 5ddf953c088..2a55e64eb9e 100644 --- a/drivers/afe/ad5940/ad5940.c +++ b/drivers/afe/ad5940/ad5940.c @@ -47,6 +47,15 @@ #include "no_os_gpio.h" #include "no_os_alloc.h" #include "ad5940.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5940_device_table[] = { + {.compatible = "adi,ad5940"}, + {} +}; static int AD5940_Initialize(struct ad5940_dev *dev); static void AD5940_StructInit(void *pStruct, uint32_t StructSize); From f3a2fc7f341052a11eb419cdc0d7e93661371a32 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 12:07:00 +0300 Subject: [PATCH 08/29] drivers: amplifiers: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/amplifiers/ada4250/ada4250.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/amplifiers/ada4250/ada4250.c b/drivers/amplifiers/ada4250/ada4250.c index b6bbb39578c..516708b80ce 100644 --- a/drivers/amplifiers/ada4250/ada4250.c +++ b/drivers/amplifiers/ada4250/ada4250.c @@ -45,6 +45,16 @@ #include "no_os_delay.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ada4250_device_table[] = { + {.compatible = "adi,ada4230"}, + {.compatible = "adi,ada4250"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ From 36cbac97d31eb46d29fcfa0073d1867ad71ce4a1 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 12:11:34 +0300 Subject: [PATCH 09/29] drivers: cdc: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/cdc/ad7156/ad7156.c | 9 +++++++++ drivers/cdc/ad7746/ad7746.c | 11 +++++++++++ 2 files changed, 20 insertions(+) diff --git a/drivers/cdc/ad7156/ad7156.c b/drivers/cdc/ad7156/ad7156.c index d715104952b..bc4741ac145 100644 --- a/drivers/cdc/ad7156/ad7156.c +++ b/drivers/cdc/ad7156/ad7156.c @@ -43,6 +43,15 @@ #include #include "ad7156.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7156_device_table[] = { + {.compatible = "adi,ad7156"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/cdc/ad7746/ad7746.c b/drivers/cdc/ad7746/ad7746.c index 02608526fa4..c81e1ff975c 100644 --- a/drivers/cdc/ad7746/ad7746.c +++ b/drivers/cdc/ad7746/ad7746.c @@ -43,6 +43,17 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include "ad7746.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7746_device_table[] = { + {.compatible = "adi,ad7745"}, + {.compatible = "adi,ad7746"}, + {.compatible = "adi,ad7747"}, + {} +}; /***************************************************************************//** * @brief Initialize the ad7606 device structure. From a3d861073de149ae65bd1795d9aaf4be55c7f65a Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 12:15:30 +0300 Subject: [PATCH 10/29] drivers: display: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/display/nhd_c12832a1z/nhd_c12832a1z.c | 9 +++++++++ drivers/display/ssd_1306/ssd_1306.c | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/drivers/display/nhd_c12832a1z/nhd_c12832a1z.c b/drivers/display/nhd_c12832a1z/nhd_c12832a1z.c index 6f9ae05c5db..3bbf05f798f 100644 --- a/drivers/display/nhd_c12832a1z/nhd_c12832a1z.c +++ b/drivers/display/nhd_c12832a1z/nhd_c12832a1z.c @@ -47,6 +47,15 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device nhd_c12832a1z_device_table[] = { + {.compatible = "nhd-c12832a1z"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/display/ssd_1306/ssd_1306.c b/drivers/display/ssd_1306/ssd_1306.c index 97cd53f1147..e6465c4100a 100644 --- a/drivers/display/ssd_1306/ssd_1306.c +++ b/drivers/display/ssd_1306/ssd_1306.c @@ -46,6 +46,15 @@ #include "no_os_spi.h" #include "no_os_delay.h" #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ssd_1306_device_table[] = { + {.compatible = "ssd1306"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ From 457a1cf07481e19d8e8706e74ee1e38583947877 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Mon, 12 Aug 2024 18:07:04 +0300 Subject: [PATCH 11/29] drivers: dac: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/dac/ad3552r/ad3552r.c | 12 ++++++++++ drivers/dac/ad5421/ad5421.c | 9 ++++++++ drivers/dac/ad5446/ad5446.c | 20 ++++++++++++++++ drivers/dac/ad5449/ad5449.c | 15 ++++++++++++ drivers/dac/ad5460/ad5460.c | 9 ++++++++ drivers/dac/ad5628/ad5628.c | 9 ++++++++ drivers/dac/ad5629r/ad5629r.c | 13 +++++++++++ drivers/dac/ad5686/ad5686.c | 41 +++++++++++++++++++++++++++++++++ drivers/dac/ad5754r/ad5754r.c | 9 ++++++++ drivers/dac/ad5755/ad5755.c | 11 +++++++++ drivers/dac/ad5758/ad5758.c | 9 ++++++++ drivers/dac/ad5761r/ad5761r.c | 10 ++++++++ drivers/dac/ad5766/ad5766.c | 10 ++++++++ drivers/dac/ad5770r/ad5770r.c | 9 ++++++++ drivers/dac/ad5791/ad5791.c | 13 +++++++++++ drivers/dac/ad7293/ad7293.c | 9 ++++++++ drivers/dac/ad7303/ad7303.c | 9 ++++++++ drivers/dac/ad9144/ad9144.c | 9 ++++++++ drivers/dac/ad9152/ad9152.c | 9 ++++++++ drivers/dac/ad917x/ad9172.c | 14 +++++++++++ drivers/dac/ad9739a/ad9739a.c | 9 ++++++++ drivers/dac/dac_demo/dac_demo.c | 9 ++++++++ drivers/dac/ltc2672/ltc2672.c | 10 ++++++++ drivers/dac/ltc268x/ltc268x.c | 11 +++++++++ drivers/dac/max2201x/max2201x.c | 10 ++++++++ drivers/dac/max538x/max538x.c | 20 ++++++++++++++++ 26 files changed, 318 insertions(+) diff --git a/drivers/dac/ad3552r/ad3552r.c b/drivers/dac/ad3552r/ad3552r.c index 4a1f982c1bd..69b14ef8060 100644 --- a/drivers/dac/ad3552r/ad3552r.c +++ b/drivers/dac/ad3552r/ad3552r.c @@ -52,6 +52,18 @@ #include "no_os_timer.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad3552r_device_table[] = { + {.compatible = "adi,ad3541r"}, + {.compatible = "adi,ad3542r"}, + {.compatible = "adi,ad3551r"}, + {.compatible = "adi,ad3552r"}, + {} +}; /* Private attributes */ enum ad3552r_spi_attributes { diff --git a/drivers/dac/ad5421/ad5421.c b/drivers/dac/ad5421/ad5421.c index 8ed101b04b3..c566b748ab7 100644 --- a/drivers/dac/ad5421/ad5421.c +++ b/drivers/dac/ad5421/ad5421.c @@ -46,6 +46,15 @@ #include #include "ad5421.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5421_device_table[] = { + {.compatible = "adi,ad5421"}, + {} +}; /*****************************************************************************/ /************************* Functions Definitions *****************************/ diff --git a/drivers/dac/ad5446/ad5446.c b/drivers/dac/ad5446/ad5446.c index 54d84742e9e..13ab5b2f6ef 100644 --- a/drivers/dac/ad5446/ad5446.c +++ b/drivers/dac/ad5446/ad5446.c @@ -47,6 +47,26 @@ #include #include "ad5446.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5446_device_table[] = { + {.compatible = "adi,ad5600"}, + {.compatible = "adi,ad5553"}, + {.compatible = "adi,ad5543"}, + {.compatible = "adi,ad5542a"}, + {.compatible = "adi,ad5541a"}, + {.compatible = "adi,ad5512a"}, + {.compatible = "adi,ad5453"}, + {.compatible = "adi,ad5452"}, + {.compatible = "adi,ad5451"}, + {.compatible = "adi,ad5450"}, + {.compatible = "adi,ad5446"}, + {.compatible = "adi,ad5444"}, + {} +}; #define MAX_RESOLUTION 16 /* Maximum resolution of supported devices */ #define DATA_MASK(x) (0xFFFF >> (MAX_RESOLUTION - (x))) diff --git a/drivers/dac/ad5449/ad5449.c b/drivers/dac/ad5449/ad5449.c index b2d3e40087e..381856becc0 100644 --- a/drivers/dac/ad5449/ad5449.c +++ b/drivers/dac/ad5449/ad5449.c @@ -45,6 +45,21 @@ #include #include "ad5449.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5449_device_table[] = { + {.compatible = "adi,ad5415"}, + {.compatible = "adi,ad5426"}, + {.compatible = "adi,ad5429"}, + {.compatible = "adi,ad5432"}, + {.compatible = "adi,ad5439"}, + {.compatible = "adi,ad5443"}, + {.compatible = "adi,ad5449"}, + {} +}; #define MAX_RESOLUTION 12 /* Maximum resolution of the supported devices */ #define DATA_MASK 0xFFF /* Mask for 16 data bits */ diff --git a/drivers/dac/ad5460/ad5460.c b/drivers/dac/ad5460/ad5460.c index 9998fa677c4..416b0b62bab 100644 --- a/drivers/dac/ad5460/ad5460.c +++ b/drivers/dac/ad5460/ad5460.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5460_device_table[] = { + {.compatible = "adi,ad5460"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/dac/ad5628/ad5628.c b/drivers/dac/ad5628/ad5628.c index 809658f8f9a..511c206dcc2 100644 --- a/drivers/dac/ad5628/ad5628.c +++ b/drivers/dac/ad5628/ad5628.c @@ -43,6 +43,15 @@ #include #include "ad5628.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5628_device_table[] = { + {.compatible = "adi,ad5628"}, + {} +}; /***************************************************************************//** * @brief Initializes the communication peripheral and the initial Values for diff --git a/drivers/dac/ad5629r/ad5629r.c b/drivers/dac/ad5629r/ad5629r.c index 8473f83b5ad..ba7022ad9b5 100644 --- a/drivers/dac/ad5629r/ad5629r.c +++ b/drivers/dac/ad5629r/ad5629r.c @@ -46,6 +46,19 @@ #include #include "ad5629r.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5629r_device_table[] = { + {.compatible = "adi,ad5629r"}, + {.compatible = "adi,ad5669r"}, + {.compatible = "adi,ad5668"}, + {.compatible = "adi,ad5648"}, + {.compatible = "adi,ad5628"}, + {} +}; /******************************************************************************/ /************************ Variables Definitions *******************************/ diff --git a/drivers/dac/ad5686/ad5686.c b/drivers/dac/ad5686/ad5686.c index 90b3c884740..f1151744781 100644 --- a/drivers/dac/ad5686/ad5686.c +++ b/drivers/dac/ad5686/ad5686.c @@ -46,6 +46,47 @@ #include #include "ad5686.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5686_device_table[] = { + {.compatible = "adi,ad5671r"}, + {.compatible = "adi,ad5672r"}, + {.compatible = "adi,ad5673r"}, + {.compatible = "adi,ad5674"}, + {.compatible = "adi,ad5674r"}, + {.compatible = "adi,ad5675r"}, + {.compatible = "adi,ad5676"}, + {.compatible = "adi,ad5676r"}, + {.compatible = "adi,ad5677r"}, + {.compatible = "adi,ad5679"}, + {.compatible = "adi,ad5679r"}, + {.compatible = "adi,ad5686"}, + {.compatible = "adi,ad5684r"}, + {.compatible = "adi,ad5685r"}, + {.compatible = "adi,ad5686r"}, + {.compatible = "adi,ad5687"}, + {.compatible = "adi,ad5687r"}, + {.compatible = "adi,ad5689"}, + {.compatible = "adi,ad5689r"}, + {.compatible = "adi,ad5697r"}, + {.compatible = "adi,ad5694"}, + {.compatible = "adi,ad5694r"}, + {.compatible = "adi,ad5695r"}, + {.compatible = "adi,ad5696"}, + {.compatible = "adi,ad5696r"}, + {.compatible = "adi,ad5681r"}, + {.compatible = "adi,ad5682r"}, + {.compatible = "adi,ad5683r"}, + {.compatible = "adi,ad5683"}, + {.compatible = "adi,ad5691r"}, + {.compatible = "adi,ad5692r"}, + {.compatible = "adi,ad5693r"}, + {.compatible = "adi,ad5693"}, + {} +}; /*****************************************************************************/ /***************************** Constant definition ***************************/ diff --git a/drivers/dac/ad5754r/ad5754r.c b/drivers/dac/ad5754r/ad5754r.c index 64670d3852f..6520240f07d 100644 --- a/drivers/dac/ad5754r/ad5754r.c +++ b/drivers/dac/ad5754r/ad5754r.c @@ -45,6 +45,15 @@ #include "ad5754r.h" #include "no_os_alloc.h" #include "no_os_delay.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5754r_device_table[] = { + {.compatible = "adi,ad5754r"}, + {} +}; /******************************************************************************/ /******************** Variables and User Defined Data Types *******************/ diff --git a/drivers/dac/ad5755/ad5755.c b/drivers/dac/ad5755/ad5755.c index b5050921e33..fef3d0d4372 100644 --- a/drivers/dac/ad5755/ad5755.c +++ b/drivers/dac/ad5755/ad5755.c @@ -44,6 +44,17 @@ #include "ad5755.h" // AD5755 definitions. #include "ad5755_cfg.h" // AD5755_cfg definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5755_device_table[] = { + {.compatible = "adi,ad5755"}, + {.compatible = "adi,ad5755-1"}, + {.compatible = "adi,ad5757"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/dac/ad5758/ad5758.c b/drivers/dac/ad5758/ad5758.c index 78e2e1c5334..5da7af04daa 100644 --- a/drivers/dac/ad5758/ad5758.c +++ b/drivers/dac/ad5758/ad5758.c @@ -52,6 +52,15 @@ #include "stdbool.h" #include "stdio.h" #include "stdlib.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5758_device_table[] = { + {.compatible = "adi,ad5758"}, + {} +}; /** * Compute CRC8 checksum. diff --git a/drivers/dac/ad5761r/ad5761r.c b/drivers/dac/ad5761r/ad5761r.c index 6eeb5bd5a89..903755f5bb5 100644 --- a/drivers/dac/ad5761r/ad5761r.c +++ b/drivers/dac/ad5761r/ad5761r.c @@ -45,6 +45,16 @@ #include #include "ad5761r.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5761r_device_table[] = { + {.compatible = "adi,ad5761r"}, + {.compatible = "adi,ad5721r"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/dac/ad5766/ad5766.c b/drivers/dac/ad5766/ad5766.c index a31de7ffe0b..e6996687be8 100644 --- a/drivers/dac/ad5766/ad5766.c +++ b/drivers/dac/ad5766/ad5766.c @@ -45,6 +45,16 @@ #include "ad5766.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5766_device_table[] = { + {.compatible = "adi,ad5766"}, + {.compatible = "adi,ad5767"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/dac/ad5770r/ad5770r.c b/drivers/dac/ad5770r/ad5770r.c index 22e56afdfa7..ed60bb6cb12 100644 --- a/drivers/dac/ad5770r/ad5770r.c +++ b/drivers/dac/ad5770r/ad5770r.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "ad5770r.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5770r_device_table[] = { + {.compatible = "adi,ad5770r"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/dac/ad5791/ad5791.c b/drivers/dac/ad5791/ad5791.c index bdccda45128..29dd1a03cca 100644 --- a/drivers/dac/ad5791/ad5791.c +++ b/drivers/dac/ad5791/ad5791.c @@ -44,6 +44,19 @@ #include #include "ad5791.h" // AD5791 definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5791_device_table[] = { + {.compatible = "adi,ad5760"}, + {.compatible = "adi,ad5780"}, + {.compatible = "adi,ad5781"}, + {.compatible = "adi,ad5790"}, + {.compatible = "adi,ad5791"}, + {} +}; /*****************************************************************************/ /***************************** Constant definition ***************************/ diff --git a/drivers/dac/ad7293/ad7293.c b/drivers/dac/ad7293/ad7293.c index 92cdeb771a8..b2a91106ed2 100644 --- a/drivers/dac/ad7293/ad7293.c +++ b/drivers/dac/ad7293/ad7293.c @@ -45,6 +45,15 @@ #include "no_os_error.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7293_device_table[] = { + {.compatible = "adi,ad7293"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/dac/ad7303/ad7303.c b/drivers/dac/ad7303/ad7303.c index 518f4d929ff..9c9cc13e246 100644 --- a/drivers/dac/ad7303/ad7303.c +++ b/drivers/dac/ad7303/ad7303.c @@ -43,6 +43,15 @@ #include #include "ad7303.h" // AD7303 definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad7303_device_table[] = { + {.compatible = "adi,ad7303"}, + {} +}; /***************************************************************************//** * @brief Initializes SPI communication. diff --git a/drivers/dac/ad9144/ad9144.c b/drivers/dac/ad9144/ad9144.c index 98a37a2e63b..bce2a268ec9 100644 --- a/drivers/dac/ad9144/ad9144.c +++ b/drivers/dac/ad9144/ad9144.c @@ -47,6 +47,15 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9144_device_table[] = { + {.compatible = "adi,ad9144"}, + {} +}; struct ad9144_jesd204_link_mode { uint8_t id; diff --git a/drivers/dac/ad9152/ad9152.c b/drivers/dac/ad9152/ad9152.c index a089659b134..93b4126a08b 100644 --- a/drivers/dac/ad9152/ad9152.c +++ b/drivers/dac/ad9152/ad9152.c @@ -44,6 +44,15 @@ #include #include "ad9152.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9152_device_table[] = { + {.compatible = "adi,ad9152"}, + {} +}; /***************************************************************************//** * @brief ad9152_spi_read diff --git a/drivers/dac/ad917x/ad9172.c b/drivers/dac/ad917x/ad9172.c index 29135ecc8c0..e694701bc49 100644 --- a/drivers/dac/ad917x/ad9172.c +++ b/drivers/dac/ad917x/ad9172.c @@ -48,6 +48,20 @@ #include "ad9172.h" #include #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9172_device_table[] = { + {.compatible = "adi,ad9171"}, + {.compatible = "adi,ad9172"}, + {.compatible = "adi,ad9173"}, + {.compatible = "adi,ad9174"}, + {.compatible = "adi,ad9175"}, + {.compatible = "adi,ad9176"}, + {} +}; /** * Setup the device. diff --git a/drivers/dac/ad9739a/ad9739a.c b/drivers/dac/ad9739a/ad9739a.c index 0c06d526607..03e6f354003 100644 --- a/drivers/dac/ad9739a/ad9739a.c +++ b/drivers/dac/ad9739a/ad9739a.c @@ -46,6 +46,15 @@ #include #include "ad9739a.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9739a_device_table[] = { + {.compatible = "adi,ad9739a"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/dac/dac_demo/dac_demo.c b/drivers/dac/dac_demo/dac_demo.c index 5085174d3a3..1160efc541e 100644 --- a/drivers/dac/dac_demo/dac_demo.c +++ b/drivers/dac/dac_demo/dac_demo.c @@ -47,6 +47,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device dac_demo_device_table[] = { + {.compatible = "adi,dac-demo"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/dac/ltc2672/ltc2672.c b/drivers/dac/ltc2672/ltc2672.c index 4045f3a8c98..f9d0d2745e2 100644 --- a/drivers/dac/ltc2672/ltc2672.c +++ b/drivers/dac/ltc2672/ltc2672.c @@ -49,6 +49,16 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc2672_device_table[] = { + {.compatible = "adi,ltc2672-12"}, + {.compatible = "adi,ltc2672_16"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/dac/ltc268x/ltc268x.c b/drivers/dac/ltc268x/ltc268x.c index cb68b0b0959..82dcb67b8fd 100644 --- a/drivers/dac/ltc268x/ltc268x.c +++ b/drivers/dac/ltc268x/ltc268x.c @@ -47,6 +47,17 @@ #include "ltc268x.h" /* LTC268X definitions. */ +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc268x_device_table[] = { + {.compatible = "adi,ltc2686"}, + {.compatible = "adi,ltc2688"}, + {} +}; + static const struct ltc268x_span_tbl ltc268x_span_tbl[] = { [LTC268X_VOLTAGE_RANGE_0V_5V] = {0, 5}, [LTC268X_VOLTAGE_RANGE_0V_10V] = {0, 10}, diff --git a/drivers/dac/max2201x/max2201x.c b/drivers/dac/max2201x/max2201x.c index 7bb7f036750..672636e6a28 100644 --- a/drivers/dac/max2201x/max2201x.c +++ b/drivers/dac/max2201x/max2201x.c @@ -43,6 +43,16 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "no_os_crc8.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max2201x_device_table[] = { + {.compatible = "adi,max22017"}, + {.compatible = "adi,max22018"}, + {} +}; NO_OS_DECLARE_CRC8_TABLE(table); diff --git a/drivers/dac/max538x/max538x.c b/drivers/dac/max538x/max538x.c index 949b63e5440..136257866f2 100644 --- a/drivers/dac/max538x/max538x.c +++ b/drivers/dac/max538x/max538x.c @@ -48,6 +48,26 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max538x_device_table[] = { + {.compatible = "adi,max5380l"}, + {.compatible = "adi,max5380m"}, + {.compatible = "adi,max5380n"}, + {.compatible = "adi,max5380k"}, + {.compatible = "adi,max5381l"}, + {.compatible = "adi,max5381m"}, + {.compatible = "adi,max5381n"}, + {.compatible = "adi,max5381k"}, + {.compatible = "adi,max5382l"}, + {.compatible = "adi,max5382m"}, + {.compatible = "adi,max5382n"}, + {.compatible = "adi,max5382k"}, + {} +}; const struct max538x_chip_info chip_info[] = { [MAX5380L] = { From 0f25224c853620381504fb65673504c15617e3f7 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 00:56:24 +0300 Subject: [PATCH 12/29] drivers: digital-io: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/digital-io/max14914/max14914.c | 9 +++++++++ drivers/digital-io/max14919/max14919.c | 9 +++++++++ drivers/digital-io/max149x6/max14906.c | 9 +++++++++ drivers/digital-io/max149x6/max14916.c | 9 +++++++++ drivers/digital-io/max22190/max22190.c | 9 +++++++++ drivers/digital-io/max22196/max22196.c | 9 +++++++++ drivers/digital-io/max22200/max22200.c | 9 +++++++++ 7 files changed, 63 insertions(+) diff --git a/drivers/digital-io/max14914/max14914.c b/drivers/digital-io/max14914/max14914.c index 981f83425fd..b5efe43e291 100644 --- a/drivers/digital-io/max14914/max14914.c +++ b/drivers/digital-io/max14914/max14914.c @@ -42,6 +42,15 @@ #include "no_os_util.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max14914_device_table[] = { + {.compatible = "adi,max14914"}, + {} +}; /** * @brief Set the state of the MAX14914 diff --git a/drivers/digital-io/max14919/max14919.c b/drivers/digital-io/max14919/max14919.c index a59646c8f3a..7242d654844 100644 --- a/drivers/digital-io/max14919/max14919.c +++ b/drivers/digital-io/max14919/max14919.c @@ -38,6 +38,15 @@ *******************************************************************************/ #include "max14919.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max14919_device_table[] = { + {.compatible = "adi,max14919"}, + {} +}; /** * @brief Set the OUT channels state diff --git a/drivers/digital-io/max149x6/max14906.c b/drivers/digital-io/max149x6/max14906.c index 6e6c57a7e6c..16a73bf205d 100644 --- a/drivers/digital-io/max149x6/max14906.c +++ b/drivers/digital-io/max149x6/max14906.c @@ -42,6 +42,15 @@ #include "max14906.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max14906_device_table[] = { + {.compatible = "adi,max14906"}, + {} +}; /** * @brief Read the (voltage) state of a channel (works for both input or output). diff --git a/drivers/digital-io/max149x6/max14916.c b/drivers/digital-io/max149x6/max14916.c index 8d50b7fd901..39b07cbbf5b 100644 --- a/drivers/digital-io/max149x6/max14916.c +++ b/drivers/digital-io/max149x6/max14916.c @@ -42,6 +42,15 @@ #include "max14916.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max14916_device_table[] = { + {.compatible = "adi,max14916"}, + {} +}; /** * @brief Read the high-side state of a channel's switch. diff --git a/drivers/digital-io/max22190/max22190.c b/drivers/digital-io/max22190/max22190.c index 662d7fabcd6..32133ee6635 100644 --- a/drivers/digital-io/max22190/max22190.c +++ b/drivers/digital-io/max22190/max22190.c @@ -42,6 +42,15 @@ #include "max22190.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max22190_device_table[] = { + {.compatible = "adi,max22190"}, + {} +}; /** * @brief Compute the CRC5 value for MAX22190 diff --git a/drivers/digital-io/max22196/max22196.c b/drivers/digital-io/max22196/max22196.c index 3050f0dd4bb..a3dc07cf4fe 100644 --- a/drivers/digital-io/max22196/max22196.c +++ b/drivers/digital-io/max22196/max22196.c @@ -42,6 +42,15 @@ #include "max22196.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max22196_device_table[] = { + {.compatible = "adi,max22196"}, + {} +}; /** * @brief Compute the CRC5 value for an array of bytes when writing to MAX22196 diff --git a/drivers/digital-io/max22200/max22200.c b/drivers/digital-io/max22200/max22200.c index 8a603b2cae4..9e7076c6a63 100644 --- a/drivers/digital-io/max22200/max22200.c +++ b/drivers/digital-io/max22200/max22200.c @@ -43,6 +43,15 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "no_os_delay.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max22200_device_table[] = { + {.compatible = "adi,max22200"}, + {} +}; /** * @brief Read data from desired register for MAX22200 From a00101a6837b6001da5fc000f7e67760358af922 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 00:58:09 +0300 Subject: [PATCH 13/29] drivers: ecg: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/ecg/adas1000/adas1000.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/ecg/adas1000/adas1000.c b/drivers/ecg/adas1000/adas1000.c index 43f7d154d62..5594158c733 100644 --- a/drivers/ecg/adas1000/adas1000.c +++ b/drivers/ecg/adas1000/adas1000.c @@ -47,6 +47,15 @@ #include "adas1000.h" #include "no_os_crc.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adas1000_device_table[] = { + {.compatible = "adi,adas1000"}, + {} +}; /*****************************************************************************/ /************************ Function Definitions *******************************/ From 0075f0bfd054255618f890526eac57475b59d08b Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:01:10 +0300 Subject: [PATCH 14/29] drivers: eeprom: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/eeprom/24xx32a/24xx32a.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/eeprom/24xx32a/24xx32a.c b/drivers/eeprom/24xx32a/24xx32a.c index 670ed9630c2..e605a6a315d 100644 --- a/drivers/eeprom/24xx32a/24xx32a.c +++ b/drivers/eeprom/24xx32a/24xx32a.c @@ -53,6 +53,15 @@ #include "no_os_delay.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device eeprom_24xx32a_device_table[] = { + {.compatible = "24xx32a"}, + {} +}; /******************************************************************************/ /************************** Functions Definitions *****************************/ From c0b2b2a3a9c50c7d1b821a4f439532c91df4eb05 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:02:30 +0300 Subject: [PATCH 15/29] drivers: filter: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/filter/admv8818/admv8818.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/filter/admv8818/admv8818.c b/drivers/filter/admv8818/admv8818.c index 581d35e6529..42cb939186c 100644 --- a/drivers/filter/admv8818/admv8818.c +++ b/drivers/filter/admv8818/admv8818.c @@ -45,6 +45,15 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "no_os_units.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device admv8818_device_table[] = { + {.compatible = "adi,admv8818"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ From 1dbbf6dd3e3906cec82c2664080ecf0a0ba15c0f Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:15:00 +0300 Subject: [PATCH 16/29] drivers: frequency: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/frequency/ad9508/ad9508.c | 9 +++++++++ drivers/frequency/ad9517/ad9517.c | 9 +++++++++ drivers/frequency/ad9523/ad9523.c | 9 +++++++++ drivers/frequency/ad9528/ad9528.c | 9 +++++++++ drivers/frequency/ad9553/ad9553.c | 9 +++++++++ drivers/frequency/ad9833/ad9833.c | 12 ++++++++++++ drivers/frequency/adf4106/adf4106.c | 9 +++++++++ drivers/frequency/adf4153/adf4153.c | 9 +++++++++ drivers/frequency/adf4156/adf4156.c | 9 +++++++++ drivers/frequency/adf4157/adf4157.c | 9 +++++++++ drivers/frequency/adf4350/adf4350.c | 9 +++++++++ drivers/frequency/adf4371/adf4371.c | 9 +++++++++ drivers/frequency/adf4377/adf4377.c | 9 +++++++++ drivers/frequency/adf4382/adf4382.c | 9 +++++++++ drivers/frequency/adf5355/adf5355.c | 9 +++++++++ drivers/frequency/adf5902/adf5902.c | 9 +++++++++ drivers/frequency/admv1013/admv1013.c | 9 +++++++++ drivers/frequency/admv1014/admv1014.c | 9 +++++++++ drivers/frequency/adrf6780/adrf6780.c | 9 +++++++++ drivers/frequency/hmc7044/hmc7044.c | 10 ++++++++++ drivers/frequency/ltc6953/ltc6953.c | 9 +++++++++ 21 files changed, 193 insertions(+) diff --git a/drivers/frequency/ad9508/ad9508.c b/drivers/frequency/ad9508/ad9508.c index 8a4004db6b6..976392abaac 100644 --- a/drivers/frequency/ad9508/ad9508.c +++ b/drivers/frequency/ad9508/ad9508.c @@ -47,6 +47,15 @@ #include "ad9508.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9508_device_table[] = { + {.compatible = "adi,ad9508"}, + {} +}; /** * @brief Reads from the ad9508 that is contected to the SPI diff --git a/drivers/frequency/ad9517/ad9517.c b/drivers/frequency/ad9517/ad9517.c index 0e67b7a29fe..d17f57b1454 100644 --- a/drivers/frequency/ad9517/ad9517.c +++ b/drivers/frequency/ad9517/ad9517.c @@ -45,6 +45,15 @@ #include "no_os_delay.h" #include "no_os_alloc.h" #include "ad9517.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9517_device_table[] = { + {.compatible = "adi,ad9517"}, + {} +}; /***************************************************************************//** * @brief Initializes the AD9517. diff --git a/drivers/frequency/ad9523/ad9523.c b/drivers/frequency/ad9523/ad9523.c index c9eee55cda5..b697ea7e385 100644 --- a/drivers/frequency/ad9523/ad9523.c +++ b/drivers/frequency/ad9523/ad9523.c @@ -45,6 +45,15 @@ #include #include "ad9523.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9523_device_table[] = { + {.compatible = "adi,ad9523"}, + {} +}; /* Helpers to avoid excess line breaks */ #define AD_IFE(_pde, _a, _b) ((dev->pdata->_pde) ? _a : _b) diff --git a/drivers/frequency/ad9528/ad9528.c b/drivers/frequency/ad9528/ad9528.c index 7767b3a0bd3..1442b800566 100644 --- a/drivers/frequency/ad9528/ad9528.c +++ b/drivers/frequency/ad9528/ad9528.c @@ -50,6 +50,15 @@ #include "no_os_clk.h" #include "ad9528.h" #include "jesd204.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9528_device_table[] = { + {.compatible = "adi,ad9528"}, + {} +}; struct ad9528_jesd204_priv { struct ad9528_dev *device; diff --git a/drivers/frequency/ad9553/ad9553.c b/drivers/frequency/ad9553/ad9553.c index ac27ae5c943..9236b336578 100644 --- a/drivers/frequency/ad9553/ad9553.c +++ b/drivers/frequency/ad9553/ad9553.c @@ -47,6 +47,15 @@ #include "ad9553.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9553_device_table[] = { + {.compatible = "adi,ad9553"}, + {} +}; /** * @brief Reads from the ad9553 that is contected to the SPI diff --git a/drivers/frequency/ad9833/ad9833.c b/drivers/frequency/ad9833/ad9833.c index 22e85dc422f..2ed219b032a 100644 --- a/drivers/frequency/ad9833/ad9833.c +++ b/drivers/frequency/ad9833/ad9833.c @@ -45,6 +45,18 @@ #include "ad9833.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9833_device_table[] = { + {.compatible = "adi,ad9833"}, + {.compatible = "adi,ad9834"}, + {.compatible = "adi,ad9837"}, + {.compatible = "adi,ad9838"}, + {} +}; /******************************************************************************/ /************************** Constants Definitions *****************************/ diff --git a/drivers/frequency/adf4106/adf4106.c b/drivers/frequency/adf4106/adf4106.c index 6741aee7675..f6fc2cc5e69 100644 --- a/drivers/frequency/adf4106/adf4106.c +++ b/drivers/frequency/adf4106/adf4106.c @@ -44,6 +44,15 @@ #include #include "adf4106.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4106_device_table[] = { + {.compatible = "adi,adf4106"}, + {} +}; #define DATA_MASK_MSB8 0xFF0000 #define DATA_OFFSET_MSB8 16 diff --git a/drivers/frequency/adf4153/adf4153.c b/drivers/frequency/adf4153/adf4153.c index 8ee6a4e04f0..e70160e11aa 100644 --- a/drivers/frequency/adf4153/adf4153.c +++ b/drivers/frequency/adf4153/adf4153.c @@ -44,6 +44,15 @@ #include #include "adf4153.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4153_device_table[] = { + {.compatible = "adi,adf4153"}, + {} +}; /* For round up division */ #define CEIL(a, b) (((a) / (b)) + (((a) % (b)) > 0 ? 1 : 0)) diff --git a/drivers/frequency/adf4156/adf4156.c b/drivers/frequency/adf4156/adf4156.c index 3bdc8a4b269..0671be9ea16 100644 --- a/drivers/frequency/adf4156/adf4156.c +++ b/drivers/frequency/adf4156/adf4156.c @@ -45,6 +45,15 @@ #include "adf4156.h" #include "adf4156_cfg.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4156_device_table[] = { + {.compatible = "adi,adf4156"}, + {} +}; /***************************************************************************//** * @brief Initialize the SPI communication with the device. diff --git a/drivers/frequency/adf4157/adf4157.c b/drivers/frequency/adf4157/adf4157.c index 83e226d7dc2..b10cac7212e 100644 --- a/drivers/frequency/adf4157/adf4157.c +++ b/drivers/frequency/adf4157/adf4157.c @@ -44,6 +44,15 @@ #include "adf4157.h" #include "adf4157_cfg.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4157_device_table[] = { + {.compatible = "adi,adf4157"}, + {} +}; /***************************************************************************//** * @brief Initialize the SPI communication with the device. diff --git a/drivers/frequency/adf4350/adf4350.c b/drivers/frequency/adf4350/adf4350.c index 7d1ac6344ae..4185c31be05 100644 --- a/drivers/frequency/adf4350/adf4350.c +++ b/drivers/frequency/adf4350/adf4350.c @@ -45,6 +45,15 @@ #include #include "adf4350.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4350_device_table[] = { + {.compatible = "adi,adf4350"}, + {} +}; /***************************************************************************//** * @brief Writes 4 bytes of data to ADF4350. diff --git a/drivers/frequency/adf4371/adf4371.c b/drivers/frequency/adf4371/adf4371.c index 1a70497a761..81c54e1a57c 100644 --- a/drivers/frequency/adf4371/adf4371.c +++ b/drivers/frequency/adf4371/adf4371.c @@ -48,6 +48,15 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "adf4371.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4371_device_table[] = { + {.compatible = "adi,adf4371"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/frequency/adf4377/adf4377.c b/drivers/frequency/adf4377/adf4377.c index 4f316c1ade3..c6f384bb33e 100644 --- a/drivers/frequency/adf4377/adf4377.c +++ b/drivers/frequency/adf4377/adf4377.c @@ -45,6 +45,15 @@ #include "no_os_error.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4377_device_table[] = { + {.compatible = "adi,adf4377"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/frequency/adf4382/adf4382.c b/drivers/frequency/adf4382/adf4382.c index 53c0d94d4a5..501d76276fd 100644 --- a/drivers/frequency/adf4382/adf4382.c +++ b/drivers/frequency/adf4382/adf4382.c @@ -43,6 +43,15 @@ #include "no_os_error.h" #include "no_os_print_log.h" #include "no_os_util.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf4382_device_table[] = { + {.compatible = "adi,adf4382"}, + {} +}; /* Charge pump current values expressed in uA */ static const int adf4382_ci_ua[] = { diff --git a/drivers/frequency/adf5355/adf5355.c b/drivers/frequency/adf5355/adf5355.c index fb6a007f243..fcc9f131dd8 100644 --- a/drivers/frequency/adf5355/adf5355.c +++ b/drivers/frequency/adf5355/adf5355.c @@ -48,6 +48,15 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "adf5355.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf5355_device_table[] = { + {.compatible = "adi,adf5355"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/frequency/adf5902/adf5902.c b/drivers/frequency/adf5902/adf5902.c index 38657667c4a..89834b7b24d 100644 --- a/drivers/frequency/adf5902/adf5902.c +++ b/drivers/frequency/adf5902/adf5902.c @@ -46,6 +46,15 @@ #include "no_os_delay.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf5902_device_table[] = { + {.compatible = "adi,adf5902"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/frequency/admv1013/admv1013.c b/drivers/frequency/admv1013/admv1013.c index fbfb70a106d..a0fd5bc7e24 100644 --- a/drivers/frequency/admv1013/admv1013.c +++ b/drivers/frequency/admv1013/admv1013.c @@ -44,6 +44,15 @@ #include "admv1013.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device admv1013_device_table[] = { + {.compatible = "adi,admv1013"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/frequency/admv1014/admv1014.c b/drivers/frequency/admv1014/admv1014.c index b6e2dc3cb29..f5aea808b8f 100644 --- a/drivers/frequency/admv1014/admv1014.c +++ b/drivers/frequency/admv1014/admv1014.c @@ -44,6 +44,15 @@ #include "admv1014.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device admv1014_device_table[] = { + {.compatible = "adi,admv1014"}, + {} +}; /******************************************************************************/ /*************************** Variables Definition *****************************/ diff --git a/drivers/frequency/adrf6780/adrf6780.c b/drivers/frequency/adrf6780/adrf6780.c index 9a721c35296..60c7881910e 100644 --- a/drivers/frequency/adrf6780/adrf6780.c +++ b/drivers/frequency/adrf6780/adrf6780.c @@ -45,6 +45,15 @@ #include "no_os_error.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adrf6780_device_table[] = { + {.compatible = "adi,adrf6780"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/frequency/hmc7044/hmc7044.c b/drivers/frequency/hmc7044/hmc7044.c index 915914d7f89..df554140029 100644 --- a/drivers/frequency/hmc7044/hmc7044.c +++ b/drivers/frequency/hmc7044/hmc7044.c @@ -50,6 +50,16 @@ #include "no_os_clk.h" #include "hmc7044.h" #include "jesd204.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device hmc7044_device_table[] = { + {.compatible = "adi,hmc7043"}, + {.compatible = "adi,hmc7044"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ diff --git a/drivers/frequency/ltc6953/ltc6953.c b/drivers/frequency/ltc6953/ltc6953.c index 10357f85d7e..cf5bf9e04f1 100644 --- a/drivers/frequency/ltc6953/ltc6953.c +++ b/drivers/frequency/ltc6953/ltc6953.c @@ -50,6 +50,15 @@ #include "no_os_error.h" #include "no_os_util.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc6953_device_table[] = { + {.compatible = "adi,ltc6953"}, + {} +}; static const uint8_t LTC6953_LUT[2][LTC6953_NUM_REGADDR] = { { From 87ad8adb86da0f063c7b90b7a22cf2d554e467eb Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:45:06 +0300 Subject: [PATCH 17/29] drivers: gyro: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/gyro/adxrs290/adxrs290.c | 9 +++++++++ drivers/gyro/adxrs453/adxrs453.c | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/drivers/gyro/adxrs290/adxrs290.c b/drivers/gyro/adxrs290/adxrs290.c index 73ca9e7cf3f..8277a845bbc 100644 --- a/drivers/gyro/adxrs290/adxrs290.c +++ b/drivers/gyro/adxrs290/adxrs290.c @@ -46,6 +46,15 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "adxrs290.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxrs290_device_table[] = { + {.compatible = "adi,adxrs290"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/gyro/adxrs453/adxrs453.c b/drivers/gyro/adxrs453/adxrs453.c index 4adf7d137d6..f796d0dd2a1 100644 --- a/drivers/gyro/adxrs453/adxrs453.c +++ b/drivers/gyro/adxrs453/adxrs453.c @@ -43,6 +43,15 @@ #include #include "adxrs453.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adxrs453_device_table[] = { + {.compatible = "adi,adxrs453"}, + {} +}; /***************************************************************************//** * @brief Initializes the ADXRS453 and checks if the device is present. From d98804ba6283a2acbdcea8d0dc5cb19de9ef4e8f Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:46:20 +0300 Subject: [PATCH 18/29] drivers: impedance-analyzer: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/impedance-analyzer/ad5933/ad5933.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/impedance-analyzer/ad5933/ad5933.c b/drivers/impedance-analyzer/ad5933/ad5933.c index 5c0368e4921..0b3e0ae6c0d 100644 --- a/drivers/impedance-analyzer/ad5933/ad5933.c +++ b/drivers/impedance-analyzer/ad5933/ad5933.c @@ -44,6 +44,15 @@ #include "ad5933.h" #include #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5933_device_table[] = { + {.compatible = "adi,ad5933"}, + {} +}; /******************************************************************************/ /************************** Constants Definitions *****************************/ From be717c3b22d9130803f8f192aa1d4460be8841f4 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:47:11 +0300 Subject: [PATCH 19/29] drivers: imu: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/imu/adis.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/drivers/imu/adis.c b/drivers/imu/adis.c index 8b81608e9ed..f1854803e39 100644 --- a/drivers/imu/adis.c +++ b/drivers/imu/adis.c @@ -49,6 +49,27 @@ #include "no_os_alloc.h" #include "no_os_print_log.h" #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adis1646x_device_table[] = { + {.compatible = "adi,adis16465"}, + {.compatible = "adi,adis16467"}, + {.compatible = "adi,adis16470"}, + {.compatible = "adi,adis16475"}, + {.compatible = "adi,adis16477"}, + {.compatible = "adi,adis16500"}, + {.compatible = "adi,adis16501"}, + {.compatible = "adi,adis16505"}, + {.compatible = "adi,adis16550"}, + {.compatible = "adi,adis16507"}, + {.compatible = "adi,adis16575"}, + {.compatible = "adi,adis16576"}, + {.compatible = "adi,adis16577"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ From 9414785f8aeef8656b270c89b639b3c79cb314ab Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:47:45 +0300 Subject: [PATCH 20/29] drivers: io-expander: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/io-expander/adp5589/adp5589.c | 9 +++++++++ drivers/io-expander/demux_spi/demux_spi.c | 9 +++++++++ drivers/io-expander/ltc4306/ltc4306.c | 9 +++++++++ drivers/io-expander/ltc4332/ltc4332.c | 9 +++++++++ 4 files changed, 36 insertions(+) diff --git a/drivers/io-expander/adp5589/adp5589.c b/drivers/io-expander/adp5589/adp5589.c index 64be4aea4a1..499e8dea0d7 100644 --- a/drivers/io-expander/adp5589/adp5589.c +++ b/drivers/io-expander/adp5589/adp5589.c @@ -43,6 +43,15 @@ #include #include "adp5589.h" // ADP5589 definitions. #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adp5589_device_table[] = { + {.compatible = "adi,adp5589"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/io-expander/demux_spi/demux_spi.c b/drivers/io-expander/demux_spi/demux_spi.c index 7914a244553..e9059f5f9b5 100644 --- a/drivers/io-expander/demux_spi/demux_spi.c +++ b/drivers/io-expander/demux_spi/demux_spi.c @@ -46,6 +46,15 @@ #include "no_os_alloc.h" #include #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device demux_spi_device_table[] = { + {.compatible = "adi,demux-spi"}, + {} +}; /******************************************************************************/ /**************************** Types Definitions *******************************/ diff --git a/drivers/io-expander/ltc4306/ltc4306.c b/drivers/io-expander/ltc4306/ltc4306.c index d61dcb5a8c1..9c06cae5012 100644 --- a/drivers/io-expander/ltc4306/ltc4306.c +++ b/drivers/io-expander/ltc4306/ltc4306.c @@ -47,6 +47,15 @@ #include "no_os_error.h" #include "no_os_alloc.h" #include "ltc4306.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc4306_device_table[] = { + {.compatible = "adi,ltc4306"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/io-expander/ltc4332/ltc4332.c b/drivers/io-expander/ltc4332/ltc4332.c index fdc269ed9a8..a5faead72f4 100644 --- a/drivers/io-expander/ltc4332/ltc4332.c +++ b/drivers/io-expander/ltc4332/ltc4332.c @@ -46,6 +46,15 @@ #include "no_os_alloc.h" #include #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc4332_device_table[] = { + {.compatible = "adi,ltc4332"}, + {} +}; /******************************************************************************/ /**************************** Types Definitions *******************************/ From fccba61c4a794b6198ddee5a33bcab8d57f1eb75 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:48:39 +0300 Subject: [PATCH 21/29] drivers: io-link: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/io-link/max22516/max22516.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/io-link/max22516/max22516.c b/drivers/io-link/max22516/max22516.c index b1da5356106..d00e6f422a6 100644 --- a/drivers/io-link/max22516/max22516.c +++ b/drivers/io-link/max22516/max22516.c @@ -45,6 +45,15 @@ #include "no_os_delay.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max22516_device_table[] = { + {.compatible = "adi,max22516"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ From ad94a5ab1cff145fb52fba4b4d9de68a1333c508 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:49:27 +0300 Subject: [PATCH 22/29] drivers: meter: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/meter/ade9113/ade9113.c | 9 +++++++++ drivers/meter/ade9430/ade9430.c | 9 +++++++++ 2 files changed, 18 insertions(+) diff --git a/drivers/meter/ade9113/ade9113.c b/drivers/meter/ade9113/ade9113.c index c7ff8d300d5..8a766ca281f 100644 --- a/drivers/meter/ade9113/ade9113.c +++ b/drivers/meter/ade9113/ade9113.c @@ -50,6 +50,15 @@ #include "no_os_crc8.h" #include "no_os_crc16.h" #include "no_os_print_log.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ade9113_device_table[] = { + {.compatible = "adi,ade9113"}, + {} +}; NO_OS_DECLARE_CRC8_TABLE(ade9113_crc8); NO_OS_DECLARE_CRC16_TABLE(ade9113_crc16); diff --git a/drivers/meter/ade9430/ade9430.c b/drivers/meter/ade9430/ade9430.c index b03c3442453..76fbebc9bdf 100644 --- a/drivers/meter/ade9430/ade9430.c +++ b/drivers/meter/ade9430/ade9430.c @@ -46,6 +46,15 @@ #include "no_os_delay.h" #include "no_os_units.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ade9430_device_table[] = { + {.compatible = "adi,ade9430"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ From c1d0dffb7828d7e0022064ded20bb971a03befce Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:51:28 +0300 Subject: [PATCH 23/29] drivers: mux: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/mux/adgs1408/adgs1408.c | 10 ++++++++++ drivers/mux/adgs5412/adgs5412.c | 17 +++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/drivers/mux/adgs1408/adgs1408.c b/drivers/mux/adgs1408/adgs1408.c index e9c2d42e481..4c9ec4806b4 100644 --- a/drivers/mux/adgs1408/adgs1408.c +++ b/drivers/mux/adgs1408/adgs1408.c @@ -46,6 +46,16 @@ #include "adgs1408.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adgs1408_device_table[] = { + {.compatible = "adi,adgs1408"}, + {.compatible = "adi,adgs1409"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ diff --git a/drivers/mux/adgs5412/adgs5412.c b/drivers/mux/adgs5412/adgs5412.c index 6ed61d1dd31..13b3376e340 100644 --- a/drivers/mux/adgs5412/adgs5412.c +++ b/drivers/mux/adgs5412/adgs5412.c @@ -45,6 +45,23 @@ #include "adgs5412.h" #include "no_os_error.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adgs1408_device_table[] = { + {.compatible = "adi,adgs1208"}, + {.compatible = "adi,adgs1209"}, + {.compatible = "adi,adgs1212"}, + {.compatible = "adi,adgs1408"}, + {.compatible = "adi,adgs1409"}, + {.compatible = "adi,adgs1412"}, + {.compatible = "adi,adgs5412"}, + {.compatible = "adi,adgs1612"}, + {.compatible = "adi,adgs5414"}, + {} +}; /******************************************************************************/ /************************** Functions Implementation **************************/ From 9d1d348ec007a9c3b603c6700aeba4a53a59dd75 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 01:52:29 +0300 Subject: [PATCH 24/29] drivers: net: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/net/adin1110/adin1110.c | 10 ++++++++++ drivers/net/adin1300.c | 9 +++++++++ drivers/net/max24287.c | 9 +++++++++ drivers/net/mdio_bitbang.c | 9 +++++++++ 4 files changed, 37 insertions(+) diff --git a/drivers/net/adin1110/adin1110.c b/drivers/net/adin1110/adin1110.c index 1487d6114a7..f13f8b0fd8c 100644 --- a/drivers/net/adin1110/adin1110.c +++ b/drivers/net/adin1110/adin1110.c @@ -47,6 +47,16 @@ #include "no_os_crc8.h" #include "no_os_delay.h" #include "no_os_util.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adin1110_device_table[] = { + {.compatible = "adi,adin1110"}, + {.compatible = "adi,adin2111"}, + {} +}; #define ADIN1110_CRC_POLYNOMIAL 0x7 diff --git a/drivers/net/adin1300.c b/drivers/net/adin1300.c index c492040b4d1..d9aeb9902e4 100644 --- a/drivers/net/adin1300.c +++ b/drivers/net/adin1300.c @@ -5,6 +5,15 @@ #include "no_os_gpio.h" #include "mdio_bitbang.h" #include "adin1300.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adin1300_device_table[] = { + {.compatible = "adi,adin1300"}, + {} +}; int adin1300_init(struct adin1300_desc **dev, struct adin1300_init_param *param) { diff --git a/drivers/net/max24287.c b/drivers/net/max24287.c index 6475ecd6da8..124757ed9b0 100644 --- a/drivers/net/max24287.c +++ b/drivers/net/max24287.c @@ -5,6 +5,15 @@ #include "no_os_gpio.h" #include "mdio_bitbang.h" #include "max24287.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device max24287_device_table[] = { + {.compatible = "adi,max24287"}, + {} +}; int max24287_init(struct max24287_desc **dev, struct max24287_init_param *param) { diff --git a/drivers/net/mdio_bitbang.c b/drivers/net/mdio_bitbang.c index 4d19afb2c64..5523b49e9d6 100644 --- a/drivers/net/mdio_bitbang.c +++ b/drivers/net/mdio_bitbang.c @@ -43,6 +43,15 @@ #include "no_os_gpio.h" #include "no_os_mdio.h" #include "mdio_bitbang.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device mdio_bitbang_device_table[] = { + {.compatible = "adi,mdio-bitbang"}, + {} +}; struct mdio_bitbang_extra { struct no_os_gpio_desc *mdc; From 38966cf2ec9d30f339d14d1c126b5078f162eee0 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 02:03:09 +0300 Subject: [PATCH 25/29] drivers: photo-electronic: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/photo-electronic/adpd188/adpd188.c | 11 +++++++++++ drivers/photo-electronic/adpd410x/adpd410x.c | 10 ++++++++++ 2 files changed, 21 insertions(+) diff --git a/drivers/photo-electronic/adpd188/adpd188.c b/drivers/photo-electronic/adpd188/adpd188.c index 89ff28836fb..72a16bbc577 100644 --- a/drivers/photo-electronic/adpd188/adpd188.c +++ b/drivers/photo-electronic/adpd188/adpd188.c @@ -46,6 +46,17 @@ #include "no_os_error.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adpd188_device_table[] = { + {.compatible = "adi,adpd188bi"}, + {.compatible = "adi,adpd1080"}, + {.compatible = "adi,adpd1081"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ diff --git a/drivers/photo-electronic/adpd410x/adpd410x.c b/drivers/photo-electronic/adpd410x/adpd410x.c index 8126fdc6303..cb2b2347680 100644 --- a/drivers/photo-electronic/adpd410x/adpd410x.c +++ b/drivers/photo-electronic/adpd410x/adpd410x.c @@ -47,6 +47,16 @@ #include "no_os_util.h" #include "no_os_alloc.h" #include "adpd410x.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adpd410x_device_table[] = { + {.compatible = "adi,adpd4100"}, + {.compatible = "adi,adpd4101"}, + {} +}; /******************************************************************************/ /************************ Functions Definitions *******************************/ From dccf2d221bdcce04b24c993d0359d2e311d6a40b Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 02:04:40 +0300 Subject: [PATCH 26/29] drivers: potentiometer: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/potentiometer/ad5110/ad5110.c | 11 +++++++++++ drivers/potentiometer/ad525x/ad525x.c | 15 +++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/drivers/potentiometer/ad5110/ad5110.c b/drivers/potentiometer/ad5110/ad5110.c index 991964ee061..2dc77fc6146 100644 --- a/drivers/potentiometer/ad5110/ad5110.c +++ b/drivers/potentiometer/ad5110/ad5110.c @@ -44,6 +44,17 @@ #include #include "ad5110.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad5110_device_table[] = { + {.compatible = "adi,ad5110"}, + {.compatible = "adi,ad5111"}, + {.compatible = "adi,ad5112"}, + {} +}; /***************************************************************************//** * @brief Initializes the communication with the device. diff --git a/drivers/potentiometer/ad525x/ad525x.c b/drivers/potentiometer/ad525x/ad525x.c index 7d3102aec9a..c5570b7f07a 100644 --- a/drivers/potentiometer/ad525x/ad525x.c +++ b/drivers/potentiometer/ad525x/ad525x.c @@ -44,6 +44,21 @@ #include #include "ad525x.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad525x_device_table[] = { + {.compatible = "adi,ad5232"}, + {.compatible = "adi,ad5235"}, + {.compatible = "adi,adn2850"}, + {.compatible = "adi,ad5252"}, + {.compatible = "adi,ad5251"}, + {.compatible = "adi,ad5254"}, + {.compatible = "adi,ad5253"}, + {} +}; #define MSB_BYTE_MASK 0xFF00 #define LSB_BYTE_MASK 0x00FF From f2f33d8f49f23257a86da9859b681afa48802180 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 10:46:21 +0300 Subject: [PATCH 27/29] drivers: power: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/power/adp1050/adp1050.c | 9 +++++++++ drivers/power/ltc2992/ltc2992.c | 10 ++++++++++ drivers/power/ltc3337/ltc3337.c | 8 ++++++++ drivers/power/ltc3350/ltc3350.c | 10 ++++++++++ drivers/power/ltc4296/ltc4296.c | 9 +++++++++ 5 files changed, 46 insertions(+) diff --git a/drivers/power/adp1050/adp1050.c b/drivers/power/adp1050/adp1050.c index 42f2bfff3f9..e5a87ce17d2 100644 --- a/drivers/power/adp1050/adp1050.c +++ b/drivers/power/adp1050/adp1050.c @@ -42,6 +42,15 @@ #include "no_os_alloc.h" #include "no_os_delay.h" #include "no_os_error.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adp1050_device_table[] = { + {.compatible = "adi,adp1050"}, + {} +}; /** * @brief Send command byte/word to ADP1050 diff --git a/drivers/power/ltc2992/ltc2992.c b/drivers/power/ltc2992/ltc2992.c index bf3446e2fb7..b62e0dc5cfc 100644 --- a/drivers/power/ltc2992/ltc2992.c +++ b/drivers/power/ltc2992/ltc2992.c @@ -51,6 +51,16 @@ #include "ltc2992.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc2992_device_table[] = { + {.compatible = "adi,ltc2992"}, + {} +}; + static const uint32_t sense_mv_lsb[2] = {25, 400}; static const uint32_t dsense_nv_lsb[2] = {12500, 200000}; static const uint32_t gpio_uv_lsb[2] = {500, 8000}; diff --git a/drivers/power/ltc3337/ltc3337.c b/drivers/power/ltc3337/ltc3337.c index 6924f856762..3d704aa49ff 100644 --- a/drivers/power/ltc3337/ltc3337.c +++ b/drivers/power/ltc3337/ltc3337.c @@ -41,7 +41,15 @@ #include #include "ltc3337.h" #include "no_os_alloc.h" +#include "no_os_device.h" +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc3337_device_table[] = { + {.compatible = "adi,ltc3337"}, + {} +}; /** * Structure supporting the iPeak lookup table diff --git a/drivers/power/ltc3350/ltc3350.c b/drivers/power/ltc3350/ltc3350.c index be8c7eb2424..73ee47e87c5 100644 --- a/drivers/power/ltc3350/ltc3350.c +++ b/drivers/power/ltc3350/ltc3350.c @@ -53,6 +53,16 @@ #include "ltc3350.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc3337_device_table[] = { + {.compatible = "adi,ltc3337"}, + {} +}; + /***************************************************************************//** * @brief Initializes the communication peripheral and checks if the LTC3350 * part is present. diff --git a/drivers/power/ltc4296/ltc4296.c b/drivers/power/ltc4296/ltc4296.c index 53f7a06dd9d..3d7843e0ff6 100644 --- a/drivers/power/ltc4296/ltc4296.c +++ b/drivers/power/ltc4296/ltc4296.c @@ -47,6 +47,15 @@ #include "no_os_delay.h" #include "no_os_print_log.h" #include "no_os_util.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ltc4296_device_table[] = { + {.compatible = "adi,ltc4296"}, + {} +}; /******************************************************************************/ /********************** Macros and Constants Definitions **********************/ From 24af132b462d63babf7791dcee1196eda0c1399b Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 10:47:04 +0300 Subject: [PATCH 28/29] drivers: resolver: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/resolver/ad2s1210/ad2s1210.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/resolver/ad2s1210/ad2s1210.c b/drivers/resolver/ad2s1210/ad2s1210.c index c6faef738e1..45568424751 100644 --- a/drivers/resolver/ad2s1210/ad2s1210.c +++ b/drivers/resolver/ad2s1210/ad2s1210.c @@ -44,6 +44,15 @@ #include "no_os_print_log.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad2s1210_device_table[] = { + {.compatible = "adi,ad2s1210"}, + {} +}; static int ad2s1210_set_mode_pins(struct ad2s1210_dev *dev, enum ad2s1210_mode mode); From b7325e936ce35a60e693e7a3c5539b88ed5d1879 Mon Sep 17 00:00:00 2001 From: Dragos Bogdan Date: Tue, 13 Aug 2024 10:47:52 +0300 Subject: [PATCH 29/29] drivers: rf-transceiver: Make use of no_os_device.h Declare a device driver compatibility list for each driver. Signed-off-by: Dragos Bogdan --- drivers/rf-transceiver/ad9361/ad9361_api.c | 11 +++++++++++ drivers/rf-transceiver/adf7023/adf7023.c | 9 +++++++++ drivers/rf-transceiver/hmc630x/hmc630x.c | 10 ++++++++++ drivers/rf-transceiver/madura/adrv9025.c | 9 +++++++++ drivers/rf-transceiver/navassa/adrv9002.c | 9 +++++++++ 5 files changed, 48 insertions(+) diff --git a/drivers/rf-transceiver/ad9361/ad9361_api.c b/drivers/rf-transceiver/ad9361/ad9361_api.c index c4c8161f0f0..4010929951c 100644 --- a/drivers/rf-transceiver/ad9361/ad9361_api.c +++ b/drivers/rf-transceiver/ad9361/ad9361_api.c @@ -51,6 +51,17 @@ #ifndef AXI_ADC_NOT_PRESENT #include "axi_adc_core.h" #include "axi_dac_core.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device ad9361_device_table[] = { + {.compatible = "adi,ad9361"}, + {.compatible = "adi,ad9363"}, + {.compatible = "adi,ad9364"}, + {} +}; /******************************************************************************/ /************************ Constants Definitions *******************************/ diff --git a/drivers/rf-transceiver/adf7023/adf7023.c b/drivers/rf-transceiver/adf7023/adf7023.c index 4aced9871df..7b837a2ada1 100644 --- a/drivers/rf-transceiver/adf7023/adf7023.c +++ b/drivers/rf-transceiver/adf7023/adf7023.c @@ -44,6 +44,15 @@ #include "adf7023_config.h" #include "adf7023.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adf7023_device_table[] = { + {.compatible = "adi,adf7023"}, + {} +}; /******************************************************************************/ /*************************** Macros Definitions *******************************/ diff --git a/drivers/rf-transceiver/hmc630x/hmc630x.c b/drivers/rf-transceiver/hmc630x/hmc630x.c index fda08fee223..06a4b3b1ec9 100644 --- a/drivers/rf-transceiver/hmc630x/hmc630x.c +++ b/drivers/rf-transceiver/hmc630x/hmc630x.c @@ -41,6 +41,16 @@ #include "hmc630x.h" #include "no_os_delay.h" #include "no_os_alloc.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device hmc630x_device_table[] = { + {.compatible = "adi,hmc6300"}, + {.compatible = "adi,hmc6301"}, + {} +}; #define HMC630X_ARRAY_ADDRESS_MASK NO_OS_GENMASK(13, 8) #define HMC630X_RW_MASK NO_OS_BIT(14) diff --git a/drivers/rf-transceiver/madura/adrv9025.c b/drivers/rf-transceiver/madura/adrv9025.c index e3fb7cf8be3..f7085c558a5 100644 --- a/drivers/rf-transceiver/madura/adrv9025.c +++ b/drivers/rf-transceiver/madura/adrv9025.c @@ -17,6 +17,15 @@ #include "jesd204.h" #include #include +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adrv9025_device_table[] = { + {.compatible = "adi,adrv9025"}, + {} +}; static int __adrv9025_dev_err(struct adrv9025_rf_phy *phy, const char *function, const int line) diff --git a/drivers/rf-transceiver/navassa/adrv9002.c b/drivers/rf-transceiver/navassa/adrv9002.c index bf36d6f2278..c50e6ae5df4 100644 --- a/drivers/rf-transceiver/navassa/adrv9002.c +++ b/drivers/rf-transceiver/navassa/adrv9002.c @@ -81,6 +81,15 @@ #include "adi_adrv9001_utilities.h" #include "adi_adrv9001_version.h" #include "adi_common_error_types.h" +#include "no_os_device.h" + +/** + * @brief Device driver compatibility list. + */ +const struct no_os_device adrv9002_device_table[] = { + {.compatible = "adi,adrv9002"}, + {} +}; /* gpio0 starts at 1 in the API enum */ #define ADRV9002_DGPIO_MIN (ADI_ADRV9001_GPIO_DIGITAL_00 - 1)