mi-mctp: Add support for More Processing Required responses
This change allows the mi-mctp transport to receive "more processing
required" responses from MI commands. When we detect a MPR response, we
keep listening for a subsequent message containing the actual response.
The NVMe-MI spec allows for only one MPR response per request.
To do this, we need to perform explicit tag control for MCTP messaging;
we cannot use the kernel's default tag handling, which would expire the
tag value once we've received the first (MPR) response. Instead, we use
the tag control ioctl()s to allocate tags, and expire once we receive
the final response.
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>