packet_hexdump(data + 6, size - 6);
}
+static void read_supported_features_cmd(const void *data, uint8_t size)
+{
+ uint8_t page = get_u8(data);
+
+ print_field("Page: 0x%2.2x", page);
+}
+
+static void read_supported_features_rsp(const void *data, uint8_t size)
+{
+ uint8_t status = get_u8(data);
+ uint8_t page = get_u8(data + 1);
+ uint8_t max_pages = get_u8(data + 2);
+
+ print_status(status);
+ print_field("Page: 0x%2.2x", page);
+ print_field("Max Pages: 0x%2.2x", max_pages);
+ print_field("Supported Features:");
+ packet_hexdump(data + 3, size - 3);
+}
+
static const struct vendor_ocf vendor_ocf_table[] = {
{ 0x001, "Reset",
reset_cmd, 8, true,
{ 0x08e, "Memory Write",
memory_write_cmd, 6, false,
status_rsp, 1, true },
+ { 0x0a6, "Read Supported Features",
+ read_supported_features_cmd, 1, true,
+ read_supported_features_rsp, 19, true },
+
{ }
};