---
title: selectConfig
framework: kernel
role: pseudoSymbol
path: kernel/ioatadevice/1813913-selectconfig
---

# selectConfig

Tell the bus what speed to use for your device.

## Declaration

```occ
virtual IOReturn selectConfig(
 IOATADevConfig *configRequest); 
```

## Parameters

- `configRequest`: pointer to a valid and initialized IOATADevConfig object.

## Return Value

Return Value kIOSuccess (0) if the configuration was succesfully selected.

## Overview

Overview This should only be called once during a disk drivers start method before registering its availability, and must be called prior to issuing any data IO transactions.

## See Also

### Miscellaneous

- [allocCommand](kernel/ioatadevice/1813891-alloccommand.md)
- [executeCommand](kernel/ioatadevice/1813893-executecommand.md)
- [freeCommand](kernel/ioatadevice/1813895-freecommand.md)
- [getDeviceType](kernel/ioatadevice/1813897-getdevicetype.md)
- [getUnitID](kernel/ioatadevice/1813899-getunitid.md)
- [matchLocation](kernel/ioatadevice/1813901-matchlocation.md)
- [matchPropertyTable(OSDictionary *)](kernel/ioatadevice/1813903-matchpropertytable.md)
- [matchPropertyTable(OSDictionary *, SInt32 *)](kernel/ioatadevice/1813905-matchpropertytable.md)
- [notifyEvent](kernel/ioatadevice/1813907-notifyevent.md)
- [provideBusInfo](kernel/ioatadevice/1813909-providebusinfo.md)
- [provideConfig](kernel/ioatadevice/1813911-provideconfig.md)
