Hi, The broken conditions in the *_store() functions should now be fixed. Cover letter from v2: In this version there should be no more semantic changes. The original cover letter: This series moves the callback members from struct typec_capabilities to a new struct typec_operations. That removes the need for the drivers to keep a copy of the struct typec_capabilites if they don't need it, and struct typec_operations can probable always be constified. The change is small, however I think the code ends up being a bit more cleaner looking this way. Let me know if it's OK. thanks, Heikki Krogerus (9): usb: typec: Copy everything from struct typec_capability during registration usb: typec: Introduce typec_get_drvdata() usb: typec: Separate the operations vector usb: typec: tcpm: Start using struct typec_operations usb: typec: tps6598x: Start using struct typec_operations usb: typec: ucsi: Start using struct typec_operations usb: typec: hd3ss3220: Start using struct typec_operations usb: typec: Remove the callback members from struct typec_capability usb: typec: Remove unused members from struct typec_capability drivers/usb/typec/class.c | 37 ++++++++++++++++++-------- drivers/usb/typec/hd3ss3220.c | 24 +++++++++-------- drivers/usb/typec/tcpm/tcpm.c | 45 ++++++++++++++------------------ drivers/usb/typec/tps6598x.c | 49 +++++++++++++++++++---------------- drivers/usb/typec/ucsi/ucsi.c | 22 ++++++++-------- include/linux/usb/typec.h | 41 ++++++++++++++++------------- 6 files changed, 119 insertions(+), 99 deletions(-) -- 2.23.0