Lines Matching defs:class

2903 static int tcam_user_eth_class_enable(struct niu *np, unsigned long class,
2909 if (class < CLASS_CODE_ETHERTYPE1 ||
2910 class > CLASS_CODE_ETHERTYPE2)
2913 reg = L2_CLS(class - CLASS_CODE_ETHERTYPE1);
2925 static int tcam_user_eth_class_set(struct niu *np, unsigned long class,
2931 if (class < CLASS_CODE_ETHERTYPE1 ||
2932 class > CLASS_CODE_ETHERTYPE2 ||
2936 reg = L2_CLS(class - CLASS_CODE_ETHERTYPE1);
2946 static int tcam_user_ip_class_enable(struct niu *np, unsigned long class,
2952 if (class < CLASS_CODE_USER_PROG1 ||
2953 class > CLASS_CODE_USER_PROG4)
2956 reg = L3_CLS(class - CLASS_CODE_USER_PROG1);
2967 static int tcam_user_ip_class_set(struct niu *np, unsigned long class,
2974 if (class < CLASS_CODE_USER_PROG1 ||
2975 class > CLASS_CODE_USER_PROG4 ||
2981 reg = L3_CLS(class - CLASS_CODE_USER_PROG1);
6948 static int niu_class_to_ethflow(u64 class, int *flow_type)
6950 switch (class) {
6988 static int niu_ethflow_to_class(int flow_type, u64 *class)
6992 *class = CLASS_CODE_TCP_IPV4;
6995 *class = CLASS_CODE_UDP_IPV4;
7000 *class = CLASS_CODE_AH_ESP_IPV4;
7003 *class = CLASS_CODE_SCTP_IPV4;
7006 *class = CLASS_CODE_TCP_IPV6;
7009 *class = CLASS_CODE_UDP_IPV6;
7014 *class = CLASS_CODE_AH_ESP_IPV6;
7017 *class = CLASS_CODE_SCTP_IPV6;
7076 u64 class;
7080 if (!niu_ethflow_to_class(nfc->flow_type, &class))
7083 if (np->parent->tcam_key[class - CLASS_CODE_USER_PROG1] &
7087 nfc->data = niu_flowkey_to_ethflow(np->parent->flow_key[class -
7175 u64 class;
7188 class = (tp->key[0] & TCAM_V4KEY0_CLASS_CODE) >>
7190 ret = niu_class_to_ethflow(class, &fsp->flow_type);
7312 u64 class;
7316 if (!niu_ethflow_to_class(nfc->flow_type, &class))
7319 if (class < CLASS_CODE_USER_PROG1 ||
7320 class > CLASS_CODE_SCTP_IPV6)
7325 flow_key = np->parent->tcam_key[class -
7328 nw64(TCAM_KEY(class - CLASS_CODE_USER_PROG1), flow_key);
7329 np->parent->tcam_key[class - CLASS_CODE_USER_PROG1] = flow_key;
7334 if (np->parent->tcam_key[class - CLASS_CODE_USER_PROG1] &
7337 flow_key = np->parent->tcam_key[class -
7340 nw64(TCAM_KEY(class - CLASS_CODE_USER_PROG1),
7342 np->parent->tcam_key[class - CLASS_CODE_USER_PROG1] =
7352 nw64(FLOW_KEY(class - CLASS_CODE_USER_PROG1), flow_key);
7353 np->parent->flow_key[class - CLASS_CODE_USER_PROG1] = flow_key;
7361 int l2_rdc_tab, u64 class)
7372 tp->key[0] = class << TCAM_V4KEY0_CLASS_CODE_SHIFT;
7436 u64 class;
7460 class = parent->l3_cls[i];
7466 /* Program new user IP class */
7469 class = CLASS_CODE_USER_PROG1;
7472 class = CLASS_CODE_USER_PROG2;
7475 class = CLASS_CODE_USER_PROG3;
7478 class = CLASS_CODE_USER_PROG4;
7481 class = CLASS_CODE_UNRECOG;
7484 ret = tcam_user_ip_class_set(np, class, 0,
7491 ret = tcam_user_ip_class_enable(np, class, 1);
7494 parent->l3_cls[i] = class;
7502 netdev_info(np->dev, "niu%d: %s(): Could not find/insert class for pid %d\n",
7509 if (!niu_ethflow_to_class(fsp->flow_type, &class)) {
7528 niu_get_tcamkey_from_ip4fs(fsp, tp, l2_rdc_table, class);
7541 niu_get_tcamkey_from_ip4fs(fsp, tp, l2_rdc_table, class);
7592 u64 class;
7603 /* if the entry is of a user defined class, then update*/
7604 class = (tp->key[0] & TCAM_V4KEY0_CLASS_CODE) >>
7607 if (class >= CLASS_CODE_USER_PROG1 && class <= CLASS_CODE_USER_PROG4) {
7610 if (parent->l3_cls[i] == class) {
7613 /* disable class */
7615 class,
7626 netdev_info(np->dev, "niu%d: In %s(): Usr class 0x%llx not found\n",
7628 (unsigned long long)class);