高通学习14--RB5(TODO)

1 RB5基本介绍

RB5 = Qualcomm Robotics RB5,面向工业机器人、AMR、无人机、智能视觉、边缘 AI 的 96Boards 标准开发平台 ,核心 SoM 芯片为QRB5165(骁龙 865 工业机器人定制版),由高通原厂 + 创达 Thundercomm 联合推出,是学习高通 TLMM (Pinctrl)、QUP (GENI 串行总线)、CamX、Hexagon DSP/NPU 最友好的开源参考平台,源码、DTS、硬件手册大量公开,无需企业封闭授权即可入门 BSP 底层。

官方网站:Qualcomm Documentation

创达网站:Qualcomm® 机器人RB5开发套件 - Thundercomm

  • CPU:8 核 Kryo 585(1×A77@2.84 + 3×A77@2.4 + 4×A55@1.8GHz)
  • GPU:Adreno 650,支持 4K 显示渲染
  • AI 引擎(第 5 代):总 15TOPS,Hexagon DSP 四核 HVX + HTA 张量加速器 + NPU230;内置 EVA 专用视觉分析引擎
  • 多媒体:Spectra 480 ISP,同时支持 7 路 CSI 摄像头;Adreno VPU665 4K 编解码;DPU995 驱动三路 4K 显示
  • 内存 / 存储:8GB LPDDR5 PoP + 128GB UFS3.1;支持 MicroSD 扩展
  • 工作温区:工业级 -30℃ ~ +105℃,产品生命周期支持至 2029 年

接口说明:

2 基本操作

查看OS版本

bash 复制代码
sh-5.0# cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.3 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.3 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

查看版本

bash 复制代码
sh-5.0# cat /sys/devices/soc0/soc_id
455

455 对应的物理形态叫 POP(Package-on-Package,堆叠封装)物理结构 :在这种变体中,高通的 QRB5165 处理器(CPU/GPU/NPU 裸片)位于最底层,而 LPDDR5 内存(RAM)芯片直接扣在处理器的头顶上。它们像盖楼一样叠在一起,共用底部的引脚。

查看所有GPIO状态

bash 复制代码
sh-5.0# cat /sys/kernel/debug/pinctrl/cat /sys/kernel/debug/gpio
cat: /sys/kernel/debug/pinctrl/cat: No such file or directory
gpiochip5: GPIOs 278-291, parent: platform/soc:qcom,msm-audio-apr:qcom,q6core-audio:lpi_pinctrl@33c0000, soc:qcom,msm-audio-apr:qcom,q6core-audio:lpi_pinctrl@33c0000:
 gpio0   : in  0 2mA pull down
 gpio1   : in  0 2mA pull down
 gpio2   : in  0 2mA pull down
 gpio3   : in  0 2mA pull down
 gpio4   : in  0 2mA pull down
 gpio5   : in  0 2mA pull down
 gpio6   : in  0 2mA pull down
 gpio7   : in  0 2mA pull down
 gpio8   : out 1 2mA no pull
 gpio9   : in  1 2mA no pull
 gpio10  : in  2 2mA pull down
 gpio11  : in  2 2mA pull down
 gpio12  : in  0 2mA pull down
 gpio13  : in  0 2mA pull down

gpiochip4: GPIOs 292-293, parent: spi/spi0.0, spi0.0, can sleep:

gpiochip3: GPIOs 294-305, parent: platform/c440000.qcom,spmi:qcom,pm8150l@4:pinctrl@c000, c440000.qcom,spmi:qcom,pm8150l@4:pinctrl@c000:
 gpio1 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio2 : out  high normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio3 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio4 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio5 : out  high normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio6 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio7 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio8 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio9 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio10: in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio11: in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio12: in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0

gpiochip2: GPIOs 306-317, parent: platform/c440000.qcom,spmi:qcom,pm8150b@2:pinctrl@c000, c440000.qcom,spmi:qcom,pm8150b@2:pinctrl@c000:
 gpio1 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio2 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio3 : ---
 gpio4 : ---
 gpio5 : out  low  normal  vin-1 no pull                     push-pull  low     atest-1 dtest-0
 gpio6 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio7 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio8 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio9 : out  low  func1   vin-0 no pull                     open-source high    atest-1 dtest-0
 gpio10: out  low  func1   vin-0 no pull                     open-drain high    atest-1 dtest-0
 gpio11: ---
 gpio12: in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0

gpiochip1: GPIOs 318-327, parent: platform/c440000.qcom,spmi:qcom,pm8150@0:pinctrl@c000, c440000.qcom,spmi:qcom,pm8150@0:pinctrl@c000:
 gpio1 : in   high normal  vin-0 pull-up 30uA                push-pull  high    atest-1 dtest-0
 gpio2 : ---
 gpio3 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio4 : in   low  normal  vin-0 pull-up 1.5uA               push-pull  high    atest-1 dtest-0
 gpio5 : ---
 gpio6 : in   high normal  vin-1 pull-up 30uA                push-pull  high    atest-1 dtest-0
 gpio7 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio8 : ---
 gpio9 : in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
 gpio10: in   low  normal  vin-0 pull-down 10uA              push-pull  high    atest-1 dtest-0
gpiochip0: GPIOs 328-511, parent: platform/f000000.pinctrl, f000000.pinctrl:
 gpio0   : in  low  func0 2mA pull down
 gpio1   : in  low  func0 2mA pull down
 gpio2   : in  low  func0 2mA pull down
 gpio3   : in  low  func0 2mA pull down
 gpio4   : in  low  func0 2mA no pull
 gpio5   : in  low  func0 2mA no pull
 gpio6   : in  low  func0 2mA pull down
 gpio7   : in  low  func0 2mA pull down
 gpio8   : in  high func0 2mA no pull
 gpio9   : in  high func0 2mA no pull
 gpio10  : in  low  func0 2mA pull down
 gpio11  : in  low  func0 2mA pull down
 gpio12  : in  high func0 2mA no pull
 gpio13  : in  high func0 2mA no pull
 gpio14  : in  low  func0 2mA pull down
 gpio15  : in  high func0 2mA pull down
 gpio16  : in  high func1 2mA no pull
 gpio17  : in  low  func1 2mA pull down
 gpio18  : in  high func1 2mA pull up
 gpio19  : in  low  func1 2mA no pull
 gpio20  : out high func0 16mA pull up
 gpio21  : out low  func0 2mA pull down
 gpio22  : in  low  func0 2mA pull down
 gpio23  : in  low  func0 2mA pull down
 gpio24  : in  low  func0 2mA pull down
 gpio25  : in  low  func0 2mA pull down
 gpio26  : in  low  func0 2mA pull down
 gpio27  : in  low  func0 2mA no pull
 gpio28  : in  high func0 6mA no pull
 gpio29  : in  high func0 6mA no pull
 gpio30  : in  high func0 6mA no pull
 gpio31  : in  high func0 6mA no pull
 gpio32  : out low  func0 16mA no pull
 gpio33  : in  low  func0 2mA pull down
 gpio34  : out low  func1 2mA pull up
 gpio35  : in  low  func1 2mA pull down
 gpio36  : in  low  func1 2mA no pull
 gpio37  : in  high func1 2mA pull down
 gpio38  : in  high func1 2mA pull up
 gpio39  : in  low  func1 2mA no pull
 gpio40  : in  low  func0 2mA pull down
 gpio41  : in  low  func0 2mA pull down
 gpio42  : in  low  func0 2mA pull down
 gpio43  : in  low  func0 2mA pull down
 gpio44  : in  high func0 2mA no pull
 gpio45  : in  high func0 2mA no pull
 gpio46  : in  low  func0 2mA pull down
 gpio47  : in  high func0 2mA pull down
 gpio48  : in  low  func0 2mA pull down
 gpio49  : in  low  func0 2mA pull down
 gpio50  : in  low  func0 2mA pull down
 gpio51  : in  low  func0 2mA pull down
 gpio52  : in  low  func0 6mA no pull
 gpio53  : in  low  func0 6mA no pull
 gpio54  : in  low  func0 6mA no pull
 gpio55  : in  low  func0 6mA no pull
 gpio56  : in  low  func0 2mA pull down
 gpio57  : in  low  func0 2mA pull down
 gpio58  : in  high func0 2mA pull down
 gpio59  : in  high func0 2mA pull down
 gpio60  : in  low  func0 2mA pull down
 gpio61  : out low  func0 8mA no pull
 gpio62  : in  low  func0 2mA pull down
 gpio63  : in  high func0 8mA no pull
 gpio64  : in  low  func0 2mA pull down
 gpio65  : in  low  func0 2mA pull down
 gpio66  : in  low  func0 2mA pull down
 gpio67  : in  low  func0 2mA pull down
 gpio68  : in  low  func0 2mA pull down
 gpio69  : in  low  func0 2mA pull down
 gpio70  : in  low  func0 2mA pull down
 gpio71  : in  low  func0 2mA pull down
 gpio72  : in  low  func0 2mA pull down
 gpio73  : in  low  func0 2mA pull down
 gpio74  : in  low  func0 2mA pull down
 gpio75  : in  low  func0 2mA pull down
 gpio76  : in  low  func0 2mA pull down
 gpio77  : in  high func0 2mA pull up
 gpio78  : in  low  func0 2mA pull down
 gpio79  : out high func0 2mA pull down
 gpio80  : in  high func1 2mA pull up
 gpio81  : in  high func0 2mA pull up
 gpio82  : out low  func0 2mA pull down
 gpio83  : in  low  func1 2mA pull up
 gpio84  : in  high func0 2mA pull up
 gpio85  : out low  func0 2mA pull down
 gpio86  : in  low  func1 2mA pull up
 gpio87  : in  high func0 2mA pull up
 gpio88  : in  low  func0 2mA pull down
 gpio89  : in  low  func0 2mA pull down
 gpio90  : in  low  func0 2mA pull down
 gpio91  : in  low  func0 2mA pull down
 gpio92  : in  low  func0 2mA pull down
 gpio93  : in  low  func0 2mA pull down
 gpio94  : in  low  func0 2mA pull down
 gpio95  : in  low  func0 2mA pull down
 gpio96  : in  low  func0 2mA pull down
 gpio97  : in  low  func0 2mA pull down
 gpio98  : in  low  func0 2mA pull down
 gpio99  : in  low  func0 2mA pull down
 gpio100 : in  low  func0 2mA pull down
 gpio101 : in  low  func0 2mA pull down
 gpio102 : in  low  func0 2mA pull down
 gpio103 : in  low  func0 2mA pull down
 gpio104 : in  low  func0 2mA pull down
 gpio105 : in  low  func0 2mA pull down
 gpio106 : in  low  func0 2mA pull down
 gpio107 : in  low  func0 2mA pull down
 gpio108 : in  low  func0 2mA pull down
 gpio109 : out high func0 2mA pull down
 gpio110 : in  low  func0 2mA pull down
 gpio111 : in  low  func0 2mA pull down
 gpio112 : in  low  func0 2mA pull down
 gpio113 : in  low  func0 2mA pull down
 gpio114 : in  low  func0 2mA pull down
 gpio115 : in  low  func0 2mA pull down
 gpio116 : in  low  func0 2mA pull down
 gpio117 : in  low  func0 2mA pull down
 gpio118 : in  low  func0 2mA pull down
 gpio119 : in  low  func0 2mA pull down
 gpio120 : in  low  func0 2mA pull down
 gpio121 : in  low  func0 2mA pull down
 gpio122 : in  low  func0 2mA pull down
 gpio123 : in  low  func0 2mA pull down
 gpio124 : in  high func0 2mA pull down
 gpio125 : in  low  func0 2mA pull down
 gpio126 : in  low  func0 2mA pull down
 gpio127 : in  low  func0 2mA pull down
 gpio128 : in  low  func0 2mA pull down
 gpio129 : in  low  func0 2mA pull down
 gpio130 : in  low  func0 2mA pull down
 gpio131 : in  low  func0 2mA pull down
 gpio132 : in  low  func0 2mA pull down
 gpio133 : in  high func0 2mA pull down
 gpio134 : in  high func0 2mA pull down
 gpio135 : in  high func0 2mA pull down
 gpio136 : in  low  func0 2mA pull down
 gpio137 : in  low  func0 2mA pull down
 gpio138 : in  low  func0 2mA pull down
 gpio139 : in  low  func0 2mA pull down
 gpio140 : in  low  func0 2mA pull down
 gpio141 : in  low  func0 2mA pull down
 gpio142 : in  low  func1 2mA keeper
 gpio143 : in  low  func1 4mA keeper
 gpio144 : in  low  func0 2mA pull down
 gpio145 : in  low  func0 2mA pull down
 gpio146 : in  low  func0 2mA pull down
 gpio147 : in  low  func0 2mA pull down
 gpio148 : in  low  func0 2mA pull down
 gpio149 : out low  func0 2mA pull down
 gpio150 : in  low  func0 2mA pull down
 gpio151 : in  low  func0 2mA pull down
 gpio152 : in  low  func0 2mA pull down
 gpio153 : in  low  func0 2mA pull down
 gpio154 : in  low  func0 2mA pull down
 gpio155 : in  low  func0 2mA pull down
 gpio156 : in  low  func0 2mA pull down
 gpio157 : in  low  func0 2mA pull down
 gpio158 : in  low  func0 2mA pull down
 gpio159 : in  low  func0 2mA pull down
 gpio160 : in  low  func0 2mA pull down
 gpio161 : in  low  func0 2mA pull down
 gpio162 : in  low  func0 2mA pull down
 gpio163 : in  low  func0 2mA pull down
 gpio164 : in  low  func0 2mA pull down
 gpio165 : in  low  func0 2mA pull down
 gpio166 : in  low  func0 2mA pull down
 gpio167 : in  high func0 2mA pull down
 gpio168 : in  low  func0 2mA pull down
 gpio169 : in  low  func0 2mA pull down
 gpio170 : in  low  func0 2mA pull down
 gpio171 : in  low  func0 2mA pull down
 gpio172 : in  low  func0 2mA pull down
 gpio173 : in  low  func0 2mA pull down
 gpio174 : in  low  func0 2mA pull down
 gpio175 : in  low  func0 2mA pull down
 gpio176 : in  low  func0 2mA pull down
 gpio177 : in  low  func0 2mA pull down
 gpio178 : in  low  func0 2mA pull down
 gpio179 : in  low  func0 2mA pull down
 sdc2_clk: in  low  func0 16mA no pull
 sdc2_cmd: in  low  func0 16mA pull up
 sdc2_data: in  low  func0 16mA pull up
 ufs_reset: in  low  func0 8mA pull down

查看引脚复用

bash 复制代码
sh-5.0# cat /sys/kernel/debug/pinctrl/f000000.pinctrl/pinmux-pins
Pinmux settings per pin
Format: pin (name): mux_owner gpio_owner hog?
pin 0 (GPIO_0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 1 (GPIO_1): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 2 (GPIO_2): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 3 (GPIO_3): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 4 (GPIO_4): 984000.i2c (GPIO UNCLAIMED) function gpio group gpio4
pin 5 (GPIO_5): 984000.i2c (GPIO UNCLAIMED) function gpio group gpio5
pin 6 (GPIO_6): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 7 (GPIO_7): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 8 (GPIO_8): 990000.i2c (GPIO UNCLAIMED) function gpio group gpio8
pin 9 (GPIO_9): 990000.i2c (GPIO UNCLAIMED) function gpio group gpio9
pin 10 (GPIO_10): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 11 (GPIO_11): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 12 (GPIO_12): 994000.i2c (GPIO UNCLAIMED) function gpio group gpio12
pin 13 (GPIO_13): 994000.i2c (GPIO UNCLAIMED) function gpio group gpio13
pin 14 (GPIO_14): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 15 (GPIO_15): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 16 (GPIO_16): 998000.qcom,qup_uart (GPIO UNCLAIMED) function qup6 group gpio16
pin 17 (GPIO_17): 998000.qcom,qup_uart (GPIO UNCLAIMED) function qup6 group gpio17
pin 18 (GPIO_18): 998000.qcom,qup_uart (GPIO UNCLAIMED) function qup6 group gpio18
pin 19 (GPIO_19): 998000.qcom,qup_uart (GPIO UNCLAIMED) function qup6 group gpio19
pin 20 (GPIO_20): b0000000.qcom,cnss-qca6390 (GPIO UNCLAIMED) function gpio group gpio20
pin 21 (GPIO_21): vendor:bt_qca6390 (GPIO UNCLAIMED) function gpio group gpio21
pin 22 (GPIO_22): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 23 (GPIO_23): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 24 (GPIO_24): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 25 (GPIO_25): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 26 (GPIO_26): soc:wsa_spkr_en1_pinctrl (GPIO UNCLAIMED) function gpio group gpio26
pin 27 (GPIO_27): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 28 (GPIO_28): 980000.spi (GPIO UNCLAIMED) function gpio group gpio28
pin 29 (GPIO_29): 980000.spi (GPIO UNCLAIMED) function gpio group gpio29
pin 30 (GPIO_30): 980000.spi (GPIO UNCLAIMED) function gpio group gpio30
pin 31 (GPIO_31): 980000.spi (GPIO UNCLAIMED) function gpio group gpio31
pin 32 (GPIO_32): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 33 (GPIO_33): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 34 (GPIO_34): a90000.qcom,qup_uart (GPIO UNCLAIMED) function qup12 group gpio34
pin 35 (GPIO_35): a90000.qcom,qup_uart (GPIO UNCLAIMED) function qup12 group gpio35
pin 36 (GPIO_36): a94000.qcom,qup_uart (GPIO UNCLAIMED) function qup13 group gpio36
pin 37 (GPIO_37): a94000.qcom,qup_uart (GPIO UNCLAIMED) function qup13 group gpio37
pin 38 (GPIO_38): a94000.qcom,qup_uart (GPIO UNCLAIMED) function qup13 group gpio38
pin 39 (GPIO_39): a94000.qcom,qup_uart (GPIO UNCLAIMED) function qup13 group gpio39
pin 40 (GPIO_40): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 41 (GPIO_41): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 42 (GPIO_42): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 43 (GPIO_43): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 44 (GPIO_44): 884000.i2c (GPIO UNCLAIMED) function gpio group gpio44
pin 45 (GPIO_45): 884000.i2c (GPIO UNCLAIMED) function gpio group gpio45
pin 46 (GPIO_46): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 47 (GPIO_47): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 48 (GPIO_48): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 49 (GPIO_49): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 50 (GPIO_50): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 51 (GPIO_51): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 52 (GPIO_52): 88c000.spi (GPIO UNCLAIMED) function gpio group gpio52
pin 53 (GPIO_53): 88c000.spi (GPIO UNCLAIMED) function gpio group gpio53
pin 54 (GPIO_54): 88c000.spi (GPIO UNCLAIMED) function gpio group gpio54
pin 55 (GPIO_55): 88c000.spi (GPIO UNCLAIMED) function gpio group gpio55
pin 56 (GPIO_56): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 57 (GPIO_57): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 58 (GPIO_58): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 59 (GPIO_59): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 60 (GPIO_60): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 61 (GPIO_61): soc:display_gpio_regulator@1 f000000.pinctrl:389 function gpio group gpio61
pin 62 (GPIO_62): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 63 (GPIO_63): 2-002b f000000.pinctrl:391 function gpio group gpio63
pin 64 (GPIO_64): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 65 (GPIO_65): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 66 (GPIO_66): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 67 (GPIO_67): (MUX UNCLAIMED) f000000.pinctrl:395
pin 68 (GPIO_68): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 69 (GPIO_69): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 70 (GPIO_70): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 71 (GPIO_71): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 72 (GPIO_72): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 73 (GPIO_73): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 74 (GPIO_74): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 75 (GPIO_75): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 76 (GPIO_76): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 77 (GPIO_77): (MUX UNCLAIMED) f000000.pinctrl:405
pin 78 (GPIO_78): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 79 (GPIO_79): 1c00000.qcom,pcie f000000.pinctrl:407 function gpio group gpio79
pin 80 (GPIO_80): 1c00000.qcom,pcie (GPIO UNCLAIMED) function pci_e0 group gpio80
pin 81 (GPIO_81): 1c00000.qcom,pcie f000000.pinctrl:409 function gpio group gpio81
pin 82 (GPIO_82): 1c08000.qcom,pcie f000000.pinctrl:410 function gpio group gpio82
pin 83 (GPIO_83): 1c08000.qcom,pcie (GPIO UNCLAIMED) function pci_e1 group gpio83
pin 84 (GPIO_84): 1c08000.qcom,pcie f000000.pinctrl:412 function gpio group gpio84
pin 85 (GPIO_85): 1c10000.qcom,pcie f000000.pinctrl:413 function gpio group gpio85
pin 86 (GPIO_86): 1c10000.qcom,pcie (GPIO UNCLAIMED) function pci_e2 group gpio86
pin 87 (GPIO_87): 1c10000.qcom,pcie f000000.pinctrl:415 function gpio group gpio87
pin 88 (GPIO_88): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 89 (GPIO_89): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 90 (GPIO_90): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 91 (GPIO_91): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 92 (GPIO_92): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 93 (GPIO_93): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 94 (GPIO_94): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 95 (GPIO_95): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 96 (GPIO_96): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 97 (GPIO_97): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 98 (GPIO_98): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 99 (GPIO_99): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 100 (GPIO_100): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 101 (GPIO_101): (MUX UNCLAIMED) f000000.pinctrl:429
pin 102 (GPIO_102): (MUX UNCLAIMED) f000000.pinctrl:430
pin 103 (GPIO_103): (MUX UNCLAIMED) f000000.pinctrl:431
pin 104 (GPIO_104): (MUX UNCLAIMED) f000000.pinctrl:432
pin 105 (GPIO_105): (MUX UNCLAIMED) f000000.pinctrl:433
pin 106 (GPIO_106): (MUX UNCLAIMED) f000000.pinctrl:434
pin 107 (GPIO_107): (MUX UNCLAIMED) f000000.pinctrl:435
pin 108 (GPIO_108): (MUX UNCLAIMED) f000000.pinctrl:436
pin 109 (GPIO_109): (MUX UNCLAIMED) f000000.pinctrl:437
pin 110 (GPIO_110): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 111 (GPIO_111): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 112 (GPIO_112): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 113 (GPIO_113): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 114 (GPIO_114): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 115 (GPIO_115): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 116 (GPIO_116): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 117 (GPIO_117): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 118 (GPIO_118): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 119 (GPIO_119): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 120 (GPIO_120): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 121 (GPIO_121): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 122 (GPIO_122): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 123 (GPIO_123): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 124 (GPIO_124): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 125 (GPIO_125): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 126 (GPIO_126): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 127 (GPIO_127): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 128 (GPIO_128): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 129 (GPIO_129): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 130 (GPIO_130): soc:wsa_spkr_en2_pinctrl (GPIO UNCLAIMED) function gpio group gpio130
pin 131 (GPIO_131): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 132 (GPIO_132): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 133 (GPIO_133): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 134 (GPIO_134): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 135 (GPIO_135): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 136 (GPIO_136): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 137 (GPIO_137): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 138 (GPIO_138): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 139 (GPIO_139): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 140 (GPIO_140): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 141 (GPIO_141): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 142 (GPIO_142): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 143 (GPIO_143): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 144 (GPIO_144): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 145 (GPIO_145): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 146 (GPIO_146): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 147 (GPIO_147): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 148 (GPIO_148): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 149 (GPIO_149): (MUX UNCLAIMED) f000000.pinctrl:477
pin 150 (GPIO_150): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 151 (GPIO_151): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 152 (GPIO_152): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 153 (GPIO_153): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 154 (GPIO_154): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 155 (GPIO_155): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 156 (GPIO_156): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 157 (GPIO_157): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 158 (GPIO_158): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 159 (GPIO_159): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 160 (GPIO_160): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 161 (GPIO_161): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 162 (GPIO_162): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 163 (GPIO_163): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 164 (GPIO_164): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 165 (GPIO_165): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 166 (GPIO_166): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 167 (GPIO_167): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 168 (GPIO_168): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 169 (GPIO_169): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 170 (GPIO_170): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 171 (GPIO_171): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 172 (GPIO_172): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 173 (GPIO_173): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 174 (GPIO_174): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 175 (GPIO_175): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 176 (GPIO_176): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 177 (GPIO_177): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 178 (GPIO_178): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 179 (GPIO_179): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 180 (SDC2_CLK): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 181 (SDC2_CMD): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 182 (SDC2_DATA): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 183 (UFS_RESET): (MUX UNCLAIMED) f000000.pinctrl:511

查看供电

bash 复制代码
sh-5.0# cat /sys/class/regulator/regulator.
regulator.0/  regulator.26/ regulator.43/ regulator.60/ regulator.78/
regulator.1/  regulator.27/ regulator.44/ regulator.61/ regulator.79/
regulator.10/ regulator.28/ regulator.45/ regulator.62/ regulator.8/
regulator.11/ regulator.29/ regulator.46/ regulator.63/ regulator.80/
regulator.12/ regulator.3/  regulator.47/ regulator.64/ regulator.81/
regulator.13/ regulator.30/ regulator.48/ regulator.65/ regulator.82/
regulator.14/ regulator.31/ regulator.49/ regulator.66/ regulator.83/
regulator.15/ regulator.32/ regulator.5/  regulator.67/ regulator.84/
regulator.16/ regulator.33/ regulator.50/ regulator.68/ regulator.85/
regulator.17/ regulator.34/ regulator.51/ regulator.69/ regulator.86/
regulator.18/ regulator.35/ regulator.52/ regulator.7/  regulator.87/
regulator.19/ regulator.36/ regulator.53/ regulator.70/ regulator.88/
regulator.2/  regulator.37/ regulator.54/ regulator.71/ regulator.89/
regulator.20/ regulator.38/ regulator.55/ regulator.72/ regulator.9/
regulator.21/ regulator.39/ regulator.56/ regulator.73/ regulator.90/
regulator.22/ regulator.4/  regulator.57/ regulator.74/ regulator.91/
regulator.23/ regulator.40/ regulator.58/ regulator.75/
regulator.24/ regulator.41/ regulator.59/ regulator.76/
regulator.25/ regulator.42/ regulator.6/  regulator.77/

查看供电具体信息

bash 复制代码
sh-5.0# cd /sys/class/regulator/regulator.45/
sh-5.0# ls
8804000.sdhci-vdd-io    num_users            suspend_disk_state
consumer:8804000.sdhci  of_node              suspend_mem_state
device                  opmode               suspend_standby_state
max_microvolts          power                type
microvolts              requested_microamps  uevent
min_microvolts          state                waiting_for_supplier
name                    subsystem
sh-5.0# cat *
cat: 8804000.sdhci-vdd-io: Is a directory
cat: 'consumer:8804000.sdhci': Is a directory
cat: device: Is a directory
2960000
1800000
1800000
pm8150a_l6
0
cat: of_node: Is a directory
idle
cat: power: Is a directory
0
disabled
cat: subsystem: Is a directory
disabled
disabled
disabled
voltage
OF_NAME=regulator-pm8150a-l6
OF_FULLNAME=/soc/rsc@18200000/rpmh-regulator-ldoc6/regulator-pm8150a-l6
OF_COMPATIBLE_N=0
0

3 Bringup相关

修改供电

cd /sys/class/regulator/regulator.45/

1. 动态改电压(注意单位是微伏 uV,1800000 代表 1.8V)

比如想将其强行拉高到 2.85V(前提是 DTS 里的 max_uV 允许这个范围)

echo 2850000 > min_microvolts

echo 2850000 > max_microvolts

2. 动态开关电源轨

echo "enabled" > state # 强制上电

echo "disabled" > state # 强制断电

通过SPMI(系统总线接口)调试节点,可以直接读写 PMIC

进入高通 PMIC 的控制大本营

cd /sys/kernel/debug/spmi/spmi-0/

读寄存器语法:echo <地址> <长度> > address && cat data

写寄存器语法:echo <地址> <数据> > data

代码

  • platform-bringup

    This category contains applications to fetch device information, GPIO samples, Weston-Client, and Wi-Fi hotspots.

    • Device-info

      This application provides the following information: list of peripherals to which the device is connected, status of subsystem through kernel node, CPU and GPU information, display information, and memory size.

    • GPIO-samples

      This application handles the following functions: LED light control, GPIO input and output, receive GPIO interrupt events, button event catching, simple PWM output, and read the SoC thermal temperature.

    • WiFi-OnBoarding

      Wi-Fi onboarding includes scanning the surrounding hotspots in the STA mode, creating a new Wi-Fi connection, and obtaining the SSID and PSK of the currently connected Wi-Fi. After switching to the SAP mode, you can create a new hotspot and get the SSID and PSK of the current hotspot.

    • Weston-Client-Application

      The Weston sample code shows how to compile and run a simple client in Weston.

相关推荐
Tbisnic3 小时前
AI大模型学习第十四天:Coze项目实战中的分治智慧
人工智能·python·学习·大模型·工作流·智能体·coze
小风吹啊吹~3 小时前
通过时态图学习意图驱动识别足球控球比赛阶段 论文详解
学习·transformer·论文笔记·gan·足球战术·战术分析系统
阿i索3 小时前
【C++学习笔记】【基础】4.string类(2)——模拟实现
c++·笔记·学习
袁小皮皮不皮4 小时前
6.HCIP OSPF域间防环机制与虚链路
服务器·网络·笔记·网络协议·学习·智能路由器
一口吃俩胖子4 小时前
【脉宽调制DCDC功率变换学习笔记026】补偿设计和闭环性能
笔记·学习
三品吉他手会点灯4 小时前
C语言学习笔记 - 48.流程控制2 - 什么是流程控制
c语言·开发语言·笔记·学习
لا معنى له4 小时前
SF2Net: Sequence Feature Fusion Network for Palmprint Verification
人工智能·笔记·学习·机器学习
吃着火锅x唱着歌5 小时前
深度探索C++对象模型 学习笔记 第六章 执行期语意学(1)
c++·笔记·学习