Fix fwupdate for RTS545x

Fwupdate was failing because it was using the wrong block write api in
i2c. Update it and fix some bounds checking as well.

BUG=b:303919041

Change-Id: Icb4772db0c94c98f40fe4119c76e2bf9a1997a6a
4 files changed
tree: 21be17e528bd7a0936a23e0204d67bd694af2691
  1. include/
  2. LICENSE
  3. main.c
  4. Makefile
  5. platform_usermode.c
  6. README.md
  7. rts5453.c
  8. rts5453.h
  9. smbus_usermode.c
  10. smbus_usermode.h
README.md

Usermode PPM implementation

Usermode UCSI PPM implementation for evaluation and testing usage. Try using this with the ucsi_um_test kernel driver.

Architecture

┌─────────┐
│OPM      │
│kernel or│
│cli      │
└────┬────┘
     │
     │
     ▼          ┌───────────┐
 ┌────────┐     │ PD Driver │
 │        ├────►│           │
 │  PPM   │     ├───────────┤
 │        │     │           │
 └────────┘     │ I2C Driver│
                └───────────┘

The usermode ppm implementation consists of the PPM task, the PD driver and the I2C driver backing it. The OPM will either be a CLI (for locally triggering some functionality) or the ucsi_um_test kernel module.