HomeFreeBSD

linuxkpi: unbreak linux_i2cbb

Description

linuxkpi: unbreak linux_i2cbb

This is a joint work with manu.

  • fixed conditions in do_i2c_transfer and i2c_transfer as linux_i2cbb does not set adapter->algo->master_xfer but does set adapter->algo_data;
  • fixed parent bus specification for linux_i2cbb driver module;
  • actually implemented iicbb_transfer method;
  • added iicbb_pre_xfer and iicbb_post_xfer methods;
  • removed unnecessary and harmful delays (and other extra logic) from iicbb methods as iicbb driver already has them;
  • added setting of iicbb speed based on algo_data->udelay, so that iicbb uses correct delays;

PR: 265920
Fixes: 1961a14a4743 linuxkpi: Add i2c support
MFC after: 2 weeks
Sponsored by: Beckhoff Automation GmbH & Co. KG (manu's work)

Details

Provenance
manuAuthored on Aug 18 2022, 3:34 PM
avgCommitted on Aug 24 2022, 1:23 PM
Parents
rG211053f952d8: arm64: Remove unused typedef
Branches
Unknown
Tags
Unknown