Message ID | 20240731-sg2002-adc-v3-0-5ac40a518c0a@bootlin.com (mailing list archive) |
---|---|
Headers | show |
Series | Add SARADC support on Sophgo SoC | expand |
Please add the code name of the specific chip product to the patch/commit/email title for easy distinguish. Sophgo has several product series, not just cv18xx, for example, sg2042 etc, and there may be others in the future. You can refer to this example [1] [1]: https://lore.kernel.org/linux-riscv/IA1PR20MB4953C1876484E149AA390DD5BB1D2@IA1PR20MB4953.namprd20.prod.outlook.com/ Thanks, Chen On 2024/7/31 20:24, Thomas Bonnefille wrote: > This patchset adds initial ADC support for Sophgo SoC. This driver can > work with or without interrupt and in "Active" and "No-Die" domains > depending on if a clock is provided. > > Link: https://github.com/sophgo/sophgo-doc/releases/download/sg2002-trm-v1.0/sg2002_trm_en.pdf > > Signed-off-by: Thomas Bonnefille <thomas.bonnefille@bootlin.com> > --- > Changes in v3: > - Subdivide default cycle configuration into multiple elementary > configurations > - Fix formatting in the driver > - Use devm_mutex_init > - Use devm_clk_get_enabled now because the clock is no more optional > - Remove handling of Saradc in No-Die Domain as RTC isn't implemented yet > - Use cv1800-saradc as default compatible instead of a wildcard > - Link to v2: https://lore.kernel.org/r/20240705-sg2002-adc-v2-0-83428c20a9b2@bootlin.com > > Changes in v2: > - Drop modifications in MAINTAINERS file > - Rename the ADC from "sophgo-adc" to "sophgo-cv18xx-adc" to avoid > conflict with ADCs available in future Sophgo SoCs. > - Reorder nodes in DT to match DTS coding style > - Switch from including <linux/of.h> to <linux/mod_devicetable.h> > - Use scoped_guard instead of mutex_lock/unlock > - Check IRQ Status in the handler > - Change IIO device name > - Use devm_clk_get_optional_enabled instead of a clock variable > - Init completion before the IRQ request > - Removed unnecessary iio_info structure in the private data of the > driver > - Use SoC specific compatible in the bindings and device trees > - Link to v1: https://lore.kernel.org/r/20240702-sg2002-adc-v1-0-ac66e076a756@bootlin.com > > --- > Thomas Bonnefille (3): > dt-bindings: iio: adc: sophgo,cv18xx-saradc.yaml: Add Sophgo SARADC binding documentation > iio: adc: sophgo-saradc: Add driver for Sophgo SARADC > riscv: dts: sophgo: Add SARADC description > > .../bindings/iio/adc/sophgo,cv18xx-saradc.yaml | 48 +++++ > arch/riscv/boot/dts/sophgo/cv18xx.dtsi | 8 + > drivers/iio/adc/Kconfig | 10 + > drivers/iio/adc/Makefile | 1 + > drivers/iio/adc/sophgo-cv18xx-adc.c | 206 +++++++++++++++++++++ > 5 files changed, 273 insertions(+) > --- > base-commit: 8400291e289ee6b2bf9779ff1c83a291501f017b > change-id: 20240527-sg2002-adc-924b862cd3f2 > > Best regards,
This patchset adds initial ADC support for Sophgo SoC. This driver can work with or without interrupt and in "Active" and "No-Die" domains depending on if a clock is provided. Link: https://github.com/sophgo/sophgo-doc/releases/download/sg2002-trm-v1.0/sg2002_trm_en.pdf Signed-off-by: Thomas Bonnefille <thomas.bonnefille@bootlin.com> --- Changes in v3: - Subdivide default cycle configuration into multiple elementary configurations - Fix formatting in the driver - Use devm_mutex_init - Use devm_clk_get_enabled now because the clock is no more optional - Remove handling of Saradc in No-Die Domain as RTC isn't implemented yet - Use cv1800-saradc as default compatible instead of a wildcard - Link to v2: https://lore.kernel.org/r/20240705-sg2002-adc-v2-0-83428c20a9b2@bootlin.com Changes in v2: - Drop modifications in MAINTAINERS file - Rename the ADC from "sophgo-adc" to "sophgo-cv18xx-adc" to avoid conflict with ADCs available in future Sophgo SoCs. - Reorder nodes in DT to match DTS coding style - Switch from including <linux/of.h> to <linux/mod_devicetable.h> - Use scoped_guard instead of mutex_lock/unlock - Check IRQ Status in the handler - Change IIO device name - Use devm_clk_get_optional_enabled instead of a clock variable - Init completion before the IRQ request - Removed unnecessary iio_info structure in the private data of the driver - Use SoC specific compatible in the bindings and device trees - Link to v1: https://lore.kernel.org/r/20240702-sg2002-adc-v1-0-ac66e076a756@bootlin.com --- Thomas Bonnefille (3): dt-bindings: iio: adc: sophgo,cv18xx-saradc.yaml: Add Sophgo SARADC binding documentation iio: adc: sophgo-saradc: Add driver for Sophgo SARADC riscv: dts: sophgo: Add SARADC description .../bindings/iio/adc/sophgo,cv18xx-saradc.yaml | 48 +++++ arch/riscv/boot/dts/sophgo/cv18xx.dtsi | 8 + drivers/iio/adc/Kconfig | 10 + drivers/iio/adc/Makefile | 1 + drivers/iio/adc/sophgo-cv18xx-adc.c | 206 +++++++++++++++++++++ 5 files changed, 273 insertions(+) --- base-commit: 8400291e289ee6b2bf9779ff1c83a291501f017b change-id: 20240527-sg2002-adc-924b862cd3f2 Best regards,