add support for AD3532R/AD3532 DAC#3177
Open
kseerp wants to merge 2 commits intoanalogdevicesinc:mainfrom
Open
add support for AD3532R/AD3532 DAC#3177kseerp wants to merge 2 commits intoanalogdevicesinc:mainfrom
kseerp wants to merge 2 commits intoanalogdevicesinc:mainfrom
Conversation
The AD3532R/AD3532 is a 16-channel version of the AD3530R/AD3530. This adds compatible strings for the AD3532R/AD3532. Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com>
The AD3532R/AD3532 is a 16-channel, 16-bit voltage output DAC. These devices use a dual-bank register architecture with base addresses at 0x1000 (bank 0) and 0x3000 (bank 1). Channels 0-7 are mapped to bank 0, while channels 8-15 are mapped to bank 1. To support the dual-bank architecture, a new ad3532r_set_dac_powerdown() function handles the 4-register powerdown mapping, where channels 0-7 use registers 0x1020/0x1021 and channels 8-15 use 0x3020/0x3021. The AD3532 variants also implement different powerdown modes (1kΩ, 10kΩ, three-state) compared to the AD3530/31 devices (1kΩ, 7.7kΩ, 32kΩ). The ad3530r_normal_op_mode() and ad3530r_setup() functions have been extended to configure dual-bank registers for reference control and output settings. New helper functions ad3532r_input_ch_reg() and ad3532r_trigger_sw_ldac_reg() provide bank-aware register addressing based on the channel number. Dynamic channel allocation is now used with chip-specific ext_info assignment to handle the different powerdown mode enums per variant. Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Description
These parts are unreleased but have BU approval to upstream the driver so it can be ready prior to RTS.
The AD3532R/AD3532 is a 16-channel, 16-bit voltage output DAC. These
devices use a dual-bank register architecture with base addresses at
0x1000 (bank 0) and 0x3000 (bank 1). Channels 0-7 are mapped to bank 0,
while channels 8-15 are mapped to bank 1.
Key Changes:
ad3532r_set_dac_powerdown()to handle 4-register powerdownmapping (
0x1020/0x1021for channels 0-7,0x3020/0x3021for 8-15)(differs from AD3530/31's 1kΩ, 7.7kΩ, 32kΩ modes)
ad3530r_normal_op_mode()andad3530r_setup()to configuredual-bank registers for reference control and output settings
ad3532r_input_ch_reg()andad3532r_trigger_sw_ldac_reg()forbank-aware register addressing
handle different powerdown mode enums per variant.
PR Type
PR Checklist