---
title: tIOPCIDeviceResetTypes
framework: pcidriverkit
role: symbol
role_heading: Enumeration
path: pcidriverkit/tiopcideviceresettypes
---

# tIOPCIDeviceResetTypes

## Declaration

```occ
typedef enum tIOPCIDeviceResetTypes : unsigned int { ... } tIOPCIDeviceResetTypes;
```

## Overview

Overview         This will issue a hot reset from its upstream bridge by setting the secondary bus reset bit in the bridge's control         register.         specific function exists.         specific function exists. Upon completion, the device is unusable until the caller requests reset with type         kIOPCIDeviceResetTypeWarmResetEnable.

This type facilitates the generation of a cold reset, i.e. by removing power before using kIOPCIDeviceResetTypeWarmResetDisable         and re-applying it before using kIOPCIDeviceResetTypeWarmResetEnable.         (e.g. deassert PERST#). See kIOPCIDeviceResetTypeWarmResetDisable for more details.

## Topics

### Enumeration Cases

- [kIOPCIDeviceResetTypeFunctionReset](pcidriverkit/tiopcideviceresettypes/kiopcideviceresettypefunctionreset.md)
- [kIOPCIDeviceResetTypeHotReset](pcidriverkit/tiopcideviceresettypes/kiopcideviceresettypehotreset.md)
- [kIOPCIDeviceResetTypeWarmReset](pcidriverkit/tiopcideviceresettypes/kiopcideviceresettypewarmreset.md)
- [kIOPCIDeviceResetTypeWarmResetDisable](pcidriverkit/tiopcideviceresettypes/kiopcideviceresettypewarmresetdisable.md)
- [kIOPCIDeviceResetTypeWarmResetEnable](pcidriverkit/tiopcideviceresettypes/kiopcideviceresettypewarmresetenable.md)

## See Also

### Enumerations

- [Anonymous](pcidriverkit/anonymous-enum.md)
- [tIOPCIAccessOptions](pcidriverkit/tiopciaccessoptions.md)
- [tIOPCIDeviceResetOptions](pcidriverkit/tiopcideviceresetoptions.md)
- [tIOPCILinkSpeed](pcidriverkit/tiopcilinkspeed.md)
- [IOPCIBARType](pcidriverkit/iopcibartype.md)
- [IOPCILinkSpeed](pcidriverkit/iopcilinkspeed.md)
- [IOPCIMemoryRange](pcidriverkit/iopcimemoryrange.md)
- [IOPCISaveDeviceStateOptions](pcidriverkit/iopcisavedevicestateoptions.md)
- [tIOPCIAccessOptions](pcidriverkit/tiopciaccessoptions.md)
- [tIOPCIDeviceResetOptions](pcidriverkit/tiopcideviceresetoptions.md)
- [tIOPCILinkControlASPMBits](pcidriverkit/tiopcilinkcontrolaspmbits.md)
- [tIOPCILinkSpeed](pcidriverkit/tiopcilinkspeed.md)
- [Interrupt Types](pcidriverkit/interrupt-types-enum.md)
