1*9fd420abSGabriele Monaco /* SPDX-License-Identifier: GPL-2.0 */ 2*9fd420abSGabriele Monaco /* 3*9fd420abSGabriele Monaco * Automatically generated C representation of tss automaton 4*9fd420abSGabriele Monaco * For further information about this format, see kernel documentation: 5*9fd420abSGabriele Monaco * Documentation/trace/rv/deterministic_automata.rst 6*9fd420abSGabriele Monaco */ 7*9fd420abSGabriele Monaco 8*9fd420abSGabriele Monaco enum states_tss { 9*9fd420abSGabriele Monaco thread_tss = 0, 10*9fd420abSGabriele Monaco sched_tss, 11*9fd420abSGabriele Monaco state_max_tss 12*9fd420abSGabriele Monaco }; 13*9fd420abSGabriele Monaco 14*9fd420abSGabriele Monaco #define INVALID_STATE state_max_tss 15*9fd420abSGabriele Monaco 16*9fd420abSGabriele Monaco enum events_tss { 17*9fd420abSGabriele Monaco sched_switch_tss = 0, 18*9fd420abSGabriele Monaco schedule_entry_tss, 19*9fd420abSGabriele Monaco schedule_exit_tss, 20*9fd420abSGabriele Monaco event_max_tss 21*9fd420abSGabriele Monaco }; 22*9fd420abSGabriele Monaco 23*9fd420abSGabriele Monaco struct automaton_tss { 24*9fd420abSGabriele Monaco char *state_names[state_max_tss]; 25*9fd420abSGabriele Monaco char *event_names[event_max_tss]; 26*9fd420abSGabriele Monaco unsigned char function[state_max_tss][event_max_tss]; 27*9fd420abSGabriele Monaco unsigned char initial_state; 28*9fd420abSGabriele Monaco bool final_states[state_max_tss]; 29*9fd420abSGabriele Monaco }; 30*9fd420abSGabriele Monaco 31*9fd420abSGabriele Monaco static const struct automaton_tss automaton_tss = { 32*9fd420abSGabriele Monaco .state_names = { 33*9fd420abSGabriele Monaco "thread", 34*9fd420abSGabriele Monaco "sched" 35*9fd420abSGabriele Monaco }, 36*9fd420abSGabriele Monaco .event_names = { 37*9fd420abSGabriele Monaco "sched_switch", 38*9fd420abSGabriele Monaco "schedule_entry", 39*9fd420abSGabriele Monaco "schedule_exit" 40*9fd420abSGabriele Monaco }, 41*9fd420abSGabriele Monaco .function = { 42*9fd420abSGabriele Monaco { INVALID_STATE, sched_tss, INVALID_STATE }, 43*9fd420abSGabriele Monaco { sched_tss, INVALID_STATE, thread_tss }, 44*9fd420abSGabriele Monaco }, 45*9fd420abSGabriele Monaco .initial_state = thread_tss, 46*9fd420abSGabriele Monaco .final_states = { 1, 0 }, 47*9fd420abSGabriele Monaco }; 48