// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@available(platform="fuchsia", added=7)
library ddk.hw.physiter;

type SgEntry = struct {
    /// length starting at the scatter gather entry offset, must be non zero
    length uint64;
    /// offset relative to the buffer's vmo_offset
    offset uint64;
};
