ipc: accept any u32 convertible as command id

This commit is contained in:
Michael Scire 2019-06-20 21:49:40 -07:00
parent 4ccee42577
commit 7660d782e0

View File

@ -650,26 +650,24 @@ constexpr Result WrapIpcCommandImpl(IpcResponseContext *ctx) {
} }
template <u32 c, auto CommandImpl, FirmwareVersion l = FirmwareVersion_Min, FirmwareVersion h = FirmwareVersion_Max> template <auto c, auto CommandImpl, FirmwareVersion l = FirmwareVersion_Min, FirmwareVersion h = FirmwareVersion_Max>
inline static constexpr ServiceCommandMeta MakeServiceCommandMeta() { inline static constexpr ServiceCommandMeta MakeServiceCommandMeta() {
return { return {
.fw_low = l, .fw_low = l,
.fw_high = h, .fw_high = h,
.cmd_id = c, .cmd_id = static_cast<u32>(c),
.handler = WrapIpcCommandImpl<CommandImpl>, .handler = WrapIpcCommandImpl<CommandImpl>,
}; };
}; };
template <u32 c, auto CommandImpl, typename OverrideClassType, FirmwareVersion l = FirmwareVersion_Min, FirmwareVersion h = FirmwareVersion_Max> template <auto c, auto CommandImpl, typename OverrideClassType, FirmwareVersion l = FirmwareVersion_Min, FirmwareVersion h = FirmwareVersion_Max>
inline static constexpr ServiceCommandMeta MakeServiceCommandMetaEx() { inline static constexpr ServiceCommandMeta MakeServiceCommandMetaEx() {
return { return {
.fw_low = l, .fw_low = l,
.fw_high = h, .fw_high = h,
.cmd_id = c, .cmd_id = static_cast<u32>(c),
.handler = WrapIpcCommandImpl<CommandImpl, OverrideClassType>, .handler = WrapIpcCommandImpl<CommandImpl, OverrideClassType>,
}; };
}; };
#pragma GCC diagnostic pop #pragma GCC diagnostic pop