Lines Matching +full:json +full:- +full:schema
2 # SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
17 Verify and convert command-line arguments to the ynl-compatible request.
20 valid_attrs.remove('header') # not user-provided
44 Pretty-print a set of fields from the reply. desc specifies the
69 Print out the speed-like strings from the value dict.
71 speed_re = re.compile(r'[0-9]+base[^/]+/.+')
81 'dev-name': args.device,
98 if msg['header']['dev-name'] == args.device:
99 if args.json:
110 Convert ynl-formatted bitmask to a dict of bit=value.
127 parser.add_argument('--json', action=argparse.BooleanOptionalAction)
128 parser.add_argument('--show-priv-flags', action=argparse.BooleanOptionalAction)
129 parser.add_argument('--set-priv-flags', action=argparse.BooleanOptionalAction)
130 parser.add_argument('--show-eee', action=argparse.BooleanOptionalAction)
131 parser.add_argument('--set-eee', action=argparse.BooleanOptionalAction)
132 parser.add_argument('-a', '--show-pause', action=argparse.BooleanOptionalAction)
133 parser.add_argument('-A', '--set-pause', action=argparse.BooleanOptionalAction)
134 parser.add_argument('-c', '--show-coalesce', action=argparse.BooleanOptionalAction)
135 parser.add_argument('-C', '--set-coalesce', action=argparse.BooleanOptionalAction)
136 parser.add_argument('-g', '--show-ring', action=argparse.BooleanOptionalAction)
137 parser.add_argument('-G', '--set-ring', action=argparse.BooleanOptionalAction)
138 parser.add_argument('-k', '--show-features', action=argparse.BooleanOptionalAction)
139 parser.add_argument('-K', '--set-features', action=argparse.BooleanOptionalAction)
140 parser.add_argument('-l', '--show-channels', action=argparse.BooleanOptionalAction)
141 parser.add_argument('-L', '--set-channels', action=argparse.BooleanOptionalAction)
142 parser.add_argument('-T', '--show-time-stamping', action=argparse.BooleanOptionalAction)
143 parser.add_argument('-S', '--statistics', action=argparse.BooleanOptionalAction)
144 # TODO: --show-tunnels tunnel-info-get
145 # TODO: --show-module module-get
146 # TODO: --get-plca-cfg plca-get
147 # TODO: --get-plca-status plca-get-status
148 # TODO: --show-mm mm-get
149 # TODO: --show-fec fec-get
150 # TODO: --dump-module-eerpom module-eeprom-get
151 # TODO: pse-get
152 # TODO: rss-get
159 schema = os.path.join(schema_dir(), 'genetlink-legacy.yaml')
161 ynl = YnlFamily(spec, schema)
169 return doit(ynl, args, 'eee-set')
172 return doit(ynl, args, 'pause-set')
175 return doit(ynl, args, 'coalesce-set')
183 return doit(ynl, args, 'channels-set')
186 return doit(ynl, args, 'rings-set')
189 flags = bits_to_dict(dumpit(ynl, args, 'privflags-get')['flags'])
194 eee = dumpit(ynl, args, 'eee-get')
195 ours = bits_to_dict(eee['modes-ours'])
196 peer = bits_to_dict(eee['modes-peer'])
201 status = status + ' - active'
203 status = status + ' - inactive'
208 print_field(eee, ('tx-lpi-timer', 'Tx LPI'))
215 print_field(dumpit(ynl, args, 'pause-get'),
222 print_field(dumpit(ynl, args, 'coalesce-get'))
226 reply = dumpit(ynl, args, 'features-get')
253 reply = dumpit(ynl, args, 'channels-get')
256 print('Pre-set maximums:')
258 ('rx-max', 'RX'),
259 ('tx-max', 'TX'),
260 ('other-max', 'Other'),
261 ('combined-max', 'Combined'))
265 ('rx-count', 'RX'),
266 ('tx-count', 'TX'),
267 ('other-count', 'Other'),
268 ('combined-count', 'Combined'))
273 reply = dumpit(ynl, args, 'channels-get')
277 print('Pre-set maximums:')
279 ('rx-max', 'RX'),
280 ('rx-mini-max', 'RX Mini'),
281 ('rx-jumbo-max', 'RX Jumbo'),
282 ('tx-max', 'TX'))
287 ('rx-mini', 'RX Mini'),
288 ('rx-jumbo', 'RX Jumbo'),
292 ('rx-buf-len', 'RX Buf Len'),
293 ('cqe-size', 'CQE Size'),
294 ('tx-push', 'TX Push', 'bool'))
302 strset = dumpit(ynl, args, 'strset-get')
312 #{ 'name': 'eth-phy', 'value': True },
313 { 'name': 'eth-mac', 'value': True },
314 #{ 'name': 'eth-ctrl', 'value': True },
321 rsp = dumpit(ynl, args, 'stats-get', req)
332 tsinfo = dumpit(ynl, args, 'tsinfo-get', req)
339 print(f'PTP Hardware Clock: {tsinfo.get("phc-index", "none")}')
341 if 'tx-types' in tsinfo:
343 [print(f'\t{v}') for v in bits_to_dict(tsinfo['tx-types'])]
347 if 'rx-filters' in tsinfo:
349 [print(f'\t{v}') for v in bits_to_dict(tsinfo['rx-filters'])]
360 linkmodes = dumpit(ynl, args, 'linkmodes-get')
370 print_field(ours, ('Autoneg', 'Supports auto-negotiation', 'yn'))
397 print(f'Auto-negotiation: {autoneg}')
408 linkinfo = dumpit(ynl, args, 'linkinfo-get')
423 mdix = mdix_ctrl.get(linkinfo['tp-mdix-ctrl'], None)
427 mdix = mdix_ctrl.get(linkinfo['tp-mdix'], 'Unknown (auto)')
428 print(f'MDI-X: {mdix}')
430 debug = dumpit(ynl, args, 'debug-get')
434 linkstate = dumpit(ynl, args, 'linkstate-get')
439 # TODO: wol-get