• Jeremy Kerr's avatar
    mctp: Add MCTP-over-serial transport binding · a0c2ccd9
    Jeremy Kerr authored
    This change adds a MCTP Serial transport binding, as defined by DMTF
    specificiation DSP0253 - "MCTP Serial Transport Binding". This is
    implemented as a new serial line discipline, and can be attached to
    arbitrary tty devices.
    
    From the Kconfig description:
    
      This driver provides an MCTP-over-serial interface, through a
      serial line-discipline, as defined by DMTF specification "DSP0253 -
      MCTP Serial Transport Binding". By attaching the ldisc to a serial
      device, we get a new net device to transport MCTP packets.
    
      This allows communication with external MCTP endpoints which use
      serial as their transport. It can also be used as an easy way to
      provide MCTP connectivity between virtual machines, by forwarding
      data between simple virtual serial devices.
    
      Say y here if you need to connect to MCTP endpoints over serial. To
      compile as a module, use m; the module will be called mctp-serial.
    
    Once the N_MCTP line discipline is set [using ioctl(TCIOSETD)], we get a
    new netdev suitable for MCTP communication.
    
    The 'mctp' utility[1] provides a simple wrapper for this ioctl, using
    'link serial <device>':
    
      # mctp link serial /dev/ttyS0 &
      # mctp link
      dev lo index 1 address 0x00:00:00:00:00:00 net 1 mtu 65536 up
      dev mctpserial0 index 5 address 0x(no-addr) net 1 mtu 68 down
    
    [1]: https://github.com/CodeConstruct/mctpSigned-off-by: default avatarJeremy Kerr <jk@codeconstruct.com.au>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    a0c2ccd9
mctp-serial.c 10.8 KB