mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-11-01 09:13:37 +00:00 
			
		
		
		
	Add Toradex Verdin Ivy carrier board support. One notable feature of Ivy
is the analog inputs. These inputs are multiplexed, allowing the same
input to measure either voltage or current. For current measurements,
a GPIO switch enables or disables the shunt resistor. This process is
automatically managed by the Linux kernel using the IIO and MUX
subsystems. Voltage measurement is always enabled, but the voltage
measured by the ADC is scaled by a cascade voltage divider. In the
device tree, the equivalent gain of the voltage divider is used, which
can be calculated as follows:
               ------------
               +          |
                         .-.
                  R1=30K | |
                         | |
                         '-'
                          |-------------------
    Analog Input (AIN)    |                  |
                         .-.                .-.
                  R2=10K | |         R3=30K | |
                         | |                | |
                         '-'                '-'
                          |                  |
                          |                  |--------
                          |                 .-.      +
                          |          R4=10K | |
                          |                 | |      ADC Input (Channels 0 and 1)
                          |                 '-'
               -          |                  |       -
               -----------|                  |--------
                         ===                ===
                         GND                GND
Vin  = Analog Input (AIN)
Vout = ADC Input
Rth  = Thevenin Equiv. Resistance
Vth  = Thevenin Equiv. Voltage
RL   = Load Resistor
R1 = 30K, R2 = 10K, R3 = 30K, R4 = 10K
RL = R4 = 10K
Rth  = (R1 // R2) + R3 = 37500 Ohms
Vth  = (Vin * R2) / (R1 + R2) = Vin/4;
Vout = (Vth * RL)/ (Rth + RL) = Vth/4.75 = Vin/19
Gain = Vout/Vin = 1/19
https://www.toradex.com/products/carrier-board/ivy-carrier-board
Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
		
	
			
		
			
				
	
	
		
			18 lines
		
	
	
	
		
			390 B
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
	
		
			390 B
		
	
	
	
		
			Text
		
	
	
	
	
	
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 | 
						|
/*
 | 
						|
 * Copyright 2024 Toradex
 | 
						|
 */
 | 
						|
 | 
						|
/dts-v1/;
 | 
						|
 | 
						|
#include "imx8mp-verdin.dtsi"
 | 
						|
#include "imx8mp-verdin-wifi.dtsi"
 | 
						|
#include "imx8mp-verdin-ivy.dtsi"
 | 
						|
 | 
						|
/ {
 | 
						|
	model = "Toradex Verdin iMX8M Plus WB on Ivy";
 | 
						|
	compatible = "toradex,verdin-imx8mp-wifi-ivy",
 | 
						|
		     "toradex,verdin-imx8mp-wifi",
 | 
						|
		     "toradex,verdin-imx8mp",
 | 
						|
		     "fsl,imx8mp";
 | 
						|
};
 |