<!--
{
  "availability" : [
    "macCatalyst: 14.0.0 -",
    "macOS: 10.15.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "IOUSBHost",
  "identifier" : "/documentation/IOUSBHost/IOUSBHostPipe/adjust(with:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "IOUSBHost"
    ],
    "preciseIdentifier" : "c:objc(cs)IOUSBHostPipe(im)adjustPipeWithDescriptors:error:"
  },
  "title" : "adjust(with:)"
}
-->

# adjust(with:)

Adjusts the behavior of periodic endpoints to consume a different amount of bus bandwidth.

```
func adjust(with descriptors: UnsafePointer<IOUSBHostIOSourceDescriptors>) throws
```

## Parameters

`descriptors`

A reference to [`IOUSBHostIOSourceDescriptors`](/documentation/IOUSBHost/IOUSBHostIOSourceDescriptors) describing the new endpoint policy.

## Discussion

During creation, periodic (interrupt and isochronous) endpoints reserve bus bandwidth to allow for maximum packet size, mult (the maximum number of packets that this endpoint supports), burst size, and the endpoint service interval.

If an endpoint won’t use all of the allocated bandwidth, use [`adjust(with:)`](/documentation/IOUSBHost/IOUSBHostPipe/adjust(with:)) to reduce the bandwidth reserved for the endpoint. Copy the original endpoint descriptors, adjust maximum packet size, mult, burst size, and interval, then pass to [`adjust(with:)`](/documentation/IOUSBHost/IOUSBHostPipe/adjust(with:)). The altered descriptors must pass validation from the kernel for policy changes to process.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)