Why would I get two write_raw() calls in an IIO driver?
I'm working on an IIO DAC driver for a LTC1669 single channel DAC. I have the driver mostly working but have an issue when I write to the out_voltage_raw sysfs file. On an oscilloscope I see the output of the DAC briefly go up then it goes back to 0V.
/sys/bus/iio/devices/iio:device1# echo 512 > out_voltage_raw
ltc1669_write_raw: chan:0 val:512 val2:0 mask:0
ltc1669_write: 512 - 00:00:02
ltc1669_write_raw: chan:0 val:0 val2:0 mask:0
ltc1669_write: 0 - 00:00:00
Any ideas why I'm seeing the second write?
Thanks
Answers
-
Never mind. I figured it out.
My I2C write function used by (*write_raw) was returning the result if i2c_master_send(). I assumed that return would be 0 on success, it actually returns the number of bytes written.
Fixed that and now the DAC is set properly.
0 -
Thank you for the post @bigguiness
I have a similar issue here. Could you please elaborate more on this?0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 769 Linux Foundation IT Professional Programs
- 379 Cloud Engineer IT Professional Program
- 175 Advanced Cloud Engineer IT Professional Program
- 75 DevOps IT Professional Program - Discontinued
- 7 DevOps & GitOps IT Professional Program
- 102 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 7 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 16 Cloud & Containers Training
- 2 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 2 Networking Training
- 2 Open Source Best Practice Training
- 4 System Administration Training
- 1 System Engineering Training
- 2 Web & Application Development Training
- 796 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 91 Storage
- 771 Linux Distributions
- 81 Debian
- 68 Fedora
- 23 Linux Mint
- 13 Mageia
- 24 openSUSE
- 151 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 466 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 79 Network Management
- 101 System Management
- 46 Web Management
- 129 Mobile Computing
- 20 Android
- 94 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 402 Off Topic
- 125 Introductions
- 33 Study Material
- 1K Programming and Development
- 310 Kernel Development
- 705 Software Development
- 1K Software
- 410 Applications
- 182 Command Line
- 5 Compiling/Installing
- 70 Games
- 318 Installation
- Archived
- 183 Small Talk
- 2 LFD140 Class Forum
- 1.4K LFS258 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)