RE: [PATCH v2 11/14] dt-bindings: pinctrl: realtek: Add RTD1625 pinctrl binding
From: Yu-Chun Lin [林祐君] <eleanor.lin@realtek.com>
Date: 2026-03-09 09:37:42
Also in:
linux-devicetree, linux-gpio, lkml
On Fri, Mar 06, 2026 at 03:52:41PM +0800, Yu-Chun Lin wrote:quoted
+ input-voltage-microvolt: + description: | + Select the input receiver voltage domain for the pin. + Valid arguments are: + - 1800000: 1.8V input logic level + - 3300000: 3.3V input logic level + enum: [1800000, 3300000] + + drive-push-pull: true + + power-source: + description: | + Valid arguments are described as below: + 0: power supply of 1.8V + 1: power supply of 3.3V + enum: [0, 1]Isn't this duplicating input-voltage-microvolt? Where do you use it in the driver?
No, this is not a duplication. power-source is used to configure the output voltage, whereas input-voltage-microvolt controls the input logic thresholds. Both are handled in rtd_pconf_parse_conf(), which is called by rtd_pin_config_set().
quoted
+ + slew-rate: + description: | + Valid arguments are described as below: + 0: ~1ns falling time + 1: ~10ns falling time + 2: ~20ns falling time + 3: ~30ns falling time + enum: [0, 1, 2, 3]If you have specific values, why not using 1/10/20/30?
I will use specific values in v3.
quoted
+ + realtek,drive-strength-p: + description: | + Some of pins can be driven using the P-MOS and N-MOStransistor toquoted
+ achieve finer adjustments. The block-diagram representation isasquoted
+ follows: + VDD + | + ||--+ + +-----o|| P-MOS-FET + | ||--+ + IN --+ +----- out + | ||--+ + +------|| N-MOS-FET + ||--+ + | + GND + The driving strength of the P-MOS/N-MOS transistors impactsthequoted
+ waveform's rise/fall times. Greater driving strength results in + shorter rise/fall times. Each P-MOS and N-MOS transistoroffersquoted
+ 8 configurable levels (0 to 7), with higher values indicating + greater driving strength, contributing to achieving the desired + speed. + + The realtek,drive-strength-p is used to control the drivingstrengthquoted
+ of the P-MOS output. + + This value is not a simple count of transistors. Instead, it + represents a weighted configuration. There is a base driving + capability (even at value 0), and each bit adds a differentweight toquoted
+ the total strength. The resulting current is non-linear and varies + significantly based on the IO voltage (1.8V vs 3.3V) and thespecificquoted
+ pad group. + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 7 + + realtek,drive-strength-n: + description: | + Similar to the realtek,drive-strength-p, therealtek,drive-strength-nquoted
+ is used to control the driving strength of the N-MOS output. + + This property uses the same weighted configuration logicwhere valuesquoted
+ 0-7 represent non-linear strength adjustments rather than atransistorquoted
+ count. + + Higher values indicate greater driving strength, resulting inshorterquoted
+ fall times. + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 7 + + realtek,pulse-width-adjust: + description: | + An integer describing the level to adjust the output pulse width,itquoted
+ provides a fixed nanosecond-level adjustment to therising/fallingquoted
+ edges of an existing signal. It is used for Signal Integrity tuning + (adding/subtracting delay to fine-tune the high/low duration),ratherquoted
+ than generating a specific PWM frequency. + + Valid arguments are described as below: + 0: 0ns + 2: + 0.25ns + 3: + 0.5ns + 4: -0.25ns + 5: -0.5ns + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 2, 3, 4, 5] + + realtek,high-vil-microvolt: + description: | + The threshold value for the input receiver's LOW recognition(VIL).quoted
+ + This property is used to address specific HDMI I2C compatibility + issues where some sinks (TVs) have weak pull-down capabilitiesandquoted
+ fail to pull the bus voltage below the standard VIL threshold + (~0.7V). + + Setting this property to 1100000 (1.1V) enables a specializedinputquoted
+ receiver mode that raises the effective VIL threshold to improve + detection. + enum: [1100000] + + required: + - pins + + additionalProperties: false + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + pinctrl@4e000 { + compatible = "realtek,rtd1625-iso-pinctrl"; + reg = <0x4e000 0x130>; + + emmc-hs200-pins { + pins = "emmc_clk", + "emmc_cmd", + "emmc_data_0", + "emmc_data_1", + "emmc_data_2", + "emmc_data_3", + "emmc_data_4", + "emmc_data_5", + "emmc_data_6", + "emmc_data_7"; + function = "emmc"; + realtek,drive-strength-p = <0x2>; + realtek,drive-strength-n = <0x2>;These are not hex, but simple decimals
I will change them to <2>. Best Regards, Yu-Chun
quoted
+ }; + + i2c-0-pins { + pins = "gpio_12", + "gpio_13"; + function = "i2c0"; + drive-strength = <4>; + }; + }; -- 2.34.1