pdx213-temp/notes/components.md
2026-10-02 15:39:03 +02:00

191 lines
8.6 KiB
Markdown

# Downstream.. things
I really don't know what the stuff collected here is called.
## Table with a lot of hex numbers
| channel | downstream | upstream |
| ------- | ---------- | -------- |
| 0x35 0x00 | pm7250b-ibat-lvl0 | |
| 0x35 0x01 | pm7250b-ibat-lvl1 | |
| 0x35 0x02 | pm7250b-vbat-lvl0 | |
| 0x35 0x03 | pm7250b-vbat-lvl1 | |
| 0x35 0x04 | pm7250b-vbat-lvl2 | |
| 0x35 0x05 | pm7250b-bcl-lvl0 | |
| 0x35 0x06 | pm7250b-bcl-lvl1 | |
| 0x35 0x07 | pm7250b-bcl-lvl2 | |
| 0x38 0x02 | pm6150l-vph-lvl0 | |
| 0x38 0x03 | pm6150l-vph-lvl1 | |
| 0x38 0x04 | pm6150l-vph-lvl2 | |
| 0x38 0x05 | pm6150l-bcl-lvl0 | |
| 0x38 0x06 | pm6150l-bcl-lvl1 | |
| 0x38 0x07 | pm6150l-bcl-lvl2 | |
| 0x39 0x00 | modem-lte-sub6-pa1 | |
| 0x39 0x01 | modem-lte-sub6-pa2 | |
| 0x39 0x05 | modem-0-usr | |
| 0x39 0x06 | modem-mmw0-usr | |
| 0x39 0x07 | modem-mmw1-usr | |
| 0x39 0x08 | modem-mmw2-usr | |
| 0x39 0x09 | modem-mmw3-usr | |
| 0x39 0x0a | modem-skin-usr | |
| 0x39 0x0d | modem-streamer-usr | |
| 0x39 0x0e | modem-mmw0-mod-usr | |
| 0x39 0x0f | modem-mmw1-mod-usr | |
| 0x39 0x10 | modem-mmw2-mod-usr | |
| 0x39 0x11 | modem-mmw3-mod-usr | |
| 0x39 0x17 | modem-wifi-usr | |
| 0x39 0x18 | modem-ambient-usr | |
| 0x39 0x19 | modem-1-usr | |
| 0x39 0x1a | modem-mmw-pa1-usr | |
| 0x39 0x1b | modem-mmw-pa2-usr | |
| 0x39 0x1c | modem-mmw-pa3-usr | |
| 0x3a 0x00 | aoss-0-usr | |
| 0x3a 0x01 | cpu-0-0-step | |
| 0x3a 0x01 | cpu-0-0-usr | |
| 0x3a 0x02 | cpu-0-1-step | |
| 0x3a 0x02 | cpu-0-1-usr | |
| 0x3a 0x03 | cpu-0-2-step | |
| 0x3a 0x03 | cpu-0-2-usr | |
| 0x3a 0x04 | cpu-0-3-step | |
| 0x3a 0x04 | cpu-0-3-usr | |
| 0x3a 0x05 | cpu-0-4-step | |
| 0x3a 0x05 | cpu-0-4-usr | |
| 0x3a 0x06 | cpu-0-5-step | |
| 0x3a 0x06 | cpu-0-5-usr | |
| 0x3a 0x07 | cpuss-0-usr | |
| 0x3a 0x08 | cpuss-1-usr | |
| 0x3a 0x09 | cpu-1-0-step | |
| 0x3a 0x09 | cpu-1-0-usr | |
| 0x3a 0x0a | cpu-1-1-step | |
| 0x3a 0x0a | cpu-1-1-usr | |
| 0x3a 0x0b | cpu-1-2-step | |
| 0x3a 0x0b | cpu-1-2-usr | |
| 0x3a 0x0c | cpu-1-3-step | |
| 0x3a 0x0c | cpu-1-3-usr | |
| 0x3a 0x0d | gpuss-0-usr | |
| 0x3a 0x0e | gpuss-1-usr | |
| 0x3a 0x10 | min-temp-0-lowc | |
| 0x3a 0x10 | min-temp-0-lowf | |
| 0x3b 0x00 | aoss-1-usr | |
| 0x3b 0x01 | cwlan-usr | |
| 0x3b 0x02 | audio-usr | |
| 0x3b 0x03 | ddr-usr | |
| 0x3b 0x04 | q6-hvx-step | |
| 0x3b 0x04 | q6-hvx-usr | |
| 0x3b 0x05 | camera-usr | |
| 0x3b 0x06 | mdm-core-0-usr | |
| 0x3b 0x07 | mdm-core-1-usr | |
| 0x3b 0x08 | mdm-vec-usr | |
| 0x3b 0x09 | mdm-scl-usr | |
| 0x3b 0x0a | npu-step | |
| 0x3b 0x0a | npu-usr | |
| 0x3b 0x0b | video-usr | |
| 0x3b 0x10 | min-temp-1-lowc | |
| 0x3b 0x10 | min-temp-1-lowf | |
| 0x58 0x4d | chg-skin-therm-usr | |
| 0x58 0x4f | conn-therm-usr | |
| 0x59 0x4e | msm-therm-usr | |
| 0x59 0x4e | sdm-skin-therm-usr | |
| 0x59 0x53 | rfc-cam-pa3-usr | |
| 0x5a 0x4d | pa-therm1-usr | pa_therm_1 (not yet added) |
| 0x5a 0x4f | pa-therm0-usr | pa_therm_0 (not yet added) |
| 0x5a 0x54 | camera-therm-usr | downstream calls it camera-therm-usr, probably matches what is rear_cam_flash_therm for FP4? |
| 0x5a 0x55 | quiet-therm-step | quiet_therm (not yet added) |
| 0x5a 0x55 | quiet-therm-usr | quiet_therm (not yet added) |
| 0x5b 0x644 | xo-therm-usr | |
### even more hex numbers
| hex | name |
| --- | ---- |
| 0x33 | pm6350_tz |
| 0x34 | pm7250b-tz |
| 0x36 | soc |
| 0x37 | pm6150l-tz |
## that tm thing with "@"
Someone really needs to tell me how those things are called, not knowing the right term makes it all much more complicated.
Also, why are there multiple adc_tm@3400 in the downstream Device Tree..?
Example:
```
adc_tm@3400 {
compatible = "qcom,adc-tm7";
reg = <0x3400>;
interrupts = <0x06 0x34 0x00 0x01>;
interrupt-names = "thr-int-en";
#address-cells = <0x01>;
#size-cells = <0x00>;
#thermal-sensor-cells = <0x01>;
io-channels = <0x7f 0x644>;
phandle = <0x5b>;
xo_therm {
reg = <0x644>;
qcom,ratiometric;
qcom,hw-settle-time = <0xc8>;
};
};
```
and
```
adc_tm@3400 {
compatible = "qcom,adc-tm5-iio";
reg = <0x3400 0x100>;
#thermal-sensor-cells = <0x01>;
#address-cells = <0x01>;
#size-cells = <0x00>;
io-channels = <0x7c 0x4e 0x7c 0x53>;
phandle = <0x59>;
msm_therm {
reg = <0x4e>;
qcom,ratiometric;
qcom,hw-settle-time = <0xc8>;
};
rfc_cam_therm {
reg = <0x53>;
qcom,ratiometric;
qcom,hw-settle-time = <0xc8>;
};
};
};
```
The `compatible` string differs. My understanding is that this defines what something is, but how can it be two things at the same time..?
| which tm thing (compatible) | what is listed there |
| -------------- | -------------------- |
| adc_tm@3400 (qcom,adc-tm7) | xo_therm |
| adc_tm@3400 (qcom,adc-tm5-iio) | msm_therm, rfc_cam_therm |
| adc_tm@3500 (qcom,adc-tm5) | charger_skin_therm, conn_therm |
| adc_tm@3500 (qcom,adc-tm5) | pa_therm1, pa_therm0, rear_cam_flash_therm, quiet_therm |
## Components
Some interesting compatible strings in the downstram device tree.
| compatible string | component | bindings file |
| ----------------- | --------- | ------------- |
| awinic,aw882xx_smartpa | audio amplifier | [./Documentation/devicetree/bindings/sound/awinic,aw88395.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/awinic,aw88395.yaml) |
| egistec,et580 | probably a touch sensor, egistec makes those (they have one named ET300, no idea whether that is similar) | n/a |
| foursemi,fs16xx | digital audio amplifier? | another foursemi amp: [./Documentation/devicetree/bindings/sound/foursemi,fs2105s.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/foursemi,fs2105s.yaml) |
| nxp,pn553 | NFC controller | [./Documentation/devicetree/bindings/net/nfc/nxp,nci.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/net/nfc/nxp,nci.yaml) |
| nxp sn1x0-spi | ? (only did a very quick search so far) | |
| qca,wcn3990 | Bluetooth, actually a wcn3991 | [./Documentation/devicetree/bindings/net/bluetooth/qcom,wcn3990-bt.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/net/bluetooth/qcom,wcn3990-bt.yaml) |
| qcom,fsa4480-i2c | USB-C analog audio switch | [./Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/usb/fcs,fsa4480.yaml) |
| qcom,tsens24xx | temperature sensor | ? |
| qcom,vfe-lite170 | camera or camera related | |
| qcom,vfe170_150 | camera or camera related | |
| qcom,wcd937x-codec | audio codec | [./Documentation/devicetree/bindings/sound/qcom,wcd937x.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/qcom,wcd937x.yaml) |
| qcom,wcd937x-slave | audio related | perhaps this [./Documentation/devicetree/bindings/sound/qcom,wcd937x-sdw.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/qcom,wcd937x-sdw.yaml) |
| qcom,wcd938x-codec | audio codec | [./Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/qcom,wcd938x.yaml) |
| qcom,wcd938x-slave | audio related | perhaps this [./Documentation/devicetree/bindings/sound/qcom,wcd938x-sdw.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/sound/qcom,wcd938x-sdw.yaml) |
| rohm,bu520x1nvx | hall sensor | none |
| sony,pn553-pm-ops | NFC controller | [./Documentation/devicetree/bindings/net/nfc/nxp,nci.yaml](https://www.kernel.org/doc/Documentation/devicetree/bindings/net/nfc/nxp,nci.yaml) |