1*93bac9cfSGabriele Monaco /* SPDX-License-Identifier: GPL-2.0 */ 2*93bac9cfSGabriele Monaco /* 3*93bac9cfSGabriele Monaco * Automatically generated C representation of snroc automaton 4*93bac9cfSGabriele Monaco * For further information about this format, see kernel documentation: 5*93bac9cfSGabriele Monaco * Documentation/trace/rv/deterministic_automata.rst 6*93bac9cfSGabriele Monaco */ 7*93bac9cfSGabriele Monaco 8*93bac9cfSGabriele Monaco enum states_snroc { 9*93bac9cfSGabriele Monaco other_context_snroc = 0, 10*93bac9cfSGabriele Monaco own_context_snroc, 11*93bac9cfSGabriele Monaco state_max_snroc 12*93bac9cfSGabriele Monaco }; 13*93bac9cfSGabriele Monaco 14*93bac9cfSGabriele Monaco #define INVALID_STATE state_max_snroc 15*93bac9cfSGabriele Monaco 16*93bac9cfSGabriele Monaco enum events_snroc { 17*93bac9cfSGabriele Monaco sched_set_state_snroc = 0, 18*93bac9cfSGabriele Monaco sched_switch_in_snroc, 19*93bac9cfSGabriele Monaco sched_switch_out_snroc, 20*93bac9cfSGabriele Monaco event_max_snroc 21*93bac9cfSGabriele Monaco }; 22*93bac9cfSGabriele Monaco 23*93bac9cfSGabriele Monaco struct automaton_snroc { 24*93bac9cfSGabriele Monaco char *state_names[state_max_snroc]; 25*93bac9cfSGabriele Monaco char *event_names[event_max_snroc]; 26*93bac9cfSGabriele Monaco unsigned char function[state_max_snroc][event_max_snroc]; 27*93bac9cfSGabriele Monaco unsigned char initial_state; 28*93bac9cfSGabriele Monaco bool final_states[state_max_snroc]; 29*93bac9cfSGabriele Monaco }; 30*93bac9cfSGabriele Monaco 31*93bac9cfSGabriele Monaco static const struct automaton_snroc automaton_snroc = { 32*93bac9cfSGabriele Monaco .state_names = { 33*93bac9cfSGabriele Monaco "other_context", 34*93bac9cfSGabriele Monaco "own_context" 35*93bac9cfSGabriele Monaco }, 36*93bac9cfSGabriele Monaco .event_names = { 37*93bac9cfSGabriele Monaco "sched_set_state", 38*93bac9cfSGabriele Monaco "sched_switch_in", 39*93bac9cfSGabriele Monaco "sched_switch_out" 40*93bac9cfSGabriele Monaco }, 41*93bac9cfSGabriele Monaco .function = { 42*93bac9cfSGabriele Monaco { INVALID_STATE, own_context_snroc, INVALID_STATE }, 43*93bac9cfSGabriele Monaco { own_context_snroc, INVALID_STATE, other_context_snroc }, 44*93bac9cfSGabriele Monaco }, 45*93bac9cfSGabriele Monaco .initial_state = other_context_snroc, 46*93bac9cfSGabriele Monaco .final_states = { 1, 0 }, 47*93bac9cfSGabriele Monaco }; 48