mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-10-18 16:21:58 +00:00

Introducing the function that does the ATM cell alignment, and modifying tc_calc_rtable() to use this based upon a linklayer parameter. Modified from original to use constants from atm.h and fix all the usages of rtable in same patch. Signed-off-by: Jesper Dangaard Brouer <hawk@comx.dk> Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
33 lines
823 B
C
33 lines
823 B
C
#ifndef _TC_CORE_H_
|
|
#define _TC_CORE_H_ 1
|
|
|
|
#include <asm/types.h>
|
|
#include <linux/pkt_sched.h>
|
|
|
|
#define TIME_UNITS_PER_SEC 1000000
|
|
|
|
enum link_layer {
|
|
LINKLAYER_ETHERNET=1,
|
|
LINKLAYER_ATM =2,
|
|
};
|
|
|
|
|
|
int tc_core_time2big(unsigned time);
|
|
unsigned tc_core_time2tick(unsigned time);
|
|
unsigned tc_core_tick2time(unsigned tick);
|
|
unsigned tc_core_time2ktime(unsigned time);
|
|
unsigned tc_core_ktime2time(unsigned ktime);
|
|
unsigned tc_calc_xmittime(unsigned rate, unsigned size);
|
|
unsigned tc_calc_xmitsize(unsigned rate, unsigned ticks);
|
|
int tc_calc_rtable(struct tc_ratespec *r, __u32 *rtab,
|
|
int cell_log, unsigned mtu, enum link_layer link_layer);
|
|
|
|
int tc_setup_estimator(unsigned A, unsigned time_const, struct tc_estimator *est);
|
|
|
|
int tc_core_init(void);
|
|
|
|
extern struct rtnl_handle g_rth;
|
|
extern int is_batch_mode;
|
|
|
|
#endif
|