Lines Matching refs:family

37     def __init__(self, family, attr_set, attr, value):  argument
38 super().__init__(family, attr_set, attr, value)
49 if self.nested_attrs == family.name:
54 if self.nested_attrs in self.family.consts:
258 def __init__(self, family, attr_set, attr, value): argument
259 super().__init__(family, attr_set, attr, value)
277 self.is_bitfield = self.family.consts[self.attr['enum']]['type'] == 'flags'
282 if maybe_enum and self.family.consts[self.attr['enum']].enum_name:
297 enum = self.family.consts[self.attr['enum']]
300 flags = self.family.consts[self.checks['flags-mask']]
307 enum = self.family.consts[self.attr['enum']]
466 for _, attr in ri.family.pure_nested_structs[self.nested_attrs].member_list():
471 def __init__(self, family, attr_set, attr, value, base_type): argument
472 super().__init__(family, attr_set, attr, value)
598 def __init__(self, family, space_name, type_list=None, inherited=None): argument
599 self.family = family
601 self.attr_set = family.attr_sets[space_name]
607 if family.name == c_lower(space_name):
612 if self.nested and space_name in family.consts:
672 def __init__(self, family, yaml): argument
673 self.render_name = c_lower(family.name + '-' + yaml['name'])
685 super().__init__(family, yaml)
701 def __init__(self, family, yaml): argument
702 super().__init__(family, yaml)
707 elif self.name == family.name:
708 pfx = family.name + '-a-'
714 self.name_prefix = family.attr_sets[self.subset_of].name_prefix
715 self.max_name = family.attr_sets[self.subset_of].max_name
725 if self.c_name == self.family.c_name:
730 t = TypeScalar(self.family, self, elem, value)
732 t = TypeUnused(self.family, self, elem, value)
734 t = TypePad(self.family, self, elem, value)
736 t = TypeFlag(self.family, self, elem, value)
738 t = TypeString(self.family, self, elem, value)
740 t = TypeBinary(self.family, self, elem, value)
742 t = TypeNest(self.family, self, elem, value)
744 t = TypeArrayNest(self.family, self, elem, value)
746 t = TypeNestTypeValue(self.family, self, elem, value)
751 t = TypeMultiAttr(self.family, self, elem, value, t)
757 def __init__(self, family, yaml, req_value, rsp_value): argument
758 super().__init__(family, yaml, req_value, rsp_value)
760 self.render_name = family.name + '_' + c_lower(self.name)
775 self.enum_name = self.family.op_prefix + c_upper(self.name)
777 self.enum_name = self.family.async_op_prefix + c_upper(self.name)
1010 def __init__(self, cw, family, ku_space, op, op_mode, attr_set=None): argument
1011 self.family = family
1034 if attr_set in family.consts:
1044 self.struct[op_dir] = Struct(family, self.attr_set,
1047 … self.struct['reply'] = Struct(family, self.attr_set, type_list=op['event']['attributes'])
1369 def put_op_name_fwd(family, cw): argument
1373 def put_op_name(family, cw): argument
1376 for op_name, op in family.msgs.items():
1385 _put_enum_to_str_helper(cw, family.name + '_op', map_name, 'op')
1388 def put_enum_to_str_fwd(family, cw, enum): argument
1395 def put_enum_to_str(family, cw, enum): argument
1877 if terminate and ri and policy_should_be_static(struct.family):
1883 if ri and policy_should_be_static(struct.family):
1908 def kernel_can_gen_family_struct(family): argument
1909 return family.proto == 'genetlink'
1912 def policy_should_be_static(family): argument
1913 return family.kernel_policy == 'split' or kernel_can_gen_family_struct(family)
1916 def print_kernel_op_table_fwd(family, cw, terminate): argument
1917 exported = not kernel_can_gen_family_struct(family)
1925 struct_type = pol_to_struct[family.kernel_policy]
1929 elif family.kernel_policy == 'split':
1931 for op in family.ops.values():
1937 cnt = len(family.ops)
1950 for name in family.hooks['pre']['do']['list']:
1954 for name in family.hooks['post']['do']['list']:
1958 for name in family.hooks['pre']['dump']['list']:
1961 for name in family.hooks['post']['dump']['list']:
1967 for op_name, op in family.ops.items():
1983 def print_kernel_op_table_hdr(family, cw): argument
1984 print_kernel_op_table_fwd(family, cw, terminate=True)
1987 def print_kernel_op_table(family, cw): argument
1988 print_kernel_op_table_fwd(family, cw, terminate=False)
1989 if family.kernel_policy == 'global' or family.kernel_policy == 'per-op':
1990 for op_name, op in family.ops.items():
2004 if family.kernel_policy == 'per-op':
2005 struct = Struct(family, op['attribute-set'],
2015 elif family.kernel_policy == 'split':
2019 for op_name, op in family.ops.items():
2046 struct = Struct(family, op['attribute-set'],
2064 def print_kernel_mcgrp_hdr(family, cw): argument
2065 if not family.mcgrps['list']:
2069 for grp in family.mcgrps['list']:
2076 def print_kernel_mcgrp_src(family, cw): argument
2077 if not family.mcgrps['list']:
2080 cw.block_start('static const struct genl_multicast_group ' + family.name + '_nl_mcgrps[] =')
2081 for grp in family.mcgrps['list']:
2089 def print_kernel_family_struct_hdr(family, cw): argument
2090 if not kernel_can_gen_family_struct(family):
2097 def print_kernel_family_struct_src(family, cw): argument
2098 if not kernel_can_gen_family_struct(family):
2102 cw.p('.name\t\t= ' + family.fam_key + ',')
2103 cw.p('.version\t= ' + family.ver_key + ',')
2107 if family.kernel_policy == 'per-op':
2110 elif family.kernel_policy == 'split':
2113 if family.mcgrps['list']:
2119 def uapi_enum_start(family, cw, obj, ckey='', enum_name='enum-name'): argument
2125 start_line = 'enum ' + family.name + '_' + c_lower(obj[ckey])
2129 def render_uapi(family, cw): argument
2135 defines = [(family.fam_key, family["name"]),
2136 (family.ver_key, family.get('version', 1))]
2141 for const in family['definitions']:
2149 enum = family.consts[const['name']]
2163 uapi_enum_start(family, cw, const, 'name')
2185 defines.append([c_upper(family.get('c-define-name',
2193 max_by_define = family.get('max-by-define', False)
2195 for _, attr_set in family.attr_sets.items():
2199 cnt_name = c_upper(family.get('attr-cnt-name', f"__{attr_set.name_prefix}MAX"))
2203 uapi_enum_start(family, cw, attr_set.yaml, 'enum-name')
2221 separate_ntf = 'async-prefix' in family['operations']
2223 max_name = c_upper(family.get('cmd-max-name', f"{family.op_prefix}MAX"))
2224 cnt_name = c_upper(family.get('cmd-cnt-name', f"__{family.op_prefix}MAX"))
2227 uapi_enum_start(family, cw, family['operations'], 'enum-name')
2229 for op in family.msgs.values():
2249 uapi_enum_start(family, cw, family['operations'], enum_name='async-enum')
2250 for op in family.msgs.values():
2263 for grp in family.mcgrps['list']:
2284 def render_user_family(family, cw, prototype): argument
2290 if family.ntfs:
2292 for ntf_op_name, ntf_op in family.ntfs.items():
2294 op = family.ops[ntf_op['notify']]
2295 ri = RenderInfo(cw, family, "user", op, "notify")
2297 ri = RenderInfo(cw, family, "user", ntf_op, "event")
2301 for op_name, op in family.ops.items():
2304 ri = RenderInfo(cw, family, "user", op, "event")
2311 if family.ntfs: