xref: /openbmc/linux/tools/perf/trace/beauty/kvm_ioctl.sh (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
145717b7fSArnaldo Carvalho de Melo#!/bin/sh
2794f594eSArnaldo Carvalho de Melo# SPDX-License-Identifier: LGPL-2.1
345717b7fSArnaldo Carvalho de Melo
461b229ceSArnaldo Carvalho de Melo[ $# -eq 1 ] && header_dir=$1 || header_dir=tools/include/uapi/linux/
545717b7fSArnaldo Carvalho de Melo
645717b7fSArnaldo Carvalho de Meloprintf "static const char *kvm_ioctl_cmds[] = {\n"
745717b7fSArnaldo Carvalho de Meloregex='^#[[:space:]]*define[[:space:]]+KVM_(\w+)[[:space:]]+_IO[RW]*\([[:space:]]*KVMIO[[:space:]]*,[[:space:]]*(0x[[:xdigit:]]+).*'
8*818448e9STiezhu Yanggrep -E $regex ${header_dir}/kvm.h	| \
945717b7fSArnaldo Carvalho de Melo	sed -r "s/$regex/\2 \1/g"	| \
10*818448e9STiezhu Yang	grep -E -v " ((ARM|PPC|S390)_|[GS]ET_(DEBUGREGS|PIT2|XSAVE|TSC_KHZ)|CREATE_SPAPR_TCE_64)" | \
1145717b7fSArnaldo Carvalho de Melo	sort | xargs printf "\t[%s] = \"%s\",\n"
1245717b7fSArnaldo Carvalho de Meloprintf "};\n"
13