blob: 657b6cb0fc88c3e031fae7e27f2a80607bb02cd4 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors
//
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT
#ifndef SYSROOT_ZIRCON_SYSCALLS_SCHEDULER_H_
#define SYSROOT_ZIRCON_SYSCALLS_SCHEDULER_H_
#include <zircon/compiler.h>
#include <zircon/time.h>
__BEGIN_CDECLS
// Parameters for deadline scheduler profiles.
//
// At minimum, the following relation must hold:
//
// 0 < capacity <= relative_deadline <= period
//
// Additional restrictions on the range and granularity of the parameters may be
// enforced, which can vary from system to system.
//
typedef struct zx_sched_deadline_params {
// The worst case execution time of the deadline work per interarrival period.
zx_duration_t capacity;
// The worst case finish time of the deadline work, relative to the beginning
// of the current interarrival period.
zx_duration_t relative_deadline;
// The worst case interarrival period of the deadline work.
zx_duration_t period;
} zx_sched_deadline_params_t;
__END_CDECLS
#endif // SYSROOT_ZIRCON_SYSCALLS_SCHEDULER_H_