Re: [PATCH] usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 26, 2021 at 01:21:31PM -0700, Subbaraman Narayanamurthy wrote:
> > If such a source is connected it's possible the UCSI FW could have
> 
> s/UCSI FW/PPM

Right, PPM is a more apt descriptor. Waiting to see if Heikki has any
feedback first before sending a V2.

> > We can resolve this by instead retrieving and storing up to the
> > maximum of 7 PDOs in the con->src_pdos array. This would involve
> > two calls to the GET_PDOS command.
> > 
> 
> This issue (see the signature below) is found by enabling UBSAN and
> connecting a charger adapter that can advertise 5 PDOs and RPDO selected
> by PPM is 5.
> 
> [  151.545106][   T70] Unexpected kernel BRK exception at EL1
> [  151.545112][   T70] Internal error: BRK handler: f2005512 [#1] PREEMPT SMP
> ...
> [  151.545499][   T70] pc : ucsi_psy_get_prop+0x208/0x20c
> [  151.545507][   T70] lr : power_supply_show_property+0xc0/0x328
> ...
> [  151.545542][   T70] Call trace:
> [  151.545544][   T70]  ucsi_psy_get_prop+0x208/0x20c
> [  151.545546][   T70]  power_supply_uevent+0x1a4/0x2f0
> [  151.545550][   T70]  dev_uevent+0x200/0x384
> [  151.545555][   T70]  kobject_uevent_env+0x1d4/0x7e8
> [  151.545557][   T70]  power_supply_changed_work+0x174/0x31c
> [  151.545562][   T70]  process_one_work+0x244/0x6f0
> [  151.545564][   T70]  worker_thread+0x3e0/0xa64

UBSAN FTW. Want me to copy this trace into the commit text as well?

Jack
-- 
The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux