;   SPDX-License-Identifier: BSD-3-Clause
;   Copyright(c) 2010-2019 Intel Corporation.

; This file enables the following hierarchical scheduler configuration for each
; 10GbE output port:
;	* Single subport (subport 0):
;		- Subport rate set to 100% of port rate
;		- Each of the 13 traffic classes has rate set to 100% of port rate
;	* 4K pipes per subport 0 (pipes 0 .. 4095) with identical configuration:
;		- Pipe rate set to 1/4K of port rate
;		- Each of the 13 traffic classes has rate set to 100% of pipe rate
;		- Within lowest priority traffic class (best-effort), the byte-level
;		  WRR weights for the 4 queues of best effort traffic class are set
;		  to 1:1:1:1
;
; For more details, please refer to chapter "Quality of Service (QoS) Framework"
; of Data Plane Development Kit (DPDK) Programmer's Guide.

; Port configuration
[port]
frame overhead = 24
number of subports per port = 1
number of pipes per subport = 4096
queue sizes = 64 64 64 64 64 64 64 64 64 64 64 64 64

; Subport configuration
[subport 0]
tb rate = 1250000000           ; Bytes per second
tb size = 1000000              ; Bytes

tc 0 rate = 1250000000         ; Bytes per second
tc 1 rate = 1250000000         ; Bytes per second
tc 2 rate = 1250000000         ; Bytes per second
tc 3 rate = 1250000000         ; Bytes per second
tc 4 rate = 1250000000         ; Bytes per second
tc 5 rate = 1250000000         ; Bytes per second
tc 6 rate = 1250000000         ; Bytes per second
tc 7 rate = 1250000000         ; Bytes per second
tc 8 rate = 1250000000         ; Bytes per second
tc 9 rate = 1250000000         ; Bytes per second
tc 10 rate = 1250000000        ; Bytes per second
tc 11 rate = 1250000000        ; Bytes per second
tc 12 rate = 1250000000        ; Bytes per second

tc period = 10                 ; Milliseconds

pipe 0-4095 = 0                ; These pipes are configured with pipe profile 0

; Pipe configuration
[pipe profile 0]
tb rate = 305175               ; Bytes per second
tb size = 1000000              ; Bytes

tc 0 rate = 305175             ; Bytes per second
tc 1 rate = 305175             ; Bytes per second
tc 2 rate = 305175             ; Bytes per second
tc 3 rate = 305175             ; Bytes per second
tc 4 rate = 305175             ; Bytes per second
tc 5 rate = 305175             ; Bytes per second
tc 6 rate = 305175             ; Bytes per second
tc 7 rate = 305175             ; Bytes per second
tc 8 rate = 305175             ; Bytes per second
tc 9 rate = 305175             ; Bytes per second
tc 10 rate = 305175            ; Bytes per second
tc 11 rate = 305175            ; Bytes per second
tc 12 rate = 305175            ; Bytes per second

tc period = 40                ; Milliseconds

tc 12 oversubscription weight = 1

tc 12 wrr weights = 1 1 1 1

; RED params per traffic class and color (Green / Yellow / Red)
[red]
tc 0 wred min = 48 40 32
tc 0 wred max = 64 64 64
tc 0 wred inv prob = 10 10 10
tc 0 wred weight = 9 9 9

tc 1 wred min = 48 40 32
tc 1 wred max = 64 64 64
tc 1 wred inv prob = 10 10 10
tc 1 wred weight = 9 9 9

tc 2 wred min = 48 40 32
tc 2 wred max = 64 64 64
tc 2 wred inv prob = 10 10 10
tc 2 wred weight = 9 9 9

tc 3 wred min = 48 40 32
tc 3 wred max = 64 64 64
tc 3 wred inv prob = 10 10 10
tc 3 wred weight = 9 9 9

tc 4 wred min = 48 40 32
tc 4 wred max = 64 64 64
tc 4 wred inv prob = 10 10 10
tc 4 wred weight = 9 9 9

tc 5 wred min = 48 40 32
tc 5 wred max = 64 64 64
tc 5 wred inv prob = 10 10 10
tc 5 wred weight = 9 9 9

tc 6 wred min = 48 40 32
tc 6 wred max = 64 64 64
tc 6 wred inv prob = 10 10 10
tc 6 wred weight = 9 9 9

tc 7 wred min = 48 40 32
tc 7 wred max = 64 64 64
tc 7 wred inv prob = 10 10 10
tc 7 wred weight = 9 9 9

tc 8 wred min = 48 40 32
tc 8 wred max = 64 64 64
tc 8 wred inv prob = 10 10 10
tc 8 wred weight = 9 9 9