Package: usb_consts_pkg

Description

Copyright lowRISC contributors.
Licensed under the Apache License, Version 2.0, see LICENSE for details.
SPDX-License-Identifier: Apache-2.0

Types

Name Type Description
usb_pid_type_e enum logic [1:0] {
UsbPidTypeSpecial = 2'b00,
UsbPidTypeToken = 2'b01,
UsbPidTypeHandshake = 2'b10,
UsbPidTypeData = 2'b11 }
usb_pid_e enum logic [3:0] {
UsbPidOut = 4'b0001,
UsbPidIn = 4'b1001,
UsbPidSof = 4'b0101,
UsbPidSetup = 4'b1101,
UsbPidData0 = 4'b0011,
UsbPidData1 = 4'b1011,
UsbPidData2 = 4'b0111,
UsbPidMData = 4'b1111,
UsbPidAck = 4'b0010,
UsbPidNak = 4'b1010,
UsbPidStall = 4'b1110,
UsbPidNyet = 4'b0110 }
Direct from USB 2.0 Spec Table 8-1
usb_setup_request_e enum logic [7:0] {
SetupGetStatus = 8'd0,
SetupClearFeature = 8'd1,
SetupSetFeature = 8'd3,
SetupSetAddress = 8'd5,
SetupGetDescriptor = 8'd6,
SetupSetDescriptor = 8'd7,
SetupGetConfiguration = 8'd8,
SetupSetConfiguration = 8'd9,
SetupGetInterface = 8'd10,
SetupSetInterface = 8'd11,
SetupSynchFrame = 8'd12 }
USB SETUP packet commands (USB2.0 Table 9-4)
usb_dscr_type_e enum logic [7:0] {
DscrTypeDevice = 8'd1,
DscrTypeConfiguration = 8'd2,
DscrTypeString = 8'd3,
DscrTypeInterface = 8'd4,
DscrTypeEndpoint = 8'd5,
DscrTypeDevQual = 8'd6,
DscrTypeOthrSpd = 8'd7,
DscrTypeIntPwr = 8'd8 }
USB Desctiptor Types (USB2.0 Table 9-5)