linux/drivers/net
Matt Johnston 80be9b2c0d mctp i2c: MCTP I2C binding driver
Provides MCTP network transport over an I2C bus, as specified in
DMTF DSP0237. All messages between nodes are sent as SMBus Block Writes.

Each I2C bus to be used for MCTP is flagged in devicetree by a
'mctp-controller' property on the bus node. Each flagged bus gets a
mctpi2cX net device created based on the bus number. A
'mctp-i2c-controller' I2C client needs to be added under the adapter. In
an I2C mux situation the mctp-i2c-controller node must be attached only
to the root I2C bus. The I2C client will handle incoming I2C slave block
write data for subordinate busses as well as its own bus.

In configurations without devicetree a driver instance can be attached
to a bus using the I2C slave new_device mechanism.

The MCTP core will hold/release the MCTP I2C device while responses
are pending (a 6 second timeout or once a socket is closed, response
received etc). While held the MCTP I2C driver will lock the I2C bus so
that the correct I2C mux remains selected while responses are received.

(Ideally we would just lock the mux to keep the current bus selected for
the response rather than a full I2C bus lock, but that isn't exposed in
the I2C mux API)

This driver requires I2C adapters that allow 255 byte transfers
(SMBus 3.0) as the specification requires a minimum MTU of 68 bytes.

Signed-off-by: Matt Johnston <matt@codeconstruct.com.au>
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-11-15 14:11:25 +00:00
..
appletalk
arcnet
bonding bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed 2021-11-05 10:14:38 +00:00
caif
can Networking fixes for 5.16-rc1, including fixes from bpf, can 2021-11-11 09:49:36 -08:00
dsa net: dsa: vsc73xxx: Make vsc73xx_remove() return void 2021-11-15 13:15:07 +00:00
ethernet net: stmmac: enhance XDP ZC driver level switching performance 2021-11-15 12:56:34 +00:00
fddi
fjes
hamradio Networking fixes for 5.16-rc1, including fixes from bpf, can 2021-11-11 09:49:36 -08:00
hippi
hyperv hyperv-next for 5.16 2021-11-02 10:56:49 -07:00
ieee802154
ipa
ipvlan
mctp mctp i2c: MCTP I2C binding driver 2021-11-15 14:11:25 +00:00
mdio
netdevsim netdevsim: fix uninit value in nsim_drv_configure_vfs() 2021-11-01 16:29:56 -07:00
pcs
phy net: phy: fix duplex out of sync problem while changing settings 2021-11-04 16:46:29 -07:00
plip
ppp TTY / Serial driver update for 5.16-rc1 2021-11-04 09:09:37 -07:00
slip
team
usb
vmxnet3 net: vmxnet3: remove multiple false checks in vmxnet3_ethtool.c 2021-11-01 16:35:27 -07:00
wan
wireguard
wireless Core: 2021-11-02 06:20:58 -07:00
wwan net: wwan: iosm: fix compilation warning 2021-11-11 11:45:44 +00:00
xen-netback
amt.c amt: use cancel_delayed_work() instead of flush_delayed_work() in amt_fini() 2021-11-09 19:12:56 -08:00
bareudp.c net: bareudp: fix duplicate checks of data[] expressions 2021-10-29 13:41:28 +01:00
dummy.c
eql.c
geneve.c
gtp.c
ifb.c ifb: fix building without CONFIG_NET_CLS_ACT 2021-10-29 14:01:11 +01:00
Kconfig amt: add IPV6 Kconfig dependency 2021-11-09 14:00:13 +00:00
LICENSE.SRC
loopback.c
macsec.c
macvlan.c
macvtap.c
Makefile amt: add control plane of amt interface 2021-11-01 13:36:08 +00:00
mdio.c
mhi_net.c
mii.c
net_failover.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c net: sungem_phy: fix code indentation 2021-11-09 11:45:54 +00:00
tap.c
thunderbolt.c
tun.c
veth.c
virtio_net.c vhost,virtio,vhost: fixes,features 2021-11-03 15:00:39 -07:00
vrf.c
vsockmon.c
vxlan.c
xen-netfront.c