와우~ 크리스마스 선물 좋구만!
6시간 뒤에 공개되면 집에가서 받아야지 ㅋㅋ
(다시보니 시간이 아니라 일단위.. -_-)

눈누난나~

'게임 > 오리진&스팀&유플레이' 카테고리의 다른 글
| 아 몰라 또 질러 (0) | 2024.12.22 |
|---|---|
| 아 몰라 질러 (1) | 2024.12.17 |
| 블랙 프라이데이 할인... 흐음.. (0) | 2024.12.01 |
| 오늘의 게임 다운로드 (0) | 2024.11.02 |
| 게임 지름 + 선물 강요 (0) | 2024.10.28 |
와우~ 크리스마스 선물 좋구만!
6시간 뒤에 공개되면 집에가서 받아야지 ㅋㅋ
(다시보니 시간이 아니라 일단위.. -_-)

눈누난나~

| 아 몰라 또 질러 (0) | 2024.12.22 |
|---|---|
| 아 몰라 질러 (1) | 2024.12.17 |
| 블랙 프라이데이 할인... 흐음.. (0) | 2024.12.01 |
| 오늘의 게임 다운로드 (0) | 2024.11.02 |
| 게임 지름 + 선물 강요 (0) | 2024.10.28 |
개발보드 꺼내서 연결해보니 U-boot 레벨에서 20V 받아가는 것 확인.. -_-!
USB 규격 볼 바에는 이걸 보는게 빠를 듯..
[링크 : https://github.com/nxp-imx/uboot-imx/]
[링크 : https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX8MP-USB-PD-realized/ta-p/1531209]
아무생각없이 보고 있던 소스.. -_- mp를 봐야했나..?
[링크 : https://github.com/nxp-imx/uboot-imx/blob/lf_v2022.04/board/freescale/imx8mm_evk/imx8mm_evk.c]
소스를 보면 변경점이 꽤 많긴 하지만 큰 틀에서 ptn5110 쓰는건 동일해서 mm 으로 보는게 편할지도?
[링크 : https://github.com/nxp-imx/uboot-imx/blob/lf_v2022.04/board/freescale/imx8mp_evk/imx8mp_evk.c]
+
evk uboot 로그
| U-Boot SPL 2023.04-lf_v2023.04+g49b102d988 (Nov 21 2023 - 07:28:53 +0000) DDRINFO: start DRAM init DDRINFO: DRAM rate 4000MTS DDRINFO:ddrphy calibration done DDRINFO: ddrmix config done SEC0: RNG instantiated Normal Boot Trying to boot from BOOTROM Boot Stage: Primary boot image offset 0x8000, pagesize 0x200, ivt offset 0x0 NOTICE: Do not release JR0 to NS as it can be used by HAB NOTICE: BL31: v2.8(release):android-14.0.0_1.0.0-rc1-1-g08e9d4eef NOTICE: BL31: Built : 06:43:30, Nov 21 2023 U-Boot 2023.04-lf_v2023.04+g49b102d988 (Nov 21 2023 - 07:28:53 +0000) CPU: i.MX8MP[8] rev1.1 1800 MHz (running at 1200 MHz) CPU: Commercial temperature grade (0C to 95C) at 25C Reset cause: POR Model: NXP i.MX8MPlus LPDDR4 EVK board DRAM: 6 GiB TCPC: Vendor ID [0x1fc9], Product ID [0x5110], Addr [I2C2 0x50] SNK.Power3.0 on CC1 PDO 0: type 0, 5000 mV, 3000 mA [E] PDO 1: type 0, 9000 mV, 3000 mA [] PDO 2: type 0, 12000 mV, 3000 mA [] PDO 3: type 0, 15000 mV, 3000 mA [] PDO 4: type 0, 20000 mV, 3000 mA [] PDO 5: type 3, undefined Requesting PDO 4: 20000 mV, 2250 mA Source accept request PD source ready! tcpc_pd_receive_message: Polling ALERT register, TCPC_ALERT_RX_STATUS bit faile2 Power supply on USB2 TCPC: Vendor ID [0x1fc9], Product ID [0x5110], Addr [I2C1 0x50] Core: 257 devices, 36 uclasses, devicetree: separate MMC: FSL_SDHC: 1, FSL_SDHC: 2 Loading Environment from MMC... *** Warning - bad CRC, using default environment [*]-Video Link 0adv7535_mipi2hdmi adv7535@3d: Can't find cec device id=0x3c fail to probe panel device adv7535@3d fail to get display timings probe video device failed, ret -19 [0] lcd-controller@32e80000, video [1] mipi_dsi@32e60000, video_bridge [2] adv7535@3d, panel adv7535_mipi2hdmi adv7535@3d: Can't find cec device id=0x3c fail to probe panel device adv7535@3d fail to get display timings probe video device failed, ret -19 In: serial Out: serial Err: serial SEC0: RNG instantiated switch to partitions #0, OK mmc1 is current device flash target is MMC:1 Net: eth0: ethernet@30be0000, eth1: ethernet@30bf0000 [PRIME] Fastboot: Normal Normal Boot Hit any key to stop autoboot: 0 Working FDT set to 43000000 libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND starting USB... Bus usb@38100000: Failed to initialize board for imx8m USB probe failed, error -62 Bus usb@38200000: Register 2000140 NbrPorts 2 Starting the controller USB XHCI 1.10 scanning bus usb@38200000 for devices... 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Device 0: unknown device switch to partitions #0, OK mmc1 is current device Scanning mmc 1:1... 86911 bytes read in 14 ms (5.9 MiB/s) Working FDT set to 43000000 Unable to open OP-TEE session (err=-5) mm_communicate failed! Error: Cannot initialize UEFI sub-system, r = 3 switch to partitions #0, OK mmc2(part 0) is current device Scanning mmc 2:1... 64669 bytes read in 1 ms (61.7 MiB/s) Working FDT set to 43000000 Error: Cannot initialize UEFI sub-system, r = 3 Running BSP bootcmd ... switch to partitions #0, OK mmc1 is current device Failed to load 'boot.scr' 32856576 bytes read in 372 ms (84.2 MiB/s) Booting from mmc ... 86911 bytes read in 4 ms (20.7 MiB/s) ## Flattened Device Tree blob at 43000000 Booting using the fdt blob at 0x43000000 Working FDT set to 43000000 clk usb_phy_root_clk already disabled Using Device Tree in place at 0000000043000000, end 000000004301837e Working FDT set to 43000000 adv7535_mipi2hdmi adv7535@3d: Can't find cec device id=0x3c fail to probe panel device adv7535@3d fail to get display timings probe video device failed, ret -19 Starting kernel ... |
| linux kernel USB PD 관련 검색 (0) | 2024.12.04 |
|---|---|
| USB PD 용어 정리중 (0) | 2024.12.03 |
| USB PD SOP*? (0) | 2024.12.03 |
| USB-C PTN5110 케이블 방향에 따른 데이터 차이 (0) | 2024.11.27 |
| USB PD - DRP? (0) | 2024.11.25 |
busybox에 포함된 minicom 보다 더 간략화된 통신 터미널인데
설명이 부실해서 종료하는 법을 알기 힘들다 -_-
| ctrl-x |
[링크 : https://www.armadeus.org/wiki/index.php?title=Microcom]
| sh: line 1: kill: root: no such pid (0) | 2015.01.05 |
|---|---|
| busybox su가 안될 경우 (0) | 2014.12.05 |
| busybox tftp (0) | 2013.06.18 |
| busybox - setconsole (0) | 2011.10.21 |
| busybox ash "cannot open /dev/ttyAS1: no such device" (0) | 2010.04.20 |
고통 받고 있는 ptn5110에 대해서 검색하는데
리눅스 소스상에 dtb로만 존재해서 문법을 찾아보는 중.
봐야할 부분은 source-pdos의 <PDO_FIXED()>; 인데
ptn5110: tcpc@50 {
compatible = "nxp,ptn5110", "tcpci";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_typec>;
reg = <0x50>;
interrupt-parent = <&lsio_gpio1>;
interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
usb_con1: connector {
compatible = "usb-c-connector";
label = "USB-C";
power-role = "source";
data-role = "dual";
source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
typec_dr_sw: endpoint {
remote-endpoint = <&usb3_drd_sw>;
};
};
port@1 {
reg = <1>;
typec_con_ss: endpoint {
remote-endpoint = <&usb3_data_ss>;
};
};
};
};
};
<> 는 cell 이라고 부르고

[링크 : https://kernel.bz/boardPost/118684/3]
unsigned int로 된 배열인것 같은데
|
[링크 : https://jung-max.github.io/2019/10/22/Device_Tree_문법/]
도대체 저 매크로는 어떻게 dtb에서 인식을 하고 쓰는거지? 하고 찾아보니
아래의 경로에서 dt-bindings 라는 곳에서 정의가 되어있었다.
| linux-master/scripts/dtc/include-prefixes/dt-bindings/usb |
선언을 하도 여러군데서 하다보니 일반소스에서만 선언된 줄 알았는데..
|
#define PDO_FIXED(mv, ma, flags) \
(PDO_TYPE(PDO_TYPE_FIXED) | (flags) | \
PDO_FIXED_VOLT(mv) | PDO_FIXED_CURR(ma))
|
device tress binding 이라는 녀석이 또 추가 되었나 보다..
[링크 : https://docs.zephyrproject.org/latest/build/dts/bindings.html]
| linux 시리얼 포트 열기(termios) (0) | 2025.10.11 |
|---|---|
| LD_DEBUG=libs (0) | 2025.06.02 |
| usb hid, hidraw (0) | 2024.03.11 |
| linux 멀티터치 프로토콜 (0) | 2024.03.08 |
| btrfs CoW (0) | 2024.02.15 |
PDO 쪽으로 검색해서 발견했는데
[링크 : https://chromium.googlesource.com/chromiumos/platform/ec/+/firmware-twinkie-9628.B/include/usb_pd.h]
드라이버는 이쪽 인 것 같고
[링크 : https://github.com/torvalds/linux/tree/master/drivers/usb/typec]
헤더는 이쪽인 것 같다.
| /* PDO: Power Data Object */ #define PDO_MAX_OBJECTS 7 enum pd_pdo_type { PDO_TYPE_FIXED = 0, PDO_TYPE_BATT = 1, PDO_TYPE_VAR = 2, PDO_TYPE_APDO = 3, }; #define PDO_TYPE_SHIFT 30 #define PDO_TYPE_MASK 0x3 #define PDO_TYPE(t) ((t) << PDO_TYPE_SHIFT) #define PDO_VOLT_MASK 0x3ff #define PDO_CURR_MASK 0x3ff #define PDO_PWR_MASK 0x3ff #define PDO_FIXED_DUAL_ROLE BIT(29) /* Power role swap supported */ #define PDO_FIXED_SUSPEND BIT(28) /* USB Suspend supported (Source) */ #define PDO_FIXED_HIGHER_CAP BIT(28) /* Requires more than vSafe5V (Sink) */ #define PDO_FIXED_EXTPOWER BIT(27) /* Externally powered */ #define PDO_FIXED_USB_COMM BIT(26) /* USB communications capable */ #define PDO_FIXED_DATA_SWAP BIT(25) /* Data role swap supported */ #define PDO_FIXED_UNCHUNK_EXT BIT(24) /* Unchunked Extended Message supported (Source) */ #define PDO_FIXED_FRS_CURR_MASK (BIT(24) | BIT(23)) /* FR_Swap Current (Sink) */ #define PDO_FIXED_FRS_CURR_SHIFT 23 #define PDO_FIXED_PEAK_CURR_SHIFT 20 #define PDO_FIXED_VOLT_SHIFT 10 /* 50mV units */ #define PDO_FIXED_CURR_SHIFT 0 /* 10mA units */ #define PDO_FIXED_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_FIXED_VOLT_SHIFT) #define PDO_FIXED_CURR(ma) ((((ma) / 10) & PDO_CURR_MASK) << PDO_FIXED_CURR_SHIFT) #define PDO_FIXED(mv, ma, flags) \ (PDO_TYPE(PDO_TYPE_FIXED) | (flags) | \ PDO_FIXED_VOLT(mv) | PDO_FIXED_CURR(ma)) #define VSAFE5V 5000 /* mv units */ #define PDO_BATT_MAX_VOLT_SHIFT 20 /* 50mV units */ #define PDO_BATT_MIN_VOLT_SHIFT 10 /* 50mV units */ #define PDO_BATT_MAX_PWR_SHIFT 0 /* 250mW units */ #define PDO_BATT_MIN_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_BATT_MIN_VOLT_SHIFT) #define PDO_BATT_MAX_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_BATT_MAX_VOLT_SHIFT) #define PDO_BATT_MAX_POWER(mw) ((((mw) / 250) & PDO_PWR_MASK) << PDO_BATT_MAX_PWR_SHIFT) #define PDO_BATT(min_mv, max_mv, max_mw) \ (PDO_TYPE(PDO_TYPE_BATT) | PDO_BATT_MIN_VOLT(min_mv) | \ PDO_BATT_MAX_VOLT(max_mv) | PDO_BATT_MAX_POWER(max_mw)) #define PDO_VAR_MAX_VOLT_SHIFT 20 /* 50mV units */ #define PDO_VAR_MIN_VOLT_SHIFT 10 /* 50mV units */ #define PDO_VAR_MAX_CURR_SHIFT 0 /* 10mA units */ #define PDO_VAR_MIN_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_VAR_MIN_VOLT_SHIFT) #define PDO_VAR_MAX_VOLT(mv) ((((mv) / 50) & PDO_VOLT_MASK) << PDO_VAR_MAX_VOLT_SHIFT) #define PDO_VAR_MAX_CURR(ma) ((((ma) / 10) & PDO_CURR_MASK) << PDO_VAR_MAX_CURR_SHIFT) #define PDO_VAR(min_mv, max_mv, max_ma) \ (PDO_TYPE(PDO_TYPE_VAR) | PDO_VAR_MIN_VOLT(min_mv) | \ PDO_VAR_MAX_VOLT(max_mv) | PDO_VAR_MAX_CURR(max_ma)) enum pd_apdo_type { APDO_TYPE_PPS = 0, }; #define PDO_APDO_TYPE_SHIFT 28 /* Only valid value currently is 0x0 - PPS */ #define PDO_APDO_TYPE_MASK 0x3 #define PDO_APDO_TYPE(t) ((t) << PDO_APDO_TYPE_SHIFT) #define PDO_PPS_APDO_MAX_VOLT_SHIFT 17 /* 100mV units */ #define PDO_PPS_APDO_MIN_VOLT_SHIFT 8 /* 100mV units */ #define PDO_PPS_APDO_MAX_CURR_SHIFT 0 /* 50mA units */ #define PDO_PPS_APDO_VOLT_MASK 0xff #define PDO_PPS_APDO_CURR_MASK 0x7f #define PDO_PPS_APDO_MIN_VOLT(mv) \ ((((mv) / 100) & PDO_PPS_APDO_VOLT_MASK) << PDO_PPS_APDO_MIN_VOLT_SHIFT) #define PDO_PPS_APDO_MAX_VOLT(mv) \ ((((mv) / 100) & PDO_PPS_APDO_VOLT_MASK) << PDO_PPS_APDO_MAX_VOLT_SHIFT) #define PDO_PPS_APDO_MAX_CURR(ma) \ ((((ma) / 50) & PDO_PPS_APDO_CURR_MASK) << PDO_PPS_APDO_MAX_CURR_SHIFT) #define PDO_PPS_APDO(min_mv, max_mv, max_ma) \ (PDO_TYPE(PDO_TYPE_APDO) | PDO_APDO_TYPE(APDO_TYPE_PPS) | \ PDO_PPS_APDO_MIN_VOLT(min_mv) | PDO_PPS_APDO_MAX_VOLT(max_mv) | \ PDO_PPS_APDO_MAX_CURR(max_ma)) /* RDO: Request Data Object */ #define RDO_OBJ_POS_SHIFT 28 #define RDO_OBJ_POS_MASK 0x7 #define RDO_GIVE_BACK BIT(27) /* Supports reduced operating current */ #define RDO_CAP_MISMATCH BIT(26) /* Not satisfied by source caps */ #define RDO_USB_COMM BIT(25) /* USB communications capable */ #define RDO_NO_SUSPEND BIT(24) /* USB Suspend not supported */ #define RDO_PWR_MASK 0x3ff #define RDO_CURR_MASK 0x3ff #define RDO_FIXED_OP_CURR_SHIFT 10 #define RDO_FIXED_MAX_CURR_SHIFT 0 #define RDO_OBJ(idx) (((idx) & RDO_OBJ_POS_MASK) << RDO_OBJ_POS_SHIFT) #define PDO_FIXED_OP_CURR(ma) ((((ma) / 10) & RDO_CURR_MASK) << RDO_FIXED_OP_CURR_SHIFT) #define PDO_FIXED_MAX_CURR(ma) ((((ma) / 10) & RDO_CURR_MASK) << RDO_FIXED_MAX_CURR_SHIFT) #define RDO_FIXED(idx, op_ma, max_ma, flags) \ (RDO_OBJ(idx) | (flags) | \ PDO_FIXED_OP_CURR(op_ma) | PDO_FIXED_MAX_CURR(max_ma)) #define RDO_BATT_OP_PWR_SHIFT 10 /* 250mW units */ #define RDO_BATT_MAX_PWR_SHIFT 0 /* 250mW units */ #define RDO_BATT_OP_PWR(mw) ((((mw) / 250) & RDO_PWR_MASK) << RDO_BATT_OP_PWR_SHIFT) #define RDO_BATT_MAX_PWR(mw) ((((mw) / 250) & RDO_PWR_MASK) << RDO_BATT_MAX_PWR_SHIFT) #define RDO_BATT(idx, op_mw, max_mw, flags) \ (RDO_OBJ(idx) | (flags) | \ RDO_BATT_OP_PWR(op_mw) | RDO_BATT_MAX_PWR(max_mw)) #define RDO_PROG_VOLT_MASK 0x7ff #define RDO_PROG_CURR_MASK 0x7f #define RDO_PROG_VOLT_SHIFT 9 #define RDO_PROG_CURR_SHIFT 0 #define RDO_PROG_VOLT_MV_STEP 20 #define RDO_PROG_CURR_MA_STEP 50 #define PDO_PROG_OUT_VOLT(mv) \ ((((mv) / RDO_PROG_VOLT_MV_STEP) & RDO_PROG_VOLT_MASK) << RDO_PROG_VOLT_SHIFT) #define PDO_PROG_OP_CURR(ma) \ ((((ma) / RDO_PROG_CURR_MA_STEP) & RDO_PROG_CURR_MASK) << RDO_PROG_CURR_SHIFT) #define RDO_PROG(idx, out_mv, op_ma, flags) \ (RDO_OBJ(idx) | (flags) | \ PDO_PROG_OUT_VOLT(out_mv) | PDO_PROG_OP_CURR(op_ma)) |
[링크 : https://github.com/torvalds/linux/blob/master/include/linux/usb/pd.h]
| i.mx8 evk uboot usb pd 메시지 (0) | 2024.12.05 |
|---|---|
| USB PD 용어 정리중 (0) | 2024.12.03 |
| USB PD SOP*? (0) | 2024.12.03 |
| USB-C PTN5110 케이블 방향에 따른 데이터 차이 (0) | 2024.11.27 |
| USB PD - DRP? (0) | 2024.11.25 |
계엄령 경고했던 김민석 “尹, 오더만 내리면 계엄 완성이라 생각했을 것”
| 대통령 출국금지...?! (1) | 2024.12.09 |
|---|---|
| 집단의 사이코패스...? (0) | 2024.12.08 |
| 비상 계엄 선포? (0) | 2024.12.03 |
| 니들이 무급으로 가덩가 (2) | 2024.09.25 |
| 태극기 뒤집기에 기미가요라.. (2) | 2024.08.15 |
| 집단의 사이코패스...? (0) | 2024.12.08 |
|---|---|
| 너무 나갔다~ -> 헐.. 미친 사실이었어? (1) | 2024.12.04 |
| 니들이 무급으로 가덩가 (2) | 2024.09.25 |
| 태극기 뒤집기에 기미가요라.. (2) | 2024.08.15 |
| 독립기념관장 논란 (0) | 2024.08.14 |
PDP Rating(Power Delivery Power Rating)
[링크 : https://usb.org/sites/default/files/D2T2-1%20-%20USB%20Power%20Delivery.pdf]
PDO(Power Data Object)
APDO(Augmented Power Data Object) = PPS(Programmable Power supply)
[링크 : https://smartchoice.kr/usb-고속충전의-종류와-usb-pd-충전에-대해-자세히-알아보자/]
AMS (Atomic message sequence)
PDO는 또 머냐...
[링크 : https://velog.io/@zhemdrawer/USB-PD-이해]
PDOs - Power-Data Objects
RDO - Request-Data Object
[링크 : https://www.ti.com/lit/an/slva842/slva842.pdf]
+
2024.12.08
PPS(Programmable Power Supply)
[링크 : https://www.belkin.com/kr/support-article/?articleNum=318878]
USB PD 1.0 - profile
USB PD 2.0 - PDO
USB PD 3.0 - APDO / PPS
[링크 : https://namu.wiki/w/USB%20PD]
+
2024.12.13
| i.mx8 evk uboot usb pd 메시지 (0) | 2024.12.05 |
|---|---|
| linux kernel USB PD 관련 검색 (0) | 2024.12.04 |
| USB PD SOP*? (0) | 2024.12.03 |
| USB-C PTN5110 케이블 방향에 따른 데이터 차이 (0) | 2024.11.27 |
| USB PD - DRP? (0) | 2024.11.25 |
걍 패킷을 보낸다 라는걸 죄다 SOP라고 퉁치는것 같은데
SOP
SOP'
SOP''
SOP* 이런게 나와서 헷갈리는 중..
| SOP* • Start of packet (SOP/SOP’/SOP’’) |
[링크 : https://usb.org/sites/default/files/D2T2-1%20-%20USB%20Power%20Delivery.pdf]
| SOP* - The Start of Frame field in a USB Power Delivery packet indicates the intended recipient of the packet. |
[링크 : https://ww1.microchip.com/downloads/en/AppNotes/00001974A.pdf]
50h 에 TRANSMIT 이라는 레지스터가 있는데 Read / Write 이고 [2:0] 3비트는 아래의 값을 지닌댄다.
도대체 cable reset은 왜 저기서 튀어나오는걸까?

[링크 : https://www.nxp.com/docs/en/data-sheet/PTN5110.pdf]
각 패킷별 전송이나 응답할 녀석이 달라지는건가?

[링크 : https://www.graniteriverlabs.com/en-us/technical-blog/usb-pd-power-delivery-spec-versions]
| 5 Sending a USB PD message The general steps of transmitting a SOP* message are listed below. Please consult sections 4.7.1, 4.7.2, and 4.7.3 of the TCPC specification[3] for more detailed implementation and examples. • Step 0: TCPM writes the content of the message to be transmitted into the TRANSMIT_BUFFER • Step 1: TCPM writes to TRANSMIT requesting SOP* transmission • Step 2: The outcome reported by the TCPC may be one of three indications after asserting the Alert# pin: – If the TCPC PHY layer successfully transmits the message, the TCPC sets the Transmission Successful bit in the ALERT register. – If the TCPC PHY layer did not get any response after retries, the TCPC sets the Transmission Failed bit in the ALERT register. – If the transmission was discarded due to an incoming message, the TCPC sets the Transmission Discarded bit in the ALERT register. • Step 3: Before requesting another transmission, the TCPM shall clear the alert by writing a 1 to the asserted bit in the ALERT register. When transitioning through the steps of transmitting SOP* message, TCPC may assert ALERT.ReceiveStatus or ALERT.ReceivedHardReset bit at any time to notify that a message was received. |
[링크 : https://www.nxp.com/docs/en/application-note/AN12137.pdf]
위에서 4.7.1~4.7.3을 보라는데 제목만 봐서는.. 흐음..
| 4.7 USB PD Communication Operational Model 4.7.1 Transmitting an SOP* USB PD Message with Less than or Equal to 128 Data Bytes 4.7.2 Transmitting an SOP* USB PD Message with Greater than 128 Data Bytes 4.7.3 Transmitting a Hard Reset Message |
RDO (Request Data Object)

[링크 : https://www.ti.com/lit/an/slva842/slva842.pdf]
| linux kernel USB PD 관련 검색 (0) | 2024.12.04 |
|---|---|
| USB PD 용어 정리중 (0) | 2024.12.03 |
| USB-C PTN5110 케이블 방향에 따른 데이터 차이 (0) | 2024.11.27 |
| USB PD - DRP? (0) | 2024.11.25 |
| TCPC, TCPM (0) | 2024.11.22 |
RESET_REG랑 RESET_VINDPM을 둘다 set 하고 하니 VINDPM의 값이 변경되지 않는 현상이 발생함.
그냥 RESET_VINDPM 만 설정해주면 된다.
해당 값은 0x0B/0x0A 의 InputVoltage Register 값에 있는데

VBUS-1.28V 로 초기화 되는 값이라는데
반대로 보면.. 1.28V를 더해줘야 하냐.. 그게 아니라면 DC offset이 3.2V 니까(0x00) 일때 3.2V를 더해주는게 맞냐 좀 헷갈린다.

| bq25703A ICO 설정 차이 (0) | 2025.10.28 |
|---|---|
| bq25703A NVDC (0) | 2024.11.29 |
| 배터리 충전 (0) | 2024.11.28 |
| bq25703A i2c 읽기, 쓰기 (0) | 2024.11.22 |
| bq25703a 충전 (0) | 2024.11.07 |