This patch has been created from AVM's opensrc packages for 7490_06.83 and 7360_06.86
by applying to the kernel sources they contain the following command:

    diff -durN --no-dereference -x .gitignore 7490_06.83 7360_06.86 > this.patch

--- linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_debug.c	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_debug.c	2019-08-22 13:31:47.000000000 +0200
@@ -1,140 +1,5 @@
 #include "avm_event_gen_types.h"
 
-char *get_enum_wlan_sm_states_name (enum wlan_sm_states value) {
-	switch(value) {
-		default: return("wlan_sm_states_unknown");
-		case WLAN_SM_STATE_IDLE: return("WLAN_SM_STATE_IDLE");
-		case WLAN_SM_STATE_AUTH_KEY: return("WLAN_SM_STATE_AUTH_KEY");
-		case WLAN_SM_STATE_AUTHENTICATED: return("WLAN_SM_STATE_AUTHENTICATED");
-		case WLAN_SM_STATE_WAIT_FOR_ASS_RES: return("WLAN_SM_STATE_WAIT_FOR_ASS_RES");
-		case WLAN_SM_STATE_ASSOCIATED: return("WLAN_SM_STATE_ASSOCIATED");
-		case WLAN_SM_STATE_AUTHORIZED: return("WLAN_SM_STATE_AUTHORIZED");
-		case WLAN_SM_STATE_DEAUTHENTICATE: return("WLAN_SM_STATE_DEAUTHENTICATE");
-		case WLAN_SM_NUM_STATES: return("WLAN_SM_NUM_STATES");
-	}
-}
-
-char *get_enum___avm_event_cmd_name (enum __avm_event_cmd value) {
-	switch(value) {
-		default: return("__avm_event_cmd_unknown");
-		case avm_event_cmd_register: return("avm_event_cmd_register");
-		case avm_event_cmd_release: return("avm_event_cmd_release");
-		case avm_event_cmd_source_register: return("avm_event_cmd_source_register");
-		case avm_event_cmd_source_release: return("avm_event_cmd_source_release");
-		case avm_event_cmd_source_trigger: return("avm_event_cmd_source_trigger");
-		case avm_event_cmd_trigger: return("avm_event_cmd_trigger");
-		case avm_event_cmd_undef: return("avm_event_cmd_undef");
-	}
-}
-
-char *get_enum_avm_event_powermanagment_remote_action_name (enum avm_event_powermanagment_remote_action value) {
-	switch(value) {
-		default: return("avm_event_powermanagment_remote_action_unknown");
-		case avm_event_powermanagment_ressourceinfo: return("avm_event_powermanagment_ressourceinfo");
-		case avm_event_powermanagment_activatepowermode: return("avm_event_powermanagment_activatepowermode");
-	}
-}
-
-char *get_enum_avm_event_switch_type_name (enum avm_event_switch_type value) {
-	switch(value) {
-		default: return("avm_event_switch_type_unknown");
-		case binary: return("binary");
-		case percent: return("percent");
-	}
-}
-
-char *get_enum__avm_event_push_button_key_name (enum _avm_event_push_button_key value) {
-	switch(value) {
-		default: return("_avm_event_push_button_key_unknown");
-		case avm_event_push_button_wlan_on_off: return("avm_event_push_button_wlan_on_off");
-		case avm_event_push_button_wlan_wps: return("avm_event_push_button_wlan_wps");
-		case avm_event_push_button_wlan_standby: return("avm_event_push_button_wlan_standby");
-		case avm_event_push_button_wlan_wps_station: return("avm_event_push_button_wlan_wps_station");
-		case avm_event_push_button_dect_paging: return("avm_event_push_button_dect_paging");
-		case avm_event_push_button_dect_pairing: return("avm_event_push_button_dect_pairing");
-		case avm_event_push_button_dect_on_off: return("avm_event_push_button_dect_on_off");
-		case avm_event_push_button_dect_standby: return("avm_event_push_button_dect_standby");
-		case avm_event_push_button_power_set_factory: return("avm_event_push_button_power_set_factory");
-		case avm_event_push_button_power_on_off: return("avm_event_push_button_power_on_off");
-		case avm_event_push_button_power_standby: return("avm_event_push_button_power_standby");
-		case avm_event_push_button_power_socket_on_off: return("avm_event_push_button_power_socket_on_off");
-		case avm_event_push_button_tools_profiling: return("avm_event_push_button_tools_profiling");
-		case avm_event_push_button_plc_on_off: return("avm_event_push_button_plc_on_off");
-		case avm_event_push_button_plc_pairing: return("avm_event_push_button_plc_pairing");
-		case avm_event_push_button_led_standby: return("avm_event_push_button_led_standby");
-		case avm_event_push_button_2fa_success: return("avm_event_push_button_2fa_success");
-	}
-}
-
-char *get_enum_ePLCState_name (enum ePLCState value) {
-	switch(value) {
-		default: return("ePLCState_unknown");
-		case PLCStateRunningNotConnected: return("PLCStateRunningNotConnected");
-		case PLCStateRunningConnected: return("PLCStateRunningConnected");
-		case PLCStateNotRunning: return("PLCStateNotRunning");
-	}
-}
-
-char *get_enum__avm_logtype_name (enum _avm_logtype value) {
-	switch(value) {
-		default: return("_avm_logtype_unknown");
-		case local_panic: return("local_panic");
-		case local_crash: return("local_crash");
-		case remote_panic: return("remote_panic");
-		case remote_crash: return("remote_crash");
-	}
-}
-
-char *get_enum_wlan_event_sel_name (enum wlan_event_sel value) {
-	switch(value) {
-		default: return("wlan_event_sel_unknown");
-		case INPUT_AUTH_1_OS_A: return("INPUT_AUTH_1_OS_A");
-		case INPUT_AUTH_1_SK_A: return("INPUT_AUTH_1_SK_A");
-		case INPUT_AUTH_1_D: return("INPUT_AUTH_1_D");
-		case INPUT_AUTH_3_A: return("INPUT_AUTH_3_A");
-		case INPUT_AUTH_3_D: return("INPUT_AUTH_3_D");
-		case INPUT_DE_AUTH_STATION: return("INPUT_DE_AUTH_STATION");
-		case INPUT_ASSOC_REQ_CHECK: return("INPUT_ASSOC_REQ_CHECK");
-		case INPUT_ASSOC_REQ_A: return("INPUT_ASSOC_REQ_A");
-		case INPUT_ASSOC_REQ_D: return("INPUT_ASSOC_REQ_D");
-		case INPUT_ASSOC_REQ_SEC_D: return("INPUT_ASSOC_REQ_SEC_D");
-		case INPUT_RE_ASSOC_REQ_CHECK: return("INPUT_RE_ASSOC_REQ_CHECK");
-		case INPUT_RE_ASSOC_REQ_A: return("INPUT_RE_ASSOC_REQ_A");
-		case INPUT_RE_ASSOC_REQ_D: return("INPUT_RE_ASSOC_REQ_D");
-		case INPUT_RE_ASSOC_REQ_SEC_D: return("INPUT_RE_ASSOC_REQ_SEC_D");
-		case INPUT_DIS_ASSOC_STATION: return("INPUT_DIS_ASSOC_STATION");
-		case INPUT_CLASS_3: return("INPUT_CLASS_3");
-		case INPUT_AUTH_TIMEOUT: return("INPUT_AUTH_TIMEOUT");
-		case INPUT_DE_AUTH_MNG_UNICAST: return("INPUT_DE_AUTH_MNG_UNICAST");
-		case INPUT_DE_AUTH_MNG_BROADCAST: return("INPUT_DE_AUTH_MNG_BROADCAST");
-		case INPUT_DIS_ASSOC_MNG_UNICAST: return("INPUT_DIS_ASSOC_MNG_UNICAST");
-		case INPUT_DIS_ASSOC_MNG_BROADCAST: return("INPUT_DIS_ASSOC_MNG_BROADCAST");
-		case INPUT_MAC_AUTHORIZE: return("INPUT_MAC_AUTHORIZE");
-		case INPUT_MAC_DE_AUTHORIZE: return("INPUT_MAC_DE_AUTHORIZE");
-		case INPUT_WDS_LINK_UP: return("INPUT_WDS_LINK_UP");
-		case INPUT_WDS_LINK_DOWN: return("INPUT_WDS_LINK_DOWN");
-		case INPUT_FRAME_TX_COMPLETE: return("INPUT_FRAME_TX_COMPLETE");
-		case INPUT_MADWIFI_WRONG_PSK: return("INPUT_MADWIFI_WRONG_PSK");
-		case INPUT_WPS: return("INPUT_WPS");
-		case INPUT_MINI: return("INPUT_MINI");
-		case INPUT_RADAR: return("INPUT_RADAR");
-		case INPUT_WPS_ENROLLEE: return("INPUT_WPS_ENROLLEE");
-		case INPUT_STA: return("INPUT_STA");
-		case INPUT_GREENAP_PS: return("INPUT_GREENAP_PS");
-		case INPUT_EAP_AUTHORIZED: return("INPUT_EAP_AUTHORIZED");
-		case INPUT_MWO_INTERFERENCE: return("INPUT_MWO_INTERFERENCE");
-		case INPUT_AUTH_EXPIRED: return("INPUT_AUTH_EXPIRED");
-		case INPUT_COEXIST_SWITCH: return("INPUT_COEXIST_SWITCH");
-		case INPUT_STA_ASSOC: return("INPUT_STA_ASSOC");
-		case INPUT_STA_AUTH: return("INPUT_STA_AUTH");
-		case INPUT_STA_AUTHORIZATION: return("INPUT_STA_AUTHORIZATION");
-		case INPUT_WDS_NO_TIAGGR: return("INPUT_WDS_NO_TIAGGR");
-		case INPUT_MAX_NODE_REACHED: return("INPUT_MAX_NODE_REACHED");
-		case INPUT_RADAR_DFS_WAIT: return("INPUT_RADAR_DFS_WAIT");
-		case INPUT_INTERFERENCE_CHAN_CHANGE: return("INPUT_INTERFERENCE_CHAN_CHANGE");
-	}
-}
-
 char *get_enum_wlan_info_sel_name (enum wlan_info_sel value) {
 	switch(value) {
 		default: return("wlan_info_sel_unknown");
@@ -169,20 +34,59 @@
 	}
 }
 
-char *get_enum_avm_event_tffs_call_type_name (enum avm_event_tffs_call_type value) {
+char *get_enum_avm_event_telephony_param_sel_name (enum avm_event_telephony_param_sel value) {
 	switch(value) {
-		default: return("avm_event_tffs_call_type_unknown");
-		case avm_event_tffs_call_open: return("avm_event_tffs_call_open");
-		case avm_event_tffs_call_close: return("avm_event_tffs_call_close");
-		case avm_event_tffs_call_read: return("avm_event_tffs_call_read");
-		case avm_event_tffs_call_write: return("avm_event_tffs_call_write");
-		case avm_event_tffs_call_cleanup: return("avm_event_tffs_call_cleanup");
-		case avm_event_tffs_call_reindex: return("avm_event_tffs_call_reindex");
-		case avm_event_tffs_call_info: return("avm_event_tffs_call_info");
-		case avm_event_tffs_call_init: return("avm_event_tffs_call_init");
-		case avm_event_tffs_call_deinit: return("avm_event_tffs_call_deinit");
-		case avm_event_tffs_call_notify: return("avm_event_tffs_call_notify");
-		case avm_event_tffs_call_paniclog: return("avm_event_tffs_call_paniclog");
+		default: return("avm_event_telephony_param_sel_unknown");
+		case avm_event_telephony_params_name: return("avm_event_telephony_params_name");
+		case avm_event_telephony_params_msn_name: return("avm_event_telephony_params_msn_name");
+		case avm_event_telephony_params_calling: return("avm_event_telephony_params_calling");
+		case avm_event_telephony_params_called: return("avm_event_telephony_params_called");
+		case avm_event_telephony_params_duration: return("avm_event_telephony_params_duration");
+		case avm_event_telephony_params_port: return("avm_event_telephony_params_port");
+		case avm_event_telephony_params_portname: return("avm_event_telephony_params_portname");
+		case avm_event_telephony_params_id: return("avm_event_telephony_params_id");
+		case avm_event_telephony_params_tam_path: return("avm_event_telephony_params_tam_path");
+	}
+}
+
+char *get_enum_avm_event_switch_type_name (enum avm_event_switch_type value) {
+	switch(value) {
+		default: return("avm_event_switch_type_unknown");
+		case binary: return("binary");
+		case percent: return("percent");
+	}
+}
+
+char *get_enum_wlan_sm_states_name (enum wlan_sm_states value) {
+	switch(value) {
+		default: return("wlan_sm_states_unknown");
+		case WLAN_SM_STATE_IDLE: return("WLAN_SM_STATE_IDLE");
+		case WLAN_SM_STATE_AUTH_KEY: return("WLAN_SM_STATE_AUTH_KEY");
+		case WLAN_SM_STATE_AUTHENTICATED: return("WLAN_SM_STATE_AUTHENTICATED");
+		case WLAN_SM_STATE_WAIT_FOR_ASS_RES: return("WLAN_SM_STATE_WAIT_FOR_ASS_RES");
+		case WLAN_SM_STATE_ASSOCIATED: return("WLAN_SM_STATE_ASSOCIATED");
+		case WLAN_SM_STATE_AUTHORIZED: return("WLAN_SM_STATE_AUTHORIZED");
+		case WLAN_SM_STATE_DEAUTHENTICATE: return("WLAN_SM_STATE_DEAUTHENTICATE");
+		case WLAN_SM_NUM_STATES: return("WLAN_SM_NUM_STATES");
+	}
+}
+
+char *get_enum_wlan_event_scan_type_name (enum wlan_event_scan_type value) {
+	switch(value) {
+		default: return("wlan_event_scan_type_unknown");
+		case WLAN_EVENT_SCAN_FINISHED: return("WLAN_EVENT_SCAN_FINISHED");
+	}
+}
+
+char *get_enum__avm_event_ethernet_speed_name (enum _avm_event_ethernet_speed value) {
+	switch(value) {
+		default: return("_avm_event_ethernet_speed_unknown");
+		case avm_event_ethernet_speed_no_link: return("avm_event_ethernet_speed_no_link");
+		case avm_event_ethernet_speed_10M: return("avm_event_ethernet_speed_10M");
+		case avm_event_ethernet_speed_100M: return("avm_event_ethernet_speed_100M");
+		case avm_event_ethernet_speed_1G: return("avm_event_ethernet_speed_1G");
+		case avm_event_ethernet_speed_error: return("avm_event_ethernet_speed_error");
+		case avm_event_ethernet_speed_items: return("avm_event_ethernet_speed_items");
 	}
 }
 
@@ -198,6 +102,58 @@
 	}
 }
 
+char *get_enum__avm_remotepcmlinktype_name (enum _avm_remotepcmlinktype value) {
+	switch(value) {
+		default: return("_avm_remotepcmlinktype_unknown");
+		case rpcmlink_register: return("rpcmlink_register");
+		case rpcmlink_release: return("rpcmlink_release");
+	}
+}
+
+char *get_enum_avm_event_powermanagment_remote_action_name (enum avm_event_powermanagment_remote_action value) {
+	switch(value) {
+		default: return("avm_event_powermanagment_remote_action_unknown");
+		case avm_event_powermanagment_ressourceinfo: return("avm_event_powermanagment_ressourceinfo");
+		case avm_event_powermanagment_activatepowermode: return("avm_event_powermanagment_activatepowermode");
+	}
+}
+
+char *get_enum_wlan_event_id_name (enum wlan_event_id value) {
+	switch(value) {
+		default: return("wlan_event_id_unknown");
+		case CLIENT_STATE_CHANGE: return("CLIENT_STATE_CHANGE");
+		case CLIENT_CONNECT_INFO: return("CLIENT_CONNECT_INFO");
+		case WLAN_EVENT_SCAN: return("WLAN_EVENT_SCAN");
+	}
+}
+
+char *get_enum_avm_event_led_id_name (enum avm_event_led_id value) {
+	switch(value) {
+		default: return("avm_event_led_id_unknown");
+		case avm_logical_led_inval: return("avm_logical_led_inval");
+		case avm_logical_led_ppp: return("avm_logical_led_ppp");
+		case avm_logical_led_error: return("avm_logical_led_error");
+		case avm_logical_led_pots: return("avm_logical_led_pots");
+		case avm_logical_led_info: return("avm_logical_led_info");
+		case avm_logical_led_traffic: return("avm_logical_led_traffic");
+		case avm_logical_led_freecall: return("avm_logical_led_freecall");
+		case avm_logical_led_avmusbwlan: return("avm_logical_led_avmusbwlan");
+		case avm_logical_led_sip: return("avm_logical_led_sip");
+		case avm_logical_led_mwi: return("avm_logical_led_mwi");
+		case avm_logical_led_fest_mwi: return("avm_logical_led_fest_mwi");
+		case avm_logical_led_isdn_d: return("avm_logical_led_isdn_d");
+		case avm_logical_led_isdn_b1: return("avm_logical_led_isdn_b1");
+		case avm_logical_led_isdn_b2: return("avm_logical_led_isdn_b2");
+		case avm_logical_led_lan: return("avm_logical_led_lan");
+		case avm_logical_led_lan1: return("avm_logical_led_lan1");
+		case avm_logical_led_adsl: return("avm_logical_led_adsl");
+		case avm_logical_led_power: return("avm_logical_led_power");
+		case avm_logical_led_usb: return("avm_logical_led_usb");
+		case avm_logical_led_wifi: return("avm_logical_led_wifi");
+		case avm_logical_led_last: return("avm_logical_led_last");
+	}
+}
+
 char *get_enum__powermanagment_device_name (enum _powermanagment_device value) {
 	switch(value) {
 		default: return("_powermanagment_device_unknown");
@@ -229,18 +185,25 @@
 	}
 }
 
-char *get_enum_avm_event_telephony_param_sel_name (enum avm_event_telephony_param_sel value) {
+char *get_enum___avm_event_cmd_name (enum __avm_event_cmd value) {
 	switch(value) {
-		default: return("avm_event_telephony_param_sel_unknown");
-		case avm_event_telephony_params_name: return("avm_event_telephony_params_name");
-		case avm_event_telephony_params_msn_name: return("avm_event_telephony_params_msn_name");
-		case avm_event_telephony_params_calling: return("avm_event_telephony_params_calling");
-		case avm_event_telephony_params_called: return("avm_event_telephony_params_called");
-		case avm_event_telephony_params_duration: return("avm_event_telephony_params_duration");
-		case avm_event_telephony_params_port: return("avm_event_telephony_params_port");
-		case avm_event_telephony_params_portname: return("avm_event_telephony_params_portname");
-		case avm_event_telephony_params_id: return("avm_event_telephony_params_id");
-		case avm_event_telephony_params_tam_path: return("avm_event_telephony_params_tam_path");
+		default: return("__avm_event_cmd_unknown");
+		case avm_event_cmd_register: return("avm_event_cmd_register");
+		case avm_event_cmd_release: return("avm_event_cmd_release");
+		case avm_event_cmd_source_register: return("avm_event_cmd_source_register");
+		case avm_event_cmd_source_release: return("avm_event_cmd_source_release");
+		case avm_event_cmd_source_trigger: return("avm_event_cmd_source_trigger");
+		case avm_event_cmd_trigger: return("avm_event_cmd_trigger");
+		case avm_event_cmd_undef: return("avm_event_cmd_undef");
+	}
+}
+
+char *get_enum_avm_event_tffs_notify_event_name (enum avm_event_tffs_notify_event value) {
+	switch(value) {
+		default: return("avm_event_tffs_notify_event_unknown");
+		case avm_event_tffs_notify_clear: return("avm_event_tffs_notify_clear");
+		case avm_event_tffs_notify_update: return("avm_event_tffs_notify_update");
+		case avm_event_tffs_notify_reinit: return("avm_event_tffs_notify_reinit");
 	}
 }
 
@@ -251,6 +214,37 @@
 	}
 }
 
+char *get_enum__cputype_name (enum _cputype value) {
+	switch(value) {
+		default: return("_cputype_unknown");
+		case host_cpu: return("host_cpu");
+		case remote_cpu: return("remote_cpu");
+	}
+}
+
+char *get_enum__avm_event_push_button_key_name (enum _avm_event_push_button_key value) {
+	switch(value) {
+		default: return("_avm_event_push_button_key_unknown");
+		case avm_event_push_button_wlan_on_off: return("avm_event_push_button_wlan_on_off");
+		case avm_event_push_button_wlan_wps: return("avm_event_push_button_wlan_wps");
+		case avm_event_push_button_wlan_standby: return("avm_event_push_button_wlan_standby");
+		case avm_event_push_button_wlan_wps_station: return("avm_event_push_button_wlan_wps_station");
+		case avm_event_push_button_dect_paging: return("avm_event_push_button_dect_paging");
+		case avm_event_push_button_dect_pairing: return("avm_event_push_button_dect_pairing");
+		case avm_event_push_button_dect_on_off: return("avm_event_push_button_dect_on_off");
+		case avm_event_push_button_dect_standby: return("avm_event_push_button_dect_standby");
+		case avm_event_push_button_power_set_factory: return("avm_event_push_button_power_set_factory");
+		case avm_event_push_button_power_on_off: return("avm_event_push_button_power_on_off");
+		case avm_event_push_button_power_standby: return("avm_event_push_button_power_standby");
+		case avm_event_push_button_power_socket_on_off: return("avm_event_push_button_power_socket_on_off");
+		case avm_event_push_button_tools_profiling: return("avm_event_push_button_tools_profiling");
+		case avm_event_push_button_plc_on_off: return("avm_event_push_button_plc_on_off");
+		case avm_event_push_button_plc_pairing: return("avm_event_push_button_plc_pairing");
+		case avm_event_push_button_led_standby: return("avm_event_push_button_led_standby");
+		case avm_event_push_button_2fa_success: return("avm_event_push_button_2fa_success");
+	}
+}
+
 char *get_enum__avm_event_id_name (enum _avm_event_id value) {
 	switch(value) {
 		default: return("_avm_event_id_unknown");
@@ -301,14 +295,24 @@
 	}
 }
 
-char *get_enum_wlan_info_special_name (enum wlan_info_special value) {
+char *get_enum__avm_logtype_name (enum _avm_logtype value) {
 	switch(value) {
-		default: return("wlan_info_special_unknown");
-		case STATUS_SUCCESS: return("STATUS_SUCCESS");
-		case STATUS_FAILURE: return("STATUS_FAILURE");
-		case STATUS_TIMEOUT: return("STATUS_TIMEOUT");
-		case STATUS_WPS_START: return("STATUS_WPS_START");
-		case STATUS_WPS_DISCOVERY: return("STATUS_WPS_DISCOVERY");
+		default: return("_avm_logtype_unknown");
+		case local_panic: return("local_panic");
+		case local_crash: return("local_crash");
+		case remote_panic: return("remote_panic");
+		case remote_crash: return("remote_crash");
+	}
+}
+
+char *get_enum_avm_event_firmware_type_name (enum avm_event_firmware_type value) {
+	switch(value) {
+		default: return("avm_event_firmware_type_unknown");
+		case box_firmware: return("box_firmware");
+		case fritz_fon_firmware: return("fritz_fon_firmware");
+		case fritz_dect_repeater: return("fritz_dect_repeater");
+		case fritz_plug_switch: return("fritz_plug_switch");
+		case fritz_hkr: return("fritz_hkr");
 	}
 }
 
@@ -322,59 +326,90 @@
 	}
 }
 
-char *get_enum__avm_event_ethernet_speed_name (enum _avm_event_ethernet_speed value) {
-	switch(value) {
-		default: return("_avm_event_ethernet_speed_unknown");
-		case avm_event_ethernet_speed_no_link: return("avm_event_ethernet_speed_no_link");
-		case avm_event_ethernet_speed_10M: return("avm_event_ethernet_speed_10M");
-		case avm_event_ethernet_speed_100M: return("avm_event_ethernet_speed_100M");
-		case avm_event_ethernet_speed_1G: return("avm_event_ethernet_speed_1G");
-		case avm_event_ethernet_speed_error: return("avm_event_ethernet_speed_error");
-		case avm_event_ethernet_speed_items: return("avm_event_ethernet_speed_items");
-	}
-}
-
-char *get_enum_avm_event_internet_new_ip_param_sel_name (enum avm_event_internet_new_ip_param_sel value) {
+char *get_enum_wlan_info_special_name (enum wlan_info_special value) {
 	switch(value) {
-		default: return("avm_event_internet_new_ip_param_sel_unknown");
-		case avm_event_internet_new_ip_v4: return("avm_event_internet_new_ip_v4");
-		case avm_event_internet_new_ip_v6: return("avm_event_internet_new_ip_v6");
+		default: return("wlan_info_special_unknown");
+		case STATUS_SUCCESS: return("STATUS_SUCCESS");
+		case STATUS_FAILURE: return("STATUS_FAILURE");
+		case STATUS_TIMEOUT: return("STATUS_TIMEOUT");
+		case STATUS_WPS_START: return("STATUS_WPS_START");
+		case STATUS_WPS_DISCOVERY: return("STATUS_WPS_DISCOVERY");
 	}
 }
 
-char *get_enum__avm_remotepcmlinktype_name (enum _avm_remotepcmlinktype value) {
+char *get_enum__avm_remote_wdt_cmd_name (enum _avm_remote_wdt_cmd value) {
 	switch(value) {
-		default: return("_avm_remotepcmlinktype_unknown");
-		case rpcmlink_register: return("rpcmlink_register");
-		case rpcmlink_release: return("rpcmlink_release");
+		default: return("_avm_remote_wdt_cmd_unknown");
+		case wdt_register: return("wdt_register");
+		case wdt_release: return("wdt_release");
+		case wdt_trigger: return("wdt_trigger");
 	}
 }
 
-char *get_enum_avm_event_firmware_type_name (enum avm_event_firmware_type value) {
+char *get_enum_avm_event_internet_new_ip_param_sel_name (enum avm_event_internet_new_ip_param_sel value) {
 	switch(value) {
-		default: return("avm_event_firmware_type_unknown");
-		case box_firmware: return("box_firmware");
-		case fritz_fon_firmware: return("fritz_fon_firmware");
-		case fritz_dect_repeater: return("fritz_dect_repeater");
-		case fritz_plug_switch: return("fritz_plug_switch");
-		case fritz_hkr: return("fritz_hkr");
+		default: return("avm_event_internet_new_ip_param_sel_unknown");
+		case avm_event_internet_new_ip_v4: return("avm_event_internet_new_ip_v4");
+		case avm_event_internet_new_ip_v6: return("avm_event_internet_new_ip_v6");
 	}
 }
 
-char *get_enum_wlan_event_id_name (enum wlan_event_id value) {
+char *get_enum_wlan_event_sel_name (enum wlan_event_sel value) {
 	switch(value) {
-		default: return("wlan_event_id_unknown");
-		case CLIENT_STATE_CHANGE: return("CLIENT_STATE_CHANGE");
-		case CLIENT_CONNECT_INFO: return("CLIENT_CONNECT_INFO");
-		case WLAN_EVENT_SCAN: return("WLAN_EVENT_SCAN");
+		default: return("wlan_event_sel_unknown");
+		case INPUT_AUTH_1_OS_A: return("INPUT_AUTH_1_OS_A");
+		case INPUT_AUTH_1_SK_A: return("INPUT_AUTH_1_SK_A");
+		case INPUT_AUTH_1_D: return("INPUT_AUTH_1_D");
+		case INPUT_AUTH_3_A: return("INPUT_AUTH_3_A");
+		case INPUT_AUTH_3_D: return("INPUT_AUTH_3_D");
+		case INPUT_DE_AUTH_STATION: return("INPUT_DE_AUTH_STATION");
+		case INPUT_ASSOC_REQ_CHECK: return("INPUT_ASSOC_REQ_CHECK");
+		case INPUT_ASSOC_REQ_A: return("INPUT_ASSOC_REQ_A");
+		case INPUT_ASSOC_REQ_D: return("INPUT_ASSOC_REQ_D");
+		case INPUT_ASSOC_REQ_SEC_D: return("INPUT_ASSOC_REQ_SEC_D");
+		case INPUT_RE_ASSOC_REQ_CHECK: return("INPUT_RE_ASSOC_REQ_CHECK");
+		case INPUT_RE_ASSOC_REQ_A: return("INPUT_RE_ASSOC_REQ_A");
+		case INPUT_RE_ASSOC_REQ_D: return("INPUT_RE_ASSOC_REQ_D");
+		case INPUT_RE_ASSOC_REQ_SEC_D: return("INPUT_RE_ASSOC_REQ_SEC_D");
+		case INPUT_DIS_ASSOC_STATION: return("INPUT_DIS_ASSOC_STATION");
+		case INPUT_CLASS_3: return("INPUT_CLASS_3");
+		case INPUT_AUTH_TIMEOUT: return("INPUT_AUTH_TIMEOUT");
+		case INPUT_DE_AUTH_MNG_UNICAST: return("INPUT_DE_AUTH_MNG_UNICAST");
+		case INPUT_DE_AUTH_MNG_BROADCAST: return("INPUT_DE_AUTH_MNG_BROADCAST");
+		case INPUT_DIS_ASSOC_MNG_UNICAST: return("INPUT_DIS_ASSOC_MNG_UNICAST");
+		case INPUT_DIS_ASSOC_MNG_BROADCAST: return("INPUT_DIS_ASSOC_MNG_BROADCAST");
+		case INPUT_MAC_AUTHORIZE: return("INPUT_MAC_AUTHORIZE");
+		case INPUT_MAC_DE_AUTHORIZE: return("INPUT_MAC_DE_AUTHORIZE");
+		case INPUT_WDS_LINK_UP: return("INPUT_WDS_LINK_UP");
+		case INPUT_WDS_LINK_DOWN: return("INPUT_WDS_LINK_DOWN");
+		case INPUT_FRAME_TX_COMPLETE: return("INPUT_FRAME_TX_COMPLETE");
+		case INPUT_MADWIFI_WRONG_PSK: return("INPUT_MADWIFI_WRONG_PSK");
+		case INPUT_WPS: return("INPUT_WPS");
+		case INPUT_MINI: return("INPUT_MINI");
+		case INPUT_RADAR: return("INPUT_RADAR");
+		case INPUT_WPS_ENROLLEE: return("INPUT_WPS_ENROLLEE");
+		case INPUT_STA: return("INPUT_STA");
+		case INPUT_GREENAP_PS: return("INPUT_GREENAP_PS");
+		case INPUT_EAP_AUTHORIZED: return("INPUT_EAP_AUTHORIZED");
+		case INPUT_MWO_INTERFERENCE: return("INPUT_MWO_INTERFERENCE");
+		case INPUT_AUTH_EXPIRED: return("INPUT_AUTH_EXPIRED");
+		case INPUT_COEXIST_SWITCH: return("INPUT_COEXIST_SWITCH");
+		case INPUT_STA_ASSOC: return("INPUT_STA_ASSOC");
+		case INPUT_STA_AUTH: return("INPUT_STA_AUTH");
+		case INPUT_STA_AUTHORIZATION: return("INPUT_STA_AUTHORIZATION");
+		case INPUT_WDS_NO_TIAGGR: return("INPUT_WDS_NO_TIAGGR");
+		case INPUT_MAX_NODE_REACHED: return("INPUT_MAX_NODE_REACHED");
+		case INPUT_RADAR_DFS_WAIT: return("INPUT_RADAR_DFS_WAIT");
+		case INPUT_INTERFERENCE_CHAN_CHANGE: return("INPUT_INTERFERENCE_CHAN_CHANGE");
 	}
 }
 
-char *get_enum__cputype_name (enum _cputype value) {
+char *get_enum_ePLCState_name (enum ePLCState value) {
 	switch(value) {
-		default: return("_cputype_unknown");
-		case host_cpu: return("host_cpu");
-		case remote_cpu: return("remote_cpu");
+		default: return("ePLCState_unknown");
+		case PLCStateRunningNotConnected: return("PLCStateRunningNotConnected");
+		case PLCStateRunningConnected: return("PLCStateRunningConnected");
+		case PLCStateNotRunning: return("PLCStateNotRunning");
 	}
 }
 
@@ -387,55 +422,20 @@
 	}
 }
 
-char *get_enum_avm_event_tffs_notify_event_name (enum avm_event_tffs_notify_event value) {
-	switch(value) {
-		default: return("avm_event_tffs_notify_event_unknown");
-		case avm_event_tffs_notify_clear: return("avm_event_tffs_notify_clear");
-		case avm_event_tffs_notify_update: return("avm_event_tffs_notify_update");
-		case avm_event_tffs_notify_reinit: return("avm_event_tffs_notify_reinit");
-	}
-}
-
-char *get_enum__avm_remote_wdt_cmd_name (enum _avm_remote_wdt_cmd value) {
-	switch(value) {
-		default: return("_avm_remote_wdt_cmd_unknown");
-		case wdt_register: return("wdt_register");
-		case wdt_release: return("wdt_release");
-		case wdt_trigger: return("wdt_trigger");
-	}
-}
-
-char *get_enum_wlan_event_scan_type_name (enum wlan_event_scan_type value) {
-	switch(value) {
-		default: return("wlan_event_scan_type_unknown");
-		case WLAN_EVENT_SCAN_FINISHED: return("WLAN_EVENT_SCAN_FINISHED");
-	}
-}
-
-char *get_enum_avm_event_led_id_name (enum avm_event_led_id value) {
+char *get_enum_avm_event_tffs_call_type_name (enum avm_event_tffs_call_type value) {
 	switch(value) {
-		default: return("avm_event_led_id_unknown");
-		case avm_logical_led_inval: return("avm_logical_led_inval");
-		case avm_logical_led_ppp: return("avm_logical_led_ppp");
-		case avm_logical_led_error: return("avm_logical_led_error");
-		case avm_logical_led_pots: return("avm_logical_led_pots");
-		case avm_logical_led_info: return("avm_logical_led_info");
-		case avm_logical_led_traffic: return("avm_logical_led_traffic");
-		case avm_logical_led_freecall: return("avm_logical_led_freecall");
-		case avm_logical_led_avmusbwlan: return("avm_logical_led_avmusbwlan");
-		case avm_logical_led_sip: return("avm_logical_led_sip");
-		case avm_logical_led_mwi: return("avm_logical_led_mwi");
-		case avm_logical_led_fest_mwi: return("avm_logical_led_fest_mwi");
-		case avm_logical_led_isdn_d: return("avm_logical_led_isdn_d");
-		case avm_logical_led_isdn_b1: return("avm_logical_led_isdn_b1");
-		case avm_logical_led_isdn_b2: return("avm_logical_led_isdn_b2");
-		case avm_logical_led_lan: return("avm_logical_led_lan");
-		case avm_logical_led_lan1: return("avm_logical_led_lan1");
-		case avm_logical_led_adsl: return("avm_logical_led_adsl");
-		case avm_logical_led_power: return("avm_logical_led_power");
-		case avm_logical_led_usb: return("avm_logical_led_usb");
-		case avm_logical_led_wifi: return("avm_logical_led_wifi");
-		case avm_logical_led_last: return("avm_logical_led_last");
+		default: return("avm_event_tffs_call_type_unknown");
+		case avm_event_tffs_call_open: return("avm_event_tffs_call_open");
+		case avm_event_tffs_call_close: return("avm_event_tffs_call_close");
+		case avm_event_tffs_call_read: return("avm_event_tffs_call_read");
+		case avm_event_tffs_call_write: return("avm_event_tffs_call_write");
+		case avm_event_tffs_call_cleanup: return("avm_event_tffs_call_cleanup");
+		case avm_event_tffs_call_reindex: return("avm_event_tffs_call_reindex");
+		case avm_event_tffs_call_info: return("avm_event_tffs_call_info");
+		case avm_event_tffs_call_init: return("avm_event_tffs_call_init");
+		case avm_event_tffs_call_deinit: return("avm_event_tffs_call_deinit");
+		case avm_event_tffs_call_notify: return("avm_event_tffs_call_notify");
+		case avm_event_tffs_call_paniclog: return("avm_event_tffs_call_paniclog");
 	}
 }
 
--- linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_endian.h	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_endian.h	2019-08-22 13:31:47.000000000 +0200
@@ -4,631 +4,290 @@
 
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_led_status'
+ * Endian Convert-Table for: 'struct _avm_event_mass_storage_mount'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_led_status[] = {
+struct _endian_convert convert_message_struct__avm_event_mass_storage_mount[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
 		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
 		.name = "header",
 		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), header),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_led_status",
-		.type_name   =  "enum avm_event_led_id",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
+		.type_name   =  "unsigned long long",
 		.flags = 0,
-		.name = "led",
-		.size = sizeof(enum avm_event_led_id),
-		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), led),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_led_id_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_led_id,
-		.enumName = "enum_table_avm_event_led_id"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "size",
+		.size = sizeof(unsigned long long),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), size),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_led_status",
-		.type_name   =  "unsigned int",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
+		.type_name   =  "unsigned long long",
 		.flags = 0,
-		.name = "state",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), state),
+		.name = "free",
+		.size = sizeof(unsigned long long),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), free),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
 		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "param_len",
+		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
+		.name = "name_length",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), param_len),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), name_length),
 	},
 	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
 		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "params",
-		.size = sizeof(unsigned char) * 245,
-		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), params),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_checkpoint'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_checkpoint[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_checkpoint",
-		.type_name   =  "struct _avm_event_header",
-		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_checkpoint __attribute__ ((packed)), event_header),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_checkpoint",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "node_id",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct _avm_event_checkpoint __attribute__ ((packed)), node_id),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_checkpoint",
-		.type_name   =  "uint64_t",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "checkpoints",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct _avm_event_checkpoint __attribute__ ((packed)), checkpoints),
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "name",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_remotepcmlink'
+ * Endian Convert-Table for: 'struct _avm_event_log'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_remotepcmlink[] = {
+struct _endian_convert convert_message_struct__avm_event_log[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.struct_name =  "convert_message_struct__avm_event_log",
 		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
 		.name = "event_header",
 		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), event_header),
+		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), event_header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
-		.type_name   =  "enum _avm_remotepcmlinktype",
+		.struct_name =  "convert_message_struct__avm_event_log",
+		.type_name   =  "enum _avm_logtype",
 		.flags = 0,
-		.name = "type",
-		.size = sizeof(enum _avm_remotepcmlinktype),
-		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remotepcmlinktype_name,
+		.name = "logtype",
+		.size = sizeof(enum _avm_logtype),
+		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), logtype),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_logtype_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_remotepcmlinktype,
-		.enumName = "enum_table__avm_remotepcmlinktype"
+		.enumInfo = enum_table__avm_logtype,
+		.enumName = "enum_table__avm_logtype"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.struct_name =  "convert_message_struct__avm_event_log",
 		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "sharedlen",
+		.name = "loglen",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), sharedlen),
+		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), loglen),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.struct_name =  "convert_message_struct__avm_event_log",
 		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "sharedpointer",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), sharedpointer),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_push_button'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_push_button[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_push_button",
-		.type_name   =  "enum _avm_event_id",
 		.flags = 0,
-		.name = "id",
-		.size = sizeof(enum _avm_event_id),
-		.offset = __builtin_offsetof(struct _avm_event_push_button __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_id,
-		.enumName = "enum_table__avm_event_id"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "logpointer",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), logpointer),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_push_button",
-		.type_name   =  "enum _avm_event_push_button_key",
+	[4] = {
+		.struct_name =  "convert_message_struct__avm_event_log",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "key",
-		.size = sizeof(enum _avm_event_push_button_key),
-		.offset = __builtin_offsetof(struct _avm_event_push_button __attribute__ ((packed)), key),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_push_button_key_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_push_button_key,
-		.enumName = "enum_table__avm_event_push_button_key"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_push_button",
-		.type_name   =  "uint32_t",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "pressed",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct _avm_event_push_button __attribute__ ((packed)), pressed),
+		.name = "checksum",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), checksum),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_remote_source_trigger_request'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_remote_source_trigger_request[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_remote_source_trigger_request",
-		.type_name   =  "struct avm_event_data",
+	[5] = {
+		.struct_name =  "convert_message_struct__avm_event_log",
+		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "data",
-		.substruct = convert_message_struct_avm_event_data,
-		.offset = __builtin_offsetof(struct avm_event_remote_source_trigger_request __attribute__ ((packed)), data),
+		.name = "rebootflag",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), rebootflag),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_close'
+ * Endian Convert-Table for: 'struct avm_event_powerline_status'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_close[] = {
+struct _endian_convert convert_message_struct_avm_event_powerline_status[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_close",
-		.type_name   =  "uint32_t",
+		.struct_name =  "convert_message_struct_avm_event_powerline_status",
+		.type_name   =  "enum ePLCState",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "dummy",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_close __attribute__ ((packed)), dummy),
+		.name = "status",
+		.size = sizeof(enum ePLCState),
+		.offset = __builtin_offsetof(struct avm_event_powerline_status __attribute__ ((packed)), status),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_ePLCState_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_ePLCState,
+		.enumName = "enum_table_ePLCState"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_rpc'
+ * Endian Convert-Table for: 'struct avm_event_firmware_update_available'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_rpc[] = {
+struct _endian_convert convert_message_struct_avm_event_firmware_update_available[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_rpc",
-		.type_name   =  "struct _avm_event_header",
-		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), event_header),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_rpc",
-		.type_name   =  "enum _avm_rpctype",
+		.struct_name =  "convert_message_struct_avm_event_firmware_update_available",
+		.type_name   =  "enum avm_event_firmware_type",
 		.flags = 0,
 		.name = "type",
-		.size = sizeof(enum _avm_rpctype),
-		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_rpctype_name,
+		.size = sizeof(enum avm_event_firmware_type),
+		.offset = __builtin_offsetof(struct avm_event_firmware_update_available __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_firmware_type_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_rpctype,
-		.enumName = "enum_table__avm_rpctype"
+		.enumInfo = enum_table_avm_event_firmware_type,
+		.enumName = "enum_table_avm_event_firmware_type"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_rpc",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "id",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), id),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_rpc",
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_firmware_update_available",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "length",
+		.name = "version_length",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), length),
+		.offset = __builtin_offsetof(struct avm_event_firmware_update_available __attribute__ ((packed)), version_length),
 	},
-	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_rpc",
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_firmware_update_available",
 		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "message",
+		.name = "version",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), message),
+		.offset = __builtin_offsetof(struct avm_event_firmware_update_available __attribute__ ((packed)), version),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_pm_info_stat'
+ * Endian Convert-Table for: 'struct avm_event_telephony_missed_call'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_pm_info_stat[] = {
+struct _endian_convert convert_message_struct_avm_event_telephony_missed_call[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "reserved1",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), reserved1),
+		.struct_name =  "convert_message_struct_avm_event_telephony_missed_call",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
+		.name = "length",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_telephony_missed_call __attribute__ ((packed)), length),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_sumact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_sumact),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_sumcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_sumcum),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_systemact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_systemact),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_systemcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_systemcum),
-	},
-	[5] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "system_status",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), system_status),
-	},
-	[6] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_dspact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dspact),
-	},
-	[7] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_dspcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dspcum),
-	},
-	[8] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_wlanact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_wlanact),
-	},
-	[9] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_wlancum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_wlancum),
-	},
-	[10] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "wlan_devices",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), wlan_devices),
-	},
-	[11] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "wlan_status",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), wlan_status),
-	},
-	[12] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_ethact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_ethact),
-	},
-	[13] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_ethcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_ethcum),
-	},
-	[14] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned short",
-		.flags = 0,
-		.name = "eth_status",
-		.size = sizeof(unsigned short),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), eth_status),
-	},
-	[15] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_abact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_abact),
-	},
-	[16] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_abcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_abcum),
-	},
-	[17] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned short",
-		.flags = 0,
-		.name = "isdn_status",
-		.size = sizeof(unsigned short),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), isdn_status),
-	},
-	[18] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_dectact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dectact),
-	},
-	[19] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_dectcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dectcum),
-	},
-	[20] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_battchargeact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_battchargeact),
-	},
-	[21] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_battchargecum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_battchargecum),
-	},
-	[22] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "dect_status",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), dect_status),
-	},
-	[23] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_usbhostact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_usbhostact),
-	},
-	[24] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_usbhostcum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_usbhostcum),
-	},
-	[25] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "usb_status",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), usb_status),
-	},
-	[26] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "signed char",
-		.flags = 0,
-		.name = "act_temperature",
-		.size = sizeof(signed char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), act_temperature),
-	},
-	[27] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "signed char",
-		.flags = 0,
-		.name = "min_temperature",
-		.size = sizeof(signed char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), min_temperature),
-	},
-	[28] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "signed char",
-		.flags = 0,
-		.name = "max_temperature",
-		.size = sizeof(signed char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), max_temperature),
-	},
-	[29] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "signed char",
-		.flags = 0,
-		.name = "avg_temperature",
-		.size = sizeof(signed char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), avg_temperature),
+		.struct_name =  "convert_message_struct_avm_event_telephony_missed_call",
+		.type_name   =  "struct _avm_event_telephony_missed_call_params",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "p",
+		.substruct = convert_message_struct__avm_event_telephony_missed_call_params,
+		.offset = __builtin_offsetof(struct avm_event_telephony_missed_call __attribute__ ((packed)), p),
 	},
-	[30] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_lteact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_lteact),
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_powermanagment_status'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_powermanagment_status[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_powermanagment_status",
+		.type_name   =  "enum _powermanagment_status_type",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "substatus",
+		.size = sizeof(enum _powermanagment_status_type),
+		.offset = __builtin_offsetof(struct avm_event_powermanagment_status __attribute__ ((packed)), substatus),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_status_type_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__powermanagment_status_type,
+		.enumName = "enum_table__powermanagment_status_type"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[31] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "rate_ltecum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_ltecum),
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_powermanagment_status",
+		.type_name   =  "union __powermanagment_status_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "param",
+		.substruct = convert_message_union___powermanagment_status_union,
+		.offset = __builtin_offsetof(struct avm_event_powermanagment_status __attribute__ ((packed)), param),
 	},
-	[32] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_cmd_param_register'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_cmd_param_register[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_cmd_param_register",
+		.type_name   =  "struct _avm_event_id_mask",
 		.flags = 0,
-		.name = "rate_dvbcact",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dvbcact),
+		.name = "mask",
+		.substruct = convert_message_struct__avm_event_id_mask,
+		.offset = __builtin_offsetof(struct _avm_event_cmd_param_register __attribute__ ((packed)), mask),
 	},
-	[33] = {
-		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
-		.type_name   =  "unsigned char",
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_cmd_param_register",
+		.type_name   =  "char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "rate_dvbccum",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dvbccum),
+		.name = "Name",
+		.size = sizeof(char) * 33,
+		.offset = __builtin_offsetof(struct _avm_event_cmd_param_register __attribute__ ((packed)), Name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_temperature'
+ * Endian Convert-Table for: 'struct _avm_event_cmd_param_release'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_temperature[] = {
+struct _endian_convert convert_message_struct__avm_event_cmd_param_release[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_temperature",
-		.type_name   =  "int",
+		.struct_name =  "convert_message_struct__avm_event_cmd_param_release",
+		.type_name   =  "char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "temperature",
-		.size = sizeof(int),
-		.offset = __builtin_offsetof(struct avm_event_temperature __attribute__ ((packed)), temperature),
+		.name = "Name",
+		.size = sizeof(char) * 33,
+		.offset = __builtin_offsetof(struct _avm_event_cmd_param_release __attribute__ ((packed)), Name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_wlan'
+ * Endian Convert-Table for: 'struct wlan_event_data_client_state_change'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_wlan[] = {
+struct _endian_convert convert_message_struct_wlan_event_data_client_state_change[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "struct _avm_event_header",
+		.struct_name =  "convert_message_struct_wlan_event_data_client_state_change",
+		.type_name   =  "struct wlan_event_data_client_common",
 		.flags = 0,
-		.name = "header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), header),
+		.name = "common",
+		.substruct = convert_message_struct_wlan_event_data_client_common,
+		.offset = __builtin_offsetof(struct wlan_event_data_client_state_change __attribute__ ((packed)), common),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "char",
-		.flags = 0,
-		.name = "mac",
-		.size = sizeof(char) * 6,
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), mac),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "u1",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), u1),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "event",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), event),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "info",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), info),
-	},
-	[5] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "status",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), status),
-	},
-	[6] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "u2",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), u2),
-	},
-	[7] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "char",
-		.flags = 0,
-		.name = "if_name",
-		.size = sizeof(char) * IFNAMSIZ,
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), if_name),
-	},
-	[8] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "ev_initiator",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), ev_initiator),
+		.struct_name =  "convert_message_struct_wlan_event_data_client_state_change",
+		.type_name   =  "uint8_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "state",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct wlan_event_data_client_state_change __attribute__ ((packed)), state),
 	},
-	[9] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_tffs_init'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_tffs_init[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_init",
+		.type_name   =  "int64_t",
 		.flags = 0,
-		.name = "ev_reason",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), ev_reason),
+		.name = "mem_offset",
+		.size = sizeof(int64_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_init __attribute__ ((packed)), mem_offset),
 	},
-	[10] = {
-		.struct_name =  "convert_message_struct__avm_event_wlan",
-		.type_name   =  "unsigned int",
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_init",
+		.type_name   =  "uint32_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "avm_capabilities",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), avm_capabilities),
+		.name = "max_seg_size",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_init __attribute__ ((packed)), max_seg_size),
 	},
 };
 
@@ -655,20 +314,6 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_deinit'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_deinit[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_deinit",
-		.type_name   =  "uint32_t",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "dummy",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_deinit __attribute__ ((packed)), dummy),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
  * Endian Convert-Table for: 'struct avm_event_internet_new_ip'
 \*------------------------------------------------------------------------------------------*/
 struct _endian_convert convert_message_struct_avm_event_internet_new_ip[] = {
@@ -696,696 +341,566 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_remotepcmlink'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_remotepcmlink[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_remotepcmlink",
-		.type_name   =  "enum _avm_remotepcmlinktype",
-		.flags = 0,
-		.name = "type",
-		.size = sizeof(enum _avm_remotepcmlinktype),
-		.offset = __builtin_offsetof(struct avm_event_remotepcmlink __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remotepcmlinktype_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_remotepcmlinktype,
-		.enumName = "enum_table__avm_remotepcmlinktype"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_remotepcmlink",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "sharedlen",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_remotepcmlink __attribute__ ((packed)), sharedlen),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_remotepcmlink",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "sharedpointer",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_remotepcmlink __attribute__ ((packed)), sharedpointer),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cmd_param_source_trigger'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cmd_param_source_trigger[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd_param_source_trigger",
-		.type_name   =  "enum _avm_event_id",
-		.flags = 0,
-		.name = "id",
-		.size = sizeof(enum _avm_event_id),
-		.offset = __builtin_offsetof(struct _avm_event_cmd_param_source_trigger __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_id,
-		.enumName = "enum_table__avm_event_id"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd_param_source_trigger",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "data_length",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_cmd_param_source_trigger __attribute__ ((packed)), data_length),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_reindex'
+ * Endian Convert-Table for: 'struct avm_event_tffs_deinit'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_reindex[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs_deinit[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_reindex",
+		.struct_name =  "convert_message_struct_avm_event_tffs_deinit",
 		.type_name   =  "uint32_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
 		.name = "dummy",
 		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_reindex __attribute__ ((packed)), dummy),
+		.offset = __builtin_offsetof(struct avm_event_tffs_deinit __attribute__ ((packed)), dummy),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct cpmac_event_struct'
+ * Endian Convert-Table for: 'struct _avm_event_rpc'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_cpmac_event_struct[] = {
+struct _endian_convert convert_message_struct__avm_event_rpc[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_cpmac_event_struct",
+		.struct_name =  "convert_message_struct__avm_event_rpc",
 		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
 		.name = "event_header",
 		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct cpmac_event_struct __attribute__ ((packed)), event_header),
+		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), event_header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_cpmac_event_struct",
-		.type_name   =  "unsigned int",
+		.struct_name =  "convert_message_struct__avm_event_rpc",
+		.type_name   =  "enum _avm_rpctype",
 		.flags = 0,
-		.name = "ports",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct cpmac_event_struct __attribute__ ((packed)), ports),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_cpmac_event_struct",
-		.type_name   =  "struct cpmac_port",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "port",
-		.substruct = convert_message_struct_cpmac_port,
-		.offset = __builtin_offsetof(struct cpmac_event_struct __attribute__ ((packed)), port),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_data'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_data[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_data",
-		.type_name   =  "enum _avm_event_id",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "id",
-		.size = sizeof(enum _avm_event_id),
-		.offset = __builtin_offsetof(struct avm_event_data __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
+		.name = "type",
+		.size = sizeof(enum _avm_rpctype),
+		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_rpctype_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_id,
-		.enumName = "enum_table__avm_event_id"
+		.enumInfo = enum_table__avm_rpctype,
+		.enumName = "enum_table__avm_rpctype"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_data",
-		.type_name   =  "union avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "data",
-		.substruct = convert_message_union_avm_event_data_union,
-		.offset = __builtin_offsetof(struct avm_event_data __attribute__ ((packed)), data),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_powermanagment_remote_ressourceinfo'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_powermanagment_remote_ressourceinfo[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote_ressourceinfo",
-		.type_name   =  "struct _avm_event_header",
-		.flags = 0,
-		.name = "header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), header),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote_ressourceinfo",
-		.type_name   =  "enum _powermanagment_device",
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_rpc",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "device",
-		.size = sizeof(enum _powermanagment_device),
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), device),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_device_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__powermanagment_device,
-		.enumName = "enum_table__powermanagment_device"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "id",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), id),
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote_ressourceinfo",
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_rpc",
 		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "power_rate",
+		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
+		.name = "length",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), power_rate),
+		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), length),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct__avm_event_rpc",
+		.type_name   =  "unsigned char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "message",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_rpc __attribute__ ((packed)), message),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_read'
+ * Endian Convert-Table for: 'struct avm_event_tffs_paniclog'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_read[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs_paniclog[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.struct_name =  "convert_message_struct_avm_event_tffs_paniclog",
 		.type_name   =  "uint64_t",
 		.flags = 0,
 		.name = "buff_addr",
 		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), buff_addr),
+		.offset = __builtin_offsetof(struct avm_event_tffs_paniclog __attribute__ ((packed)), buff_addr),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.struct_name =  "convert_message_struct_avm_event_tffs_paniclog",
 		.type_name   =  "uint64_t",
 		.flags = 0,
 		.name = "len",
 		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), len),
+		.offset = __builtin_offsetof(struct avm_event_tffs_paniclog __attribute__ ((packed)), len),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_read",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "id",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), id),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.struct_name =  "convert_message_struct_avm_event_tffs_paniclog",
 		.type_name   =  "int32_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
 		.name = "crc",
 		.size = sizeof(int32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), crc),
+		.offset = __builtin_offsetof(struct avm_event_tffs_paniclog __attribute__ ((packed)), crc),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cmd_param_trigger'
+ * Endian Convert-Table for: 'struct _avm_event_cmd'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cmd_param_trigger[] = {
+struct _endian_convert convert_message_struct__avm_event_cmd[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd_param_trigger",
-		.type_name   =  "enum _avm_event_id",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "id",
-		.size = sizeof(enum _avm_event_id),
-		.offset = __builtin_offsetof(struct _avm_event_cmd_param_trigger __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
+		.struct_name =  "convert_message_struct__avm_event_cmd",
+		.type_name   =  "enum __avm_event_cmd",
+		.flags = 0,
+		.name = "cmd",
+		.size = sizeof(enum __avm_event_cmd),
+		.offset = __builtin_offsetof(struct _avm_event_cmd __attribute__ ((packed)), cmd),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum___avm_event_cmd_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_id,
-		.enumName = "enum_table__avm_event_id"
+		.enumInfo = enum_table___avm_event_cmd,
+		.enumName = "enum_table___avm_event_cmd"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_cmd",
+		.type_name   =  "union _avm_event_cmd_param",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "param",
+		.substruct = convert_message_union__avm_event_cmd_param,
+		.offset = __builtin_offsetof(struct _avm_event_cmd __attribute__ ((packed)), param),
+	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_open'
+ * Endian Convert-Table for: 'struct avm_event_tffs_notify'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_open[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs_notify[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_open",
+		.struct_name =  "convert_message_struct_avm_event_tffs_notify",
 		.type_name   =  "uint32_t",
 		.flags = 0,
 		.name = "id",
 		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_open __attribute__ ((packed)), id),
+		.offset = __builtin_offsetof(struct avm_event_tffs_notify __attribute__ ((packed)), id),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_open",
-		.type_name   =  "enum avm_event_tffs_open_mode",
-		.flags = 0,
-		.name = "mode",
-		.size = sizeof(enum avm_event_tffs_open_mode),
-		.offset = __builtin_offsetof(struct avm_event_tffs_open __attribute__ ((packed)), mode),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_tffs_open_mode_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_tffs_open_mode,
-		.enumName = "enum_table_avm_event_tffs_open_mode"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_open",
-		.type_name   =  "uint32_t",
+		.struct_name =  "convert_message_struct_avm_event_tffs_notify",
+		.type_name   =  "enum avm_event_tffs_notify_event",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "max_segment_size",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_open __attribute__ ((packed)), max_segment_size),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_powermanagment_remote'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_powermanagment_remote[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote",
-		.type_name   =  "enum avm_event_powermanagment_remote_action",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "remote_action",
-		.size = sizeof(enum avm_event_powermanagment_remote_action),
-		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote __attribute__ ((packed)), remote_action),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_powermanagment_remote_action_name,
+		.name = "event",
+		.size = sizeof(enum avm_event_tffs_notify_event),
+		.offset = __builtin_offsetof(struct avm_event_tffs_notify __attribute__ ((packed)), event),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_tffs_notify_event_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_powermanagment_remote_action,
-		.enumName = "enum_table_avm_event_powermanagment_remote_action"
+		.enumInfo = enum_table_avm_event_tffs_notify_event,
+		.enumName = "enum_table_avm_event_tffs_notify_event"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote",
-		.type_name   =  "union avm_event_powermanagment_remote_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.substruct = convert_message_union_avm_event_powermanagment_remote_union,
-		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote __attribute__ ((packed)), param),
-	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_source_unregister'
+ * Endian Convert-Table for: 'struct _cpmac_event_struct'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_source_unregister[] = {
+struct _endian_convert convert_message_struct__cpmac_event_struct[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_source_unregister",
-		.type_name   =  "struct _avm_event_id_mask",
+		.struct_name =  "convert_message_struct__cpmac_event_struct",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "id_mask",
-		.substruct = convert_message_struct__avm_event_id_mask,
-		.offset = __builtin_offsetof(struct avm_event_source_unregister __attribute__ ((packed)), id_mask),
+		.name = "ports",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _cpmac_event_struct __attribute__ ((packed)), ports),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_source_unregister",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct__cpmac_event_struct",
+		.type_name   =  "struct cpmac_port",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "name",
-		.size = sizeof(char) * 32,
-		.offset = __builtin_offsetof(struct avm_event_source_unregister __attribute__ ((packed)), name),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_powermanagment_status'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_powermanagment_status[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_powermanagment_status",
-		.type_name   =  "enum _powermanagment_status_type",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "substatus",
-		.size = sizeof(enum _powermanagment_status_type),
-		.offset = __builtin_offsetof(struct avm_event_powermanagment_status __attribute__ ((packed)), substatus),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_status_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__powermanagment_status_type,
-		.enumName = "enum_table__powermanagment_status_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_powermanagment_status",
-		.type_name   =  "union __powermanagment_status_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.substruct = convert_message_union___powermanagment_status_union,
-		.offset = __builtin_offsetof(struct avm_event_powermanagment_status __attribute__ ((packed)), param),
+		.name = "port",
+		.substruct = convert_message_struct_cpmac_port,
+		.offset = __builtin_offsetof(struct _cpmac_event_struct __attribute__ ((packed)), port),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_mass_storage_mount'
+ * Endian Convert-Table for: 'struct _avm_event_led_status'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_mass_storage_mount[] = {
+struct _endian_convert convert_message_struct__avm_event_led_status[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
-		.type_name   =  "unsigned long long",
+		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
-		.name = "size",
-		.size = sizeof(unsigned long long),
-		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), size),
+		.name = "header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
-		.type_name   =  "unsigned long long",
+		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.type_name   =  "enum avm_event_led_id",
 		.flags = 0,
-		.name = "free",
-		.size = sizeof(unsigned long long),
-		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), free),
+		.name = "led",
+		.size = sizeof(enum avm_event_led_id),
+		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), led),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_led_id_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_avm_event_led_id,
+		.enumName = "enum_table_avm_event_led_id"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
+		.struct_name =  "convert_message_struct__avm_event_led_status",
 		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "name_length",
+		.flags = 0,
+		.name = "state",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), name_length),
+		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), state),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
-		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "name",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), name),
+		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "param_len",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), param_len),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_ping'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_ping[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_ping",
-		.type_name   =  "uint32_t",
+	[4] = {
+		.struct_name =  "convert_message_struct__avm_event_led_status",
+		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "seq",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_ping __attribute__ ((packed)), seq),
+		.name = "params",
+		.size = sizeof(unsigned char) * 245,
+		.offset = __builtin_offsetof(struct _avm_event_led_status __attribute__ ((packed)), params),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct wlan_event_data_scan_event_info'
+ * Endian Convert-Table for: 'struct cpmac_port'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_wlan_event_data_scan_event_info[] = {
+struct _endian_convert convert_message_struct_cpmac_port[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_scan_event_info",
-		.type_name   =  "struct wlan_event_data_scan_common",
+		.struct_name =  "convert_message_struct_cpmac_port",
+		.type_name   =  "uint8_t",
 		.flags = 0,
-		.name = "common",
-		.substruct = convert_message_struct_wlan_event_data_scan_common,
-		.offset = __builtin_offsetof(struct wlan_event_data_scan_event_info __attribute__ ((packed)), common),
+		.name = "cable",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), cable),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_scan_event_info",
-		.type_name   =  "enum wlan_event_scan_type",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "event_type",
-		.size = sizeof(enum wlan_event_scan_type),
-		.offset = __builtin_offsetof(struct wlan_event_data_scan_event_info __attribute__ ((packed)), event_type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_wlan_event_scan_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_wlan_event_scan_type,
-		.enumName = "enum_table_wlan_event_scan_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.struct_name =  "convert_message_struct_cpmac_port",
+		.type_name   =  "uint8_t",
+		.flags = 0,
+		.name = "link",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), link),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cpu_run'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cpu_run[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_run",
-		.type_name   =  "struct _avm_event_header",
+	[2] = {
+		.struct_name =  "convert_message_struct_cpmac_port",
+		.type_name   =  "uint8_t",
 		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_cpu_run __attribute__ ((packed)), event_header),
+		.name = "speed100",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), speed100),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_run",
-		.type_name   =  "enum _cputype",
+	[3] = {
+		.struct_name =  "convert_message_struct_cpmac_port",
+		.type_name   =  "uint8_t",
 		.flags = 0,
-		.name = "cputype",
-		.size = sizeof(enum _cputype),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_run __attribute__ ((packed)), cputype),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
+		.name = "fullduplex",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), fullduplex),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct_cpmac_port",
+		.type_name   =  "enum _avm_event_ethernet_speed",
+		.flags = 0,
+		.name = "speed",
+		.size = sizeof(enum _avm_event_ethernet_speed),
+		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), speed),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_ethernet_speed_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__cputype,
-		.enumName = "enum_table__cputype"
+		.enumInfo = enum_table__avm_event_ethernet_speed,
+		.enumName = "enum_table__avm_event_ethernet_speed"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_run",
-		.type_name   =  "unsigned char",
+	[5] = {
+		.struct_name =  "convert_message_struct_cpmac_port",
+		.type_name   =  "enum _avm_event_ethernet_speed",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "cpu_run",
-		.size = sizeof(unsigned char) * 4,
-		.offset = __builtin_offsetof(struct _avm_event_cpu_run __attribute__ ((packed)), cpu_run),
+		.name = "maxspeed",
+		.size = sizeof(enum _avm_event_ethernet_speed),
+		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), maxspeed),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_ethernet_speed_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_event_ethernet_speed,
+		.enumName = "enum_table__avm_event_ethernet_speed"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_remotewatchdog'
+ * Endian Convert-Table for: 'struct avm_event_tffs'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_remotewatchdog[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
-		.type_name   =  "struct _avm_event_header",
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "uint32_t",
 		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), event_header),
+		.name = "src_id",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), src_id),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
-		.type_name   =  "enum _avm_remote_wdt_cmd",
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "uint32_t",
 		.flags = 0,
-		.name = "cmd",
-		.size = sizeof(enum _avm_remote_wdt_cmd),
-		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), cmd),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remote_wdt_cmd_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_remote_wdt_cmd,
-		.enumName = "enum_table__avm_remote_wdt_cmd"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "dst_id",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), dst_id),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "uint32_t",
 		.flags = 0,
-		.name = "name",
-		.size = sizeof(char) * 16,
-		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), name),
+		.name = "seq_nr",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), seq_nr),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), param),
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "uint32_t",
+		.flags = 0,
+		.name = "ack",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), ack),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_header'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_header[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_header",
-		.type_name   =  "enum _avm_event_id",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "id",
-		.size = sizeof(enum _avm_event_id),
-		.offset = __builtin_offsetof(struct _avm_event_header __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
+	[4] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "uint64_t",
+		.flags = 0,
+		.name = "srv_handle",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), srv_handle),
+	},
+	[5] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "uint64_t",
+		.flags = 0,
+		.name = "clt_handle",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), clt_handle),
+	},
+	[6] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "int32_t",
+		.flags = 0,
+		.name = "result",
+		.size = sizeof(int32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), result),
+	},
+	[7] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "enum avm_event_tffs_call_type",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "type",
+		.size = sizeof(enum avm_event_tffs_call_type),
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_tffs_call_type_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_id,
-		.enumName = "enum_table__avm_event_id"
+		.enumInfo = enum_table_avm_event_tffs_call_type,
+		.enumName = "enum_table_avm_event_tffs_call_type"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
+	[8] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs",
+		.type_name   =  "union avm_event_tffs_call_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "call",
+		.substruct = convert_message_union_avm_event_tffs_call_union,
+		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), call),
+	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_powermanagment_remote'
+ * Endian Convert-Table for: 'struct _avm_event_internet_new_ip'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_powermanagment_remote[] = {
+struct _endian_convert convert_message_struct__avm_event_internet_new_ip[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote",
+		.struct_name =  "convert_message_struct__avm_event_internet_new_ip",
 		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
 		.name = "header",
 		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote __attribute__ ((packed)), header),
+		.offset = __builtin_offsetof(struct _avm_event_internet_new_ip __attribute__ ((packed)), header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote",
-		.type_name   =  "enum avm_event_powermanagment_remote_action",
+		.struct_name =  "convert_message_struct__avm_event_internet_new_ip",
+		.type_name   =  "enum avm_event_internet_new_ip_param_sel",
 		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "remote_action",
-		.size = sizeof(enum avm_event_powermanagment_remote_action),
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote __attribute__ ((packed)), remote_action),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_powermanagment_remote_action_name,
+		.name = "sel",
+		.size = sizeof(enum avm_event_internet_new_ip_param_sel),
+		.offset = __builtin_offsetof(struct _avm_event_internet_new_ip __attribute__ ((packed)), sel),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_internet_new_ip_param_sel_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_powermanagment_remote_action,
-		.enumName = "enum_table_avm_event_powermanagment_remote_action"
+		.enumInfo = enum_table_avm_event_internet_new_ip_param_sel,
+		.enumName = "enum_table_avm_event_internet_new_ip_param_sel"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote",
-		.type_name   =  "union avm_event_powermanagment_remote_union",
+		.struct_name =  "convert_message_struct__avm_event_internet_new_ip",
+		.type_name   =  "union avm_event_internet_new_ip_param",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.substruct = convert_message_union_avm_event_powermanagment_remote_union,
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote __attribute__ ((packed)), param),
+		.name = "params",
+		.substruct = convert_message_union_avm_event_internet_new_ip_param,
+		.offset = __builtin_offsetof(struct _avm_event_internet_new_ip __attribute__ ((packed)), params),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_telefonprofile'
+ * Endian Convert-Table for: 'struct _avm_event_checkpoint'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_telefonprofile[] = {
+struct _endian_convert convert_message_struct__avm_event_checkpoint[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_telefonprofile",
+		.struct_name =  "convert_message_struct__avm_event_checkpoint",
 		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
 		.name = "event_header",
 		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_telefonprofile __attribute__ ((packed)), event_header),
+		.offset = __builtin_offsetof(struct _avm_event_checkpoint __attribute__ ((packed)), event_header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_telefonprofile",
-		.type_name   =  "unsigned int",
+		.struct_name =  "convert_message_struct__avm_event_checkpoint",
+		.type_name   =  "uint32_t",
+		.flags = 0,
+		.name = "node_id",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct _avm_event_checkpoint __attribute__ ((packed)), node_id),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_checkpoint",
+		.type_name   =  "uint64_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "on",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_telefonprofile __attribute__ ((packed)), on),
+		.name = "checkpoints",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct _avm_event_checkpoint __attribute__ ((packed)), checkpoints),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_info'
+ * Endian Convert-Table for: 'struct wlan_event_def'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_info[] = {
+struct _endian_convert convert_message_struct_wlan_event_def[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_info",
-		.type_name   =  "uint32_t",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "fill_level",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_info __attribute__ ((packed)), fill_level),
+		.struct_name =  "convert_message_struct_wlan_event_def",
+		.type_name   =  "enum wlan_event_id",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "event_id",
+		.size = sizeof(enum wlan_event_id),
+		.offset = __builtin_offsetof(struct wlan_event_def __attribute__ ((packed)), event_id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_wlan_event_id_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_wlan_event_id,
+		.enumName = "enum_table_wlan_event_id"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_wlan_event_def",
+		.type_name   =  "union wlan_event_data",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "event_data",
+		.substruct = convert_message_union_wlan_event_data,
+		.offset = __builtin_offsetof(struct wlan_event_def __attribute__ ((packed)), event_data),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_unserialised'
+ * Endian Convert-Table for: 'struct _avm_event_cmd_param_source_trigger'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_unserialised[] = {
+struct _endian_convert convert_message_struct__avm_event_cmd_param_source_trigger[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_unserialised",
-		.type_name   =  "uint64_t",
+		.struct_name =  "convert_message_struct__avm_event_cmd_param_source_trigger",
+		.type_name   =  "enum _avm_event_id",
 		.flags = 0,
-		.name = "evnt_id",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_unserialised __attribute__ ((packed)), evnt_id),
+		.name = "id",
+		.size = sizeof(enum _avm_event_id),
+		.offset = __builtin_offsetof(struct _avm_event_cmd_param_source_trigger __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_event_id,
+		.enumName = "enum_table__avm_event_id"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_unserialised",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "data_len",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_unserialised __attribute__ ((packed)), data_len),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_unserialised",
-		.type_name   =  "unsigned char",
+		.struct_name =  "convert_message_struct__avm_event_cmd_param_source_trigger",
+		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "data",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_unserialised __attribute__ ((packed)), data),
+		.name = "data_length",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_cmd_param_source_trigger __attribute__ ((packed)), data_length),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_telephony_missed_call_params'
+ * Endian Convert-Table for: 'struct avm_event_tffs_reindex'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_telephony_missed_call_params[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs_reindex[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_telephony_missed_call_params",
-		.type_name   =  "enum avm_event_telephony_param_sel",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "id",
-		.size = sizeof(enum avm_event_telephony_param_sel),
-		.offset = __builtin_offsetof(struct _avm_event_telephony_missed_call_params __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_telephony_param_sel_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_telephony_param_sel,
-		.enumName = "enum_table_avm_event_telephony_param_sel"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_telephony_missed_call_params",
-		.type_name   =  "union avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "params",
-		.substruct = convert_message_union_avm_event_telephony_call_params,
-		.offset = __builtin_offsetof(struct _avm_event_telephony_missed_call_params __attribute__ ((packed)), params),
+		.struct_name =  "convert_message_struct_avm_event_tffs_reindex",
+		.type_name   =  "uint32_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "dummy",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_reindex __attribute__ ((packed)), dummy),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cmd'
+ * Endian Convert-Table for: 'struct avm_event_powermanagment_remote_ressourceinfo'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cmd[] = {
+struct _endian_convert convert_message_struct_avm_event_powermanagment_remote_ressourceinfo[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd",
-		.type_name   =  "enum __avm_event_cmd",
+		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote_ressourceinfo",
+		.type_name   =  "enum _powermanagment_device",
 		.flags = 0,
-		.name = "cmd",
-		.size = sizeof(enum __avm_event_cmd),
-		.offset = __builtin_offsetof(struct _avm_event_cmd __attribute__ ((packed)), cmd),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum___avm_event_cmd_name,
+		.name = "device",
+		.size = sizeof(enum _powermanagment_device),
+		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), device),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_device_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table___avm_event_cmd,
-		.enumName = "enum_table___avm_event_cmd"
+		.enumInfo = enum_table__powermanagment_device,
+		.enumName = "enum_table__powermanagment_device"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd",
-		.type_name   =  "union _avm_event_cmd_param",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.substruct = convert_message_union__avm_event_cmd_param,
-		.offset = __builtin_offsetof(struct _avm_event_cmd __attribute__ ((packed)), param),
+		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote_ressourceinfo",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "power_rate",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), power_rate),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct wlan_event_def'
+ * Endian Convert-Table for: 'struct _avm_event_powermanagment_status'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_wlan_event_def[] = {
+struct _endian_convert convert_message_struct__avm_event_powermanagment_status[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_wlan_event_def",
-		.type_name   =  "enum wlan_event_id",
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_status",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_status __attribute__ ((packed)), event_header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_status",
+		.type_name   =  "enum _powermanagment_status_type",
 		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "event_id",
-		.size = sizeof(enum wlan_event_id),
-		.offset = __builtin_offsetof(struct wlan_event_def __attribute__ ((packed)), event_id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_wlan_event_id_name,
+		.name = "substatus",
+		.size = sizeof(enum _powermanagment_status_type),
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_status __attribute__ ((packed)), substatus),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_status_type_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_wlan_event_id,
-		.enumName = "enum_table_wlan_event_id"
+		.enumInfo = enum_table__powermanagment_status_type,
+		.enumName = "enum_table__powermanagment_status_type"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_wlan_event_def",
-		.type_name   =  "union wlan_event_data",
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_status",
+		.type_name   =  "union __powermanagment_status_union",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "event_data",
-		.substruct = convert_message_union_wlan_event_data,
-		.offset = __builtin_offsetof(struct wlan_event_def __attribute__ ((packed)), event_data),
+		.name = "param",
+		.substruct = convert_message_union___powermanagment_status_union,
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_status __attribute__ ((packed)), param),
 	},
 };
 
@@ -1676,205 +1191,201 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_cpu_idle'
+ * Endian Convert-Table for: 'struct avm_event_checkpoint'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_cpu_idle[] = {
+struct _endian_convert convert_message_struct_avm_event_checkpoint[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "unsigned char",
+		.struct_name =  "convert_message_struct_avm_event_checkpoint",
+		.type_name   =  "uint32_t",
 		.flags = 0,
-		.name = "cpu_idle",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), cpu_idle),
+		.name = "node_id",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_checkpoint __attribute__ ((packed)), node_id),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "dsl_dsp_idle",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), dsl_dsp_idle),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "voice_dsp_idle",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), voice_dsp_idle),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "mem_strictlyused",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), mem_strictlyused),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "mem_cacheused",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), mem_cacheused),
-	},
-	[5] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "unsigned char",
-		.flags = 0,
-		.name = "mem_physfree",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), mem_physfree),
-	},
-	[6] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
-		.type_name   =  "enum _cputype",
+		.struct_name =  "convert_message_struct_avm_event_checkpoint",
+		.type_name   =  "uint64_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "cputype",
-		.size = sizeof(enum _cputype),
-		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), cputype),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__cputype,
-		.enumName = "enum_table__cputype"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "checkpoints",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct avm_event_checkpoint __attribute__ ((packed)), checkpoints),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_telephony_string'
+ * Endian Convert-Table for: 'struct avm_event_wlan'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_telephony_string[] = {
+struct _endian_convert convert_message_struct_avm_event_wlan[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_telephony_string",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "length",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_telephony_string __attribute__ ((packed)), length),
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "char",
+		.flags = 0,
+		.name = "mac",
+		.size = sizeof(char) * 6,
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), mac),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_telephony_string",
-		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "string",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_telephony_string __attribute__ ((packed)), string),
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "union avm_event_wlan_client_status_u1",
+		.flags = ENDIAN_CONVERT_IGNORE | 0,
+		.name = "u1",
+		.substruct = convert_message_union_avm_event_wlan_client_status_u1,
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), u1),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_log'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_log[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_log",
-		.type_name   =  "enum _avm_logtype",
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "wlan_event",
 		.flags = 0,
-		.name = "logtype",
-		.size = sizeof(enum _avm_logtype),
-		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), logtype),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_logtype_name,
+		.name = "event",
+		.size = sizeof(wlan_event),
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), event),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "wlan_info",
+		.flags = 0,
+		.name = "info",
+		.size = sizeof(wlan_info),
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), info),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "enum wlan_sm_states",
+		.flags = 0,
+		.name = "status",
+		.size = sizeof(enum wlan_sm_states),
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), status),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_wlan_sm_states_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_logtype,
-		.enumName = "enum_table__avm_logtype"
+		.enumInfo = enum_table_wlan_sm_states,
+		.enumName = "enum_table_wlan_sm_states"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_log",
-		.type_name   =  "unsigned int",
+	[5] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "union avm_event_wlan_client_status_u2",
+		.flags = ENDIAN_CONVERT_IGNORE | 0,
+		.name = "u2",
+		.substruct = convert_message_union_avm_event_wlan_client_status_u2,
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), u2),
+	},
+	[6] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.type_name   =  "char",
 		.flags = 0,
-		.name = "loglen",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), loglen),
+		.name = "if_name",
+		.size = sizeof(char) * IFNAMSIZ,
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), if_name),
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_log",
+	[7] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
 		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "logpointer",
+		.name = "ev_initiator",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), logpointer),
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), ev_initiator),
 	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_log",
+	[8] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
 		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "checksum",
+		.name = "ev_reason",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), checksum),
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), ev_reason),
 	},
-	[4] = {
-		.struct_name =  "convert_message_struct_avm_event_log",
+	[9] = {
+		.struct_name =  "convert_message_struct_avm_event_wlan",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "rebootflag",
+		.name = "avm_capabilities",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), rebootflag),
+		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), avm_capabilities),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct cpmac_port'
+ * Endian Convert-Table for: 'struct avm_event_push_button'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_cpmac_port[] = {
+struct _endian_convert convert_message_struct_avm_event_push_button[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_cpmac_port",
-		.type_name   =  "uint8_t",
+		.struct_name =  "convert_message_struct_avm_event_push_button",
+		.type_name   =  "enum _avm_event_push_button_key",
 		.flags = 0,
-		.name = "cable",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), cable),
+		.name = "key",
+		.size = sizeof(enum _avm_event_push_button_key),
+		.offset = __builtin_offsetof(struct avm_event_push_button __attribute__ ((packed)), key),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_push_button_key_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_event_push_button_key,
+		.enumName = "enum_table__avm_event_push_button_key"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_cpmac_port",
-		.type_name   =  "uint8_t",
-		.flags = 0,
-		.name = "link",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), link),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_cpmac_port",
-		.type_name   =  "uint8_t",
-		.flags = 0,
-		.name = "speed100",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), speed100),
+		.struct_name =  "convert_message_struct_avm_event_push_button",
+		.type_name   =  "uint32_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "pressed",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_push_button __attribute__ ((packed)), pressed),
 	},
-	[3] = {
-		.struct_name =  "convert_message_struct_cpmac_port",
-		.type_name   =  "uint8_t",
-		.flags = 0,
-		.name = "fullduplex",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), fullduplex),
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_tffs_close'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_tffs_close[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_close",
+		.type_name   =  "uint32_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "dummy",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_close __attribute__ ((packed)), dummy),
 	},
-	[4] = {
-		.struct_name =  "convert_message_struct_cpmac_port",
-		.type_name   =  "enum _avm_event_ethernet_speed",
-		.flags = 0,
-		.name = "speed",
-		.size = sizeof(enum _avm_event_ethernet_speed),
-		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), speed),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_ethernet_speed_name,
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_powermanagment_remote'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_powermanagment_remote[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote",
+		.type_name   =  "enum avm_event_powermanagment_remote_action",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "remote_action",
+		.size = sizeof(enum avm_event_powermanagment_remote_action),
+		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote __attribute__ ((packed)), remote_action),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_powermanagment_remote_action_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_ethernet_speed,
-		.enumName = "enum_table__avm_event_ethernet_speed"
+		.enumInfo = enum_table_avm_event_powermanagment_remote_action,
+		.enumName = "enum_table_avm_event_powermanagment_remote_action"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[5] = {
-		.struct_name =  "convert_message_struct_cpmac_port",
-		.type_name   =  "enum _avm_event_ethernet_speed",
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote",
+		.type_name   =  "union avm_event_powermanagment_remote_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "param",
+		.substruct = convert_message_union_avm_event_powermanagment_remote_union,
+		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote __attribute__ ((packed)), param),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_source_notifier'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_source_notifier[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_source_notifier",
+		.type_name   =  "enum _avm_event_id",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "maxspeed",
-		.size = sizeof(enum _avm_event_ethernet_speed),
-		.offset = __builtin_offsetof(struct cpmac_port __attribute__ ((packed)), maxspeed),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_ethernet_speed_name,
+		.name = "id",
+		.size = sizeof(enum _avm_event_id),
+		.offset = __builtin_offsetof(struct avm_event_source_notifier __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_ethernet_speed,
-		.enumName = "enum_table__avm_event_ethernet_speed"
+		.enumInfo = enum_table__avm_event_id,
+		.enumName = "enum_table__avm_event_id"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
@@ -1923,334 +1434,143 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "src_id",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), src_id),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "dst_id",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), dst_id),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "seq_nr",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), seq_nr),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "ack",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), ack),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "uint64_t",
-		.flags = 0,
-		.name = "srv_handle",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), srv_handle),
-	},
-	[5] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "uint64_t",
-		.flags = 0,
-		.name = "clt_handle",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), clt_handle),
-	},
-	[6] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "int32_t",
-		.flags = 0,
-		.name = "result",
-		.size = sizeof(int32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), result),
-	},
-	[7] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "enum avm_event_tffs_call_type",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "type",
-		.size = sizeof(enum avm_event_tffs_call_type),
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_tffs_call_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_tffs_call_type,
-		.enumName = "enum_table_avm_event_tffs_call_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[8] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs",
-		.type_name   =  "union avm_event_tffs_call_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "call",
-		.substruct = convert_message_union_avm_event_tffs_call_union,
-		.offset = __builtin_offsetof(struct avm_event_tffs __attribute__ ((packed)), call),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_firmware_update_available'
+ * Endian Convert-Table for: 'struct _avm_event_mass_storage_unmount'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_firmware_update_available[] = {
+struct _endian_convert convert_message_struct__avm_event_mass_storage_unmount[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_unmount",
 		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
 		.name = "header",
 		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), header),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_unmount __attribute__ ((packed)), header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
-		.type_name   =  "enum avm_event_firmware_type",
-		.flags = 0,
-		.name = "type",
-		.size = sizeof(enum avm_event_firmware_type),
-		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_firmware_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_firmware_type,
-		.enumName = "enum_table_avm_event_firmware_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_unmount",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "version_length",
+		.name = "name_length",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), version_length),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_unmount __attribute__ ((packed)), name_length),
 	},
-	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_mass_storage_unmount",
 		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "version",
+		.name = "name",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), version),
+		.offset = __builtin_offsetof(struct _avm_event_mass_storage_unmount __attribute__ ((packed)), name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_mass_storage_mount'
+ * Endian Convert-Table for: 'struct avm_event_remotewatchdog'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_mass_storage_mount[] = {
+struct _endian_convert convert_message_struct_avm_event_remotewatchdog[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
-		.type_name   =  "struct _avm_event_header",
+		.struct_name =  "convert_message_struct_avm_event_remotewatchdog",
+		.type_name   =  "enum _avm_remote_wdt_cmd",
 		.flags = 0,
-		.name = "header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), header),
+		.name = "cmd",
+		.size = sizeof(enum _avm_remote_wdt_cmd),
+		.offset = __builtin_offsetof(struct avm_event_remotewatchdog __attribute__ ((packed)), cmd),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remote_wdt_cmd_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_remote_wdt_cmd,
+		.enumName = "enum_table__avm_remote_wdt_cmd"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
-		.type_name   =  "unsigned long long",
+		.struct_name =  "convert_message_struct_avm_event_remotewatchdog",
+		.type_name   =  "char",
 		.flags = 0,
-		.name = "size",
-		.size = sizeof(unsigned long long),
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), size),
+		.name = "name",
+		.size = sizeof(char) * 16,
+		.offset = __builtin_offsetof(struct avm_event_remotewatchdog __attribute__ ((packed)), name),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
-		.type_name   =  "unsigned long long",
-		.flags = 0,
-		.name = "free",
-		.size = sizeof(unsigned long long),
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), free),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
+		.struct_name =  "convert_message_struct_avm_event_remotewatchdog",
 		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "name_length",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), name_length),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_mount",
-		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "name",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_mount __attribute__ ((packed)), name),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_init'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_init[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_init",
-		.type_name   =  "int64_t",
-		.flags = 0,
-		.name = "mem_offset",
-		.size = sizeof(int64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_init __attribute__ ((packed)), mem_offset),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_init",
-		.type_name   =  "uint32_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "max_seg_size",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_init __attribute__ ((packed)), max_seg_size),
+		.name = "param",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_remotewatchdog __attribute__ ((packed)), param),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_led_info'
+ * Endian Convert-Table for: 'struct avm_event_source_register'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_led_info[] = {
+struct _endian_convert convert_message_struct_avm_event_source_register[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
-		.type_name   =  "unsigned int",
+		.struct_name =  "convert_message_struct_avm_event_source_register",
+		.type_name   =  "struct _avm_event_id_mask",
 		.flags = 0,
-		.name = "mode",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), mode),
+		.name = "id_mask",
+		.substruct = convert_message_struct__avm_event_id_mask,
+		.offset = __builtin_offsetof(struct avm_event_source_register __attribute__ ((packed)), id_mask),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "param1",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), param1),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "param2",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), param2),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "gpio_driver_type",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), gpio_driver_type),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "gpio",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), gpio),
-	},
-	[5] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "pos",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), pos),
-	},
-	[6] = {
-		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.struct_name =  "convert_message_struct_avm_event_source_register",
 		.type_name   =  "char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
 		.name = "name",
 		.size = sizeof(char) * 32,
-		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), name),
+		.offset = __builtin_offsetof(struct avm_event_source_register __attribute__ ((packed)), name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_push_button'
+ * Endian Convert-Table for: 'struct avm_event_data'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_push_button[] = {
+struct _endian_convert convert_message_struct_avm_event_data[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_push_button",
-		.type_name   =  "enum _avm_event_push_button_key",
-		.flags = 0,
-		.name = "key",
-		.size = sizeof(enum _avm_event_push_button_key),
-		.offset = __builtin_offsetof(struct avm_event_push_button __attribute__ ((packed)), key),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_push_button_key_name,
+		.struct_name =  "convert_message_struct_avm_event_data",
+		.type_name   =  "enum _avm_event_id",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "id",
+		.size = sizeof(enum _avm_event_id),
+		.offset = __builtin_offsetof(struct avm_event_data __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_push_button_key,
-		.enumName = "enum_table__avm_event_push_button_key"
+		.enumInfo = enum_table__avm_event_id,
+		.enumName = "enum_table__avm_event_id"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_push_button",
-		.type_name   =  "uint32_t",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "pressed",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_push_button __attribute__ ((packed)), pressed),
+		.struct_name =  "convert_message_struct_avm_event_data",
+		.type_name   =  "union avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "data",
+		.substruct = convert_message_union_avm_event_data_union,
+		.offset = __builtin_offsetof(struct avm_event_data __attribute__ ((packed)), data),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_remotewatchdog'
+ * Endian Convert-Table for: 'struct _avm_event_powerline_status'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_remotewatchdog[] = {
+struct _endian_convert convert_message_struct__avm_event_powerline_status[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_remotewatchdog",
-		.type_name   =  "enum _avm_remote_wdt_cmd",
+		.struct_name =  "convert_message_struct__avm_event_powerline_status",
+		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
-		.name = "cmd",
-		.size = sizeof(enum _avm_remote_wdt_cmd),
-		.offset = __builtin_offsetof(struct avm_event_remotewatchdog __attribute__ ((packed)), cmd),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remote_wdt_cmd_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_remote_wdt_cmd,
-		.enumName = "enum_table__avm_remote_wdt_cmd"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_powerline_status __attribute__ ((packed)), event_header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_remotewatchdog",
-		.type_name   =  "char",
-		.flags = 0,
-		.name = "name",
-		.size = sizeof(char) * 16,
-		.offset = __builtin_offsetof(struct avm_event_remotewatchdog __attribute__ ((packed)), name),
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_remotewatchdog",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_remotewatchdog __attribute__ ((packed)), param),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_telefonprofile'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_telefonprofile[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_telefonprofile",
-		.type_name   =  "unsigned int",
+		.struct_name =  "convert_message_struct__avm_event_powerline_status",
+		.type_name   =  "enum ePLCState",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "on",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_telefonprofile __attribute__ ((packed)), on),
+		.name = "status",
+		.size = sizeof(enum ePLCState),
+		.offset = __builtin_offsetof(struct _avm_event_powerline_status __attribute__ ((packed)), status),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_ePLCState_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_ePLCState,
+		.enumName = "enum_table_ePLCState"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
@@ -2301,279 +1621,355 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _cpmac_event_struct'
+ * Endian Convert-Table for: 'struct _avm_event_telephony_missed_call_params'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__cpmac_event_struct[] = {
+struct _endian_convert convert_message_struct__avm_event_telephony_missed_call_params[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__cpmac_event_struct",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "ports",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _cpmac_event_struct __attribute__ ((packed)), ports),
+		.struct_name =  "convert_message_struct__avm_event_telephony_missed_call_params",
+		.type_name   =  "enum avm_event_telephony_param_sel",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "id",
+		.size = sizeof(enum avm_event_telephony_param_sel),
+		.offset = __builtin_offsetof(struct _avm_event_telephony_missed_call_params __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_telephony_param_sel_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_avm_event_telephony_param_sel,
+		.enumName = "enum_table_avm_event_telephony_param_sel"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__cpmac_event_struct",
-		.type_name   =  "struct cpmac_port",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "port",
-		.substruct = convert_message_struct_cpmac_port,
-		.offset = __builtin_offsetof(struct _cpmac_event_struct __attribute__ ((packed)), port),
+		.struct_name =  "convert_message_struct__avm_event_telephony_missed_call_params",
+		.type_name   =  "union avm_event_telephony_call_params",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "params",
+		.substruct = convert_message_union_avm_event_telephony_call_params,
+		.offset = __builtin_offsetof(struct _avm_event_telephony_missed_call_params __attribute__ ((packed)), params),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_mass_storage_unmount'
+ * Endian Convert-Table for: 'struct avm_event_pm_info_stat'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_mass_storage_unmount[] = {
+struct _endian_convert convert_message_struct_avm_event_pm_info_stat[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_mass_storage_unmount",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "name_length",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_mass_storage_unmount __attribute__ ((packed)), name_length),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_mass_storage_unmount",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "name",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_mass_storage_unmount __attribute__ ((packed)), name),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cpu_idle'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cpu_idle[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
-		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), event_header),
+		.name = "reserved1",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), reserved1),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "cpu_idle",
+		.name = "rate_sumact",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), cpu_idle),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_sumact),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "dsl_dsp_idle",
+		.name = "rate_sumcum",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), dsl_dsp_idle),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_sumcum),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "voice_dsp_idle",
+		.name = "rate_systemact",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), voice_dsp_idle),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_systemact),
 	},
 	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "mem_strictlyused",
+		.name = "rate_systemcum",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), mem_strictlyused),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_systemcum),
 	},
 	[5] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "mem_cacheused",
+		.name = "system_status",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), mem_cacheused),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), system_status),
 	},
 	[6] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "mem_physfree",
+		.name = "rate_dspact",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), mem_physfree),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dspact),
 	},
 	[7] = {
-		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
-		.type_name   =  "enum _cputype",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "cputype",
-		.size = sizeof(enum _cputype),
-		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), cputype),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__cputype,
-		.enumName = "enum_table__cputype"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_dspcum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dspcum),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_paniclog'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_paniclog[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_paniclog",
-		.type_name   =  "uint64_t",
+	[8] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "buff_addr",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_paniclog __attribute__ ((packed)), buff_addr),
+		.name = "rate_wlanact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_wlanact),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_paniclog",
-		.type_name   =  "uint64_t",
+	[9] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "len",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_paniclog __attribute__ ((packed)), len),
+		.name = "rate_wlancum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_wlancum),
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_paniclog",
-		.type_name   =  "int32_t",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "crc",
-		.size = sizeof(int32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_paniclog __attribute__ ((packed)), crc),
+	[10] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "wlan_devices",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), wlan_devices),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_cpu_run'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_cpu_run[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_run",
-		.type_name   =  "enum _cputype",
+	[11] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
 		.flags = 0,
-		.name = "cputype",
-		.size = sizeof(enum _cputype),
-		.offset = __builtin_offsetof(struct avm_event_cpu_run __attribute__ ((packed)), cputype),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__cputype,
-		.enumName = "enum_table__cputype"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "wlan_status",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), wlan_status),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_cpu_run",
+	[12] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "cpu_run",
-		.size = sizeof(unsigned char) * 4,
-		.offset = __builtin_offsetof(struct avm_event_cpu_run __attribute__ ((packed)), cpu_run),
+		.flags = 0,
+		.name = "rate_ethact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_ethact),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cmd_param_release'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cmd_param_release[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd_param_release",
-		.type_name   =  "char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "Name",
-		.size = sizeof(char) * 33,
-		.offset = __builtin_offsetof(struct _avm_event_cmd_param_release __attribute__ ((packed)), Name),
+	[13] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_ethcum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_ethcum),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_mass_storage_unmount'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_mass_storage_unmount[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_unmount",
-		.type_name   =  "struct _avm_event_header",
+	[14] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned short",
 		.flags = 0,
-		.name = "header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_unmount __attribute__ ((packed)), header),
+		.name = "eth_status",
+		.size = sizeof(unsigned short),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), eth_status),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_unmount",
-		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "name_length",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_unmount __attribute__ ((packed)), name_length),
+	[15] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_abact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_abact),
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_mass_storage_unmount",
+	[16] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
 		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "name",
+		.flags = 0,
+		.name = "rate_abcum",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_mass_storage_unmount __attribute__ ((packed)), name),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_abcum),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct wlan_event_data_client_state_change'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_wlan_event_data_client_state_change[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_state_change",
-		.type_name   =  "struct wlan_event_data_client_common",
+	[17] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned short",
 		.flags = 0,
-		.name = "common",
-		.substruct = convert_message_struct_wlan_event_data_client_common,
-		.offset = __builtin_offsetof(struct wlan_event_data_client_state_change __attribute__ ((packed)), common),
+		.name = "isdn_status",
+		.size = sizeof(unsigned short),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), isdn_status),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_state_change",
-		.type_name   =  "uint8_t",
+	[18] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_dectact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dectact),
+	},
+	[19] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_dectcum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dectcum),
+	},
+	[20] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_battchargeact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_battchargeact),
+	},
+	[21] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_battchargecum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_battchargecum),
+	},
+	[22] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "dect_status",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), dect_status),
+	},
+	[23] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_usbhostact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_usbhostact),
+	},
+	[24] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_usbhostcum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_usbhostcum),
+	},
+	[25] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "usb_status",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), usb_status),
+	},
+	[26] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "signed char",
+		.flags = 0,
+		.name = "act_temperature",
+		.size = sizeof(signed char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), act_temperature),
+	},
+	[27] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "signed char",
+		.flags = 0,
+		.name = "min_temperature",
+		.size = sizeof(signed char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), min_temperature),
+	},
+	[28] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "signed char",
+		.flags = 0,
+		.name = "max_temperature",
+		.size = sizeof(signed char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), max_temperature),
+	},
+	[29] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "signed char",
+		.flags = 0,
+		.name = "avg_temperature",
+		.size = sizeof(signed char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), avg_temperature),
+	},
+	[30] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_lteact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_lteact),
+	},
+	[31] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_ltecum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_ltecum),
+	},
+	[32] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "rate_dvbcact",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dvbcact),
+	},
+	[33] = {
+		.struct_name =  "convert_message_struct_avm_event_pm_info_stat",
+		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "state",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct wlan_event_data_client_state_change __attribute__ ((packed)), state),
+		.name = "rate_dvbccum",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_pm_info_stat __attribute__ ((packed)), rate_dvbccum),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_internet_new_ip'
+ * Endian Convert-Table for: 'struct avm_event_tffs_open'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_internet_new_ip[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs_open[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_internet_new_ip",
-		.type_name   =  "struct _avm_event_header",
+		.struct_name =  "convert_message_struct_avm_event_tffs_open",
+		.type_name   =  "uint32_t",
 		.flags = 0,
-		.name = "header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_internet_new_ip __attribute__ ((packed)), header),
+		.name = "id",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_open __attribute__ ((packed)), id),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_internet_new_ip",
-		.type_name   =  "enum avm_event_internet_new_ip_param_sel",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "sel",
-		.size = sizeof(enum avm_event_internet_new_ip_param_sel),
-		.offset = __builtin_offsetof(struct _avm_event_internet_new_ip __attribute__ ((packed)), sel),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_internet_new_ip_param_sel_name,
+		.struct_name =  "convert_message_struct_avm_event_tffs_open",
+		.type_name   =  "enum avm_event_tffs_open_mode",
+		.flags = 0,
+		.name = "mode",
+		.size = sizeof(enum avm_event_tffs_open_mode),
+		.offset = __builtin_offsetof(struct avm_event_tffs_open __attribute__ ((packed)), mode),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_tffs_open_mode_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_internet_new_ip_param_sel,
-		.enumName = "enum_table_avm_event_internet_new_ip_param_sel"
+		.enumInfo = enum_table_avm_event_tffs_open_mode,
+		.enumName = "enum_table_avm_event_tffs_open_mode"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_internet_new_ip",
-		.type_name   =  "union avm_event_internet_new_ip_param",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "params",
-		.substruct = convert_message_union_avm_event_internet_new_ip_param,
-		.offset = __builtin_offsetof(struct _avm_event_internet_new_ip __attribute__ ((packed)), params),
+		.struct_name =  "convert_message_struct_avm_event_tffs_open",
+		.type_name   =  "uint32_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "max_segment_size",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_open __attribute__ ((packed)), max_segment_size),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_id_mask'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_id_mask[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_id_mask",
+		.type_name   =  "avm_event_mask_fieldentry",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "mask",
+		.offset = __builtin_offsetof(struct _avm_event_id_mask __attribute__ ((packed)), mask),
 	},
 };
 
@@ -2688,6 +2084,63 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_temperature'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_temperature[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_temperature",
+		.type_name   =  "int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "temperature",
+		.size = sizeof(int),
+		.offset = __builtin_offsetof(struct avm_event_temperature __attribute__ ((packed)), temperature),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_remotepcmlink'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_remotepcmlink[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), event_header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.type_name   =  "enum _avm_remotepcmlinktype",
+		.flags = 0,
+		.name = "type",
+		.size = sizeof(enum _avm_remotepcmlinktype),
+		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remotepcmlinktype_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_remotepcmlinktype,
+		.enumName = "enum_table__avm_remotepcmlinktype"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "sharedlen",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), sharedlen),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_remotepcmlink",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "sharedpointer",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_remotepcmlink __attribute__ ((packed)), sharedpointer),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
  * Endian Convert-Table for: 'struct _avm_event_telephony_missed_call'
 \*------------------------------------------------------------------------------------------*/
 struct _endian_convert convert_message_struct__avm_event_telephony_missed_call[] = {
@@ -2718,51 +2171,556 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_powermanagment_remote_ressourceinfo'
+ * Endian Convert-Table for: 'struct avm_event_source_unregister'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_powermanagment_remote_ressourceinfo[] = {
+struct _endian_convert convert_message_struct_avm_event_source_unregister[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote_ressourceinfo",
+		.struct_name =  "convert_message_struct_avm_event_source_unregister",
+		.type_name   =  "struct _avm_event_id_mask",
+		.flags = 0,
+		.name = "id_mask",
+		.substruct = convert_message_struct__avm_event_id_mask,
+		.offset = __builtin_offsetof(struct avm_event_source_unregister __attribute__ ((packed)), id_mask),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_source_unregister",
+		.type_name   =  "char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "name",
+		.size = sizeof(char) * 32,
+		.offset = __builtin_offsetof(struct avm_event_source_unregister __attribute__ ((packed)), name),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_smarthome_switch_status'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_smarthome_switch_status[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.type_name   =  "enum avm_event_switch_type",
+		.flags = 0,
+		.name = "type",
+		.size = sizeof(enum avm_event_switch_type),
+		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_switch_type_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_avm_event_switch_type,
+		.enumName = "enum_table_avm_event_switch_type"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "value",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), value),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
+		.name = "ain_length",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), ain_length),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.type_name   =  "unsigned char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "ain",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), ain),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_telephony_string'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_telephony_string[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_telephony_string",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
+		.name = "length",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_telephony_string __attribute__ ((packed)), length),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_telephony_string",
+		.type_name   =  "unsigned char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "string",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_telephony_string __attribute__ ((packed)), string),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct wlan_event_data_client_common'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_wlan_event_data_client_common[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_common",
+		.type_name   =  "uint8_t",
+		.flags = 0,
+		.name = "mac",
+		.size = sizeof(uint8_t) * 6,
+		.offset = __builtin_offsetof(struct wlan_event_data_client_common __attribute__ ((packed)), mac),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_common",
+		.type_name   =  "char",
+		.flags = 0,
+		.name = "iface",
+		.size = sizeof(char) * IFNAMSIZ + 1,
+		.offset = __builtin_offsetof(struct wlan_event_data_client_common __attribute__ ((packed)), iface),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_common",
+		.type_name   =  "char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "initiator",
+		.size = sizeof(char) * 16 + 1,
+		.offset = __builtin_offsetof(struct wlan_event_data_client_common __attribute__ ((packed)), initiator),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_led_status'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_led_status[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_led_status",
+		.type_name   =  "enum avm_event_led_id",
+		.flags = 0,
+		.name = "led",
+		.size = sizeof(enum avm_event_led_id),
+		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), led),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_led_id_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_avm_event_led_id,
+		.enumName = "enum_table_avm_event_led_id"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_led_status",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "state",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), state),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_led_status",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "param_len",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), param_len),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct_avm_event_led_status",
+		.type_name   =  "unsigned char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "params",
+		.size = sizeof(unsigned char) * 245,
+		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), params),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_powermanagment_remote_ressourceinfo'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_powermanagment_remote_ressourceinfo[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote_ressourceinfo",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote_ressourceinfo",
 		.type_name   =  "enum _powermanagment_device",
 		.flags = 0,
 		.name = "device",
 		.size = sizeof(enum _powermanagment_device),
-		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), device),
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), device),
 		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_device_name,
 #ifdef WIRESHARK_PLUGIN
 		.enumInfo = enum_table__powermanagment_device,
 		.enumName = "enum_table__powermanagment_device"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_powermanagment_remote_ressourceinfo",
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote_ressourceinfo",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
 		.name = "power_rate",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), power_rate),
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote_ressourceinfo __attribute__ ((packed)), power_rate),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_telephony_missed_call'
+ * Endian Convert-Table for: 'struct _avm_event_firmware_update_available'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_telephony_missed_call[] = {
+struct _endian_convert convert_message_struct__avm_event_firmware_update_available[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_telephony_missed_call",
+		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
+		.type_name   =  "enum avm_event_firmware_type",
+		.flags = 0,
+		.name = "type",
+		.size = sizeof(enum avm_event_firmware_type),
+		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_firmware_type_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_avm_event_firmware_type,
+		.enumName = "enum_table_avm_event_firmware_type"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "length",
+		.name = "version_length",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_telephony_missed_call __attribute__ ((packed)), length),
+		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), version_length),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_firmware_update_available",
+		.type_name   =  "unsigned char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "version",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_firmware_update_available __attribute__ ((packed)), version),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_telefonprofile'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_telefonprofile[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_telefonprofile",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_telefonprofile __attribute__ ((packed)), event_header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_telephony_missed_call",
-		.type_name   =  "struct _avm_event_telephony_missed_call_params",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "p",
-		.substruct = convert_message_struct__avm_event_telephony_missed_call_params,
-		.offset = __builtin_offsetof(struct avm_event_telephony_missed_call __attribute__ ((packed)), p),
+		.struct_name =  "convert_message_struct__avm_event_telefonprofile",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "on",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_telefonprofile __attribute__ ((packed)), on),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_powermanagment_remote'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_powermanagment_remote[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote __attribute__ ((packed)), header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote",
+		.type_name   =  "enum avm_event_powermanagment_remote_action",
+		.flags = ENDIAN_CONVERT_SELECT | 0,
+		.name = "remote_action",
+		.size = sizeof(enum avm_event_powermanagment_remote_action),
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote __attribute__ ((packed)), remote_action),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_powermanagment_remote_action_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_avm_event_powermanagment_remote_action,
+		.enumName = "enum_table_avm_event_powermanagment_remote_action"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_powermanagment_remote",
+		.type_name   =  "union avm_event_powermanagment_remote_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "param",
+		.substruct = convert_message_union_avm_event_powermanagment_remote_union,
+		.offset = __builtin_offsetof(struct _avm_event_powermanagment_remote __attribute__ ((packed)), param),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_cpu_idle'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_cpu_idle[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "cpu_idle",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), cpu_idle),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "dsl_dsp_idle",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), dsl_dsp_idle),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "voice_dsp_idle",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), voice_dsp_idle),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "mem_strictlyused",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), mem_strictlyused),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "mem_cacheused",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), mem_cacheused),
+	},
+	[5] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "mem_physfree",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), mem_physfree),
+	},
+	[6] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_idle",
+		.type_name   =  "enum _cputype",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "cputype",
+		.size = sizeof(enum _cputype),
+		.offset = __builtin_offsetof(struct avm_event_cpu_idle __attribute__ ((packed)), cputype),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__cputype,
+		.enumName = "enum_table__cputype"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_remote_source_trigger_request'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_remote_source_trigger_request[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_remote_source_trigger_request",
+		.type_name   =  "struct avm_event_data",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "data",
+		.substruct = convert_message_struct_avm_event_data,
+		.offset = __builtin_offsetof(struct avm_event_remote_source_trigger_request __attribute__ ((packed)), data),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_remotewatchdog'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_remotewatchdog[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), event_header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
+		.type_name   =  "enum _avm_remote_wdt_cmd",
+		.flags = 0,
+		.name = "cmd",
+		.size = sizeof(enum _avm_remote_wdt_cmd),
+		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), cmd),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remote_wdt_cmd_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_remote_wdt_cmd,
+		.enumName = "enum_table__avm_remote_wdt_cmd"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
+		.type_name   =  "char",
+		.flags = 0,
+		.name = "name",
+		.size = sizeof(char) * 16,
+		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), name),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_remotewatchdog",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "param",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_remotewatchdog __attribute__ ((packed)), param),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_tffs_read'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_tffs_read[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.type_name   =  "uint64_t",
+		.flags = 0,
+		.name = "buff_addr",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), buff_addr),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.type_name   =  "uint64_t",
+		.flags = 0,
+		.name = "len",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), len),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.type_name   =  "uint32_t",
+		.flags = 0,
+		.name = "id",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), id),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_read",
+		.type_name   =  "int32_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "crc",
+		.size = sizeof(int32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_read __attribute__ ((packed)), crc),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_tffs_info'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_tffs_info[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_tffs_info",
+		.type_name   =  "uint32_t",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "fill_level",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_info __attribute__ ((packed)), fill_level),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_cpu_idle'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_cpu_idle[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), event_header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "cpu_idle",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), cpu_idle),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "dsl_dsp_idle",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), dsl_dsp_idle),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "voice_dsp_idle",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), voice_dsp_idle),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "mem_strictlyused",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), mem_strictlyused),
+	},
+	[5] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "mem_cacheused",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), mem_cacheused),
+	},
+	[6] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "unsigned char",
+		.flags = 0,
+		.name = "mem_physfree",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), mem_physfree),
+	},
+	[7] = {
+		.struct_name =  "convert_message_struct__avm_event_cpu_idle",
+		.type_name   =  "enum _cputype",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "cputype",
+		.size = sizeof(enum _cputype),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_idle __attribute__ ((packed)), cputype),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__cputype,
+		.enumName = "enum_table__cputype"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
@@ -2837,107 +2795,69 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct wlan_event_data_client_connect_info'
+ * Endian Convert-Table for: 'struct _avm_event_push_button'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_wlan_event_data_client_connect_info[] = {
+struct _endian_convert convert_message_struct__avm_event_push_button[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
-		.type_name   =  "struct wlan_event_data_client_common",
+		.struct_name =  "convert_message_struct__avm_event_push_button",
+		.type_name   =  "enum _avm_event_id",
 		.flags = 0,
-		.name = "common",
-		.substruct = convert_message_struct_wlan_event_data_client_common,
-		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), common),
+		.name = "id",
+		.size = sizeof(enum _avm_event_id),
+		.offset = __builtin_offsetof(struct _avm_event_push_button __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_event_id,
+		.enumName = "enum_table__avm_event_id"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
-		.type_name   =  "uint8_t",
+		.struct_name =  "convert_message_struct__avm_event_push_button",
+		.type_name   =  "enum _avm_event_push_button_key",
 		.flags = 0,
-		.name = "info_context",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), info_context),
+		.name = "key",
+		.size = sizeof(enum _avm_event_push_button_key),
+		.offset = __builtin_offsetof(struct _avm_event_push_button __attribute__ ((packed)), key),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_push_button_key_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_event_push_button_key,
+		.enumName = "enum_table__avm_event_push_button_key"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
-		.type_name   =  "uint8_t",
-		.flags = 0,
-		.name = "reason",
-		.size = sizeof(uint8_t),
-		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), reason),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
+		.struct_name =  "convert_message_struct__avm_event_push_button",
 		.type_name   =  "uint32_t",
-		.flags = 0,
-		.name = "max_node_count",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), max_node_count),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
-		.type_name   =  "uint16_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "ieee80211_code",
-		.size = sizeof(unsigned short),
-		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), ieee80211_code),
+		.name = "pressed",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct _avm_event_push_button __attribute__ ((packed)), pressed),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_log'
+ * Endian Convert-Table for: 'struct avm_event_cpu_run'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_log[] = {
+struct _endian_convert convert_message_struct_avm_event_cpu_run[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_log",
-		.type_name   =  "struct _avm_event_header",
-		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), event_header),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_log",
-		.type_name   =  "enum _avm_logtype",
+		.struct_name =  "convert_message_struct_avm_event_cpu_run",
+		.type_name   =  "enum _cputype",
 		.flags = 0,
-		.name = "logtype",
-		.size = sizeof(enum _avm_logtype),
-		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), logtype),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_logtype_name,
+		.name = "cputype",
+		.size = sizeof(enum _cputype),
+		.offset = __builtin_offsetof(struct avm_event_cpu_run __attribute__ ((packed)), cputype),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_logtype,
-		.enumName = "enum_table__avm_logtype"
+		.enumInfo = enum_table__cputype,
+		.enumName = "enum_table__cputype"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_log",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "loglen",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), loglen),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_log",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "logpointer",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), logpointer),
-	},
-	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_log",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "checksum",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), checksum),
-	},
-	[5] = {
-		.struct_name =  "convert_message_struct__avm_event_log",
-		.type_name   =  "unsigned int",
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_cpu_run",
+		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "rebootflag",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_log __attribute__ ((packed)), rebootflag),
+		.name = "cpu_run",
+		.size = sizeof(unsigned char) * 4,
+		.offset = __builtin_offsetof(struct avm_event_cpu_run __attribute__ ((packed)), cpu_run),
 	},
 };
 
@@ -2985,582 +2905,657 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_powermanagment_status'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_powermanagment_status[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_status",
-		.type_name   =  "struct _avm_event_header",
-		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_status __attribute__ ((packed)), event_header),
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_status",
-		.type_name   =  "enum _powermanagment_status_type",
-		.flags = ENDIAN_CONVERT_SELECT | 0,
-		.name = "substatus",
-		.size = sizeof(enum _powermanagment_status_type),
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_status __attribute__ ((packed)), substatus),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__powermanagment_status_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__powermanagment_status_type,
-		.enumName = "enum_table__powermanagment_status_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_powermanagment_status",
-		.type_name   =  "union __powermanagment_status_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_SELECT_ENTRY | ENDIAN_CONVERT_IGNORE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "param",
-		.substruct = convert_message_union___powermanagment_status_union,
-		.offset = __builtin_offsetof(struct _avm_event_powermanagment_status __attribute__ ((packed)), param),
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_powerline_status'
+ * Endian Convert-Table for: 'struct _avm_event_header'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_powerline_status[] = {
+struct _endian_convert convert_message_struct__avm_event_header[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_powerline_status",
-		.type_name   =  "enum ePLCState",
+		.struct_name =  "convert_message_struct__avm_event_header",
+		.type_name   =  "enum _avm_event_id",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "status",
-		.size = sizeof(enum ePLCState),
-		.offset = __builtin_offsetof(struct avm_event_powerline_status __attribute__ ((packed)), status),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_ePLCState_name,
+		.name = "id",
+		.size = sizeof(enum _avm_event_id),
+		.offset = __builtin_offsetof(struct _avm_event_header __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_ePLCState,
-		.enumName = "enum_table_ePLCState"
+		.enumInfo = enum_table__avm_event_id,
+		.enumName = "enum_table__avm_event_id"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_id_mask'
+ * Endian Convert-Table for: 'struct cpmac_event_struct'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_id_mask[] = {
+struct _endian_convert convert_message_struct_cpmac_event_struct[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_id_mask",
-		.type_name   =  "avm_event_mask_fieldentry",
+		.struct_name =  "convert_message_struct_cpmac_event_struct",
+		.type_name   =  "struct _avm_event_header",
+		.flags = 0,
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct cpmac_event_struct __attribute__ ((packed)), event_header),
+	},
+	[1] = {
+		.struct_name =  "convert_message_struct_cpmac_event_struct",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "ports",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct cpmac_event_struct __attribute__ ((packed)), ports),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_cpmac_event_struct",
+		.type_name   =  "struct cpmac_port",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "mask",
-		.offset = __builtin_offsetof(struct _avm_event_id_mask __attribute__ ((packed)), mask),
+		.name = "port",
+		.substruct = convert_message_struct_cpmac_port,
+		.offset = __builtin_offsetof(struct cpmac_event_struct __attribute__ ((packed)), port),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_wlan'
+ * Endian Convert-Table for: 'struct avm_event_led_info'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_wlan[] = {
+struct _endian_convert convert_message_struct_avm_event_led_info[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "mac",
-		.size = sizeof(char) * 6,
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), mac),
+		.name = "mode",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), mode),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "union avm_event_wlan_client_status_u1",
-		.flags = ENDIAN_CONVERT_IGNORE | 0,
-		.name = "u1",
-		.substruct = convert_message_union_avm_event_wlan_client_status_u1,
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), u1),
+		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "param1",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), param1),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "wlan_event",
+		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "event",
-		.size = sizeof(wlan_event),
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), event),
+		.name = "param2",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), param2),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "wlan_info",
+		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "info",
-		.size = sizeof(wlan_info),
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), info),
+		.name = "gpio_driver_type",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), gpio_driver_type),
 	},
 	[4] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "enum wlan_sm_states",
+		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "status",
-		.size = sizeof(enum wlan_sm_states),
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), status),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_wlan_sm_states_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_wlan_sm_states,
-		.enumName = "enum_table_wlan_sm_states"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "gpio",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), gpio),
 	},
 	[5] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "union avm_event_wlan_client_status_u2",
-		.flags = ENDIAN_CONVERT_IGNORE | 0,
-		.name = "u2",
-		.substruct = convert_message_union_avm_event_wlan_client_status_u2,
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), u2),
+		.struct_name =  "convert_message_struct_avm_event_led_info",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "pos",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), pos),
 	},
 	[6] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
+		.struct_name =  "convert_message_struct_avm_event_led_info",
 		.type_name   =  "char",
-		.flags = 0,
-		.name = "if_name",
-		.size = sizeof(char) * IFNAMSIZ,
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), if_name),
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "name",
+		.size = sizeof(char) * 32,
+		.offset = __builtin_offsetof(struct avm_event_led_info __attribute__ ((packed)), name),
 	},
-	[7] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
-		.type_name   =  "unsigned int",
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct avm_event_remotepcmlink'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_avm_event_remotepcmlink[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_avm_event_remotepcmlink",
+		.type_name   =  "enum _avm_remotepcmlinktype",
 		.flags = 0,
-		.name = "ev_initiator",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), ev_initiator),
+		.name = "type",
+		.size = sizeof(enum _avm_remotepcmlinktype),
+		.offset = __builtin_offsetof(struct avm_event_remotepcmlink __attribute__ ((packed)), type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_remotepcmlinktype_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_remotepcmlinktype,
+		.enumName = "enum_table__avm_remotepcmlinktype"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
-	[8] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_remotepcmlink",
 		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "ev_reason",
+		.name = "sharedlen",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), ev_reason),
+		.offset = __builtin_offsetof(struct avm_event_remotepcmlink __attribute__ ((packed)), sharedlen),
 	},
-	[9] = {
-		.struct_name =  "convert_message_struct_avm_event_wlan",
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_remotepcmlink",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "avm_capabilities",
+		.name = "sharedpointer",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_wlan __attribute__ ((packed)), avm_capabilities),
+		.offset = __builtin_offsetof(struct avm_event_remotepcmlink __attribute__ ((packed)), sharedpointer),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_cmd_param_register'
+ * Endian Convert-Table for: 'struct wlan_event_data_scan_common'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_cmd_param_register[] = {
+struct _endian_convert convert_message_struct_wlan_event_data_scan_common[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd_param_register",
-		.type_name   =  "struct _avm_event_id_mask",
+		.struct_name =  "convert_message_struct_wlan_event_data_scan_common",
+		.type_name   =  "char",
 		.flags = 0,
-		.name = "mask",
-		.substruct = convert_message_struct__avm_event_id_mask,
-		.offset = __builtin_offsetof(struct _avm_event_cmd_param_register __attribute__ ((packed)), mask),
+		.name = "iface",
+		.size = sizeof(char) * IFNAMSIZ + 1,
+		.offset = __builtin_offsetof(struct wlan_event_data_scan_common __attribute__ ((packed)), iface),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_cmd_param_register",
+		.struct_name =  "convert_message_struct_wlan_event_data_scan_common",
 		.type_name   =  "char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "Name",
-		.size = sizeof(char) * 33,
-		.offset = __builtin_offsetof(struct _avm_event_cmd_param_register __attribute__ ((packed)), Name),
+		.name = "initiator",
+		.size = sizeof(char) * 16 + 1,
+		.offset = __builtin_offsetof(struct wlan_event_data_scan_common __attribute__ ((packed)), initiator),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_source_notifier'
+ * Endian Convert-Table for: 'struct avm_event_tffs_cleanup'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_source_notifier[] = {
+struct _endian_convert convert_message_struct_avm_event_tffs_cleanup[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_source_notifier",
-		.type_name   =  "enum _avm_event_id",
+		.struct_name =  "convert_message_struct_avm_event_tffs_cleanup",
+		.type_name   =  "uint32_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "id",
-		.size = sizeof(enum _avm_event_id),
-		.offset = __builtin_offsetof(struct avm_event_source_notifier __attribute__ ((packed)), id),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table__avm_event_id,
-		.enumName = "enum_table__avm_event_id"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "dummy",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_tffs_cleanup __attribute__ ((packed)), dummy),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_firmware_update_available'
+ * Endian Convert-Table for: 'struct avm_event_mass_storage_unmount'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_firmware_update_available[] = {
+struct _endian_convert convert_message_struct_avm_event_mass_storage_unmount[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_firmware_update_available",
-		.type_name   =  "enum avm_event_firmware_type",
-		.flags = 0,
-		.name = "type",
-		.size = sizeof(enum avm_event_firmware_type),
-		.offset = __builtin_offsetof(struct avm_event_firmware_update_available __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_firmware_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_firmware_type,
-		.enumName = "enum_table_avm_event_firmware_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
-	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_firmware_update_available",
+		.struct_name =  "convert_message_struct_avm_event_mass_storage_unmount",
 		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "version_length",
+		.name = "name_length",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_firmware_update_available __attribute__ ((packed)), version_length),
+		.offset = __builtin_offsetof(struct avm_event_mass_storage_unmount __attribute__ ((packed)), name_length),
 	},
-	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_firmware_update_available",
+	[1] = {
+		.struct_name =  "convert_message_struct_avm_event_mass_storage_unmount",
 		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "version",
+		.name = "name",
 		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct avm_event_firmware_update_available __attribute__ ((packed)), version),
+		.offset = __builtin_offsetof(struct avm_event_mass_storage_unmount __attribute__ ((packed)), name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_cleanup'
+ * Endian Convert-Table for: 'struct avm_event_ping'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_cleanup[] = {
+struct _endian_convert convert_message_struct_avm_event_ping[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_cleanup",
+		.struct_name =  "convert_message_struct_avm_event_ping",
 		.type_name   =  "uint32_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "dummy",
+		.name = "seq",
 		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_cleanup __attribute__ ((packed)), dummy),
+		.offset = __builtin_offsetof(struct avm_event_ping __attribute__ ((packed)), seq),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_tffs_notify'
+ * Endian Convert-Table for: 'struct avm_event_mass_storage_mount'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_tffs_notify[] = {
+struct _endian_convert convert_message_struct_avm_event_mass_storage_mount[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_notify",
-		.type_name   =  "uint32_t",
+		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
+		.type_name   =  "unsigned long long",
 		.flags = 0,
-		.name = "id",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_tffs_notify __attribute__ ((packed)), id),
+		.name = "size",
+		.size = sizeof(unsigned long long),
+		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), size),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_tffs_notify",
-		.type_name   =  "enum avm_event_tffs_notify_event",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "event",
-		.size = sizeof(enum avm_event_tffs_notify_event),
-		.offset = __builtin_offsetof(struct avm_event_tffs_notify __attribute__ ((packed)), event),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_tffs_notify_event_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_tffs_notify_event,
-		.enumName = "enum_table_avm_event_tffs_notify_event"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
+		.type_name   =  "unsigned long long",
+		.flags = 0,
+		.name = "free",
+		.size = sizeof(unsigned long long),
+		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), free),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
+		.name = "name_length",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), name_length),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct_avm_event_mass_storage_mount",
+		.type_name   =  "unsigned char",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "name",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_mass_storage_mount __attribute__ ((packed)), name),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_led_status'
+ * Endian Convert-Table for: 'struct _avm_event_cpu_run'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_led_status[] = {
+struct _endian_convert convert_message_struct__avm_event_cpu_run[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_led_status",
-		.type_name   =  "enum avm_event_led_id",
+		.struct_name =  "convert_message_struct__avm_event_cpu_run",
+		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
-		.name = "led",
-		.size = sizeof(enum avm_event_led_id),
-		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), led),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_led_id_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_led_id,
-		.enumName = "enum_table_avm_event_led_id"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "event_header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_cpu_run __attribute__ ((packed)), event_header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_led_status",
-		.type_name   =  "unsigned int",
+		.struct_name =  "convert_message_struct__avm_event_cpu_run",
+		.type_name   =  "enum _cputype",
 		.flags = 0,
-		.name = "state",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), state),
+		.name = "cputype",
+		.size = sizeof(enum _cputype),
+		.offset = __builtin_offsetof(struct _avm_event_cpu_run __attribute__ ((packed)), cputype),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__cputype_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__cputype,
+		.enumName = "enum_table__cputype"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct_avm_event_led_status",
-		.type_name   =  "unsigned int",
-		.flags = 0,
-		.name = "param_len",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), param_len),
-	},
-	[3] = {
-		.struct_name =  "convert_message_struct_avm_event_led_status",
+		.struct_name =  "convert_message_struct__avm_event_cpu_run",
 		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "params",
-		.size = sizeof(unsigned char) * 245,
-		.offset = __builtin_offsetof(struct avm_event_led_status __attribute__ ((packed)), params),
+		.name = "cpu_run",
+		.size = sizeof(unsigned char) * 4,
+		.offset = __builtin_offsetof(struct _avm_event_cpu_run __attribute__ ((packed)), cpu_run),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct wlan_event_data_client_common'
+ * Endian Convert-Table for: 'struct avm_event_unserialised'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_wlan_event_data_client_common[] = {
+struct _endian_convert convert_message_struct_avm_event_unserialised[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_common",
-		.type_name   =  "uint8_t",
+		.struct_name =  "convert_message_struct_avm_event_unserialised",
+		.type_name   =  "uint64_t",
 		.flags = 0,
-		.name = "mac",
-		.size = sizeof(uint8_t) * 6,
-		.offset = __builtin_offsetof(struct wlan_event_data_client_common __attribute__ ((packed)), mac),
+		.name = "evnt_id",
+		.size = sizeof(uint64_t),
+		.offset = __builtin_offsetof(struct avm_event_unserialised __attribute__ ((packed)), evnt_id),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_common",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct_avm_event_unserialised",
+		.type_name   =  "uint32_t",
 		.flags = 0,
-		.name = "iface",
-		.size = sizeof(char) * IFNAMSIZ + 1,
-		.offset = __builtin_offsetof(struct wlan_event_data_client_common __attribute__ ((packed)), iface),
+		.name = "data_len",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct avm_event_unserialised __attribute__ ((packed)), data_len),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_client_common",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct_avm_event_unserialised",
+		.type_name   =  "unsigned char",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "initiator",
-		.size = sizeof(char) * 16 + 1,
-		.offset = __builtin_offsetof(struct wlan_event_data_client_common __attribute__ ((packed)), initiator),
+		.name = "data",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(struct avm_event_unserialised __attribute__ ((packed)), data),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_powerline_status'
+ * Endian Convert-Table for: 'struct avm_event_telefonprofile'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_powerline_status[] = {
+struct _endian_convert convert_message_struct_avm_event_telefonprofile[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_powerline_status",
-		.type_name   =  "struct _avm_event_header",
+		.struct_name =  "convert_message_struct_avm_event_telefonprofile",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "on",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_telefonprofile __attribute__ ((packed)), on),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct wlan_event_data_client_connect_info'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct_wlan_event_data_client_connect_info[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
+		.type_name   =  "struct wlan_event_data_client_common",
 		.flags = 0,
-		.name = "event_header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_powerline_status __attribute__ ((packed)), event_header),
+		.name = "common",
+		.substruct = convert_message_struct_wlan_event_data_client_common,
+		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), common),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_powerline_status",
-		.type_name   =  "enum ePLCState",
+		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
+		.type_name   =  "uint8_t",
+		.flags = 0,
+		.name = "info_context",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), info_context),
+	},
+	[2] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
+		.type_name   =  "uint8_t",
+		.flags = 0,
+		.name = "reason",
+		.size = sizeof(uint8_t),
+		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), reason),
+	},
+	[3] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
+		.type_name   =  "uint32_t",
+		.flags = 0,
+		.name = "max_node_count",
+		.size = sizeof(uint32_t),
+		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), max_node_count),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct_wlan_event_data_client_connect_info",
+		.type_name   =  "uint16_t",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "status",
-		.size = sizeof(enum ePLCState),
-		.offset = __builtin_offsetof(struct _avm_event_powerline_status __attribute__ ((packed)), status),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_ePLCState_name,
+		.name = "ieee80211_code",
+		.size = sizeof(unsigned short),
+		.offset = __builtin_offsetof(struct wlan_event_data_client_connect_info __attribute__ ((packed)), ieee80211_code),
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'struct _avm_event_cmd_param_trigger'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_struct__avm_event_cmd_param_trigger[] = {
+	[0] = {
+		.struct_name =  "convert_message_struct__avm_event_cmd_param_trigger",
+		.type_name   =  "enum _avm_event_id",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "id",
+		.size = sizeof(enum _avm_event_id),
+		.offset = __builtin_offsetof(struct _avm_event_cmd_param_trigger __attribute__ ((packed)), id),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_event_id_name,
 #ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_ePLCState,
-		.enumName = "enum_table_ePLCState"
+		.enumInfo = enum_table__avm_event_id,
+		.enumName = "enum_table__avm_event_id"
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct _avm_event_smarthome_switch_status'
+ * Endian Convert-Table for: 'struct avm_event_log'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct__avm_event_smarthome_switch_status[] = {
+struct _endian_convert convert_message_struct_avm_event_log[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
-		.type_name   =  "struct _avm_event_header",
+		.struct_name =  "convert_message_struct_avm_event_log",
+		.type_name   =  "enum _avm_logtype",
 		.flags = 0,
-		.name = "header",
-		.substruct = convert_message_struct__avm_event_header,
-		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), header),
+		.name = "logtype",
+		.size = sizeof(enum _avm_logtype),
+		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), logtype),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum__avm_logtype_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table__avm_logtype,
+		.enumName = "enum_table__avm_logtype"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
-		.type_name   =  "enum avm_event_switch_type",
+		.struct_name =  "convert_message_struct_avm_event_log",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "type",
-		.size = sizeof(enum avm_event_switch_type),
-		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), type),
-		.enum_debug_function = (char *(*)(unsigned int))get_enum_avm_event_switch_type_name,
-#ifdef WIRESHARK_PLUGIN
-		.enumInfo = enum_table_avm_event_switch_type,
-		.enumName = "enum_table_avm_event_switch_type"
-#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
+		.name = "loglen",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), loglen),
 	},
 	[2] = {
-		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.struct_name =  "convert_message_struct_avm_event_log",
 		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "value",
+		.name = "logpointer",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), value),
+		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), logpointer),
 	},
 	[3] = {
-		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
+		.struct_name =  "convert_message_struct_avm_event_log",
 		.type_name   =  "unsigned int",
-		.flags = ENDIAN_CONVERT_ARRAY_ELEMENT_ANZAHL | 0,
-		.name = "ain_length",
+		.flags = 0,
+		.name = "checksum",
 		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), ain_length),
+		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), checksum),
 	},
 	[4] = {
-		.struct_name =  "convert_message_struct__avm_event_smarthome_switch_status",
-		.type_name   =  "unsigned char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_ARRAY_USE | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "ain",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(struct _avm_event_smarthome_switch_status __attribute__ ((packed)), ain),
+		.struct_name =  "convert_message_struct_avm_event_log",
+		.type_name   =  "unsigned int",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "rebootflag",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct avm_event_log __attribute__ ((packed)), rebootflag),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_source_register'
+ * Endian Convert-Table for: 'struct _avm_event_wlan'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_source_register[] = {
+struct _endian_convert convert_message_struct__avm_event_wlan[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_source_register",
-		.type_name   =  "struct _avm_event_id_mask",
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "struct _avm_event_header",
 		.flags = 0,
-		.name = "id_mask",
-		.substruct = convert_message_struct__avm_event_id_mask,
-		.offset = __builtin_offsetof(struct avm_event_source_register __attribute__ ((packed)), id_mask),
+		.name = "header",
+		.substruct = convert_message_struct__avm_event_header,
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), header),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_source_register",
+		.struct_name =  "convert_message_struct__avm_event_wlan",
 		.type_name   =  "char",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "name",
-		.size = sizeof(char) * 32,
-		.offset = __builtin_offsetof(struct avm_event_source_register __attribute__ ((packed)), name),
+		.flags = 0,
+		.name = "mac",
+		.size = sizeof(char) * 6,
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), mac),
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct avm_event_checkpoint'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_avm_event_checkpoint[] = {
-	[0] = {
-		.struct_name =  "convert_message_struct_avm_event_checkpoint",
-		.type_name   =  "uint32_t",
+	[2] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
 		.flags = 0,
-		.name = "node_id",
-		.size = sizeof(uint32_t),
-		.offset = __builtin_offsetof(struct avm_event_checkpoint __attribute__ ((packed)), node_id),
+		.name = "u1",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), u1),
 	},
-	[1] = {
-		.struct_name =  "convert_message_struct_avm_event_checkpoint",
-		.type_name   =  "uint64_t",
+	[3] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "event",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), event),
+	},
+	[4] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "info",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), info),
+	},
+	[5] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "status",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), status),
+	},
+	[6] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "u2",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), u2),
+	},
+	[7] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "char",
+		.flags = 0,
+		.name = "if_name",
+		.size = sizeof(char) * IFNAMSIZ,
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), if_name),
+	},
+	[8] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "ev_initiator",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), ev_initiator),
+	},
+	[9] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
+		.flags = 0,
+		.name = "ev_reason",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), ev_reason),
+	},
+	[10] = {
+		.struct_name =  "convert_message_struct__avm_event_wlan",
+		.type_name   =  "unsigned int",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "checkpoints",
-		.size = sizeof(uint64_t),
-		.offset = __builtin_offsetof(struct avm_event_checkpoint __attribute__ ((packed)), checkpoints),
+		.name = "avm_capabilities",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(struct _avm_event_wlan __attribute__ ((packed)), avm_capabilities),
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'struct wlan_event_data_scan_common'
+ * Endian Convert-Table for: 'struct wlan_event_data_scan_event_info'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_struct_wlan_event_data_scan_common[] = {
+struct _endian_convert convert_message_struct_wlan_event_data_scan_event_info[] = {
 	[0] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_scan_common",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct_wlan_event_data_scan_event_info",
+		.type_name   =  "struct wlan_event_data_scan_common",
 		.flags = 0,
-		.name = "iface",
-		.size = sizeof(char) * IFNAMSIZ + 1,
-		.offset = __builtin_offsetof(struct wlan_event_data_scan_common __attribute__ ((packed)), iface),
+		.name = "common",
+		.substruct = convert_message_struct_wlan_event_data_scan_common,
+		.offset = __builtin_offsetof(struct wlan_event_data_scan_event_info __attribute__ ((packed)), common),
 	},
 	[1] = {
-		.struct_name =  "convert_message_struct_wlan_event_data_scan_common",
-		.type_name   =  "char",
+		.struct_name =  "convert_message_struct_wlan_event_data_scan_event_info",
+		.type_name   =  "enum wlan_event_scan_type",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "initiator",
-		.size = sizeof(char) * 16 + 1,
-		.offset = __builtin_offsetof(struct wlan_event_data_scan_common __attribute__ ((packed)), initiator),
+		.name = "event_type",
+		.size = sizeof(enum wlan_event_scan_type),
+		.offset = __builtin_offsetof(struct wlan_event_data_scan_event_info __attribute__ ((packed)), event_type),
+		.enum_debug_function = (char *(*)(unsigned int))get_enum_wlan_event_scan_type_name,
+#ifdef WIRESHARK_PLUGIN
+		.enumInfo = enum_table_wlan_event_scan_type,
+		.enumName = "enum_table_wlan_event_scan_type"
+#endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 	},
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union avm_event_powermanagment_remote_union'
+ * Endian Convert-Table for: 'union avm_event_tffs_call_union'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union_avm_event_powermanagment_remote_union[] = {
-	[avm_event_powermanagment_ressourceinfo] = {
-		.struct_name =  "convert_message_union_avm_event_powermanagment_remote_union",
+struct _endian_convert convert_message_union_avm_event_tffs_call_union[] = {
+	[avm_event_tffs_call_open] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "ressourceinfo",
-		.substruct = convert_message_struct_avm_event_powermanagment_remote_ressourceinfo,
-		.offset = __builtin_offsetof(union avm_event_powermanagment_remote_union __attribute__ ((packed)), ressourceinfo)
+		.name = "open",
+		.substruct = convert_message_struct_avm_event_tffs_open,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), open)
 	},
-	[avm_event_powermanagment_activatepowermode] = {
-		.struct_name =  "convert_message_union_avm_event_powermanagment_remote_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "powermode",
-		.size = sizeof(char) * 32,
-		.offset = __builtin_offsetof(union avm_event_powermanagment_remote_union __attribute__ ((packed)), powermode)
+	[avm_event_tffs_call_close] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "close",
+		.substruct = convert_message_struct_avm_event_tffs_close,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), close)
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union _avm_event_cmd_param'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union__avm_event_cmd_param[] = {
-	[avm_event_cmd_register] = {
-		.struct_name =  "convert_message_union__avm_event_cmd_param",
+	[avm_event_tffs_call_read] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "avm_event_cmd_param_register",
-		.substruct = convert_message_struct__avm_event_cmd_param_register,
-		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_register)
+		.name = "read",
+		.substruct = convert_message_struct_avm_event_tffs_read,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), read)
 	},
-	[avm_event_cmd_release] = {
-		.struct_name =  "convert_message_union__avm_event_cmd_param",
+	[avm_event_tffs_call_write] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "avm_event_cmd_param_release",
-		.substruct = convert_message_struct__avm_event_cmd_param_release,
-		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_release)
+		.name = "write",
+		.substruct = convert_message_struct_avm_event_tffs_write,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), write)
 	},
-	[avm_event_cmd_trigger] = {
-		.struct_name =  "convert_message_union__avm_event_cmd_param",
+	[avm_event_tffs_call_cleanup] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "avm_event_cmd_param_trigger",
-		.substruct = convert_message_struct__avm_event_cmd_param_trigger,
-		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_trigger)
+		.name = "cleanup",
+		.substruct = convert_message_struct_avm_event_tffs_cleanup,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), cleanup)
 	},
-	[avm_event_cmd_source_register] = {
-		.struct_name =  "convert_message_union__avm_event_cmd_param",
+	[avm_event_tffs_call_reindex] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "avm_event_cmd_param_source_register",
-		.substruct = convert_message_struct__avm_event_cmd_param_register,
-		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_source_register)
+		.name = "reindex",
+		.substruct = convert_message_struct_avm_event_tffs_reindex,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), reindex)
 	},
-	[avm_event_cmd_source_trigger] = {
-		.struct_name =  "convert_message_union__avm_event_cmd_param",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "avm_event_cmd_param_source_trigger",
-		.substruct = convert_message_struct__avm_event_cmd_param_source_trigger,
-		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_source_trigger)
+	[avm_event_tffs_call_info] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "info",
+		.substruct = convert_message_struct_avm_event_tffs_info,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), info)
 	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union wlan_event_data'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union_wlan_event_data[] = {
-	[CLIENT_STATE_CHANGE] = {
-		.struct_name =  "convert_message_union_wlan_event_data",
+	[avm_event_tffs_call_init] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "client_state_change",
-		.substruct = convert_message_struct_wlan_event_data_client_state_change,
-		.offset = __builtin_offsetof(union wlan_event_data __attribute__ ((packed)), client_state_change)
+		.name = "init",
+		.substruct = convert_message_struct_avm_event_tffs_init,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), init)
 	},
-	[CLIENT_CONNECT_INFO] = {
-		.struct_name =  "convert_message_union_wlan_event_data",
+	[avm_event_tffs_call_deinit] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "client_connect_info",
-		.substruct = convert_message_struct_wlan_event_data_client_connect_info,
-		.offset = __builtin_offsetof(union wlan_event_data __attribute__ ((packed)), client_connect_info)
+		.name = "deinit",
+		.substruct = convert_message_struct_avm_event_tffs_deinit,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), deinit)
 	},
-	[WLAN_EVENT_SCAN] = {
-		.struct_name =  "convert_message_union_wlan_event_data",
+	[avm_event_tffs_call_notify] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "notify",
+		.substruct = convert_message_struct_avm_event_tffs_notify,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), notify)
+	},
+	[avm_event_tffs_call_paniclog] = {
+		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "scan_event_info",
-		.substruct = convert_message_struct_wlan_event_data_scan_event_info,
-		.offset = __builtin_offsetof(union wlan_event_data __attribute__ ((packed)), scan_event_info)
+		.name = "paniclog",
+		.substruct = convert_message_struct_avm_event_tffs_paniclog,
+		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), paniclog)
 	},
 };
 
@@ -3858,283 +3853,6 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union avm_event_data_union'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union_avm_event_data_union[] = {
-	[avm_event_id_push_button] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "push_button",
-		.substruct = convert_message_struct_avm_event_push_button,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), push_button)
-	},
-	[avm_event_id_ethernet_connect_status] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "cpmac",
-		.substruct = convert_message_struct__cpmac_event_struct,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), cpmac)
-	},
-	[avm_event_id_led_status] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "led_status",
-		.substruct = convert_message_struct_avm_event_led_status,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), led_status)
-	},
-	[avm_event_id_led_info] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "led_info",
-		.substruct = convert_message_struct_avm_event_led_info,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), led_info)
-	},
-	[avm_event_id_telefonprofile] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "telefonprofile",
-		.substruct = convert_message_struct_avm_event_telefonprofile,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telefonprofile)
-	},
-	[avm_event_id_temperature] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "temperature",
-		.substruct = convert_message_struct_avm_event_temperature,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), temperature)
-	},
-	[avm_event_id_powermanagment_status] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "powermanagment_status",
-		.substruct = convert_message_struct_avm_event_powermanagment_status,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), powermanagment_status)
-	},
-	[avm_event_id_cpu_idle] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "cpu_idle",
-		.substruct = convert_message_struct_avm_event_cpu_idle,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), cpu_idle)
-	},
-	[avm_event_id_powermanagment_remote] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "powermanagment_remote",
-		.substruct = convert_message_struct_avm_event_powermanagment_remote,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), powermanagment_remote)
-	},
-	[avm_event_id_log] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "id_log",
-		.substruct = convert_message_struct_avm_event_log,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_log)
-	},
-	[avm_event_id_remotepcmlink] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "id_remotepcmlink",
-		.substruct = convert_message_struct_avm_event_remotepcmlink,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_remotepcmlink)
-	},
-	[avm_event_id_remotewatchdog] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "id_remotewatchdog",
-		.substruct = convert_message_struct_avm_event_remotewatchdog,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_remotewatchdog)
-	},
-	[avm_event_id_rpc] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "id_rpc",
-		.substruct = convert_message_struct_avm_event_rpc,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_rpc)
-	},
-	[avm_event_id_pm_ressourceinfo_status] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "pm_info_stat",
-		.substruct = convert_message_struct_avm_event_pm_info_stat,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), pm_info_stat)
-	},
-	[avm_event_id_wlan_client_status] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "wlan",
-		.substruct = convert_message_struct_avm_event_wlan,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), wlan)
-	},
-	[avm_event_id_wlan_event] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "wlan_event",
-		.substruct = convert_message_struct_wlan_event_def,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), wlan_event)
-	},
-	[avm_event_id_telephony_missed_call] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "telephony_missed_call",
-		.substruct = convert_message_struct_avm_event_telephony_missed_call,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_missed_call)
-	},
-	[avm_event_id_telephony_tam_call] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "telephony_tam_call",
-		.substruct = convert_message_struct_avm_event_telephony_missed_call,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_tam_call)
-	},
-	[avm_event_id_telephony_fax_received] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "telephony_fax_received",
-		.substruct = convert_message_struct_avm_event_telephony_missed_call,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_fax_received)
-	},
-	[avm_event_id_telephony_incoming_call] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "telephony_incoming_call",
-		.substruct = convert_message_struct_avm_event_telephony_missed_call,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_incoming_call)
-	},
-	[avm_event_id_firmware_update_available] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "firmware_update_available",
-		.substruct = convert_message_struct_avm_event_firmware_update_available,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), firmware_update_available)
-	},
-	[avm_event_id_internet_new_ip] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "internet_new_ip",
-		.substruct = convert_message_struct_avm_event_internet_new_ip,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), internet_new_ip)
-	},
-	[avm_event_id_smarthome_switch_status] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "smarthome_switch_status",
-		.substruct = convert_message_struct_avm_event_smarthome_switch_status,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), smarthome_switch_status)
-	},
-	[avm_event_id_mass_storage_mount] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "mass_storage_mount",
-		.substruct = convert_message_struct_avm_event_mass_storage_mount,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), mass_storage_mount)
-	},
-	[avm_event_id_mass_storage_unmount] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "mass_storage_unmount",
-		.substruct = convert_message_struct_avm_event_mass_storage_unmount,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), mass_storage_unmount)
-	},
-	[avm_event_id_checkpoint] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "checkpoint",
-		.substruct = convert_message_struct_avm_event_checkpoint,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), checkpoint)
-	},
-	[avm_event_id_cpu_run] = {
-		.struct_name =  "convert_message_union_avm_event_data_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "cpu_run",
-		.substruct = convert_message_struct_avm_event_cpu_run,
-		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), cpu_run)
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union __powermanagment_status_union'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union___powermanagment_status_union[] = {
-	[dsl_status] = {
-		.struct_name =  "convert_message_union___powermanagment_status_union",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "dsl_status",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(union __powermanagment_status_union __attribute__ ((packed)), dsl_status)
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union avm_event_telephony_call_params'
-\*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union_avm_event_telephony_call_params[] = {
-	[avm_event_telephony_params_name] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "string_avm_event_telephony_params_name",
-		.substruct = convert_message_struct_avm_event_telephony_string,
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
-	},
-	[avm_event_telephony_params_msn_name] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "string_avm_event_telephony_params_msn_name",
-		.substruct = convert_message_struct_avm_event_telephony_string,
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
-	},
-	[avm_event_telephony_params_portname] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "string_avm_event_telephony_params_portname",
-		.substruct = convert_message_struct_avm_event_telephony_string,
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
-	},
-	[avm_event_telephony_params_tam_path] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "string_avm_event_telephony_params_tam_path",
-		.substruct = convert_message_struct_avm_event_telephony_string,
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
-	},
-	[avm_event_telephony_params_calling] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "number",
-		.size = sizeof(unsigned char) * 32,
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), number)
-	},
-	[avm_event_telephony_params_called] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "number",
-		.size = sizeof(unsigned char) * 32,
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), number)
-	},
-	[avm_event_telephony_params_duration] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "duration",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), duration)
-	},
-	[avm_event_telephony_params_port] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "port",
-		.size = sizeof(unsigned char),
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), port)
-	},
-	[avm_event_telephony_params_id] = {
-		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
-		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "id",
-		.size = sizeof(unsigned int),
-		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), id)
-	},
-};
-
-/*------------------------------------------------------------------------------------------*\
  * Endian Convert-Table for: 'union avm_event_wlan_client_status_u1'
 \*------------------------------------------------------------------------------------------*/
 struct _endian_convert convert_message_union_avm_event_wlan_client_status_u1[] = {
@@ -4414,85 +4132,145 @@
 };
 
 /*------------------------------------------------------------------------------------------*\
- * Endian Convert-Table for: 'union avm_event_tffs_call_union'
+ * Endian Convert-Table for: 'union _avm_event_cmd_param'
 \*------------------------------------------------------------------------------------------*/
-struct _endian_convert convert_message_union_avm_event_tffs_call_union[] = {
-	[avm_event_tffs_call_open] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+struct _endian_convert convert_message_union__avm_event_cmd_param[] = {
+	[avm_event_cmd_register] = {
+		.struct_name =  "convert_message_union__avm_event_cmd_param",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "open",
-		.substruct = convert_message_struct_avm_event_tffs_open,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), open)
+		.name = "avm_event_cmd_param_register",
+		.substruct = convert_message_struct__avm_event_cmd_param_register,
+		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_register)
 	},
-	[avm_event_tffs_call_close] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_cmd_release] = {
+		.struct_name =  "convert_message_union__avm_event_cmd_param",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "close",
-		.substruct = convert_message_struct_avm_event_tffs_close,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), close)
+		.name = "avm_event_cmd_param_release",
+		.substruct = convert_message_struct__avm_event_cmd_param_release,
+		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_release)
 	},
-	[avm_event_tffs_call_read] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_cmd_trigger] = {
+		.struct_name =  "convert_message_union__avm_event_cmd_param",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "read",
-		.substruct = convert_message_struct_avm_event_tffs_read,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), read)
+		.name = "avm_event_cmd_param_trigger",
+		.substruct = convert_message_struct__avm_event_cmd_param_trigger,
+		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_trigger)
 	},
-	[avm_event_tffs_call_write] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_cmd_source_register] = {
+		.struct_name =  "convert_message_union__avm_event_cmd_param",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "write",
-		.substruct = convert_message_struct_avm_event_tffs_write,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), write)
+		.name = "avm_event_cmd_param_source_register",
+		.substruct = convert_message_struct__avm_event_cmd_param_register,
+		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_source_register)
 	},
-	[avm_event_tffs_call_cleanup] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_cmd_source_trigger] = {
+		.struct_name =  "convert_message_union__avm_event_cmd_param",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "avm_event_cmd_param_source_trigger",
+		.substruct = convert_message_struct__avm_event_cmd_param_source_trigger,
+		.offset = __builtin_offsetof(union _avm_event_cmd_param __attribute__ ((packed)), avm_event_cmd_param_source_trigger)
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'union avm_event_powermanagment_remote_union'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_union_avm_event_powermanagment_remote_union[] = {
+	[avm_event_powermanagment_ressourceinfo] = {
+		.struct_name =  "convert_message_union_avm_event_powermanagment_remote_union",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "cleanup",
-		.substruct = convert_message_struct_avm_event_tffs_cleanup,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), cleanup)
+		.name = "ressourceinfo",
+		.substruct = convert_message_struct_avm_event_powermanagment_remote_ressourceinfo,
+		.offset = __builtin_offsetof(union avm_event_powermanagment_remote_union __attribute__ ((packed)), ressourceinfo)
 	},
-	[avm_event_tffs_call_reindex] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_powermanagment_activatepowermode] = {
+		.struct_name =  "convert_message_union_avm_event_powermanagment_remote_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "powermode",
+		.size = sizeof(char) * 32,
+		.offset = __builtin_offsetof(union avm_event_powermanagment_remote_union __attribute__ ((packed)), powermode)
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'union __powermanagment_status_union'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_union___powermanagment_status_union[] = {
+	[dsl_status] = {
+		.struct_name =  "convert_message_union___powermanagment_status_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "dsl_status",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(union __powermanagment_status_union __attribute__ ((packed)), dsl_status)
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'union avm_event_telephony_call_params'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_union_avm_event_telephony_call_params[] = {
+	[avm_event_telephony_params_name] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "reindex",
-		.substruct = convert_message_struct_avm_event_tffs_reindex,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), reindex)
+		.name = "string_avm_event_telephony_params_name",
+		.substruct = convert_message_struct_avm_event_telephony_string,
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
 	},
-	[avm_event_tffs_call_info] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_telephony_params_msn_name] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "info",
-		.substruct = convert_message_struct_avm_event_tffs_info,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), info)
+		.name = "string_avm_event_telephony_params_msn_name",
+		.substruct = convert_message_struct_avm_event_telephony_string,
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
 	},
-	[avm_event_tffs_call_init] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_telephony_params_portname] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "init",
-		.substruct = convert_message_struct_avm_event_tffs_init,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), init)
+		.name = "string_avm_event_telephony_params_portname",
+		.substruct = convert_message_struct_avm_event_telephony_string,
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
 	},
-	[avm_event_tffs_call_deinit] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_telephony_params_tam_path] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "deinit",
-		.substruct = convert_message_struct_avm_event_tffs_deinit,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), deinit)
+		.name = "string_avm_event_telephony_params_tam_path",
+		.substruct = convert_message_struct_avm_event_telephony_string,
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), string)
 	},
-	[avm_event_tffs_call_notify] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_telephony_params_calling] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
 		.flags = ENDIAN_CONVERT_LAST | 0,
-		.name = "notify",
-		.substruct = convert_message_struct_avm_event_tffs_notify,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), notify)
+		.name = "number",
+		.size = sizeof(unsigned char) * 32,
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), number)
 	},
-	[avm_event_tffs_call_paniclog] = {
-		.struct_name =  "convert_message_union_avm_event_tffs_call_union",
+	[avm_event_telephony_params_called] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "number",
+		.size = sizeof(unsigned char) * 32,
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), number)
+	},
+	[avm_event_telephony_params_duration] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "duration",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), duration)
+	},
+	[avm_event_telephony_params_port] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "port",
+		.size = sizeof(unsigned char),
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), port)
+	},
+	[avm_event_telephony_params_id] = {
+		.struct_name =  "convert_message_union_avm_event_telephony_call_params",
 		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
-		.name = "paniclog",
-		.substruct = convert_message_struct_avm_event_tffs_paniclog,
-		.offset = __builtin_offsetof(union avm_event_tffs_call_union __attribute__ ((packed)), paniclog)
+		.name = "id",
+		.size = sizeof(unsigned int),
+		.offset = __builtin_offsetof(union avm_event_telephony_call_params __attribute__ ((packed)), id)
 	},
 };
 
@@ -4516,6 +4294,228 @@
 	},
 };
 
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'union avm_event_data_union'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_union_avm_event_data_union[] = {
+	[avm_event_id_push_button] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "push_button",
+		.substruct = convert_message_struct_avm_event_push_button,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), push_button)
+	},
+	[avm_event_id_ethernet_connect_status] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "cpmac",
+		.substruct = convert_message_struct__cpmac_event_struct,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), cpmac)
+	},
+	[avm_event_id_led_status] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "led_status",
+		.substruct = convert_message_struct_avm_event_led_status,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), led_status)
+	},
+	[avm_event_id_led_info] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "led_info",
+		.substruct = convert_message_struct_avm_event_led_info,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), led_info)
+	},
+	[avm_event_id_telefonprofile] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "telefonprofile",
+		.substruct = convert_message_struct_avm_event_telefonprofile,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telefonprofile)
+	},
+	[avm_event_id_temperature] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "temperature",
+		.substruct = convert_message_struct_avm_event_temperature,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), temperature)
+	},
+	[avm_event_id_powermanagment_status] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "powermanagment_status",
+		.substruct = convert_message_struct_avm_event_powermanagment_status,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), powermanagment_status)
+	},
+	[avm_event_id_cpu_idle] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "cpu_idle",
+		.substruct = convert_message_struct_avm_event_cpu_idle,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), cpu_idle)
+	},
+	[avm_event_id_powermanagment_remote] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "powermanagment_remote",
+		.substruct = convert_message_struct_avm_event_powermanagment_remote,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), powermanagment_remote)
+	},
+	[avm_event_id_log] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "id_log",
+		.substruct = convert_message_struct_avm_event_log,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_log)
+	},
+	[avm_event_id_remotepcmlink] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "id_remotepcmlink",
+		.substruct = convert_message_struct_avm_event_remotepcmlink,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_remotepcmlink)
+	},
+	[avm_event_id_remotewatchdog] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "id_remotewatchdog",
+		.substruct = convert_message_struct_avm_event_remotewatchdog,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_remotewatchdog)
+	},
+	[avm_event_id_rpc] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "id_rpc",
+		.substruct = convert_message_struct_avm_event_rpc,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), id_rpc)
+	},
+	[avm_event_id_pm_ressourceinfo_status] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "pm_info_stat",
+		.substruct = convert_message_struct_avm_event_pm_info_stat,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), pm_info_stat)
+	},
+	[avm_event_id_wlan_client_status] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "wlan",
+		.substruct = convert_message_struct_avm_event_wlan,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), wlan)
+	},
+	[avm_event_id_wlan_event] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "wlan_event",
+		.substruct = convert_message_struct_wlan_event_def,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), wlan_event)
+	},
+	[avm_event_id_telephony_missed_call] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "telephony_missed_call",
+		.substruct = convert_message_struct_avm_event_telephony_missed_call,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_missed_call)
+	},
+	[avm_event_id_telephony_tam_call] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "telephony_tam_call",
+		.substruct = convert_message_struct_avm_event_telephony_missed_call,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_tam_call)
+	},
+	[avm_event_id_telephony_fax_received] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "telephony_fax_received",
+		.substruct = convert_message_struct_avm_event_telephony_missed_call,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_fax_received)
+	},
+	[avm_event_id_telephony_incoming_call] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "telephony_incoming_call",
+		.substruct = convert_message_struct_avm_event_telephony_missed_call,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), telephony_incoming_call)
+	},
+	[avm_event_id_firmware_update_available] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "firmware_update_available",
+		.substruct = convert_message_struct_avm_event_firmware_update_available,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), firmware_update_available)
+	},
+	[avm_event_id_internet_new_ip] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "internet_new_ip",
+		.substruct = convert_message_struct_avm_event_internet_new_ip,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), internet_new_ip)
+	},
+	[avm_event_id_smarthome_switch_status] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "smarthome_switch_status",
+		.substruct = convert_message_struct_avm_event_smarthome_switch_status,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), smarthome_switch_status)
+	},
+	[avm_event_id_mass_storage_mount] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "mass_storage_mount",
+		.substruct = convert_message_struct_avm_event_mass_storage_mount,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), mass_storage_mount)
+	},
+	[avm_event_id_mass_storage_unmount] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "mass_storage_unmount",
+		.substruct = convert_message_struct_avm_event_mass_storage_unmount,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), mass_storage_unmount)
+	},
+	[avm_event_id_checkpoint] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "checkpoint",
+		.substruct = convert_message_struct_avm_event_checkpoint,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), checkpoint)
+	},
+	[avm_event_id_cpu_run] = {
+		.struct_name =  "convert_message_union_avm_event_data_union",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "cpu_run",
+		.substruct = convert_message_struct_avm_event_cpu_run,
+		.offset = __builtin_offsetof(union avm_event_data_union __attribute__ ((packed)), cpu_run)
+	},
+};
+
+/*------------------------------------------------------------------------------------------*\
+ * Endian Convert-Table for: 'union wlan_event_data'
+\*------------------------------------------------------------------------------------------*/
+struct _endian_convert convert_message_union_wlan_event_data[] = {
+	[CLIENT_STATE_CHANGE] = {
+		.struct_name =  "convert_message_union_wlan_event_data",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "client_state_change",
+		.substruct = convert_message_struct_wlan_event_data_client_state_change,
+		.offset = __builtin_offsetof(union wlan_event_data __attribute__ ((packed)), client_state_change)
+	},
+	[CLIENT_CONNECT_INFO] = {
+		.struct_name =  "convert_message_union_wlan_event_data",
+		.flags = ENDIAN_CONVERT_LAST | 0,
+		.name = "client_connect_info",
+		.substruct = convert_message_struct_wlan_event_data_client_connect_info,
+		.offset = __builtin_offsetof(union wlan_event_data __attribute__ ((packed)), client_connect_info)
+	},
+	[WLAN_EVENT_SCAN] = {
+		.struct_name =  "convert_message_union_wlan_event_data",
+		.flags = ENDIAN_CONVERT_LAST | ENDIAN_CONVERT_LAST_ARRAY_ITEM | 0,
+		.name = "scan_event_info",
+		.substruct = convert_message_struct_wlan_event_data_scan_event_info,
+		.offset = __builtin_offsetof(union wlan_event_data __attribute__ ((packed)), scan_event_info)
+	},
+};
+
 /*------------------------------------------------------------------------------------------*\
  * Endian Convert-Table for: 'union avm_event_message_union'
 \*------------------------------------------------------------------------------------------*/
--- linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_enum_range_check_init.c	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_enum_range_check_init.c	2019-08-22 13:31:47.000000000 +0200
@@ -2,15 +2,15 @@
 #include "avm_event_gen_enum_range.h"
 
 void init_enum_check(void) {
-	convert_message_struct_avm_event_internet_new_ip[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_internet_new_ip_param_sel;
-	convert_message_struct_avm_event_data[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range__avm_event_id;
-	convert_message_struct_avm_event_powermanagment_remote[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_powermanagment_remote_action;
 	convert_message_struct_avm_event_powermanagment_status[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range__powermanagment_status_type;
-	convert_message_struct__avm_event_powermanagment_remote[1].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_powermanagment_remote_action;
-	convert_message_struct__avm_event_telephony_missed_call_params[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_telephony_param_sel;
-	convert_message_struct_wlan_event_def[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_wlan_event_id;
+	convert_message_struct_avm_event_internet_new_ip[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_internet_new_ip_param_sel;
 	convert_message_struct_avm_event_tffs[7].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_tffs_call_type;
 	convert_message_struct__avm_event_internet_new_ip[1].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_internet_new_ip_param_sel;
-	convert_message_struct_avm_event_message[7].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_msg_type;
+	convert_message_struct_wlan_event_def[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_wlan_event_id;
 	convert_message_struct__avm_event_powermanagment_status[1].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range__powermanagment_status_type;
+	convert_message_struct_avm_event_powermanagment_remote[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_powermanagment_remote_action;
+	convert_message_struct_avm_event_data[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range__avm_event_id;
+	convert_message_struct__avm_event_telephony_missed_call_params[0].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_telephony_param_sel;
+	convert_message_struct_avm_event_message[7].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_msg_type;
+	convert_message_struct__avm_event_powermanagment_remote[1].enum_check_function = (unsigned int (*)(unsigned int))avm_event_check_enum_range_avm_event_powermanagment_remote_action;
 }
--- linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_flow.dot	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_flow.dot	2019-08-22 13:31:47.000000000 +0200
@@ -2,465 +2,465 @@
 	compound=true;
 	rankdir=TB;
 	node [shape=record];
-	subgraph cluster_struct__avm_event_led_status{
+	subgraph cluster_struct__avm_event_mass_storage_mount{
 		fontcolor = "red";
-		label = "struct _avm_event_led_status";
-		struct__avm_event_led_status [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<led> enum avm_event_led_id: led|<state> unsigned int: state|<param_len> unsigned int: param_len|<params> unsigned char: params}"];
+		label = "struct _avm_event_mass_storage_mount";
+		struct__avm_event_mass_storage_mount [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<size> unsigned long long: size|<free> unsigned long long: free|<name_length> unsigned int: name_length|<name> unsigned char: name}"];
 	};
-	subgraph cluster_struct__avm_event_checkpoint{
+	subgraph cluster_struct__avm_event_log{
 		fontcolor = "red";
-		label = "struct _avm_event_checkpoint";
-		struct__avm_event_checkpoint [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<node_id> uint32_t: node_id|<checkpoints> uint64_t: checkpoints}"];
+		label = "struct _avm_event_log";
+		struct__avm_event_log [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<logtype> enum _avm_logtype: logtype|<loglen> unsigned int: loglen|<logpointer> unsigned int: logpointer|<checksum> unsigned int: checksum|<rebootflag> unsigned int: rebootflag}"];
 	};
-	subgraph cluster_struct__avm_event_remotepcmlink{
+	subgraph cluster_struct_avm_event_powerline_status{
 		fontcolor = "red";
-		label = "struct _avm_event_remotepcmlink";
-		struct__avm_event_remotepcmlink [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<type> enum _avm_remotepcmlinktype: type|<sharedlen> unsigned int: sharedlen|<sharedpointer> unsigned int: sharedpointer}"];
+		label = "struct avm_event_powerline_status";
+		struct_avm_event_powerline_status [fontcolor="green",shape=record,label="{ <status> enum ePLCState: status}"];
 	};
-	subgraph cluster_struct__avm_event_push_button{
+	subgraph cluster_struct_avm_event_firmware_update_available{
 		fontcolor = "red";
-		label = "struct _avm_event_push_button";
-		struct__avm_event_push_button [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id|<key> enum _avm_event_push_button_key: key|<pressed> uint32_t: pressed}"];
+		label = "struct avm_event_firmware_update_available";
+		struct_avm_event_firmware_update_available [fontcolor="green",shape=record,label="{ <type> enum avm_event_firmware_type: type|<version_length> unsigned int: version_length|<version> unsigned char: version}"];
 	};
-	subgraph cluster_struct_avm_event_remote_source_trigger_request{
+	subgraph cluster_struct_avm_event_telephony_missed_call{
 		fontcolor = "red";
-		label = "struct avm_event_remote_source_trigger_request";
-		struct_avm_event_remote_source_trigger_request [fontcolor="green",shape=record,label="{ <data> struct avm_event_data: data}"];
+		label = "struct avm_event_telephony_missed_call";
+		struct_avm_event_telephony_missed_call [fontcolor="green",shape=record,label="{ <length> unsigned int: length|<p> struct _avm_event_telephony_missed_call_params: p}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_close{
+	subgraph cluster_struct_avm_event_powermanagment_status{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_close";
-		struct_avm_event_tffs_close [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
+		label = "struct avm_event_powermanagment_status";
+		struct_avm_event_powermanagment_status [fontcolor="green",shape=record,label="{ <substatus> enum _powermanagment_status_type: substatus\n(Select-Key for next union)|<param> union __powermanagment_status_union: param\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct__avm_event_rpc{
+	subgraph cluster_struct__avm_event_cmd_param_register{
 		fontcolor = "red";
-		label = "struct _avm_event_rpc";
-		struct__avm_event_rpc [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<type> enum _avm_rpctype: type|<id> unsigned int: id|<length> unsigned int: length|<message> unsigned char: message}"];
+		label = "struct _avm_event_cmd_param_register";
+		struct__avm_event_cmd_param_register [fontcolor="green",shape=record,label="{ <mask> struct _avm_event_id_mask: mask|<Name> char: Name}"];
 	};
-	subgraph cluster_struct_avm_event_pm_info_stat{
+	subgraph cluster_struct__avm_event_cmd_param_release{
 		fontcolor = "red";
-		label = "struct avm_event_pm_info_stat";
-		struct_avm_event_pm_info_stat [fontcolor="green",shape=record,label="{ <reserved1> unsigned char: reserved1|<rate_sumact> unsigned char: rate_sumact|<rate_sumcum> unsigned char: rate_sumcum|<rate_systemact> unsigned char: rate_systemact|<rate_systemcum> unsigned char: rate_systemcum|<system_status> unsigned char: system_status|<rate_dspact> unsigned char: rate_dspact|<rate_dspcum> unsigned char: rate_dspcum|<rate_wlanact> unsigned char: rate_wlanact|<rate_wlancum> unsigned char: rate_wlancum|<wlan_devices> unsigned char: wlan_devices|<wlan_status> unsigned char: wlan_status|<rate_ethact> unsigned char: rate_ethact|<rate_ethcum> unsigned char: rate_ethcum|<eth_status> unsigned short: eth_status|<rate_abact> unsigned char: rate_abact|<rate_abcum> unsigned char: rate_abcum|<isdn_status> unsigned short: isdn_status|<rate_dectact> unsigned char: rate_dectact|<rate_dectcum> unsigned char: rate_dectcum|<rate_battchargeact> unsigned char: rate_battchargeact|<rate_battchargecum> unsigned char: rate_battchargecum|<dect_status> unsigned char: dect_status|<rate_usbhostact> unsigned char: rate_usbhostact|<rate_usbhostcum> unsigned char: rate_usbhostcum|<usb_status> unsigned char: usb_status|<act_temperature> signed char: act_temperature|<min_temperature> signed char: min_temperature|<max_temperature> signed char: max_temperature|<avg_temperature> signed char: avg_temperature|<rate_lteact> unsigned char: rate_lteact|<rate_ltecum> unsigned char: rate_ltecum|<rate_dvbcact> unsigned char: rate_dvbcact|<rate_dvbccum> unsigned char: rate_dvbccum}"];
+		label = "struct _avm_event_cmd_param_release";
+		struct__avm_event_cmd_param_release [fontcolor="green",shape=record,label="{ <Name> char: Name}"];
 	};
-	subgraph cluster_struct_avm_event_temperature{
+	subgraph cluster_struct_wlan_event_data_client_state_change{
 		fontcolor = "red";
-		label = "struct avm_event_temperature";
-		struct_avm_event_temperature [fontcolor="green",shape=record,label="{ <temperature> int: temperature}"];
+		label = "struct wlan_event_data_client_state_change";
+		struct_wlan_event_data_client_state_change [fontcolor="green",shape=record,label="{ <common> struct wlan_event_data_client_common: common|<state> uint8_t: state}"];
 	};
-	subgraph cluster_struct__avm_event_wlan{
+	subgraph cluster_struct_avm_event_tffs_init{
 		fontcolor = "red";
-		label = "struct _avm_event_wlan";
-		struct__avm_event_wlan [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<mac> char: mac|<u1> unsigned int: u1|<event> unsigned int: event|<info> unsigned int: info|<status> unsigned int: status|<u2> unsigned int: u2|<if_name> char: if_name|<ev_initiator> unsigned int: ev_initiator|<ev_reason> unsigned int: ev_reason|<avm_capabilities> unsigned int: avm_capabilities}"];
+		label = "struct avm_event_tffs_init";
+		struct_avm_event_tffs_init [fontcolor="green",shape=record,label="{ <mem_offset> int64_t: mem_offset|<max_seg_size> uint32_t: max_seg_size}"];
 	};
 	subgraph cluster_struct__avm_event_temperature{
 		fontcolor = "red";
 		label = "struct _avm_event_temperature";
 		struct__avm_event_temperature [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<temperature> int: temperature}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_deinit{
-		fontcolor = "red";
-		label = "struct avm_event_tffs_deinit";
-		struct_avm_event_tffs_deinit [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
-	};
 	subgraph cluster_struct_avm_event_internet_new_ip{
 		fontcolor = "red";
 		label = "struct avm_event_internet_new_ip";
 		struct_avm_event_internet_new_ip [fontcolor="green",shape=record,label="{ <sel> enum avm_event_internet_new_ip_param_sel: sel\n(Select-Key for next union)|<params> union avm_event_internet_new_ip_param: params\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_remotepcmlink{
+	subgraph cluster_struct_avm_event_tffs_deinit{
 		fontcolor = "red";
-		label = "struct avm_event_remotepcmlink";
-		struct_avm_event_remotepcmlink [fontcolor="green",shape=record,label="{ <type> enum _avm_remotepcmlinktype: type|<sharedlen> unsigned int: sharedlen|<sharedpointer> unsigned int: sharedpointer}"];
+		label = "struct avm_event_tffs_deinit";
+		struct_avm_event_tffs_deinit [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
 	};
-	subgraph cluster_struct__avm_event_cmd_param_source_trigger{
+	subgraph cluster_struct__avm_event_rpc{
 		fontcolor = "red";
-		label = "struct _avm_event_cmd_param_source_trigger";
-		struct__avm_event_cmd_param_source_trigger [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id|<data_length> unsigned int: data_length}"];
+		label = "struct _avm_event_rpc";
+		struct__avm_event_rpc [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<type> enum _avm_rpctype: type|<id> unsigned int: id|<length> unsigned int: length|<message> unsigned char: message}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_reindex{
+	subgraph cluster_struct_avm_event_tffs_paniclog{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_reindex";
-		struct_avm_event_tffs_reindex [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
+		label = "struct avm_event_tffs_paniclog";
+		struct_avm_event_tffs_paniclog [fontcolor="green",shape=record,label="{ <buff_addr> uint64_t: buff_addr|<len> uint64_t: len|<crc> int32_t: crc}"];
 	};
-	subgraph cluster_struct_cpmac_event_struct{
+	subgraph cluster_struct__avm_event_cmd{
 		fontcolor = "red";
-		label = "struct cpmac_event_struct";
-		struct_cpmac_event_struct [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<ports> unsigned int: ports|<port> struct cpmac_port: port}"];
+		label = "struct _avm_event_cmd";
+		struct__avm_event_cmd [fontcolor="green",shape=record,label="{ <cmd> enum __avm_event_cmd: cmd|<param> union _avm_event_cmd_param: param}"];
 	};
-	subgraph cluster_struct_avm_event_data{
+	subgraph cluster_struct_avm_event_tffs_notify{
 		fontcolor = "red";
-		label = "struct avm_event_data";
-		struct_avm_event_data [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id\n(Select-Key for next union)|<data> union avm_event_data_union: data\n(Select-Key used here)}"];
+		label = "struct avm_event_tffs_notify";
+		struct_avm_event_tffs_notify [fontcolor="green",shape=record,label="{ <id> uint32_t: id|<event> enum avm_event_tffs_notify_event: event}"];
 	};
-	subgraph cluster_struct__avm_event_powermanagment_remote_ressourceinfo{
+	subgraph cluster_struct__cpmac_event_struct{
 		fontcolor = "red";
-		label = "struct _avm_event_powermanagment_remote_ressourceinfo";
-		struct__avm_event_powermanagment_remote_ressourceinfo [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<device> enum _powermanagment_device: device|<power_rate> unsigned int: power_rate}"];
+		label = "struct _cpmac_event_struct";
+		struct__cpmac_event_struct [fontcolor="green",shape=record,label="{ <ports> unsigned int: ports|<port> struct cpmac_port: port}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_read{
+	subgraph cluster_struct__avm_event_led_status{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_read";
-		struct_avm_event_tffs_read [fontcolor="green",shape=record,label="{ <buff_addr> uint64_t: buff_addr|<len> uint64_t: len|<id> uint32_t: id|<crc> int32_t: crc}"];
+		label = "struct _avm_event_led_status";
+		struct__avm_event_led_status [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<led> enum avm_event_led_id: led|<state> unsigned int: state|<param_len> unsigned int: param_len|<params> unsigned char: params}"];
 	};
-	subgraph cluster_struct__avm_event_cmd_param_trigger{
+	subgraph cluster_struct_cpmac_port{
 		fontcolor = "red";
-		label = "struct _avm_event_cmd_param_trigger";
-		struct__avm_event_cmd_param_trigger [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id}"];
+		label = "struct cpmac_port";
+		struct_cpmac_port [fontcolor="green",shape=record,label="{ <cable> uint8_t: cable|<link> uint8_t: link|<speed100> uint8_t: speed100|<fullduplex> uint8_t: fullduplex|<speed> enum _avm_event_ethernet_speed: speed|<maxspeed> enum _avm_event_ethernet_speed: maxspeed}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_open{
+	subgraph cluster_struct_avm_event_tffs{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_open";
-		struct_avm_event_tffs_open [fontcolor="green",shape=record,label="{ <id> uint32_t: id|<mode> enum avm_event_tffs_open_mode: mode|<max_segment_size> uint32_t: max_segment_size}"];
+		label = "struct avm_event_tffs";
+		struct_avm_event_tffs [fontcolor="green",shape=record,label="{ <src_id> uint32_t: src_id|<dst_id> uint32_t: dst_id|<seq_nr> uint32_t: seq_nr|<ack> uint32_t: ack|<srv_handle> uint64_t: srv_handle|<clt_handle> uint64_t: clt_handle|<result> int32_t: result|<type> enum avm_event_tffs_call_type: type\n(Select-Key for next union)|<call> union avm_event_tffs_call_union: call\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_powermanagment_remote{
+	subgraph cluster_struct__avm_event_internet_new_ip{
 		fontcolor = "red";
-		label = "struct avm_event_powermanagment_remote";
-		struct_avm_event_powermanagment_remote [fontcolor="green",shape=record,label="{ <remote_action> enum avm_event_powermanagment_remote_action: remote_action\n(Select-Key for next union)|<param> union avm_event_powermanagment_remote_union: param\n(Select-Key used here)}"];
+		label = "struct _avm_event_internet_new_ip";
+		struct__avm_event_internet_new_ip [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<sel> enum avm_event_internet_new_ip_param_sel: sel\n(Select-Key for next union)|<params> union avm_event_internet_new_ip_param: params\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_source_unregister{
+	subgraph cluster_struct__avm_event_checkpoint{
 		fontcolor = "red";
-		label = "struct avm_event_source_unregister";
-		struct_avm_event_source_unregister [fontcolor="green",shape=record,label="{ <id_mask> struct _avm_event_id_mask: id_mask|<name> char: name}"];
+		label = "struct _avm_event_checkpoint";
+		struct__avm_event_checkpoint [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<node_id> uint32_t: node_id|<checkpoints> uint64_t: checkpoints}"];
 	};
-	subgraph cluster_struct_avm_event_powermanagment_status{
+	subgraph cluster_struct_wlan_event_def{
 		fontcolor = "red";
-		label = "struct avm_event_powermanagment_status";
-		struct_avm_event_powermanagment_status [fontcolor="green",shape=record,label="{ <substatus> enum _powermanagment_status_type: substatus\n(Select-Key for next union)|<param> union __powermanagment_status_union: param\n(Select-Key used here)}"];
+		label = "struct wlan_event_def";
+		struct_wlan_event_def [fontcolor="green",shape=record,label="{ <event_id> enum wlan_event_id: event_id\n(Select-Key for next union)|<event_data> union wlan_event_data: event_data\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_mass_storage_mount{
+	subgraph cluster_struct__avm_event_cmd_param_source_trigger{
 		fontcolor = "red";
-		label = "struct avm_event_mass_storage_mount";
-		struct_avm_event_mass_storage_mount [fontcolor="green",shape=record,label="{ <size> unsigned long long: size|<free> unsigned long long: free|<name_length> unsigned int: name_length|<name> unsigned char: name}"];
+		label = "struct _avm_event_cmd_param_source_trigger";
+		struct__avm_event_cmd_param_source_trigger [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id|<data_length> unsigned int: data_length}"];
 	};
-	subgraph cluster_struct_avm_event_ping{
+	subgraph cluster_struct_avm_event_tffs_reindex{
 		fontcolor = "red";
-		label = "struct avm_event_ping";
-		struct_avm_event_ping [fontcolor="green",shape=record,label="{ <seq> uint32_t: seq}"];
+		label = "struct avm_event_tffs_reindex";
+		struct_avm_event_tffs_reindex [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
 	};
-	subgraph cluster_struct_wlan_event_data_scan_event_info{
+	subgraph cluster_struct_avm_event_powermanagment_remote_ressourceinfo{
 		fontcolor = "red";
-		label = "struct wlan_event_data_scan_event_info";
-		struct_wlan_event_data_scan_event_info [fontcolor="green",shape=record,label="{ <common> struct wlan_event_data_scan_common: common|<event_type> enum wlan_event_scan_type: event_type}"];
+		label = "struct avm_event_powermanagment_remote_ressourceinfo";
+		struct_avm_event_powermanagment_remote_ressourceinfo [fontcolor="green",shape=record,label="{ <device> enum _powermanagment_device: device|<power_rate> unsigned int: power_rate}"];
 	};
-	subgraph cluster_struct__avm_event_cpu_run{
+	subgraph cluster_struct__avm_event_powermanagment_status{
 		fontcolor = "red";
-		label = "struct _avm_event_cpu_run";
-		struct__avm_event_cpu_run [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<cputype> enum _cputype: cputype|<cpu_run> unsigned char: cpu_run}"];
+		label = "struct _avm_event_powermanagment_status";
+		struct__avm_event_powermanagment_status [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<substatus> enum _powermanagment_status_type: substatus\n(Select-Key for next union)|<param> union __powermanagment_status_union: param\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct__avm_event_remotewatchdog{
+	subgraph cluster_struct__avm_event_pm_info_stat{
 		fontcolor = "red";
-		label = "struct _avm_event_remotewatchdog";
-		struct__avm_event_remotewatchdog [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<cmd> enum _avm_remote_wdt_cmd: cmd|<name> char: name|<param> unsigned int: param}"];
+		label = "struct _avm_event_pm_info_stat";
+		struct__avm_event_pm_info_stat [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<reserved1> unsigned char: reserved1|<rate_sumact> unsigned char: rate_sumact|<rate_sumcum> unsigned char: rate_sumcum|<rate_systemact> unsigned char: rate_systemact|<rate_systemcum> unsigned char: rate_systemcum|<system_status> unsigned char: system_status|<rate_dspact> unsigned char: rate_dspact|<rate_dspcum> unsigned char: rate_dspcum|<rate_wlanact> unsigned char: rate_wlanact|<rate_wlancum> unsigned char: rate_wlancum|<wlan_devices> unsigned char: wlan_devices|<wlan_status> unsigned char: wlan_status|<rate_ethact> unsigned char: rate_ethact|<rate_ethcum> unsigned char: rate_ethcum|<eth_status> unsigned short: eth_status|<rate_abact> unsigned char: rate_abact|<rate_abcum> unsigned char: rate_abcum|<isdn_status> unsigned short: isdn_status|<rate_dectact> unsigned char: rate_dectact|<rate_dectcum> unsigned char: rate_dectcum|<rate_battchargeact> unsigned char: rate_battchargeact|<rate_battchargecum> unsigned char: rate_battchargecum|<dect_status> unsigned char: dect_status|<rate_usbhostact> unsigned char: rate_usbhostact|<rate_usbhostcum> unsigned char: rate_usbhostcum|<usb_status> unsigned char: usb_status|<act_temperature> signed char: act_temperature|<min_temperature> signed char: min_temperature|<max_temperature> signed char: max_temperature|<avg_temperature> signed char: avg_temperature|<rate_lteact> unsigned char: rate_lteact|<rate_ltecum> unsigned char: rate_ltecum|<rate_dvbcact> unsigned char: rate_dvbcact|<rate_dvbccum> unsigned char: rate_dvbccum}"];
 	};
-	subgraph cluster_struct__avm_event_header{
+	subgraph cluster_struct_avm_event_checkpoint{
 		fontcolor = "red";
-		label = "struct _avm_event_header";
-		struct__avm_event_header [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id}"];
+		label = "struct avm_event_checkpoint";
+		struct_avm_event_checkpoint [fontcolor="green",shape=record,label="{ <node_id> uint32_t: node_id|<checkpoints> uint64_t: checkpoints}"];
 	};
-	subgraph cluster_struct__avm_event_powermanagment_remote{
+	subgraph cluster_struct_avm_event_wlan{
 		fontcolor = "red";
-		label = "struct _avm_event_powermanagment_remote";
-		struct__avm_event_powermanagment_remote [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<remote_action> enum avm_event_powermanagment_remote_action: remote_action\n(Select-Key for next union)|<param> union avm_event_powermanagment_remote_union: param\n(Select-Key used here)}"];
+		label = "struct avm_event_wlan";
+		struct_avm_event_wlan [fontcolor="green",shape=record,label="{ <mac> char: mac|<u1> union avm_event_wlan_client_status_u1: u1|<event> wlan_event: event|<info> wlan_info: info|<status> enum wlan_sm_states: status|<u2> union avm_event_wlan_client_status_u2: u2|<if_name> char: if_name|<ev_initiator> unsigned int: ev_initiator|<ev_reason> unsigned int: ev_reason|<avm_capabilities> unsigned int: avm_capabilities}"];
 	};
-	subgraph cluster_struct__avm_event_telefonprofile{
+	subgraph cluster_struct_avm_event_push_button{
 		fontcolor = "red";
-		label = "struct _avm_event_telefonprofile";
-		struct__avm_event_telefonprofile [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<on> unsigned int: on}"];
+		label = "struct avm_event_push_button";
+		struct_avm_event_push_button [fontcolor="green",shape=record,label="{ <key> enum _avm_event_push_button_key: key|<pressed> uint32_t: pressed}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_info{
+	subgraph cluster_struct_avm_event_tffs_close{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_info";
-		struct_avm_event_tffs_info [fontcolor="green",shape=record,label="{ <fill_level> uint32_t: fill_level}"];
+		label = "struct avm_event_tffs_close";
+		struct_avm_event_tffs_close [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
 	};
-	subgraph cluster_struct_avm_event_unserialised{
+	subgraph cluster_struct_avm_event_powermanagment_remote{
 		fontcolor = "red";
-		label = "struct avm_event_unserialised";
-		struct_avm_event_unserialised [fontcolor="green",shape=record,label="{ <evnt_id> uint64_t: evnt_id|<data_len> uint32_t: data_len|<data> unsigned char: data}"];
+		label = "struct avm_event_powermanagment_remote";
+		struct_avm_event_powermanagment_remote [fontcolor="green",shape=record,label="{ <remote_action> enum avm_event_powermanagment_remote_action: remote_action\n(Select-Key for next union)|<param> union avm_event_powermanagment_remote_union: param\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct__avm_event_telephony_missed_call_params{
+	subgraph cluster_struct_avm_event_source_notifier{
 		fontcolor = "red";
-		label = "struct _avm_event_telephony_missed_call_params";
-		struct__avm_event_telephony_missed_call_params [fontcolor="green",shape=record,label="{ <id> enum avm_event_telephony_param_sel: id\n(Select-Key for next union)|<params> union avm_event_telephony_call_params: params\n(Select-Key used here)}"];
+		label = "struct avm_event_source_notifier";
+		struct_avm_event_source_notifier [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id}"];
 	};
-	subgraph cluster_struct__avm_event_cmd{
+	subgraph cluster_struct_avm_event_rpc{
 		fontcolor = "red";
-		label = "struct _avm_event_cmd";
-		struct__avm_event_cmd [fontcolor="green",shape=record,label="{ <cmd> enum __avm_event_cmd: cmd|<param> union _avm_event_cmd_param: param}"];
+		label = "struct avm_event_rpc";
+		struct_avm_event_rpc [fontcolor="green",shape=record,label="{ <type> enum _avm_rpctype: type|<id> unsigned int: id|<length> unsigned int: length|<message> unsigned char: message}"];
 	};
-	subgraph cluster_struct_wlan_event_def{
+	subgraph cluster_struct__avm_event_mass_storage_unmount{
 		fontcolor = "red";
-		label = "struct wlan_event_def";
-		struct_wlan_event_def [fontcolor="green",shape=record,label="{ <event_id> enum wlan_event_id: event_id\n(Select-Key for next union)|<event_data> union wlan_event_data: event_data\n(Select-Key used here)}"];
+		label = "struct _avm_event_mass_storage_unmount";
+		struct__avm_event_mass_storage_unmount [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<name_length> unsigned int: name_length|<name> unsigned char: name}"];
 	};
-	subgraph cluster_struct__avm_event_pm_info_stat{
+	subgraph cluster_struct_avm_event_remotewatchdog{
 		fontcolor = "red";
-		label = "struct _avm_event_pm_info_stat";
-		struct__avm_event_pm_info_stat [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<reserved1> unsigned char: reserved1|<rate_sumact> unsigned char: rate_sumact|<rate_sumcum> unsigned char: rate_sumcum|<rate_systemact> unsigned char: rate_systemact|<rate_systemcum> unsigned char: rate_systemcum|<system_status> unsigned char: system_status|<rate_dspact> unsigned char: rate_dspact|<rate_dspcum> unsigned char: rate_dspcum|<rate_wlanact> unsigned char: rate_wlanact|<rate_wlancum> unsigned char: rate_wlancum|<wlan_devices> unsigned char: wlan_devices|<wlan_status> unsigned char: wlan_status|<rate_ethact> unsigned char: rate_ethact|<rate_ethcum> unsigned char: rate_ethcum|<eth_status> unsigned short: eth_status|<rate_abact> unsigned char: rate_abact|<rate_abcum> unsigned char: rate_abcum|<isdn_status> unsigned short: isdn_status|<rate_dectact> unsigned char: rate_dectact|<rate_dectcum> unsigned char: rate_dectcum|<rate_battchargeact> unsigned char: rate_battchargeact|<rate_battchargecum> unsigned char: rate_battchargecum|<dect_status> unsigned char: dect_status|<rate_usbhostact> unsigned char: rate_usbhostact|<rate_usbhostcum> unsigned char: rate_usbhostcum|<usb_status> unsigned char: usb_status|<act_temperature> signed char: act_temperature|<min_temperature> signed char: min_temperature|<max_temperature> signed char: max_temperature|<avg_temperature> signed char: avg_temperature|<rate_lteact> unsigned char: rate_lteact|<rate_ltecum> unsigned char: rate_ltecum|<rate_dvbcact> unsigned char: rate_dvbcact|<rate_dvbccum> unsigned char: rate_dvbccum}"];
+		label = "struct avm_event_remotewatchdog";
+		struct_avm_event_remotewatchdog [fontcolor="green",shape=record,label="{ <cmd> enum _avm_remote_wdt_cmd: cmd|<name> char: name|<param> unsigned int: param}"];
 	};
-	subgraph cluster_struct_avm_event_cpu_idle{
+	subgraph cluster_struct_avm_event_source_register{
 		fontcolor = "red";
-		label = "struct avm_event_cpu_idle";
-		struct_avm_event_cpu_idle [fontcolor="green",shape=record,label="{ <cpu_idle> unsigned char: cpu_idle|<dsl_dsp_idle> unsigned char: dsl_dsp_idle|<voice_dsp_idle> unsigned char: voice_dsp_idle|<mem_strictlyused> unsigned char: mem_strictlyused|<mem_cacheused> unsigned char: mem_cacheused|<mem_physfree> unsigned char: mem_physfree|<cputype> enum _cputype: cputype}"];
+		label = "struct avm_event_source_register";
+		struct_avm_event_source_register [fontcolor="green",shape=record,label="{ <id_mask> struct _avm_event_id_mask: id_mask|<name> char: name}"];
 	};
-	subgraph cluster_struct_avm_event_telephony_string{
+	subgraph cluster_struct_avm_event_data{
 		fontcolor = "red";
-		label = "struct avm_event_telephony_string";
-		struct_avm_event_telephony_string [fontcolor="green",shape=record,label="{ <length> unsigned int: length|<string> unsigned char: string}"];
+		label = "struct avm_event_data";
+		struct_avm_event_data [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id\n(Select-Key for next union)|<data> union avm_event_data_union: data\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_log{
+	subgraph cluster_struct__avm_event_powerline_status{
 		fontcolor = "red";
-		label = "struct avm_event_log";
-		struct_avm_event_log [fontcolor="green",shape=record,label="{ <logtype> enum _avm_logtype: logtype|<loglen> unsigned int: loglen|<logpointer> unsigned int: logpointer|<checksum> unsigned int: checksum|<rebootflag> unsigned int: rebootflag}"];
+		label = "struct _avm_event_powerline_status";
+		struct__avm_event_powerline_status [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<status> enum ePLCState: status}"];
 	};
-	subgraph cluster_struct_cpmac_port{
+	subgraph cluster_struct_avm_event_tffs_write{
 		fontcolor = "red";
-		label = "struct cpmac_port";
-		struct_cpmac_port [fontcolor="green",shape=record,label="{ <cable> uint8_t: cable|<link> uint8_t: link|<speed100> uint8_t: speed100|<fullduplex> uint8_t: fullduplex|<speed> enum _avm_event_ethernet_speed: speed|<maxspeed> enum _avm_event_ethernet_speed: maxspeed}"];
+		label = "struct avm_event_tffs_write";
+		struct_avm_event_tffs_write [fontcolor="green",shape=record,label="{ <buff_addr> uint64_t: buff_addr|<len> uint64_t: len|<id> uint32_t: id|<final> uint32_t: final|<crc> int32_t: crc}"];
 	};
-	subgraph cluster_struct_avm_event_rpc{
+	subgraph cluster_struct__avm_event_telephony_missed_call_params{
 		fontcolor = "red";
-		label = "struct avm_event_rpc";
-		struct_avm_event_rpc [fontcolor="green",shape=record,label="{ <type> enum _avm_rpctype: type|<id> unsigned int: id|<length> unsigned int: length|<message> unsigned char: message}"];
+		label = "struct _avm_event_telephony_missed_call_params";
+		struct__avm_event_telephony_missed_call_params [fontcolor="green",shape=record,label="{ <id> enum avm_event_telephony_param_sel: id\n(Select-Key for next union)|<params> union avm_event_telephony_call_params: params\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_tffs{
+	subgraph cluster_struct_avm_event_pm_info_stat{
 		fontcolor = "red";
-		label = "struct avm_event_tffs";
-		struct_avm_event_tffs [fontcolor="green",shape=record,label="{ <src_id> uint32_t: src_id|<dst_id> uint32_t: dst_id|<seq_nr> uint32_t: seq_nr|<ack> uint32_t: ack|<srv_handle> uint64_t: srv_handle|<clt_handle> uint64_t: clt_handle|<result> int32_t: result|<type> enum avm_event_tffs_call_type: type\n(Select-Key for next union)|<call> union avm_event_tffs_call_union: call\n(Select-Key used here)}"];
+		label = "struct avm_event_pm_info_stat";
+		struct_avm_event_pm_info_stat [fontcolor="green",shape=record,label="{ <reserved1> unsigned char: reserved1|<rate_sumact> unsigned char: rate_sumact|<rate_sumcum> unsigned char: rate_sumcum|<rate_systemact> unsigned char: rate_systemact|<rate_systemcum> unsigned char: rate_systemcum|<system_status> unsigned char: system_status|<rate_dspact> unsigned char: rate_dspact|<rate_dspcum> unsigned char: rate_dspcum|<rate_wlanact> unsigned char: rate_wlanact|<rate_wlancum> unsigned char: rate_wlancum|<wlan_devices> unsigned char: wlan_devices|<wlan_status> unsigned char: wlan_status|<rate_ethact> unsigned char: rate_ethact|<rate_ethcum> unsigned char: rate_ethcum|<eth_status> unsigned short: eth_status|<rate_abact> unsigned char: rate_abact|<rate_abcum> unsigned char: rate_abcum|<isdn_status> unsigned short: isdn_status|<rate_dectact> unsigned char: rate_dectact|<rate_dectcum> unsigned char: rate_dectcum|<rate_battchargeact> unsigned char: rate_battchargeact|<rate_battchargecum> unsigned char: rate_battchargecum|<dect_status> unsigned char: dect_status|<rate_usbhostact> unsigned char: rate_usbhostact|<rate_usbhostcum> unsigned char: rate_usbhostcum|<usb_status> unsigned char: usb_status|<act_temperature> signed char: act_temperature|<min_temperature> signed char: min_temperature|<max_temperature> signed char: max_temperature|<avg_temperature> signed char: avg_temperature|<rate_lteact> unsigned char: rate_lteact|<rate_ltecum> unsigned char: rate_ltecum|<rate_dvbcact> unsigned char: rate_dvbcact|<rate_dvbccum> unsigned char: rate_dvbccum}"];
 	};
-	subgraph cluster_struct__avm_event_firmware_update_available{
+	subgraph cluster_struct_avm_event_tffs_open{
 		fontcolor = "red";
-		label = "struct _avm_event_firmware_update_available";
-		struct__avm_event_firmware_update_available [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<type> enum avm_event_firmware_type: type|<version_length> unsigned int: version_length|<version> unsigned char: version}"];
+		label = "struct avm_event_tffs_open";
+		struct_avm_event_tffs_open [fontcolor="green",shape=record,label="{ <id> uint32_t: id|<mode> enum avm_event_tffs_open_mode: mode|<max_segment_size> uint32_t: max_segment_size}"];
 	};
-	subgraph cluster_struct__avm_event_mass_storage_mount{
+	subgraph cluster_struct__avm_event_id_mask{
 		fontcolor = "red";
-		label = "struct _avm_event_mass_storage_mount";
-		struct__avm_event_mass_storage_mount [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<size> unsigned long long: size|<free> unsigned long long: free|<name_length> unsigned int: name_length|<name> unsigned char: name}"];
+		label = "struct _avm_event_id_mask";
+		struct__avm_event_id_mask [fontcolor="green",shape=record,label="{ <mask> avm_event_mask_fieldentry: mask}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_init{
+	subgraph cluster_struct__avm_event_user_mode_source_notify{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_init";
-		struct_avm_event_tffs_init [fontcolor="green",shape=record,label="{ <mem_offset> int64_t: mem_offset|<max_seg_size> uint32_t: max_seg_size}"];
+		label = "struct _avm_event_user_mode_source_notify";
+		struct__avm_event_user_mode_source_notify [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<id> enum _avm_event_id: id}"];
 	};
-	subgraph cluster_struct_avm_event_led_info{
+	subgraph cluster_struct_avm_event_message{
 		fontcolor = "red";
-		label = "struct avm_event_led_info";
-		struct_avm_event_led_info [fontcolor="green",shape=record,label="{ <mode> unsigned int: mode|<param1> unsigned int: param1|<param2> unsigned int: param2|<gpio_driver_type> unsigned int: gpio_driver_type|<gpio> unsigned int: gpio|<pos> unsigned int: pos|<name> char: name}"];
+		label = "struct avm_event_message";
+		struct_avm_event_message [fontcolor="green",shape=record,label="{ <length> uint32_t: length\n(length for total)|<magic> uint32_t: magic|<nonce> uint32_t: nonce|<flags> uint32_t: flags|<result> int32_t: result|<transmitter_handle> uint32_t: transmitter_handle|<receiver_handle> uint32_t: receiver_handle|<type> enum avm_event_msg_type: type\n(Select-Key for next union)|<message> union avm_event_message_union: message\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct_avm_event_push_button{
+	subgraph cluster_struct_avm_event_temperature{
 		fontcolor = "red";
-		label = "struct avm_event_push_button";
-		struct_avm_event_push_button [fontcolor="green",shape=record,label="{ <key> enum _avm_event_push_button_key: key|<pressed> uint32_t: pressed}"];
+		label = "struct avm_event_temperature";
+		struct_avm_event_temperature [fontcolor="green",shape=record,label="{ <temperature> int: temperature}"];
 	};
-	subgraph cluster_struct_avm_event_remotewatchdog{
+	subgraph cluster_struct__avm_event_remotepcmlink{
 		fontcolor = "red";
-		label = "struct avm_event_remotewatchdog";
-		struct_avm_event_remotewatchdog [fontcolor="green",shape=record,label="{ <cmd> enum _avm_remote_wdt_cmd: cmd|<name> char: name|<param> unsigned int: param}"];
+		label = "struct _avm_event_remotepcmlink";
+		struct__avm_event_remotepcmlink [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<type> enum _avm_remotepcmlinktype: type|<sharedlen> unsigned int: sharedlen|<sharedpointer> unsigned int: sharedpointer}"];
 	};
-	subgraph cluster_struct_avm_event_telefonprofile{
+	subgraph cluster_struct__avm_event_telephony_missed_call{
 		fontcolor = "red";
-		label = "struct avm_event_telefonprofile";
-		struct_avm_event_telefonprofile [fontcolor="green",shape=record,label="{ <on> unsigned int: on}"];
+		label = "struct _avm_event_telephony_missed_call";
+		struct__avm_event_telephony_missed_call [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<length> unsigned int: length|<p> struct _avm_event_telephony_missed_call_params: p}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_write{
+	subgraph cluster_struct_avm_event_source_unregister{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_write";
-		struct_avm_event_tffs_write [fontcolor="green",shape=record,label="{ <buff_addr> uint64_t: buff_addr|<len> uint64_t: len|<id> uint32_t: id|<final> uint32_t: final|<crc> int32_t: crc}"];
+		label = "struct avm_event_source_unregister";
+		struct_avm_event_source_unregister [fontcolor="green",shape=record,label="{ <id_mask> struct _avm_event_id_mask: id_mask|<name> char: name}"];
 	};
-	subgraph cluster_struct__cpmac_event_struct{
+	subgraph cluster_struct__avm_event_smarthome_switch_status{
 		fontcolor = "red";
-		label = "struct _cpmac_event_struct";
-		struct__cpmac_event_struct [fontcolor="green",shape=record,label="{ <ports> unsigned int: ports|<port> struct cpmac_port: port}"];
+		label = "struct _avm_event_smarthome_switch_status";
+		struct__avm_event_smarthome_switch_status [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<type> enum avm_event_switch_type: type|<value> unsigned int: value|<ain_length> unsigned int: ain_length|<ain> unsigned char: ain}"];
 	};
-	subgraph cluster_struct_avm_event_mass_storage_unmount{
+	subgraph cluster_struct_avm_event_telephony_string{
 		fontcolor = "red";
-		label = "struct avm_event_mass_storage_unmount";
-		struct_avm_event_mass_storage_unmount [fontcolor="green",shape=record,label="{ <name_length> unsigned int: name_length|<name> unsigned char: name}"];
+		label = "struct avm_event_telephony_string";
+		struct_avm_event_telephony_string [fontcolor="green",shape=record,label="{ <length> unsigned int: length|<string> unsigned char: string}"];
 	};
-	subgraph cluster_struct__avm_event_cpu_idle{
+	subgraph cluster_struct_wlan_event_data_client_common{
 		fontcolor = "red";
-		label = "struct _avm_event_cpu_idle";
-		struct__avm_event_cpu_idle [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<cpu_idle> unsigned char: cpu_idle|<dsl_dsp_idle> unsigned char: dsl_dsp_idle|<voice_dsp_idle> unsigned char: voice_dsp_idle|<mem_strictlyused> unsigned char: mem_strictlyused|<mem_cacheused> unsigned char: mem_cacheused|<mem_physfree> unsigned char: mem_physfree|<cputype> enum _cputype: cputype}"];
+		label = "struct wlan_event_data_client_common";
+		struct_wlan_event_data_client_common [fontcolor="green",shape=record,label="{ <mac> uint8_t: mac|<iface> char: iface|<initiator> char: initiator}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_paniclog{
+	subgraph cluster_struct_avm_event_led_status{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_paniclog";
-		struct_avm_event_tffs_paniclog [fontcolor="green",shape=record,label="{ <buff_addr> uint64_t: buff_addr|<len> uint64_t: len|<crc> int32_t: crc}"];
+		label = "struct avm_event_led_status";
+		struct_avm_event_led_status [fontcolor="green",shape=record,label="{ <led> enum avm_event_led_id: led|<state> unsigned int: state|<param_len> unsigned int: param_len|<params> unsigned char: params}"];
 	};
-	subgraph cluster_struct_avm_event_cpu_run{
+	subgraph cluster_struct__avm_event_powermanagment_remote_ressourceinfo{
 		fontcolor = "red";
-		label = "struct avm_event_cpu_run";
-		struct_avm_event_cpu_run [fontcolor="green",shape=record,label="{ <cputype> enum _cputype: cputype|<cpu_run> unsigned char: cpu_run}"];
+		label = "struct _avm_event_powermanagment_remote_ressourceinfo";
+		struct__avm_event_powermanagment_remote_ressourceinfo [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<device> enum _powermanagment_device: device|<power_rate> unsigned int: power_rate}"];
 	};
-	subgraph cluster_struct__avm_event_cmd_param_release{
+	subgraph cluster_struct__avm_event_firmware_update_available{
 		fontcolor = "red";
-		label = "struct _avm_event_cmd_param_release";
-		struct__avm_event_cmd_param_release [fontcolor="green",shape=record,label="{ <Name> char: Name}"];
+		label = "struct _avm_event_firmware_update_available";
+		struct__avm_event_firmware_update_available [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<type> enum avm_event_firmware_type: type|<version_length> unsigned int: version_length|<version> unsigned char: version}"];
 	};
-	subgraph cluster_struct__avm_event_mass_storage_unmount{
+	subgraph cluster_struct__avm_event_telefonprofile{
 		fontcolor = "red";
-		label = "struct _avm_event_mass_storage_unmount";
-		struct__avm_event_mass_storage_unmount [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<name_length> unsigned int: name_length|<name> unsigned char: name}"];
+		label = "struct _avm_event_telefonprofile";
+		struct__avm_event_telefonprofile [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<on> unsigned int: on}"];
 	};
-	subgraph cluster_struct_wlan_event_data_client_state_change{
+	subgraph cluster_struct__avm_event_powermanagment_remote{
 		fontcolor = "red";
-		label = "struct wlan_event_data_client_state_change";
-		struct_wlan_event_data_client_state_change [fontcolor="green",shape=record,label="{ <common> struct wlan_event_data_client_common: common|<state> uint8_t: state}"];
+		label = "struct _avm_event_powermanagment_remote";
+		struct__avm_event_powermanagment_remote [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<remote_action> enum avm_event_powermanagment_remote_action: remote_action\n(Select-Key for next union)|<param> union avm_event_powermanagment_remote_union: param\n(Select-Key used here)}"];
 	};
-	subgraph cluster_struct__avm_event_internet_new_ip{
+	subgraph cluster_struct_avm_event_cpu_idle{
 		fontcolor = "red";
-		label = "struct _avm_event_internet_new_ip";
-		struct__avm_event_internet_new_ip [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<sel> enum avm_event_internet_new_ip_param_sel: sel\n(Select-Key for next union)|<params> union avm_event_internet_new_ip_param: params\n(Select-Key used here)}"];
+		label = "struct avm_event_cpu_idle";
+		struct_avm_event_cpu_idle [fontcolor="green",shape=record,label="{ <cpu_idle> unsigned char: cpu_idle|<dsl_dsp_idle> unsigned char: dsl_dsp_idle|<voice_dsp_idle> unsigned char: voice_dsp_idle|<mem_strictlyused> unsigned char: mem_strictlyused|<mem_cacheused> unsigned char: mem_cacheused|<mem_physfree> unsigned char: mem_physfree|<cputype> enum _cputype: cputype}"];
 	};
-	subgraph cluster_struct__avm_event_user_mode_source_notify{
+	subgraph cluster_struct_avm_event_remote_source_trigger_request{
 		fontcolor = "red";
-		label = "struct _avm_event_user_mode_source_notify";
-		struct__avm_event_user_mode_source_notify [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<id> enum _avm_event_id: id}"];
+		label = "struct avm_event_remote_source_trigger_request";
+		struct_avm_event_remote_source_trigger_request [fontcolor="green",shape=record,label="{ <data> struct avm_event_data: data}"];
 	};
-	subgraph cluster_struct_avm_event_message{
+	subgraph cluster_struct__avm_event_remotewatchdog{
 		fontcolor = "red";
-		label = "struct avm_event_message";
-		struct_avm_event_message [fontcolor="green",shape=record,label="{ <length> uint32_t: length\n(length for total)|<magic> uint32_t: magic|<nonce> uint32_t: nonce|<flags> uint32_t: flags|<result> int32_t: result|<transmitter_handle> uint32_t: transmitter_handle|<receiver_handle> uint32_t: receiver_handle|<type> enum avm_event_msg_type: type\n(Select-Key for next union)|<message> union avm_event_message_union: message\n(Select-Key used here)}"];
+		label = "struct _avm_event_remotewatchdog";
+		struct__avm_event_remotewatchdog [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<cmd> enum _avm_remote_wdt_cmd: cmd|<name> char: name|<param> unsigned int: param}"];
 	};
-	subgraph cluster_struct__avm_event_telephony_missed_call{
+	subgraph cluster_struct_avm_event_tffs_read{
 		fontcolor = "red";
-		label = "struct _avm_event_telephony_missed_call";
-		struct__avm_event_telephony_missed_call [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<length> unsigned int: length|<p> struct _avm_event_telephony_missed_call_params: p}"];
+		label = "struct avm_event_tffs_read";
+		struct_avm_event_tffs_read [fontcolor="green",shape=record,label="{ <buff_addr> uint64_t: buff_addr|<len> uint64_t: len|<id> uint32_t: id|<crc> int32_t: crc}"];
 	};
-	subgraph cluster_struct_avm_event_powermanagment_remote_ressourceinfo{
+	subgraph cluster_struct_avm_event_tffs_info{
 		fontcolor = "red";
-		label = "struct avm_event_powermanagment_remote_ressourceinfo";
-		struct_avm_event_powermanagment_remote_ressourceinfo [fontcolor="green",shape=record,label="{ <device> enum _powermanagment_device: device|<power_rate> unsigned int: power_rate}"];
+		label = "struct avm_event_tffs_info";
+		struct_avm_event_tffs_info [fontcolor="green",shape=record,label="{ <fill_level> uint32_t: fill_level}"];
 	};
-	subgraph cluster_struct_avm_event_telephony_missed_call{
+	subgraph cluster_struct__avm_event_cpu_idle{
 		fontcolor = "red";
-		label = "struct avm_event_telephony_missed_call";
-		struct_avm_event_telephony_missed_call [fontcolor="green",shape=record,label="{ <length> unsigned int: length|<p> struct _avm_event_telephony_missed_call_params: p}"];
+		label = "struct _avm_event_cpu_idle";
+		struct__avm_event_cpu_idle [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<cpu_idle> unsigned char: cpu_idle|<dsl_dsp_idle> unsigned char: dsl_dsp_idle|<voice_dsp_idle> unsigned char: voice_dsp_idle|<mem_strictlyused> unsigned char: mem_strictlyused|<mem_cacheused> unsigned char: mem_cacheused|<mem_physfree> unsigned char: mem_physfree|<cputype> enum _cputype: cputype}"];
 	};
 	subgraph cluster_struct__avm_event_led_info{
 		fontcolor = "red";
 		label = "struct _avm_event_led_info";
 		struct__avm_event_led_info [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<mode> unsigned int: mode|<param1> unsigned int: param1|<param2> unsigned int: param2|<gpio_driver_type> unsigned int: gpio_driver_type|<gpio> unsigned int: gpio|<pos> unsigned int: pos|<name> char: name}"];
 	};
-	subgraph cluster_struct_wlan_event_data_client_connect_info{
+	subgraph cluster_struct__avm_event_push_button{
 		fontcolor = "red";
-		label = "struct wlan_event_data_client_connect_info";
-		struct_wlan_event_data_client_connect_info [fontcolor="green",shape=record,label="{ <common> struct wlan_event_data_client_common: common|<info_context> uint8_t: info_context|<reason> uint8_t: reason|<max_node_count> uint32_t: max_node_count|<ieee80211_code> uint16_t: ieee80211_code}"];
+		label = "struct _avm_event_push_button";
+		struct__avm_event_push_button [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id|<key> enum _avm_event_push_button_key: key|<pressed> uint32_t: pressed}"];
 	};
-	subgraph cluster_struct__avm_event_log{
+	subgraph cluster_struct_avm_event_cpu_run{
 		fontcolor = "red";
-		label = "struct _avm_event_log";
-		struct__avm_event_log [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<logtype> enum _avm_logtype: logtype|<loglen> unsigned int: loglen|<logpointer> unsigned int: logpointer|<checksum> unsigned int: checksum|<rebootflag> unsigned int: rebootflag}"];
+		label = "struct avm_event_cpu_run";
+		struct_avm_event_cpu_run [fontcolor="green",shape=record,label="{ <cputype> enum _cputype: cputype|<cpu_run> unsigned char: cpu_run}"];
 	};
 	subgraph cluster_struct_avm_event_smarthome_switch_status{
 		fontcolor = "red";
 		label = "struct avm_event_smarthome_switch_status";
 		struct_avm_event_smarthome_switch_status [fontcolor="green",shape=record,label="{ <type> enum avm_event_switch_type: type|<value> unsigned int: value|<ain_length> unsigned int: ain_length|<ain> unsigned char: ain}"];
 	};
-	subgraph cluster_struct__avm_event_powermanagment_status{
-		fontcolor = "red";
-		label = "struct _avm_event_powermanagment_status";
-		struct__avm_event_powermanagment_status [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<substatus> enum _powermanagment_status_type: substatus\n(Select-Key for next union)|<param> union __powermanagment_status_union: param\n(Select-Key used here)}"];
-	};
-	subgraph cluster_struct_avm_event_powerline_status{
-		fontcolor = "red";
-		label = "struct avm_event_powerline_status";
-		struct_avm_event_powerline_status [fontcolor="green",shape=record,label="{ <status> enum ePLCState: status}"];
-	};
-	subgraph cluster_struct__avm_event_id_mask{
+	subgraph cluster_struct__avm_event_header{
 		fontcolor = "red";
-		label = "struct _avm_event_id_mask";
-		struct__avm_event_id_mask [fontcolor="green",shape=record,label="{ <mask> avm_event_mask_fieldentry: mask}"];
+		label = "struct _avm_event_header";
+		struct__avm_event_header [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id}"];
 	};
-	subgraph cluster_struct_avm_event_wlan{
+	subgraph cluster_struct_cpmac_event_struct{
 		fontcolor = "red";
-		label = "struct avm_event_wlan";
-		struct_avm_event_wlan [fontcolor="green",shape=record,label="{ <mac> char: mac|<u1> union avm_event_wlan_client_status_u1: u1|<event> wlan_event: event|<info> wlan_info: info|<status> enum wlan_sm_states: status|<u2> union avm_event_wlan_client_status_u2: u2|<if_name> char: if_name|<ev_initiator> unsigned int: ev_initiator|<ev_reason> unsigned int: ev_reason|<avm_capabilities> unsigned int: avm_capabilities}"];
+		label = "struct cpmac_event_struct";
+		struct_cpmac_event_struct [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<ports> unsigned int: ports|<port> struct cpmac_port: port}"];
 	};
-	subgraph cluster_struct__avm_event_cmd_param_register{
+	subgraph cluster_struct_avm_event_led_info{
 		fontcolor = "red";
-		label = "struct _avm_event_cmd_param_register";
-		struct__avm_event_cmd_param_register [fontcolor="green",shape=record,label="{ <mask> struct _avm_event_id_mask: mask|<Name> char: Name}"];
+		label = "struct avm_event_led_info";
+		struct_avm_event_led_info [fontcolor="green",shape=record,label="{ <mode> unsigned int: mode|<param1> unsigned int: param1|<param2> unsigned int: param2|<gpio_driver_type> unsigned int: gpio_driver_type|<gpio> unsigned int: gpio|<pos> unsigned int: pos|<name> char: name}"];
 	};
-	subgraph cluster_struct_avm_event_source_notifier{
+	subgraph cluster_struct_avm_event_remotepcmlink{
 		fontcolor = "red";
-		label = "struct avm_event_source_notifier";
-		struct_avm_event_source_notifier [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id}"];
+		label = "struct avm_event_remotepcmlink";
+		struct_avm_event_remotepcmlink [fontcolor="green",shape=record,label="{ <type> enum _avm_remotepcmlinktype: type|<sharedlen> unsigned int: sharedlen|<sharedpointer> unsigned int: sharedpointer}"];
 	};
-	subgraph cluster_struct_avm_event_firmware_update_available{
+	subgraph cluster_struct_wlan_event_data_scan_common{
 		fontcolor = "red";
-		label = "struct avm_event_firmware_update_available";
-		struct_avm_event_firmware_update_available [fontcolor="green",shape=record,label="{ <type> enum avm_event_firmware_type: type|<version_length> unsigned int: version_length|<version> unsigned char: version}"];
+		label = "struct wlan_event_data_scan_common";
+		struct_wlan_event_data_scan_common [fontcolor="green",shape=record,label="{ <iface> char: iface|<initiator> char: initiator}"];
 	};
 	subgraph cluster_struct_avm_event_tffs_cleanup{
 		fontcolor = "red";
 		label = "struct avm_event_tffs_cleanup";
 		struct_avm_event_tffs_cleanup [fontcolor="green",shape=record,label="{ <dummy> uint32_t: dummy}"];
 	};
-	subgraph cluster_struct_avm_event_tffs_notify{
+	subgraph cluster_struct_avm_event_mass_storage_unmount{
 		fontcolor = "red";
-		label = "struct avm_event_tffs_notify";
-		struct_avm_event_tffs_notify [fontcolor="green",shape=record,label="{ <id> uint32_t: id|<event> enum avm_event_tffs_notify_event: event}"];
+		label = "struct avm_event_mass_storage_unmount";
+		struct_avm_event_mass_storage_unmount [fontcolor="green",shape=record,label="{ <name_length> unsigned int: name_length|<name> unsigned char: name}"];
 	};
-	subgraph cluster_struct_avm_event_led_status{
+	subgraph cluster_struct_avm_event_ping{
 		fontcolor = "red";
-		label = "struct avm_event_led_status";
-		struct_avm_event_led_status [fontcolor="green",shape=record,label="{ <led> enum avm_event_led_id: led|<state> unsigned int: state|<param_len> unsigned int: param_len|<params> unsigned char: params}"];
+		label = "struct avm_event_ping";
+		struct_avm_event_ping [fontcolor="green",shape=record,label="{ <seq> uint32_t: seq}"];
 	};
-	subgraph cluster_struct_wlan_event_data_client_common{
+	subgraph cluster_struct_avm_event_mass_storage_mount{
 		fontcolor = "red";
-		label = "struct wlan_event_data_client_common";
-		struct_wlan_event_data_client_common [fontcolor="green",shape=record,label="{ <mac> uint8_t: mac|<iface> char: iface|<initiator> char: initiator}"];
+		label = "struct avm_event_mass_storage_mount";
+		struct_avm_event_mass_storage_mount [fontcolor="green",shape=record,label="{ <size> unsigned long long: size|<free> unsigned long long: free|<name_length> unsigned int: name_length|<name> unsigned char: name}"];
 	};
-	subgraph cluster_struct__avm_event_powerline_status{
+	subgraph cluster_struct__avm_event_cpu_run{
 		fontcolor = "red";
-		label = "struct _avm_event_powerline_status";
-		struct__avm_event_powerline_status [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<status> enum ePLCState: status}"];
+		label = "struct _avm_event_cpu_run";
+		struct__avm_event_cpu_run [fontcolor="green",shape=record,label="{ <event_header> struct _avm_event_header: event_header|<cputype> enum _cputype: cputype|<cpu_run> unsigned char: cpu_run}"];
 	};
-	subgraph cluster_struct__avm_event_smarthome_switch_status{
+	subgraph cluster_struct_avm_event_unserialised{
 		fontcolor = "red";
-		label = "struct _avm_event_smarthome_switch_status";
-		struct__avm_event_smarthome_switch_status [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<type> enum avm_event_switch_type: type|<value> unsigned int: value|<ain_length> unsigned int: ain_length|<ain> unsigned char: ain}"];
+		label = "struct avm_event_unserialised";
+		struct_avm_event_unserialised [fontcolor="green",shape=record,label="{ <evnt_id> uint64_t: evnt_id|<data_len> uint32_t: data_len|<data> unsigned char: data}"];
 	};
-	subgraph cluster_struct_avm_event_source_register{
+	subgraph cluster_struct_avm_event_telefonprofile{
 		fontcolor = "red";
-		label = "struct avm_event_source_register";
-		struct_avm_event_source_register [fontcolor="green",shape=record,label="{ <id_mask> struct _avm_event_id_mask: id_mask|<name> char: name}"];
+		label = "struct avm_event_telefonprofile";
+		struct_avm_event_telefonprofile [fontcolor="green",shape=record,label="{ <on> unsigned int: on}"];
 	};
-	subgraph cluster_struct_avm_event_checkpoint{
+	subgraph cluster_struct_wlan_event_data_client_connect_info{
 		fontcolor = "red";
-		label = "struct avm_event_checkpoint";
-		struct_avm_event_checkpoint [fontcolor="green",shape=record,label="{ <node_id> uint32_t: node_id|<checkpoints> uint64_t: checkpoints}"];
+		label = "struct wlan_event_data_client_connect_info";
+		struct_wlan_event_data_client_connect_info [fontcolor="green",shape=record,label="{ <common> struct wlan_event_data_client_common: common|<info_context> uint8_t: info_context|<reason> uint8_t: reason|<max_node_count> uint32_t: max_node_count|<ieee80211_code> uint16_t: ieee80211_code}"];
 	};
-	subgraph cluster_struct_wlan_event_data_scan_common{
+	subgraph cluster_struct__avm_event_cmd_param_trigger{
 		fontcolor = "red";
-		label = "struct wlan_event_data_scan_common";
-		struct_wlan_event_data_scan_common [fontcolor="green",shape=record,label="{ <iface> char: iface|<initiator> char: initiator}"];
+		label = "struct _avm_event_cmd_param_trigger";
+		struct__avm_event_cmd_param_trigger [fontcolor="green",shape=record,label="{ <id> enum _avm_event_id: id}"];
 	};
-	subgraph cluster_union_avm_event_powermanagment_remote_union{
+	subgraph cluster_struct_avm_event_log{
 		fontcolor = "red";
-		label = "union avm_event_powermanagment_remote_union";
-		union_avm_event_powermanagment_remote_union [shape=record,fontcolor="blue",label="{ <ressourceinfo> struct avm_event_powermanagment_remote_ressourceinfo: ressourceinfo|<powermode> char: powermode}"];
+		label = "struct avm_event_log";
+		struct_avm_event_log [fontcolor="green",shape=record,label="{ <logtype> enum _avm_logtype: logtype|<loglen> unsigned int: loglen|<logpointer> unsigned int: logpointer|<checksum> unsigned int: checksum|<rebootflag> unsigned int: rebootflag}"];
 	};
-	subgraph cluster_union__avm_event_cmd_param{
+	subgraph cluster_struct__avm_event_wlan{
 		fontcolor = "red";
-		label = "union _avm_event_cmd_param";
-		union__avm_event_cmd_param [shape=record,fontcolor="blue",label="{ <avm_event_cmd_param_register> struct _avm_event_cmd_param_register: avm_event_cmd_param_register|<avm_event_cmd_param_release> struct _avm_event_cmd_param_release: avm_event_cmd_param_release|<avm_event_cmd_param_trigger> struct _avm_event_cmd_param_trigger: avm_event_cmd_param_trigger|<avm_event_cmd_param_source_register> struct _avm_event_cmd_param_register: avm_event_cmd_param_source_register|<avm_event_cmd_param_source_trigger> struct _avm_event_cmd_param_source_trigger: avm_event_cmd_param_source_trigger}"];
+		label = "struct _avm_event_wlan";
+		struct__avm_event_wlan [fontcolor="green",shape=record,label="{ <header> struct _avm_event_header: header|<mac> char: mac|<u1> unsigned int: u1|<event> unsigned int: event|<info> unsigned int: info|<status> unsigned int: status|<u2> unsigned int: u2|<if_name> char: if_name|<ev_initiator> unsigned int: ev_initiator|<ev_reason> unsigned int: ev_reason|<avm_capabilities> unsigned int: avm_capabilities}"];
 	};
-	subgraph cluster_union_wlan_event_data{
+	subgraph cluster_struct_wlan_event_data_scan_event_info{
 		fontcolor = "red";
-		label = "union wlan_event_data";
-		union_wlan_event_data [shape=record,fontcolor="blue",label="{ <client_state_change> struct wlan_event_data_client_state_change: client_state_change|<client_connect_info> struct wlan_event_data_client_connect_info: client_connect_info|<scan_event_info> struct wlan_event_data_scan_event_info: scan_event_info}"];
+		label = "struct wlan_event_data_scan_event_info";
+		struct_wlan_event_data_scan_event_info [fontcolor="green",shape=record,label="{ <common> struct wlan_event_data_scan_common: common|<event_type> enum wlan_event_scan_type: event_type}"];
+	};
+	subgraph cluster_union_avm_event_tffs_call_union{
+		fontcolor = "red";
+		label = "union avm_event_tffs_call_union";
+		union_avm_event_tffs_call_union [shape=record,fontcolor="blue",label="{ <open> struct avm_event_tffs_open: open|<close> struct avm_event_tffs_close: close|<read> struct avm_event_tffs_read: read|<write> struct avm_event_tffs_write: write|<cleanup> struct avm_event_tffs_cleanup: cleanup|<reindex> struct avm_event_tffs_reindex: reindex|<info> struct avm_event_tffs_info: info|<init> struct avm_event_tffs_init: init|<deinit> struct avm_event_tffs_deinit: deinit|<notify> struct avm_event_tffs_notify: notify|<paniclog> struct avm_event_tffs_paniclog: paniclog}"];
 	};
 	subgraph cluster_union_avm_event_wlan_client_status_u2{
 		fontcolor = "red";
 		label = "union avm_event_wlan_client_status_u2";
 		union_avm_event_wlan_client_status_u2 [shape=record,fontcolor="blue",label="{ <radar_freq> unsigned int: radar_freq|<wlan_mode> unsigned int: wlan_mode}"];
 	};
-	subgraph cluster_union_avm_event_data_union{
+	subgraph cluster_union_avm_event_wlan_client_status_u1{
 		fontcolor = "red";
-		label = "union avm_event_data_union";
-		union_avm_event_data_union [shape=record,fontcolor="blue",label="{ <push_button> struct avm_event_push_button: push_button|<cpmac> struct _cpmac_event_struct: cpmac|<led_status> struct avm_event_led_status: led_status|<led_info> struct avm_event_led_info: led_info|<telefonprofile> struct avm_event_telefonprofile: telefonprofile|<temperature> struct avm_event_temperature: temperature|<powermanagment_status> struct avm_event_powermanagment_status: powermanagment_status|<cpu_idle> struct avm_event_cpu_idle: cpu_idle|<powermanagment_remote> struct avm_event_powermanagment_remote: powermanagment_remote|<id_log> struct avm_event_log: id_log|<id_remotepcmlink> struct avm_event_remotepcmlink: id_remotepcmlink|<id_remotewatchdog> struct avm_event_remotewatchdog: id_remotewatchdog|<id_rpc> struct avm_event_rpc: id_rpc|<pm_info_stat> struct avm_event_pm_info_stat: pm_info_stat|<wlan> struct avm_event_wlan: wlan|<wlan_event> struct wlan_event_def: wlan_event|<telephony_missed_call> struct avm_event_telephony_missed_call: telephony_missed_call|<telephony_tam_call> struct avm_event_telephony_missed_call: telephony_tam_call|<telephony_fax_received> struct avm_event_telephony_missed_call: telephony_fax_received|<telephony_incoming_call> struct avm_event_telephony_missed_call: telephony_incoming_call|<firmware_update_available> struct avm_event_firmware_update_available: firmware_update_available|<internet_new_ip> struct avm_event_internet_new_ip: internet_new_ip|<smarthome_switch_status> struct avm_event_smarthome_switch_status: smarthome_switch_status|<mass_storage_mount> struct avm_event_mass_storage_mount: mass_storage_mount|<mass_storage_unmount> struct avm_event_mass_storage_unmount: mass_storage_unmount|<checkpoint> struct avm_event_checkpoint: checkpoint|<cpu_run> struct avm_event_cpu_run: cpu_run}"];
+		label = "union avm_event_wlan_client_status_u1";
+		union_avm_event_wlan_client_status_u1 [shape=record,fontcolor="blue",label="{ <sub_event> unsigned int: sub_event|<active_rate> unsigned int: active_rate|<active_rate1> unsigned int: active_rate1|<active_rate2> unsigned int: active_rate2|<active_rate3> unsigned int: active_rate3|<active_rate4> unsigned int: active_rate4|<active_rate5> unsigned int: active_rate5|<active_rate6> unsigned int: active_rate6|<radar_chan> unsigned int: radar_chan|<green_ap_ps_state> unsigned int: green_ap_ps_state|<coexist_ht40_state> unsigned int: coexist_ht40_state|<max_node_count> unsigned int: max_node_count|<channel> unsigned int: channel|<dummy0> unsigned int: dummy0}"];
+	};
+	subgraph cluster_union__avm_event_cmd_param{
+		fontcolor = "red";
+		label = "union _avm_event_cmd_param";
+		union__avm_event_cmd_param [shape=record,fontcolor="blue",label="{ <avm_event_cmd_param_register> struct _avm_event_cmd_param_register: avm_event_cmd_param_register|<avm_event_cmd_param_release> struct _avm_event_cmd_param_release: avm_event_cmd_param_release|<avm_event_cmd_param_trigger> struct _avm_event_cmd_param_trigger: avm_event_cmd_param_trigger|<avm_event_cmd_param_source_register> struct _avm_event_cmd_param_register: avm_event_cmd_param_source_register|<avm_event_cmd_param_source_trigger> struct _avm_event_cmd_param_source_trigger: avm_event_cmd_param_source_trigger}"];
+	};
+	subgraph cluster_union_avm_event_powermanagment_remote_union{
+		fontcolor = "red";
+		label = "union avm_event_powermanagment_remote_union";
+		union_avm_event_powermanagment_remote_union [shape=record,fontcolor="blue",label="{ <ressourceinfo> struct avm_event_powermanagment_remote_ressourceinfo: ressourceinfo|<powermode> char: powermode}"];
 	};
 	subgraph cluster_union___powermanagment_status_union{
 		fontcolor = "red";
@@ -472,85 +472,94 @@
 		label = "union avm_event_telephony_call_params";
 		union_avm_event_telephony_call_params [shape=record,fontcolor="blue",label="{ <string> struct avm_event_telephony_string: string|<number> unsigned char: number|<duration> unsigned int: duration|<port> unsigned char: port|<id> unsigned int: id}"];
 	};
-	subgraph cluster_union_avm_event_wlan_client_status_u1{
+	subgraph cluster_union_avm_event_internet_new_ip_param{
 		fontcolor = "red";
-		label = "union avm_event_wlan_client_status_u1";
-		union_avm_event_wlan_client_status_u1 [shape=record,fontcolor="blue",label="{ <sub_event> unsigned int: sub_event|<active_rate> unsigned int: active_rate|<active_rate1> unsigned int: active_rate1|<active_rate2> unsigned int: active_rate2|<active_rate3> unsigned int: active_rate3|<active_rate4> unsigned int: active_rate4|<active_rate5> unsigned int: active_rate5|<active_rate6> unsigned int: active_rate6|<radar_chan> unsigned int: radar_chan|<green_ap_ps_state> unsigned int: green_ap_ps_state|<coexist_ht40_state> unsigned int: coexist_ht40_state|<max_node_count> unsigned int: max_node_count|<channel> unsigned int: channel|<dummy0> unsigned int: dummy0}"];
+		label = "union avm_event_internet_new_ip_param";
+		union_avm_event_internet_new_ip_param [shape=record,fontcolor="blue",label="{ <ipv4> unsigned char: ipv4|<ipv6> unsigned char: ipv6}"];
 	};
-	subgraph cluster_union_avm_event_tffs_call_union{
+	subgraph cluster_union_avm_event_data_union{
 		fontcolor = "red";
-		label = "union avm_event_tffs_call_union";
-		union_avm_event_tffs_call_union [shape=record,fontcolor="blue",label="{ <open> struct avm_event_tffs_open: open|<close> struct avm_event_tffs_close: close|<read> struct avm_event_tffs_read: read|<write> struct avm_event_tffs_write: write|<cleanup> struct avm_event_tffs_cleanup: cleanup|<reindex> struct avm_event_tffs_reindex: reindex|<info> struct avm_event_tffs_info: info|<init> struct avm_event_tffs_init: init|<deinit> struct avm_event_tffs_deinit: deinit|<notify> struct avm_event_tffs_notify: notify|<paniclog> struct avm_event_tffs_paniclog: paniclog}"];
+		label = "union avm_event_data_union";
+		union_avm_event_data_union [shape=record,fontcolor="blue",label="{ <push_button> struct avm_event_push_button: push_button|<cpmac> struct _cpmac_event_struct: cpmac|<led_status> struct avm_event_led_status: led_status|<led_info> struct avm_event_led_info: led_info|<telefonprofile> struct avm_event_telefonprofile: telefonprofile|<temperature> struct avm_event_temperature: temperature|<powermanagment_status> struct avm_event_powermanagment_status: powermanagment_status|<cpu_idle> struct avm_event_cpu_idle: cpu_idle|<powermanagment_remote> struct avm_event_powermanagment_remote: powermanagment_remote|<id_log> struct avm_event_log: id_log|<id_remotepcmlink> struct avm_event_remotepcmlink: id_remotepcmlink|<id_remotewatchdog> struct avm_event_remotewatchdog: id_remotewatchdog|<id_rpc> struct avm_event_rpc: id_rpc|<pm_info_stat> struct avm_event_pm_info_stat: pm_info_stat|<wlan> struct avm_event_wlan: wlan|<wlan_event> struct wlan_event_def: wlan_event|<telephony_missed_call> struct avm_event_telephony_missed_call: telephony_missed_call|<telephony_tam_call> struct avm_event_telephony_missed_call: telephony_tam_call|<telephony_fax_received> struct avm_event_telephony_missed_call: telephony_fax_received|<telephony_incoming_call> struct avm_event_telephony_missed_call: telephony_incoming_call|<firmware_update_available> struct avm_event_firmware_update_available: firmware_update_available|<internet_new_ip> struct avm_event_internet_new_ip: internet_new_ip|<smarthome_switch_status> struct avm_event_smarthome_switch_status: smarthome_switch_status|<mass_storage_mount> struct avm_event_mass_storage_mount: mass_storage_mount|<mass_storage_unmount> struct avm_event_mass_storage_unmount: mass_storage_unmount|<checkpoint> struct avm_event_checkpoint: checkpoint|<cpu_run> struct avm_event_cpu_run: cpu_run}"];
 	};
-	subgraph cluster_union_avm_event_internet_new_ip_param{
+	subgraph cluster_union_wlan_event_data{
 		fontcolor = "red";
-		label = "union avm_event_internet_new_ip_param";
-		union_avm_event_internet_new_ip_param [shape=record,fontcolor="blue",label="{ <ipv4> unsigned char: ipv4|<ipv6> unsigned char: ipv6}"];
+		label = "union wlan_event_data";
+		union_wlan_event_data [shape=record,fontcolor="blue",label="{ <client_state_change> struct wlan_event_data_client_state_change: client_state_change|<client_connect_info> struct wlan_event_data_client_connect_info: client_connect_info|<scan_event_info> struct wlan_event_data_scan_event_info: scan_event_info}"];
 	};
 	subgraph cluster_union_avm_event_message_union{
 		fontcolor = "red";
 		label = "union avm_event_message_union";
 		union_avm_event_message_union [shape=record,fontcolor="blue",label="{ <source_register> struct avm_event_source_register: source_register|<source_unregister> struct avm_event_source_unregister: source_unregister|<source_notifier> struct avm_event_source_notifier: source_notifier|<remote_source_trigger_request> struct avm_event_remote_source_trigger_request: remote_source_trigger_request|<ping> struct avm_event_ping: ping|<tffs> struct avm_event_tffs: tffs}"];
 	};
-	struct__avm_event_led_status:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_checkpoint:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_remotepcmlink:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_avm_event_remote_source_trigger_request:data -> struct_avm_event_data [lhead=cluster_struct_avm_event_data];
-	struct__avm_event_rpc:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_wlan:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_mass_storage_mount:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_log:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_avm_event_telephony_missed_call:p -> struct__avm_event_telephony_missed_call_params [lhead=cluster_struct__avm_event_telephony_missed_call_params];
+	struct_avm_event_powermanagment_status:param -> union___powermanagment_status_union [lhead=cluster_union___powermanagment_status_union];
+	struct__avm_event_cmd_param_register:mask -> struct__avm_event_id_mask [lhead=cluster_struct__avm_event_id_mask];
+	struct_wlan_event_data_client_state_change:common -> struct_wlan_event_data_client_common [lhead=cluster_struct_wlan_event_data_client_common];
 	struct__avm_event_temperature:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
 	struct_avm_event_internet_new_ip:params -> union_avm_event_internet_new_ip_param [lhead=cluster_union_avm_event_internet_new_ip_param];
-	struct_cpmac_event_struct:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_cpmac_event_struct:port -> struct_cpmac_port [lhead=cluster_struct_cpmac_port];
-	struct_avm_event_data:data -> union_avm_event_data_union [lhead=cluster_union_avm_event_data_union];
-	struct__avm_event_powermanagment_remote_ressourceinfo:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_avm_event_powermanagment_remote:param -> union_avm_event_powermanagment_remote_union [lhead=cluster_union_avm_event_powermanagment_remote_union];
-	struct_avm_event_source_unregister:id_mask -> struct__avm_event_id_mask [lhead=cluster_struct__avm_event_id_mask];
-	struct_avm_event_powermanagment_status:param -> union___powermanagment_status_union [lhead=cluster_union___powermanagment_status_union];
-	struct_wlan_event_data_scan_event_info:common -> struct_wlan_event_data_scan_common [lhead=cluster_struct_wlan_event_data_scan_common];
-	struct__avm_event_cpu_run:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_remotewatchdog:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_powermanagment_remote:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_powermanagment_remote:param -> union_avm_event_powermanagment_remote_union [lhead=cluster_union_avm_event_powermanagment_remote_union];
-	struct__avm_event_telefonprofile:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_telephony_missed_call_params:params -> union_avm_event_telephony_call_params [lhead=cluster_union_avm_event_telephony_call_params];
+	struct__avm_event_rpc:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
 	struct__avm_event_cmd:param -> union__avm_event_cmd_param [lhead=cluster_union__avm_event_cmd_param];
-	struct_wlan_event_def:event_data -> union_wlan_event_data [lhead=cluster_union_wlan_event_data];
-	struct__avm_event_pm_info_stat:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_avm_event_tffs:call -> union_avm_event_tffs_call_union [lhead=cluster_union_avm_event_tffs_call_union];
-	struct__avm_event_firmware_update_available:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_mass_storage_mount:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
 	struct__cpmac_event_struct:port -> struct_cpmac_port [lhead=cluster_struct_cpmac_port];
-	struct__avm_event_cpu_idle:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_mass_storage_unmount:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_wlan_event_data_client_state_change:common -> struct_wlan_event_data_client_common [lhead=cluster_struct_wlan_event_data_client_common];
+	struct__avm_event_led_status:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_avm_event_tffs:call -> union_avm_event_tffs_call_union [lhead=cluster_union_avm_event_tffs_call_union];
 	struct__avm_event_internet_new_ip:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
 	struct__avm_event_internet_new_ip:params -> union_avm_event_internet_new_ip_param [lhead=cluster_union_avm_event_internet_new_ip_param];
-	struct__avm_event_user_mode_source_notify:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_avm_event_message:message -> union_avm_event_message_union [lhead=cluster_union_avm_event_message_union];
-	struct__avm_event_telephony_missed_call:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct__avm_event_telephony_missed_call:p -> struct__avm_event_telephony_missed_call_params [lhead=cluster_struct__avm_event_telephony_missed_call_params];
-	struct_avm_event_telephony_missed_call:p -> struct__avm_event_telephony_missed_call_params [lhead=cluster_struct__avm_event_telephony_missed_call_params];
-	struct__avm_event_led_info:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_wlan_event_data_client_connect_info:common -> struct_wlan_event_data_client_common [lhead=cluster_struct_wlan_event_data_client_common];
-	struct__avm_event_log:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_checkpoint:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_wlan_event_def:event_data -> union_wlan_event_data [lhead=cluster_union_wlan_event_data];
 	struct__avm_event_powermanagment_status:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
 	struct__avm_event_powermanagment_status:param -> union___powermanagment_status_union [lhead=cluster_union___powermanagment_status_union];
+	struct__avm_event_pm_info_stat:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
 	struct_avm_event_wlan:u1 -> union_avm_event_wlan_client_status_u1 [lhead=cluster_union_avm_event_wlan_client_status_u1];
 	struct_avm_event_wlan:u2 -> union_avm_event_wlan_client_status_u2 [lhead=cluster_union_avm_event_wlan_client_status_u2];
-	struct__avm_event_cmd_param_register:mask -> struct__avm_event_id_mask [lhead=cluster_struct__avm_event_id_mask];
+	struct_avm_event_powermanagment_remote:param -> union_avm_event_powermanagment_remote_union [lhead=cluster_union_avm_event_powermanagment_remote_union];
+	struct__avm_event_mass_storage_unmount:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_avm_event_source_register:id_mask -> struct__avm_event_id_mask [lhead=cluster_struct__avm_event_id_mask];
+	struct_avm_event_data:data -> union_avm_event_data_union [lhead=cluster_union_avm_event_data_union];
 	struct__avm_event_powerline_status:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_telephony_missed_call_params:params -> union_avm_event_telephony_call_params [lhead=cluster_union_avm_event_telephony_call_params];
+	struct__avm_event_user_mode_source_notify:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_avm_event_message:message -> union_avm_event_message_union [lhead=cluster_union_avm_event_message_union];
+	struct__avm_event_remotepcmlink:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_telephony_missed_call:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_telephony_missed_call:p -> struct__avm_event_telephony_missed_call_params [lhead=cluster_struct__avm_event_telephony_missed_call_params];
+	struct_avm_event_source_unregister:id_mask -> struct__avm_event_id_mask [lhead=cluster_struct__avm_event_id_mask];
 	struct__avm_event_smarthome_switch_status:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
-	struct_avm_event_source_register:id_mask -> struct__avm_event_id_mask [lhead=cluster_struct__avm_event_id_mask];
-	union_avm_event_powermanagment_remote_union:ressourceinfo -> struct_avm_event_powermanagment_remote_ressourceinfo [lhead=cluster_struct_avm_event_powermanagment_remote_ressourceinfo,label="select=\n'avm_event_powermanagment_ressourceinfo'"];
+	struct__avm_event_powermanagment_remote_ressourceinfo:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_firmware_update_available:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_telefonprofile:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_powermanagment_remote:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_powermanagment_remote:param -> union_avm_event_powermanagment_remote_union [lhead=cluster_union_avm_event_powermanagment_remote_union];
+	struct_avm_event_remote_source_trigger_request:data -> struct_avm_event_data [lhead=cluster_struct_avm_event_data];
+	struct__avm_event_remotewatchdog:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_cpu_idle:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct__avm_event_led_info:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_cpmac_event_struct:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_cpmac_event_struct:port -> struct_cpmac_port [lhead=cluster_struct_cpmac_port];
+	struct__avm_event_cpu_run:event_header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_wlan_event_data_client_connect_info:common -> struct_wlan_event_data_client_common [lhead=cluster_struct_wlan_event_data_client_common];
+	struct__avm_event_wlan:header -> struct__avm_event_header [lhead=cluster_struct__avm_event_header];
+	struct_wlan_event_data_scan_event_info:common -> struct_wlan_event_data_scan_common [lhead=cluster_struct_wlan_event_data_scan_common];
+	union_avm_event_tffs_call_union:open -> struct_avm_event_tffs_open [lhead=cluster_struct_avm_event_tffs_open,label="select=\n'avm_event_tffs_call_open'"];
+	union_avm_event_tffs_call_union:close -> struct_avm_event_tffs_close [lhead=cluster_struct_avm_event_tffs_close,label="select=\n'avm_event_tffs_call_close'"];
+	union_avm_event_tffs_call_union:read -> struct_avm_event_tffs_read [lhead=cluster_struct_avm_event_tffs_read,label="select=\n'avm_event_tffs_call_read'"];
+	union_avm_event_tffs_call_union:write -> struct_avm_event_tffs_write [lhead=cluster_struct_avm_event_tffs_write,label="select=\n'avm_event_tffs_call_write'"];
+	union_avm_event_tffs_call_union:cleanup -> struct_avm_event_tffs_cleanup [lhead=cluster_struct_avm_event_tffs_cleanup,label="select=\n'avm_event_tffs_call_cleanup'"];
+	union_avm_event_tffs_call_union:reindex -> struct_avm_event_tffs_reindex [lhead=cluster_struct_avm_event_tffs_reindex,label="select=\n'avm_event_tffs_call_reindex'"];
+	union_avm_event_tffs_call_union:info -> struct_avm_event_tffs_info [lhead=cluster_struct_avm_event_tffs_info,label="select=\n'avm_event_tffs_call_info'"];
+	union_avm_event_tffs_call_union:init -> struct_avm_event_tffs_init [lhead=cluster_struct_avm_event_tffs_init,label="select=\n'avm_event_tffs_call_init'"];
+	union_avm_event_tffs_call_union:deinit -> struct_avm_event_tffs_deinit [lhead=cluster_struct_avm_event_tffs_deinit,label="select=\n'avm_event_tffs_call_deinit'"];
+	union_avm_event_tffs_call_union:notify -> struct_avm_event_tffs_notify [lhead=cluster_struct_avm_event_tffs_notify,label="select=\n'avm_event_tffs_call_notify'"];
+	union_avm_event_tffs_call_union:paniclog -> struct_avm_event_tffs_paniclog [lhead=cluster_struct_avm_event_tffs_paniclog,label="select=\n'avm_event_tffs_call_paniclog'"];
 	union__avm_event_cmd_param:avm_event_cmd_param_register -> struct__avm_event_cmd_param_register [lhead=cluster_struct__avm_event_cmd_param_register,label="select=\n'avm_event_cmd_register'"];
 	union__avm_event_cmd_param:avm_event_cmd_param_release -> struct__avm_event_cmd_param_release [lhead=cluster_struct__avm_event_cmd_param_release,label="select=\n'avm_event_cmd_release'"];
 	union__avm_event_cmd_param:avm_event_cmd_param_trigger -> struct__avm_event_cmd_param_trigger [lhead=cluster_struct__avm_event_cmd_param_trigger,label="select=\n'avm_event_cmd_trigger'"];
 	union__avm_event_cmd_param:avm_event_cmd_param_source_register -> struct__avm_event_cmd_param_register [lhead=cluster_struct__avm_event_cmd_param_register,label="select=\n'avm_event_cmd_source_register'"];
 	union__avm_event_cmd_param:avm_event_cmd_param_source_trigger -> struct__avm_event_cmd_param_source_trigger [lhead=cluster_struct__avm_event_cmd_param_source_trigger,label="select=\n'avm_event_cmd_source_trigger'"];
-	union_wlan_event_data:client_state_change -> struct_wlan_event_data_client_state_change [lhead=cluster_struct_wlan_event_data_client_state_change,label="select=\n'CLIENT_STATE_CHANGE'"];
-	union_wlan_event_data:client_connect_info -> struct_wlan_event_data_client_connect_info [lhead=cluster_struct_wlan_event_data_client_connect_info,label="select=\n'CLIENT_CONNECT_INFO'"];
-	union_wlan_event_data:scan_event_info -> struct_wlan_event_data_scan_event_info [lhead=cluster_struct_wlan_event_data_scan_event_info,label="select=\n'WLAN_EVENT_SCAN'"];
+	union_avm_event_powermanagment_remote_union:ressourceinfo -> struct_avm_event_powermanagment_remote_ressourceinfo [lhead=cluster_struct_avm_event_powermanagment_remote_ressourceinfo,label="select=\n'avm_event_powermanagment_ressourceinfo'"];
+	union_avm_event_telephony_call_params:string -> struct_avm_event_telephony_string [lhead=cluster_struct_avm_event_telephony_string,label="select=\n'avm_event_telephony_params_name\navm_event_telephony_params_msn_name\navm_event_telephony_params_portname\navm_event_telephony_params_tam_path'"];
 	union_avm_event_data_union:push_button -> struct_avm_event_push_button [lhead=cluster_struct_avm_event_push_button,label="select=\n'avm_event_id_push_button'"];
 	union_avm_event_data_union:cpmac -> struct__cpmac_event_struct [lhead=cluster_struct__cpmac_event_struct,label="select=\n'avm_event_id_ethernet_connect_status'"];
 	union_avm_event_data_union:led_status -> struct_avm_event_led_status [lhead=cluster_struct_avm_event_led_status,label="select=\n'avm_event_id_led_status'"];
@@ -578,18 +587,9 @@
 	union_avm_event_data_union:mass_storage_unmount -> struct_avm_event_mass_storage_unmount [lhead=cluster_struct_avm_event_mass_storage_unmount,label="select=\n'avm_event_id_mass_storage_unmount'"];
 	union_avm_event_data_union:checkpoint -> struct_avm_event_checkpoint [lhead=cluster_struct_avm_event_checkpoint,label="select=\n'avm_event_id_checkpoint'"];
 	union_avm_event_data_union:cpu_run -> struct_avm_event_cpu_run [lhead=cluster_struct_avm_event_cpu_run,label="select=\n'avm_event_id_cpu_run'"];
-	union_avm_event_telephony_call_params:string -> struct_avm_event_telephony_string [lhead=cluster_struct_avm_event_telephony_string,label="select=\n'avm_event_telephony_params_name\navm_event_telephony_params_msn_name\navm_event_telephony_params_portname\navm_event_telephony_params_tam_path'"];
-	union_avm_event_tffs_call_union:open -> struct_avm_event_tffs_open [lhead=cluster_struct_avm_event_tffs_open,label="select=\n'avm_event_tffs_call_open'"];
-	union_avm_event_tffs_call_union:close -> struct_avm_event_tffs_close [lhead=cluster_struct_avm_event_tffs_close,label="select=\n'avm_event_tffs_call_close'"];
-	union_avm_event_tffs_call_union:read -> struct_avm_event_tffs_read [lhead=cluster_struct_avm_event_tffs_read,label="select=\n'avm_event_tffs_call_read'"];
-	union_avm_event_tffs_call_union:write -> struct_avm_event_tffs_write [lhead=cluster_struct_avm_event_tffs_write,label="select=\n'avm_event_tffs_call_write'"];
-	union_avm_event_tffs_call_union:cleanup -> struct_avm_event_tffs_cleanup [lhead=cluster_struct_avm_event_tffs_cleanup,label="select=\n'avm_event_tffs_call_cleanup'"];
-	union_avm_event_tffs_call_union:reindex -> struct_avm_event_tffs_reindex [lhead=cluster_struct_avm_event_tffs_reindex,label="select=\n'avm_event_tffs_call_reindex'"];
-	union_avm_event_tffs_call_union:info -> struct_avm_event_tffs_info [lhead=cluster_struct_avm_event_tffs_info,label="select=\n'avm_event_tffs_call_info'"];
-	union_avm_event_tffs_call_union:init -> struct_avm_event_tffs_init [lhead=cluster_struct_avm_event_tffs_init,label="select=\n'avm_event_tffs_call_init'"];
-	union_avm_event_tffs_call_union:deinit -> struct_avm_event_tffs_deinit [lhead=cluster_struct_avm_event_tffs_deinit,label="select=\n'avm_event_tffs_call_deinit'"];
-	union_avm_event_tffs_call_union:notify -> struct_avm_event_tffs_notify [lhead=cluster_struct_avm_event_tffs_notify,label="select=\n'avm_event_tffs_call_notify'"];
-	union_avm_event_tffs_call_union:paniclog -> struct_avm_event_tffs_paniclog [lhead=cluster_struct_avm_event_tffs_paniclog,label="select=\n'avm_event_tffs_call_paniclog'"];
+	union_wlan_event_data:client_state_change -> struct_wlan_event_data_client_state_change [lhead=cluster_struct_wlan_event_data_client_state_change,label="select=\n'CLIENT_STATE_CHANGE'"];
+	union_wlan_event_data:client_connect_info -> struct_wlan_event_data_client_connect_info [lhead=cluster_struct_wlan_event_data_client_connect_info,label="select=\n'CLIENT_CONNECT_INFO'"];
+	union_wlan_event_data:scan_event_info -> struct_wlan_event_data_scan_event_info [lhead=cluster_struct_wlan_event_data_scan_event_info,label="select=\n'WLAN_EVENT_SCAN'"];
 	union_avm_event_message_union:source_register -> struct_avm_event_source_register [lhead=cluster_struct_avm_event_source_register,label="select=\n'avm_event_source_register_type'"];
 	union_avm_event_message_union:source_unregister -> struct_avm_event_source_unregister [lhead=cluster_struct_avm_event_source_unregister,label="select=\n'avm_event_source_unregister_type'"];
 	union_avm_event_message_union:source_notifier -> struct_avm_event_source_notifier [lhead=cluster_struct_avm_event_source_notifier,label="select=\n'avm_event_source_notifier_type'"];
--- linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_types.h	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_gen_types.h	2019-08-22 13:31:47.000000000 +0200
@@ -856,47 +856,80 @@
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 
 
-char *get_enum_wlan_sm_states_name (enum wlan_sm_states value);
-char *get_enum___avm_event_cmd_name (enum __avm_event_cmd value);
-char *get_enum_avm_event_powermanagment_remote_action_name (enum avm_event_powermanagment_remote_action value);
-char *get_enum_avm_event_switch_type_name (enum avm_event_switch_type value);
-char *get_enum__avm_event_push_button_key_name (enum _avm_event_push_button_key value);
-char *get_enum_ePLCState_name (enum ePLCState value);
-char *get_enum__avm_logtype_name (enum _avm_logtype value);
-char *get_enum_wlan_event_sel_name (enum wlan_event_sel value);
 char *get_enum_wlan_info_sel_name (enum wlan_info_sel value);
-char *get_enum_avm_event_tffs_call_type_name (enum avm_event_tffs_call_type value);
+char *get_enum_avm_event_telephony_param_sel_name (enum avm_event_telephony_param_sel value);
+char *get_enum_avm_event_switch_type_name (enum avm_event_switch_type value);
+char *get_enum_wlan_sm_states_name (enum wlan_sm_states value);
+char *get_enum_wlan_event_scan_type_name (enum wlan_event_scan_type value);
+char *get_enum__avm_event_ethernet_speed_name (enum _avm_event_ethernet_speed value);
 char *get_enum_avm_event_msg_type_name (enum avm_event_msg_type value);
+char *get_enum__avm_remotepcmlinktype_name (enum _avm_remotepcmlinktype value);
+char *get_enum_avm_event_powermanagment_remote_action_name (enum avm_event_powermanagment_remote_action value);
+char *get_enum_wlan_event_id_name (enum wlan_event_id value);
+char *get_enum_avm_event_led_id_name (enum avm_event_led_id value);
 char *get_enum__powermanagment_device_name (enum _powermanagment_device value);
-char *get_enum_avm_event_telephony_param_sel_name (enum avm_event_telephony_param_sel value);
+char *get_enum___avm_event_cmd_name (enum __avm_event_cmd value);
+char *get_enum_avm_event_tffs_notify_event_name (enum avm_event_tffs_notify_event value);
 char *get_enum__powermanagment_status_type_name (enum _powermanagment_status_type value);
+char *get_enum__cputype_name (enum _cputype value);
+char *get_enum__avm_event_push_button_key_name (enum _avm_event_push_button_key value);
 char *get_enum__avm_event_id_name (enum _avm_event_id value);
-char *get_enum_wlan_info_special_name (enum wlan_info_special value);
+char *get_enum__avm_logtype_name (enum _avm_logtype value);
+char *get_enum_avm_event_firmware_type_name (enum avm_event_firmware_type value);
 char *get_enum__avm_rpctype_name (enum _avm_rpctype value);
-char *get_enum__avm_event_ethernet_speed_name (enum _avm_event_ethernet_speed value);
+char *get_enum_wlan_info_special_name (enum wlan_info_special value);
+char *get_enum__avm_remote_wdt_cmd_name (enum _avm_remote_wdt_cmd value);
 char *get_enum_avm_event_internet_new_ip_param_sel_name (enum avm_event_internet_new_ip_param_sel value);
-char *get_enum__avm_remotepcmlinktype_name (enum _avm_remotepcmlinktype value);
-char *get_enum_avm_event_firmware_type_name (enum avm_event_firmware_type value);
-char *get_enum_wlan_event_id_name (enum wlan_event_id value);
-char *get_enum__cputype_name (enum _cputype value);
+char *get_enum_wlan_event_sel_name (enum wlan_event_sel value);
+char *get_enum_ePLCState_name (enum ePLCState value);
 char *get_enum_avm_event_tffs_open_mode_name (enum avm_event_tffs_open_mode value);
-char *get_enum_avm_event_tffs_notify_event_name (enum avm_event_tffs_notify_event value);
-char *get_enum__avm_remote_wdt_cmd_name (enum _avm_remote_wdt_cmd value);
-char *get_enum_wlan_event_scan_type_name (enum wlan_event_scan_type value);
-char *get_enum_avm_event_led_id_name (enum avm_event_led_id value);
-/* pos 9562.5 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_telephony_string {
-	unsigned int length;
-	unsigned char string[0];
+char *get_enum_avm_event_tffs_call_type_name (enum avm_event_tffs_call_type value);
+/* pos 9550 (Thu Aug 22 13:31:47 2019) */
+struct wlan_event_data_client_common {
+	uint8_t mac[6];
+	char iface[IFNAMSIZ + 1];
+	char initiator[16 + 1];
 } __attribute__((packed));
 
-/* pos 9575 (Fri Mar 17 16:37:46 2017) */
+/* pos 9550 (Thu Aug 22 13:31:47 2019) */
+/*-----------------------------------------------------------------------------------
+	union entry is select by variable of type 'enum avm_event_internet_new_ip_param_sel'
+-----------------------------------------------------------------------------------*/
+union avm_event_internet_new_ip_param {
+	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v4) ---*/
+	unsigned char ipv4[4];
+	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v6) ---*/
+	unsigned char ipv6[16];
+} __attribute__((packed));
+
+/* pos 9556.25 (Thu Aug 22 13:31:47 2019) */
 struct wlan_event_data_scan_common {
 	char iface[IFNAMSIZ + 1];
 	char initiator[16 + 1];
 } __attribute__((packed));
 
-/* pos 9575 (Fri Mar 17 16:37:46 2017) */
+/* pos 9556.25 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_telephony_string {
+	unsigned int length;
+	unsigned char string[0];
+} __attribute__((packed));
+
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
+struct wlan_event_data_scan_event_info {
+	struct wlan_event_data_scan_common common;
+	enum wlan_event_scan_type event_type;
+} __attribute__((packed));
+
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
+struct wlan_event_data_client_connect_info {
+	struct wlan_event_data_client_common common;
+	uint8_t info_context;
+	uint8_t reason;
+	uint32_t max_node_count;
+	uint16_t ieee80211_code;
+} __attribute__((packed));
+
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum avm_event_telephony_param_sel'
 -----------------------------------------------------------------------------------*/
@@ -913,52 +946,49 @@
 	unsigned int id;
 } __attribute__((packed));
 
-/* pos 9581.25 (Fri Mar 17 16:37:46 2017) */
-struct wlan_event_data_client_common {
-	uint8_t mac[6];
-	char iface[IFNAMSIZ + 1];
-	char initiator[16 + 1];
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_powermanagment_remote_ressourceinfo {
+	enum _powermanagment_device device;
+	unsigned int power_rate;
 } __attribute__((packed));
 
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
 struct wlan_event_data_client_state_change {
 	struct wlan_event_data_client_common common;
 	uint8_t state;
 } __attribute__((packed));
 
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_powermanagment_remote_ressourceinfo {
-	enum _powermanagment_device device;
-	unsigned int power_rate;
-} __attribute__((packed));
-
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
-struct wlan_event_data_client_connect_info {
-	struct wlan_event_data_client_common common;
-	uint8_t info_context;
-	uint8_t reason;
-	uint32_t max_node_count;
-	uint16_t ieee80211_code;
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
+/*-----------------------------------------------------------------------------------
+	union entry is select by variable of type 'enum avm_event_powermanagment_remote_action'
+-----------------------------------------------------------------------------------*/
+union avm_event_powermanagment_remote_union {
+	/*--- select by [select-variable] one of (avm_event_powermanagment_ressourceinfo) ---*/
+	struct avm_event_powermanagment_remote_ressourceinfo ressourceinfo;
+	/*--- select by [select-variable] one of (avm_event_powermanagment_activatepowermode) ---*/
+	char powermode[32];
 } __attribute__((packed));
 
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
-struct wlan_event_data_scan_event_info {
-	struct wlan_event_data_scan_common common;
-	enum wlan_event_scan_type event_type;
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_telephony_missed_call_params {
+	enum avm_event_telephony_param_sel id;
+	union avm_event_telephony_call_params params;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'enum avm_event_internet_new_ip_param_sel'
+	union entry is select by variable of type 'wlan_event_id'
 -----------------------------------------------------------------------------------*/
-union avm_event_internet_new_ip_param {
-	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v4) ---*/
-	unsigned char ipv4[4];
-	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v6) ---*/
-	unsigned char ipv6[16];
+union wlan_event_data {
+	/*--- select by [select-variable] one of (CLIENT_STATE_CHANGE) ---*/
+	struct wlan_event_data_client_state_change client_state_change;
+	/*--- select by [select-variable] one of (CLIENT_CONNECT_INFO) ---*/
+	struct wlan_event_data_client_connect_info client_connect_info;
+	/*--- select by [select-variable] one of (WLAN_EVENT_SCAN) ---*/
+	struct wlan_event_data_scan_event_info scan_event_info;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum _powermanagment_status_type_dsl'
 -----------------------------------------------------------------------------------*/
@@ -967,18 +997,28 @@
 	unsigned int dsl_status;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
+struct cpmac_port {
+	uint8_t cable;
+	uint8_t link;
+	uint8_t speed100;
+	uint8_t fullduplex;
+	enum _avm_event_ethernet_speed speed;
+	enum _avm_event_ethernet_speed maxspeed;
+} __attribute__((packed));
+
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'enum avm_event_powermanagment_remote_action'
+	union entry is select by variable of type 'wlan_event_sel'
 -----------------------------------------------------------------------------------*/
-union avm_event_powermanagment_remote_union {
-	/*--- select by [select-variable] one of (avm_event_powermanagment_ressourceinfo) ---*/
-	struct avm_event_powermanagment_remote_ressourceinfo ressourceinfo;
-	/*--- select by [select-variable] one of (avm_event_powermanagment_activatepowermode) ---*/
-	char powermode[32];
+union avm_event_wlan_client_status_u2 {
+	/*--- select by [select-variable] one of (INPUT_RADAR) ---*/
+	unsigned int radar_freq;
+	/*--- select by [select-variable] one of (INPUT_AUTH_1_D INPUT_AUTH_3_D INPUT_DE_AUTH_STATION INPUT_ASSOC_REQ_A INPUT_ASSOC_REQ_D INPUT_RE_ASSOC_REQ_D INPUT_DIS_ASSOC_STATION INPUT_AUTH_TIMEOUT INPUT_DE_AUTH_MNG_UNICAST INPUT_DE_AUTH_MNG_BROADCAST INPUT_DIS_ASSOC_MNG_UNICAST INPUT_DIS_ASSOC_MNG_BROADCAST INPUT_MAC_AUTHORIZE INPUT_WDS_LINK_UP INPUT_WDS_LINK_DOWN INPUT_MADWIFI_WRONG_PSK INPUT_WPS INPUT_MINI INPUT_WPS_ENROLLEE INPUT_STA INPUT_GREENAP_PS INPUT_EAP_AUTHORIZED INPUT_MWO_INTERFERENCE INPUT_AUTH_EXPIRED INPUT_COEXIST_SWITCH INPUT_STA_ASSOC INPUT_STA_AUTH INPUT_STA_AUTHORIZATION INPUT_WDS_NO_TIAGGR INPUT_MAX_NODE_REACHED INPUT_RADAR_DFS_WAIT INPUT_AUTH_1_OS_A INPUT_AUTH_1_SK_A INPUT_ASSOC_REQ_CHECK INPUT_ASSOC_REQ_SEC_D INPUT_RE_ASSOC_REQ_CHECK INPUT_RE_ASSOC_REQ_A INPUT_RE_ASSOC_REQ_SEC_D INPUT_CLASS_3 INPUT_FRAME_TX_COMPLETE) ---*/
+	unsigned int wlan_mode;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'wlan_event_sel'
 -----------------------------------------------------------------------------------*/
@@ -1013,146 +1053,106 @@
 	unsigned int dummy0;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-/*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'wlan_event_id'
------------------------------------------------------------------------------------*/
-union wlan_event_data {
-	/*--- select by [select-variable] one of (CLIENT_STATE_CHANGE) ---*/
-	struct wlan_event_data_client_state_change client_state_change;
-	/*--- select by [select-variable] one of (CLIENT_CONNECT_INFO) ---*/
-	struct wlan_event_data_client_connect_info client_connect_info;
-	/*--- select by [select-variable] one of (WLAN_EVENT_SCAN) ---*/
-	struct wlan_event_data_scan_event_info scan_event_info;
-} __attribute__((packed));
-
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-struct cpmac_port {
-	uint8_t cable;
-	uint8_t link;
-	uint8_t speed100;
-	uint8_t fullduplex;
-	enum _avm_event_ethernet_speed speed;
-	enum _avm_event_ethernet_speed maxspeed;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_led_info {
+	unsigned int mode;
+	unsigned int param1;
+	unsigned int param2;
+	unsigned int gpio_driver_type;
+	unsigned int gpio;
+	unsigned int pos;
+	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-/*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'wlan_event_sel'
------------------------------------------------------------------------------------*/
-union avm_event_wlan_client_status_u2 {
-	/*--- select by [select-variable] one of (INPUT_RADAR) ---*/
-	unsigned int radar_freq;
-	/*--- select by [select-variable] one of (INPUT_AUTH_1_D INPUT_AUTH_3_D INPUT_DE_AUTH_STATION INPUT_ASSOC_REQ_A INPUT_ASSOC_REQ_D INPUT_RE_ASSOC_REQ_D INPUT_DIS_ASSOC_STATION INPUT_AUTH_TIMEOUT INPUT_DE_AUTH_MNG_UNICAST INPUT_DE_AUTH_MNG_BROADCAST INPUT_DIS_ASSOC_MNG_UNICAST INPUT_DIS_ASSOC_MNG_BROADCAST INPUT_MAC_AUTHORIZE INPUT_WDS_LINK_UP INPUT_WDS_LINK_DOWN INPUT_MADWIFI_WRONG_PSK INPUT_WPS INPUT_MINI INPUT_WPS_ENROLLEE INPUT_STA INPUT_GREENAP_PS INPUT_EAP_AUTHORIZED INPUT_MWO_INTERFERENCE INPUT_AUTH_EXPIRED INPUT_COEXIST_SWITCH INPUT_STA_ASSOC INPUT_STA_AUTH INPUT_STA_AUTHORIZATION INPUT_WDS_NO_TIAGGR INPUT_MAX_NODE_REACHED INPUT_RADAR_DFS_WAIT INPUT_AUTH_1_OS_A INPUT_AUTH_1_SK_A INPUT_ASSOC_REQ_CHECK INPUT_ASSOC_REQ_SEC_D INPUT_RE_ASSOC_REQ_CHECK INPUT_RE_ASSOC_REQ_A INPUT_RE_ASSOC_REQ_SEC_D INPUT_CLASS_3 INPUT_FRAME_TX_COMPLETE) ---*/
-	unsigned int wlan_mode;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_remotepcmlink {
+	enum _avm_remotepcmlinktype type;
+	unsigned int sharedlen;
+	unsigned int sharedpointer;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_telephony_missed_call_params {
-	enum avm_event_telephony_param_sel id;
-	union avm_event_telephony_call_params params;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_smarthome_switch_status {
+	enum avm_event_switch_type type;
+	unsigned int value;
+	unsigned int ain_length;
+	unsigned char ain[0];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_cpu_run {
 	enum _cputype cputype;
 	unsigned char cpu_run[4];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_remotewatchdog {
-	enum _avm_remote_wdt_cmd cmd;
-	char name[16];
-	unsigned int param;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_read {
+	uint64_t buff_addr;
+	uint64_t len;
+	uint32_t id;
+	int32_t crc;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_telefonprofile {
-	unsigned int on;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_info {
+	uint32_t fill_level;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct _cpmac_event_struct {
-	unsigned int ports;
-	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_log {
+	enum _avm_logtype logtype;
+	unsigned int loglen;
+	unsigned int logpointer;
+	unsigned int checksum;
+	unsigned int rebootflag;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_telefonprofile {
+	unsigned int on;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_mass_storage_unmount {
 	unsigned int name_length;
 	unsigned char name[0];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_wlan {
-	char mac[6];
-	union avm_event_wlan_client_status_u1 u1;
-	wlan_event event;
-	wlan_info info;
-	enum wlan_sm_states status;
-	union avm_event_wlan_client_status_u2 u2;
-	char if_name[IFNAMSIZ];
-	unsigned int ev_initiator;
-	unsigned int ev_reason;
-	unsigned int avm_capabilities;
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_led_status {
-	enum avm_event_led_id led;
-	unsigned int state;
-	unsigned int param_len;
-	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_firmware_update_available {
-	enum avm_event_firmware_type type;
-	unsigned int version_length;
-	unsigned char version[0];
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_checkpoint {
-	uint32_t node_id;
-	uint64_t checkpoints;
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_telephony_missed_call {
-	unsigned int length;
-	struct _avm_event_telephony_missed_call_params p[0];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_mass_storage_mount {
+	unsigned long long size;
+	unsigned long long free;
+	unsigned int name_length;
+	unsigned char name[0];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_smarthome_switch_status {
-	enum avm_event_switch_type type;
-	unsigned int value;
-	unsigned int ain_length;
-	unsigned char ain[0];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_cleanup {
+	uint32_t dummy;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_powermanagment_status {
-	enum _powermanagment_status_type substatus;
-	union __powermanagment_status_union param;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_temperature {
+	int temperature;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_powermanagment_remote {
-	enum avm_event_powermanagment_remote_action remote_action;
-	union avm_event_powermanagment_remote_union param;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_open {
+	uint32_t id;
+	enum avm_event_tffs_open_mode mode;
+	uint32_t max_segment_size;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_mass_storage_mount {
-	unsigned long long size;
-	unsigned long long free;
-	unsigned int name_length;
-	unsigned char name[0];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_write {
+	uint64_t buff_addr;
+	uint64_t len;
+	uint32_t id;
+	uint32_t final;
+	int32_t crc;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_pm_info_stat {
 	unsigned char reserved1;
 	unsigned char rate_sumact;
@@ -1190,51 +1190,44 @@
 	unsigned char rate_dvbccum;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_temperature {
-	int temperature;
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_internet_new_ip {
-	enum avm_event_internet_new_ip_param_sel sel;
-	union avm_event_internet_new_ip_param params;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_cpu_idle {
+	unsigned char cpu_idle;
+	unsigned char dsl_dsp_idle;
+	unsigned char voice_dsp_idle;
+	unsigned char mem_strictlyused;
+	unsigned char mem_cacheused;
+	unsigned char mem_physfree;
+	enum _cputype cputype;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_remotepcmlink {
-	enum _avm_remotepcmlinktype type;
-	unsigned int sharedlen;
-	unsigned int sharedpointer;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_led_status {
+	enum avm_event_led_id led;
+	unsigned int state;
+	unsigned int param_len;
+	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct wlan_event_def {
 	enum wlan_event_id event_id;
 	union wlan_event_data event_data;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_cpu_idle {
-	unsigned char cpu_idle;
-	unsigned char dsl_dsp_idle;
-	unsigned char voice_dsp_idle;
-	unsigned char mem_strictlyused;
-	unsigned char mem_cacheused;
-	unsigned char mem_physfree;
-	enum _cputype cputype;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_reindex {
+	uint32_t dummy;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_log {
-	enum _avm_logtype logtype;
-	unsigned int loglen;
-	unsigned int logpointer;
-	unsigned int checksum;
-	unsigned int rebootflag;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_remotewatchdog {
+	enum _avm_remote_wdt_cmd cmd;
+	char name[16];
+	unsigned int param;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_rpc {
 	enum _avm_rpctype type;
 	unsigned int id;
@@ -1242,31 +1235,99 @@
 	unsigned char message[AVM_EVENT_RPC_MAX_MESSAGE_SIZE];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_led_info {
-	unsigned int mode;
-	unsigned int param1;
-	unsigned int param2;
-	unsigned int gpio_driver_type;
-	unsigned int gpio;
-	unsigned int pos;
-	char name[MAX_EVENT_SOURCE_NAME_LEN];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_close {
+	uint32_t dummy;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_powermanagment_remote {
+	enum avm_event_powermanagment_remote_action remote_action;
+	union avm_event_powermanagment_remote_union param;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_push_button {
 	enum _avm_event_push_button_key key;
 	uint32_t pressed;
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_wlan {
+	char mac[6];
+	union avm_event_wlan_client_status_u1 u1;
+	wlan_event event;
+	wlan_info info;
+	enum wlan_sm_states status;
+	union avm_event_wlan_client_status_u2 u2;
+	char if_name[IFNAMSIZ];
+	unsigned int ev_initiator;
+	unsigned int ev_reason;
+	unsigned int avm_capabilities;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_checkpoint {
+	uint32_t node_id;
+	uint64_t checkpoints;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_init {
+	int64_t mem_offset;
+	uint32_t max_seg_size;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_telephony_missed_call {
+	unsigned int length;
+	struct _avm_event_telephony_missed_call_params p[0];
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_powermanagment_status {
+	enum _powermanagment_status_type substatus;
+	union __powermanagment_status_union param;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_firmware_update_available {
+	enum avm_event_firmware_type type;
+	unsigned int version_length;
+	unsigned char version[0];
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct _cpmac_event_struct {
+	unsigned int ports;
+	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_notify {
+	uint32_t id;
+	enum avm_event_tffs_notify_event event;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_tffs_paniclog {
 	uint64_t buff_addr;
 	uint64_t len;
 	int32_t crc;
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_deinit {
+	uint32_t dummy;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_internet_new_ip {
+	enum avm_event_internet_new_ip_param_sel sel;
+	union avm_event_internet_new_ip_param params;
+} __attribute__((packed));
+
+/* pos 9650 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum avm_event_data_type'
 -----------------------------------------------------------------------------------*/
@@ -1327,68 +1388,18 @@
 	struct avm_event_cpu_run cpu_run;
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_write {
-	uint64_t buff_addr;
-	uint64_t len;
-	uint32_t id;
-	uint32_t final;
-	int32_t crc;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_cleanup {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_notify {
-	uint32_t id;
-	enum avm_event_tffs_notify_event event;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_reindex {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_open {
-	uint32_t id;
-	enum avm_event_tffs_open_mode mode;
-	uint32_t max_segment_size;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_read {
-	uint64_t buff_addr;
-	uint64_t len;
-	uint32_t id;
-	int32_t crc;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_close {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_deinit {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_init {
-	int64_t mem_offset;
-	uint32_t max_seg_size;
+/* pos 9700 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_id_mask {
+	avm_event_mask_fieldentry mask[avm_event_mask_fieldentries];
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_info {
-	uint32_t fill_level;
+/* pos 9700 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_data {
+	enum _avm_event_id id;
+	union avm_event_data_union data;
 } __attribute__((packed));
 
-/* pos 9700 (Fri Mar 17 16:37:46 2017) */
+/* pos 9700 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum avm_event_tffs_call_type'
 -----------------------------------------------------------------------------------*/
@@ -1417,45 +1428,23 @@
 	struct avm_event_tffs_paniclog paniclog;
 } __attribute__((packed));
 
-/* pos 9700 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_id_mask {
-	avm_event_mask_fieldentry mask[avm_event_mask_fieldentries];
-} __attribute__((packed));
-
-/* pos 9700 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_data {
-	enum _avm_event_id id;
-	union avm_event_data_union data;
-} __attribute__((packed));
-
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_source_notifier {
-	enum _avm_event_id id;
-} __attribute__((packed));
-
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_source_register {
-	struct _avm_event_id_mask id_mask;
-	char name[MAX_EVENT_SOURCE_NAME_LEN];
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_ping {
+	uint32_t seq;
 } __attribute__((packed));
 
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_source_unregister {
 	struct _avm_event_id_mask id_mask;
 	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_ping {
-	uint32_t seq;
-} __attribute__((packed));
-
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_remote_source_trigger_request {
 	struct avm_event_data data;
 } __attribute__((packed));
 
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_tffs {
 	uint32_t src_id;
 	uint32_t dst_id;
@@ -1468,46 +1457,45 @@
 	union avm_event_tffs_call_union call;
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_cmd_param_release {
-	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_source_register {
+	struct _avm_event_id_mask id_mask;
+	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_cmd_param_register {
-	struct _avm_event_id_mask mask;
-	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_source_notifier {
+	enum _avm_event_id id;
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_cmd_param_trigger {
+	enum _avm_event_id id;
+} __attribute__((packed));
+
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
 struct _avm_event_cmd_param_source_trigger {
 	enum _avm_event_id id;
 	unsigned int data_length;
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_cmd_param_trigger {
-	enum _avm_event_id id;
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_cmd_param_release {
+	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
 } __attribute__((packed));
 
-/* pos 9900 (Fri Mar 17 16:37:46 2017) */
-/*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'enum __avm_event_cmd'
------------------------------------------------------------------------------------*/
-union _avm_event_cmd_param {
-	/*--- select by [select-variable] one of (avm_event_cmd_register) ---*/
-	struct _avm_event_cmd_param_register avm_event_cmd_param_register;
-	/*--- select by [select-variable] one of (avm_event_cmd_release) ---*/
-	struct _avm_event_cmd_param_release avm_event_cmd_param_release;
-	/*--- select by [select-variable] one of (avm_event_cmd_trigger) ---*/
-	struct _avm_event_cmd_param_trigger avm_event_cmd_param_trigger;
-	/*--- select by [select-variable] one of (avm_event_cmd_source_register) ---*/
-	struct _avm_event_cmd_param_register avm_event_cmd_param_source_register;
-	/*--- select by [select-variable] one of (avm_event_cmd_source_trigger) ---*/
-	struct _avm_event_cmd_param_source_trigger avm_event_cmd_param_source_trigger;
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_cmd_param_register {
+	struct _avm_event_id_mask mask;
+	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
 } __attribute__((packed));
 
-/* pos 9900 (Fri Mar 17 16:37:46 2017) */
+/* pos 9900 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_header {
+	enum _avm_event_id id;
+} __attribute__((packed));
+
+/* pos 9900 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'avm_event_msg_type'
 -----------------------------------------------------------------------------------*/
@@ -1526,26 +1514,44 @@
 	struct avm_event_tffs tffs;
 } __attribute__((packed));
 
-/* pos 9900 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_header {
-	enum _avm_event_id id;
+/* pos 9900 (Thu Aug 22 13:31:47 2019) */
+/*-----------------------------------------------------------------------------------
+	union entry is select by variable of type 'enum __avm_event_cmd'
+-----------------------------------------------------------------------------------*/
+union _avm_event_cmd_param {
+	/*--- select by [select-variable] one of (avm_event_cmd_register) ---*/
+	struct _avm_event_cmd_param_register avm_event_cmd_param_register;
+	/*--- select by [select-variable] one of (avm_event_cmd_release) ---*/
+	struct _avm_event_cmd_param_release avm_event_cmd_param_release;
+	/*--- select by [select-variable] one of (avm_event_cmd_trigger) ---*/
+	struct _avm_event_cmd_param_trigger avm_event_cmd_param_trigger;
+	/*--- select by [select-variable] one of (avm_event_cmd_source_register) ---*/
+	struct _avm_event_cmd_param_register avm_event_cmd_param_source_register;
+	/*--- select by [select-variable] one of (avm_event_cmd_source_trigger) ---*/
+	struct _avm_event_cmd_param_source_trigger avm_event_cmd_param_source_trigger;
 } __attribute__((packed));
 
-struct _avm_event_mass_storage_unmount {
-	struct _avm_event_header header;
-	unsigned int name_length;
-	unsigned char name[0];
+struct cpmac_event_struct {
+	struct _avm_event_header event_header;
+	unsigned int ports;
+	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
 } __attribute__((packed));
 
-struct _avm_event_user_mode_source_notify {
-	struct _avm_event_header header;
+struct _avm_event_push_button {
 	enum _avm_event_id id;
+	enum _avm_event_push_button_key key;
+	uint32_t pressed;
 } __attribute__((packed));
 
-struct _avm_event_internet_new_ip {
+struct _avm_event_led_info {
 	struct _avm_event_header header;
-	enum avm_event_internet_new_ip_param_sel sel;
-	union avm_event_internet_new_ip_param params;
+	unsigned int mode;
+	unsigned int param1;
+	unsigned int param2;
+	unsigned int gpio_driver_type;
+	unsigned int gpio;
+	unsigned int pos;
+	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
 struct _avm_event_cpu_idle {
@@ -1559,17 +1565,50 @@
 	enum _cputype cputype;
 } __attribute__((packed));
 
-struct _avm_event_smarthome_switch_status {
+struct _avm_event_remotewatchdog {
+	struct _avm_event_header event_header;
+	enum _avm_remote_wdt_cmd cmd;
+	char name[16];
+	unsigned int param;
+} __attribute__((packed));
+
+struct _avm_event_wlan {
 	struct _avm_event_header header;
-	enum avm_event_switch_type type;
-	unsigned int value;
-	unsigned int ain_length;
-	unsigned char ain[0];
+	char mac[6];
+	unsigned int u1;
+	unsigned int event;
+	unsigned int info;
+	unsigned int status;
+	unsigned int u2;
+	char if_name[IFNAMSIZ];
+	unsigned int ev_initiator;
+	unsigned int ev_reason;
+	unsigned int avm_capabilities;
 } __attribute__((packed));
 
-struct _avm_event_powerline_status {
+struct avm_event_unserialised {
+	uint64_t evnt_id;
+	uint32_t data_len;
+	unsigned char data;
+} __attribute__((packed));
+
+struct _avm_event_cpu_run {
 	struct _avm_event_header event_header;
-	enum ePLCState status;
+	enum _cputype cputype;
+	unsigned char cpu_run[4];
+} __attribute__((packed));
+
+struct _avm_event_telephony_missed_call {
+	struct _avm_event_header header;
+	unsigned int length;
+	struct _avm_event_telephony_missed_call_params p[0];
+} __attribute__((packed));
+
+struct _avm_event_remotepcmlink {
+	struct _avm_event_header event_header;
+	enum _avm_remotepcmlinktype type;
+	unsigned int sharedlen;
+	unsigned int sharedpointer;
 } __attribute__((packed));
 
 struct avm_event_message {
@@ -1584,46 +1623,32 @@
 	union avm_event_message_union message;
 } __attribute__((packed));
 
-struct _avm_event_led_info {
-	struct _avm_event_header header;
-	unsigned int mode;
-	unsigned int param1;
-	unsigned int param2;
-	unsigned int gpio_driver_type;
-	unsigned int gpio;
-	unsigned int pos;
-	char name[MAX_EVENT_SOURCE_NAME_LEN];
-} __attribute__((packed));
-
-struct _avm_event_telephony_missed_call {
+struct _avm_event_user_mode_source_notify {
 	struct _avm_event_header header;
-	unsigned int length;
-	struct _avm_event_telephony_missed_call_params p[0];
+	enum _avm_event_id id;
 } __attribute__((packed));
 
-struct _avm_event_log {
+struct _avm_event_powerline_status {
 	struct _avm_event_header event_header;
-	enum _avm_logtype logtype;
-	unsigned int loglen;
-	unsigned int logpointer;
-	unsigned int checksum;
-	unsigned int rebootflag;
+	enum ePLCState status;
 } __attribute__((packed));
 
-struct _avm_event_powermanagment_status {
-	struct _avm_event_header event_header;
-	enum _powermanagment_status_type substatus;
-	union __powermanagment_status_union param;
+struct _avm_event_powermanagment_remote {
+	struct _avm_event_header header;
+	enum avm_event_powermanagment_remote_action remote_action;
+	union avm_event_powermanagment_remote_union param;
 } __attribute__((packed));
 
-struct avm_event_powerline_status {
-	enum ePLCState status;
+struct _avm_event_telefonprofile {
+	struct _avm_event_header event_header;
+	unsigned int on;
 } __attribute__((packed));
 
-struct cpmac_event_struct {
-	struct _avm_event_header event_header;
-	unsigned int ports;
-	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
+struct _avm_event_firmware_update_available {
+	struct _avm_event_header header;
+	enum avm_event_firmware_type type;
+	unsigned int version_length;
+	unsigned char version[0];
 } __attribute__((packed));
 
 struct _avm_event_powermanagment_remote_ressourceinfo {
@@ -1632,19 +1657,12 @@
 	unsigned int power_rate;
 } __attribute__((packed));
 
-struct _avm_event_remotepcmlink {
-	struct _avm_event_header event_header;
-	enum _avm_remotepcmlinktype type;
-	unsigned int sharedlen;
-	unsigned int sharedpointer;
-} __attribute__((packed));
-
-struct _avm_event_led_status {
+struct _avm_event_smarthome_switch_status {
 	struct _avm_event_header header;
-	enum avm_event_led_id led;
-	unsigned int state;
-	unsigned int param_len;
-	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
+	enum avm_event_switch_type type;
+	unsigned int value;
+	unsigned int ain_length;
+	unsigned char ain[0];
 } __attribute__((packed));
 
 struct _avm_event_checkpoint {
@@ -1653,37 +1671,16 @@
 	uint64_t checkpoints;
 } __attribute__((packed));
 
-struct _avm_event_push_button {
-	enum _avm_event_id id;
-	enum _avm_event_push_button_key key;
-	uint32_t pressed;
-} __attribute__((packed));
-
-struct _avm_event_rpc {
-	struct _avm_event_header event_header;
-	enum _avm_rpctype type;
-	unsigned int id;
-	unsigned int length;
-	unsigned char message[AVM_EVENT_RPC_MAX_MESSAGE_SIZE];
-} __attribute__((packed));
-
-struct _avm_event_wlan {
+struct _avm_event_internet_new_ip {
 	struct _avm_event_header header;
-	char mac[6];
-	unsigned int u1;
-	unsigned int event;
-	unsigned int info;
-	unsigned int status;
-	unsigned int u2;
-	char if_name[IFNAMSIZ];
-	unsigned int ev_initiator;
-	unsigned int ev_reason;
-	unsigned int avm_capabilities;
+	enum avm_event_internet_new_ip_param_sel sel;
+	union avm_event_internet_new_ip_param params;
 } __attribute__((packed));
 
-struct _avm_event_temperature {
-	struct _avm_event_header event_header;
-	int temperature;
+struct _avm_event_mass_storage_unmount {
+	struct _avm_event_header header;
+	unsigned int name_length;
+	unsigned char name[0];
 } __attribute__((packed));
 
 struct _avm_event_pm_info_stat {
@@ -1724,11 +1721,10 @@
 	unsigned char rate_dvbccum;
 } __attribute__((packed));
 
-struct _avm_event_firmware_update_available {
-	struct _avm_event_header header;
-	enum avm_event_firmware_type type;
-	unsigned int version_length;
-	unsigned char version[0];
+struct _avm_event_powermanagment_status {
+	struct _avm_event_header event_header;
+	enum _powermanagment_status_type substatus;
+	union __powermanagment_status_union param;
 } __attribute__((packed));
 
 struct _avm_event_mass_storage_mount {
@@ -1739,34 +1735,25 @@
 	unsigned char name[0];
 } __attribute__((packed));
 
-struct _avm_event_cpu_run {
-	struct _avm_event_header event_header;
-	enum _cputype cputype;
-	unsigned char cpu_run[4];
-} __attribute__((packed));
-
-struct _avm_event_remotewatchdog {
+struct _avm_event_log {
 	struct _avm_event_header event_header;
-	enum _avm_remote_wdt_cmd cmd;
-	char name[16];
-	unsigned int param;
+	enum _avm_logtype logtype;
+	unsigned int loglen;
+	unsigned int logpointer;
+	unsigned int checksum;
+	unsigned int rebootflag;
 } __attribute__((packed));
 
-struct _avm_event_telefonprofile {
-	struct _avm_event_header event_header;
-	unsigned int on;
+struct avm_event_powerline_status {
+	enum ePLCState status;
 } __attribute__((packed));
 
-struct _avm_event_powermanagment_remote {
+struct _avm_event_led_status {
 	struct _avm_event_header header;
-	enum avm_event_powermanagment_remote_action remote_action;
-	union avm_event_powermanagment_remote_union param;
-} __attribute__((packed));
-
-struct avm_event_unserialised {
-	uint64_t evnt_id;
-	uint32_t data_len;
-	unsigned char data;
+	enum avm_event_led_id led;
+	unsigned int state;
+	unsigned int param_len;
+	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
 } __attribute__((packed));
 
 struct _avm_event_cmd {
@@ -1774,5 +1761,18 @@
 	union _avm_event_cmd_param param;
 } __attribute__((packed));
 
+struct _avm_event_rpc {
+	struct _avm_event_header event_header;
+	enum _avm_rpctype type;
+	unsigned int id;
+	unsigned int length;
+	unsigned char message[AVM_EVENT_RPC_MAX_MESSAGE_SIZE];
+} __attribute__((packed));
+
+struct _avm_event_temperature {
+	struct _avm_event_header event_header;
+	int temperature;
+} __attribute__((packed));
+
 
 #endif /*--- #ifndef _avm_event_gen_types_h_ ---*/
--- linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_perl_convert.pm	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_dist_event/avm_event_perl_convert.pm	2019-08-22 13:31:47.000000000 +0200
@@ -8,102 +8,102 @@
 
 $VERSION     = 1.00;
 @ISA = qw(Exporter);
-@EXPORT = qw(avm_event_read_from_binary_struct__avm_event_led_status
-		&avm_event_read_from_binary_struct__avm_event_checkpoint
-		&avm_event_read_from_binary_struct__avm_event_remotepcmlink
-		&avm_event_read_from_binary_struct__avm_event_push_button
-		&avm_event_read_from_binary_struct_avm_event_remote_source_trigger_request
-		&avm_event_read_from_binary_struct_avm_event_tffs_close
-		&avm_event_read_from_binary_struct__avm_event_rpc
-		&avm_event_read_from_binary_struct_avm_event_pm_info_stat
-		&avm_event_read_from_binary_struct_avm_event_temperature
-		&avm_event_read_from_binary_struct__avm_event_wlan
+@EXPORT = qw(avm_event_read_from_binary_struct__avm_event_mass_storage_mount
+		&avm_event_read_from_binary_struct__avm_event_log
+		&avm_event_read_from_binary_struct_avm_event_powerline_status
+		&avm_event_read_from_binary_struct_avm_event_firmware_update_available
+		&avm_event_read_from_binary_struct_avm_event_telephony_missed_call
+		&avm_event_read_from_binary_struct_avm_event_powermanagment_status
+		&avm_event_read_from_binary_struct__avm_event_cmd_param_register
+		&avm_event_read_from_binary_struct__avm_event_cmd_param_release
+		&avm_event_read_from_binary_struct_wlan_event_data_client_state_change
+		&avm_event_read_from_binary_struct_avm_event_tffs_init
 		&avm_event_read_from_binary_struct__avm_event_temperature
-		&avm_event_read_from_binary_struct_avm_event_tffs_deinit
 		&avm_event_read_from_binary_struct_avm_event_internet_new_ip
-		&avm_event_read_from_binary_struct_avm_event_remotepcmlink
-		&avm_event_read_from_binary_struct__avm_event_cmd_param_source_trigger
-		&avm_event_read_from_binary_struct_avm_event_tffs_reindex
-		&avm_event_read_from_binary_struct_cpmac_event_struct
-		&avm_event_read_from_binary_struct_avm_event_data
-		&avm_event_read_from_binary_struct__avm_event_powermanagment_remote_ressourceinfo
-		&avm_event_read_from_binary_struct_avm_event_tffs_read
-		&avm_event_read_from_binary_struct__avm_event_cmd_param_trigger
-		&avm_event_read_from_binary_struct_avm_event_tffs_open
-		&avm_event_read_from_binary_struct_avm_event_powermanagment_remote
-		&avm_event_read_from_binary_struct_avm_event_source_unregister
-		&avm_event_read_from_binary_struct_avm_event_powermanagment_status
-		&avm_event_read_from_binary_struct_avm_event_mass_storage_mount
-		&avm_event_read_from_binary_struct_avm_event_ping
-		&avm_event_read_from_binary_struct_wlan_event_data_scan_event_info
-		&avm_event_read_from_binary_struct__avm_event_cpu_run
-		&avm_event_read_from_binary_struct__avm_event_remotewatchdog
-		&avm_event_read_from_binary_struct__avm_event_header
-		&avm_event_read_from_binary_struct__avm_event_powermanagment_remote
-		&avm_event_read_from_binary_struct__avm_event_telefonprofile
-		&avm_event_read_from_binary_struct_avm_event_tffs_info
-		&avm_event_read_from_binary_struct_avm_event_unserialised
-		&avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params
+		&avm_event_read_from_binary_struct_avm_event_tffs_deinit
+		&avm_event_read_from_binary_struct__avm_event_rpc
+		&avm_event_read_from_binary_struct_avm_event_tffs_paniclog
 		&avm_event_read_from_binary_struct__avm_event_cmd
-		&avm_event_read_from_binary_struct_wlan_event_def
-		&avm_event_read_from_binary_struct__avm_event_pm_info_stat
-		&avm_event_read_from_binary_struct_avm_event_cpu_idle
-		&avm_event_read_from_binary_struct_avm_event_telephony_string
-		&avm_event_read_from_binary_struct_avm_event_log
+		&avm_event_read_from_binary_struct_avm_event_tffs_notify
+		&avm_event_read_from_binary_struct__cpmac_event_struct
+		&avm_event_read_from_binary_struct__avm_event_led_status
 		&avm_event_read_from_binary_struct_cpmac_port
-		&avm_event_read_from_binary_struct_avm_event_rpc
 		&avm_event_read_from_binary_struct_avm_event_tffs
-		&avm_event_read_from_binary_struct__avm_event_firmware_update_available
-		&avm_event_read_from_binary_struct__avm_event_mass_storage_mount
-		&avm_event_read_from_binary_struct_avm_event_tffs_init
-		&avm_event_read_from_binary_struct_avm_event_led_info
+		&avm_event_read_from_binary_struct__avm_event_internet_new_ip
+		&avm_event_read_from_binary_struct__avm_event_checkpoint
+		&avm_event_read_from_binary_struct_wlan_event_def
+		&avm_event_read_from_binary_struct__avm_event_cmd_param_source_trigger
+		&avm_event_read_from_binary_struct_avm_event_tffs_reindex
+		&avm_event_read_from_binary_struct_avm_event_powermanagment_remote_ressourceinfo
+		&avm_event_read_from_binary_struct__avm_event_powermanagment_status
+		&avm_event_read_from_binary_struct__avm_event_pm_info_stat
+		&avm_event_read_from_binary_struct_avm_event_checkpoint
+		&avm_event_read_from_binary_struct_avm_event_wlan
 		&avm_event_read_from_binary_struct_avm_event_push_button
+		&avm_event_read_from_binary_struct_avm_event_tffs_close
+		&avm_event_read_from_binary_struct_avm_event_powermanagment_remote
+		&avm_event_read_from_binary_struct_avm_event_source_notifier
+		&avm_event_read_from_binary_struct_avm_event_rpc
+		&avm_event_read_from_binary_struct__avm_event_mass_storage_unmount
 		&avm_event_read_from_binary_struct_avm_event_remotewatchdog
-		&avm_event_read_from_binary_struct_avm_event_telefonprofile
+		&avm_event_read_from_binary_struct_avm_event_source_register
+		&avm_event_read_from_binary_struct_avm_event_data
+		&avm_event_read_from_binary_struct__avm_event_powerline_status
 		&avm_event_read_from_binary_struct_avm_event_tffs_write
-		&avm_event_read_from_binary_struct__cpmac_event_struct
-		&avm_event_read_from_binary_struct_avm_event_mass_storage_unmount
-		&avm_event_read_from_binary_struct__avm_event_cpu_idle
-		&avm_event_read_from_binary_struct_avm_event_tffs_paniclog
-		&avm_event_read_from_binary_struct_avm_event_cpu_run
-		&avm_event_read_from_binary_struct__avm_event_cmd_param_release
-		&avm_event_read_from_binary_struct__avm_event_mass_storage_unmount
-		&avm_event_read_from_binary_struct_wlan_event_data_client_state_change
-		&avm_event_read_from_binary_struct__avm_event_internet_new_ip
+		&avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params
+		&avm_event_read_from_binary_struct_avm_event_pm_info_stat
+		&avm_event_read_from_binary_struct_avm_event_tffs_open
+		&avm_event_read_from_binary_struct__avm_event_id_mask
 		&avm_event_read_from_binary_struct__avm_event_user_mode_source_notify
 		&avm_event_read_from_binary_struct_avm_event_message
+		&avm_event_read_from_binary_struct_avm_event_temperature
+		&avm_event_read_from_binary_struct__avm_event_remotepcmlink
 		&avm_event_read_from_binary_struct__avm_event_telephony_missed_call
-		&avm_event_read_from_binary_struct_avm_event_powermanagment_remote_ressourceinfo
-		&avm_event_read_from_binary_struct_avm_event_telephony_missed_call
+		&avm_event_read_from_binary_struct_avm_event_source_unregister
+		&avm_event_read_from_binary_struct__avm_event_smarthome_switch_status
+		&avm_event_read_from_binary_struct_avm_event_telephony_string
+		&avm_event_read_from_binary_struct_wlan_event_data_client_common
+		&avm_event_read_from_binary_struct_avm_event_led_status
+		&avm_event_read_from_binary_struct__avm_event_powermanagment_remote_ressourceinfo
+		&avm_event_read_from_binary_struct__avm_event_firmware_update_available
+		&avm_event_read_from_binary_struct__avm_event_telefonprofile
+		&avm_event_read_from_binary_struct__avm_event_powermanagment_remote
+		&avm_event_read_from_binary_struct_avm_event_cpu_idle
+		&avm_event_read_from_binary_struct_avm_event_remote_source_trigger_request
+		&avm_event_read_from_binary_struct__avm_event_remotewatchdog
+		&avm_event_read_from_binary_struct_avm_event_tffs_read
+		&avm_event_read_from_binary_struct_avm_event_tffs_info
+		&avm_event_read_from_binary_struct__avm_event_cpu_idle
 		&avm_event_read_from_binary_struct__avm_event_led_info
-		&avm_event_read_from_binary_struct_wlan_event_data_client_connect_info
-		&avm_event_read_from_binary_struct__avm_event_log
+		&avm_event_read_from_binary_struct__avm_event_push_button
+		&avm_event_read_from_binary_struct_avm_event_cpu_run
 		&avm_event_read_from_binary_struct_avm_event_smarthome_switch_status
-		&avm_event_read_from_binary_struct__avm_event_powermanagment_status
-		&avm_event_read_from_binary_struct_avm_event_powerline_status
-		&avm_event_read_from_binary_struct__avm_event_id_mask
-		&avm_event_read_from_binary_struct_avm_event_wlan
-		&avm_event_read_from_binary_struct__avm_event_cmd_param_register
-		&avm_event_read_from_binary_struct_avm_event_source_notifier
-		&avm_event_read_from_binary_struct_avm_event_firmware_update_available
-		&avm_event_read_from_binary_struct_avm_event_tffs_cleanup
-		&avm_event_read_from_binary_struct_avm_event_tffs_notify
-		&avm_event_read_from_binary_struct_avm_event_led_status
-		&avm_event_read_from_binary_struct_wlan_event_data_client_common
-		&avm_event_read_from_binary_struct__avm_event_powerline_status
-		&avm_event_read_from_binary_struct__avm_event_smarthome_switch_status
-		&avm_event_read_from_binary_struct_avm_event_source_register
-		&avm_event_read_from_binary_struct_avm_event_checkpoint
+		&avm_event_read_from_binary_struct__avm_event_header
+		&avm_event_read_from_binary_struct_cpmac_event_struct
+		&avm_event_read_from_binary_struct_avm_event_led_info
+		&avm_event_read_from_binary_struct_avm_event_remotepcmlink
 		&avm_event_read_from_binary_struct_wlan_event_data_scan_common
+		&avm_event_read_from_binary_struct_avm_event_tffs_cleanup
+		&avm_event_read_from_binary_struct_avm_event_mass_storage_unmount
+		&avm_event_read_from_binary_struct_avm_event_ping
+		&avm_event_read_from_binary_struct_avm_event_mass_storage_mount
+		&avm_event_read_from_binary_struct__avm_event_cpu_run
+		&avm_event_read_from_binary_struct_avm_event_unserialised
+		&avm_event_read_from_binary_struct_avm_event_telefonprofile
+		&avm_event_read_from_binary_struct_wlan_event_data_client_connect_info
+		&avm_event_read_from_binary_struct__avm_event_cmd_param_trigger
+		&avm_event_read_from_binary_struct_avm_event_log
+		&avm_event_read_from_binary_struct__avm_event_wlan
+		&avm_event_read_from_binary_struct_wlan_event_data_scan_event_info
 	);
 
 @EXPORT_OK = qw();
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_led_status'
+# convert function for 'struct _avm_event_mass_storage_mount'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_led_status {
+sub avm_event_read_from_binary_struct__avm_event_mass_storage_mount {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -112,10 +112,10 @@
 
 	####### liste of hash components #######
 	my $header;
-	my $led;
-	my $state;
-	my $param_len;
-	my $params;
+	my $size;
+	my $free;
+	my $name_length;
+	my @name = ();
 
 	####### convert binary message to hash components #######
 
@@ -124,38 +124,42 @@
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'led' at offset '0'
-	$led = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'size' at offset '0'
+	$size = unpack(">L", $in_ref);
+	$offset += 8;
 
-	# c-struct component 'state' at offset '4'
-	$state = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'free' at offset '8'
+	$free = unpack("a" . $offset . "/>L", $in_ref);
+	$offset += 8;
 
-	# c-struct component 'param_len' at offset '8'
-	$param_len = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'name_length' at offset '16'
+	$name_length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $name_length;
 
-	# c-struct component 'params' at offset '12'
-	$params = unpack("a" . $offset . "/C245", $in_ref);
-	$offset += 245;
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
 		"header" => $header,
-		"led" => $led,
-		"state" => $state,
-		"param_len" => $param_len,
-		"params" => $params,
+		"size" => $size,
+		"free" => $free,
+		"name_length" => $name_length,
+		"name" => [ @name ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_checkpoint'
+# convert function for 'struct _avm_event_log'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_checkpoint {
+sub avm_event_read_from_binary_struct__avm_event_log {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -164,8 +168,11 @@
 
 	####### liste of hash components #######
 	my $event_header;
-	my $node_id;
-	my $checkpoints;
+	my $logtype;
+	my $loglen;
+	my $logpointer;
+	my $checksum;
+	my $rebootflag;
 
 	####### convert binary message to hash components #######
 
@@ -174,28 +181,43 @@
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'node_id' at offset '0'
-	$node_id = unpack(">I", $in_ref);
+	# c-struct component 'logtype' at offset '0'
+	$logtype = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'checkpoints' at offset '4'
-	$checkpoints = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
+	# c-struct component 'loglen' at offset '4'
+	$loglen = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'logpointer' at offset '8'
+	$logpointer = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'checksum' at offset '12'
+	$checksum = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'rebootflag' at offset '16'
+	$rebootflag = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
 		"event_header" => $event_header,
-		"node_id" => $node_id,
-		"checkpoints" => $checkpoints,
+		"logtype" => $logtype,
+		"loglen" => $loglen,
+		"logpointer" => $logpointer,
+		"checksum" => $checksum,
+		"rebootflag" => $rebootflag,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_remotepcmlink'
+# convert function for 'struct avm_event_powerline_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_remotepcmlink {
+sub avm_event_read_from_binary_struct_avm_event_powerline_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -203,45 +225,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $type;
-	my $sharedlen;
-	my $sharedpointer;
+	my $status;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'sharedlen' at offset '4'
-	$sharedlen = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'sharedpointer' at offset '8'
-	$sharedpointer = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'status' at offset '0'
+	$status = unpack(">I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"type" => $type,
-		"sharedlen" => $sharedlen,
-		"sharedpointer" => $sharedpointer,
+		"status" => $status,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_push_button'
+# convert function for 'struct avm_event_firmware_update_available'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_push_button {
+sub avm_event_read_from_binary_struct_avm_event_firmware_update_available {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -249,38 +252,42 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id;
-	my $key;
-	my $pressed;
+	my $type;
+	my $version_length;
+	my @version = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'key' at offset '4'
-	$key = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'version_length' at offset '4'
+	$version_length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $version_length;
 
-	# c-struct component 'pressed' at offset '8'
-	$pressed = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$version[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id" => $id,
-		"key" => $key,
-		"pressed" => $pressed,
+		"type" => $type,
+		"version_length" => $version_length,
+		"version" => [ @version ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_remote_source_trigger_request'
+# convert function for 'struct avm_event_telephony_missed_call'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_remote_source_trigger_request {
+sub avm_event_read_from_binary_struct_avm_event_telephony_missed_call {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -288,27 +295,34 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $data;
+	my $length;
+	my $p;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'data' at offset '0'
-	( $data, $struct_offset ) = avm_event_read_from_binary_struct_avm_event_data(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	# c-struct component 'length' at offset '0'
+	$length = unpack(">I", $in_ref);
+	$offset += 4;
+	$array_element_anzahl  = $length;
+
+	# c-struct component 'p' at offset '4'
+	( $p, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"data" => $data,
+		"length" => $length,
+		"p" => $p,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_close'
+# convert function for 'struct avm_event_powermanagment_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_close {
+sub avm_event_read_from_binary_struct_avm_event_powermanagment_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -316,26 +330,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $dummy;
+	my $substatus;
+	my $param;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'dummy' at offset '0'
-	$dummy = unpack(">I", $in_ref);
+	# c-struct component 'substatus' at offset '0'
+	$substatus = unpack(">I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'param' at offset '4'
+	( $param, $struct_offset ) = avm_event_read_from_binary_union___powermanagment_status_union(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"dummy" => $dummy,
+		"substatus" => $substatus,
+		"param" => $param,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_rpc'
+# convert function for 'struct _avm_event_cmd_param_register'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_rpc {
+sub avm_event_read_from_binary_struct__avm_event_cmd_param_register {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -343,55 +364,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $type;
-	my $id;
-	my $length;
-	my @message = ();
+	my $mask;
+	my $Name;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+	# c-struct component 'mask' at offset '0'
+	( $mask, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_id_mask(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'id' at offset '4'
-	$id = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'length' at offset '8'
-	$length = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
-
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
-
-		$message[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	# c-struct component 'Name' at offset '0'
+	$Name = unpack("C33", $in_ref);
+	$offset += 33;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"type" => $type,
-		"id" => $id,
-		"length" => $length,
-		"message" => [ @message ],
+		"mask" => $mask,
+		"Name" => $Name,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_pm_info_stat'
+# convert function for 'struct _avm_event_cmd_param_release'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_pm_info_stat {
+sub avm_event_read_from_binary_struct__avm_event_cmd_param_release {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -399,224 +398,93 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $reserved1;
-	my $rate_sumact;
-	my $rate_sumcum;
-	my $rate_systemact;
-	my $rate_systemcum;
-	my $system_status;
-	my $rate_dspact;
-	my $rate_dspcum;
-	my $rate_wlanact;
-	my $rate_wlancum;
-	my $wlan_devices;
-	my $wlan_status;
-	my $rate_ethact;
-	my $rate_ethcum;
-	my $eth_status;
-	my $rate_abact;
-	my $rate_abcum;
-	my $isdn_status;
-	my $rate_dectact;
-	my $rate_dectcum;
-	my $rate_battchargeact;
-	my $rate_battchargecum;
-	my $dect_status;
-	my $rate_usbhostact;
-	my $rate_usbhostcum;
-	my $usb_status;
-	my $act_temperature;
-	my $min_temperature;
-	my $max_temperature;
-	my $avg_temperature;
-	my $rate_lteact;
-	my $rate_ltecum;
-	my $rate_dvbcact;
-	my $rate_dvbccum;
+	my $Name;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'reserved1' at offset '0'
-	$reserved1 = unpack("C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_sumact' at offset '1'
-	$rate_sumact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_sumcum' at offset '2'
-	$rate_sumcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_systemact' at offset '3'
-	$rate_systemact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_systemcum' at offset '4'
-	$rate_systemcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'system_status' at offset '5'
-	$system_status = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_dspact' at offset '6'
-	$rate_dspact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_dspcum' at offset '7'
-	$rate_dspcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_wlanact' at offset '8'
-	$rate_wlanact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_wlancum' at offset '9'
-	$rate_wlancum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'wlan_devices' at offset '10'
-	$wlan_devices = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'wlan_status' at offset '11'
-	$wlan_status = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_ethact' at offset '12'
-	$rate_ethact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_ethcum' at offset '13'
-	$rate_ethcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'eth_status' at offset '14'
-	$eth_status = unpack("a" . $offset . "/>S", $in_ref);
-	$offset += 2;
+	# c-struct component 'Name' at offset '0'
+	$Name = unpack("C33", $in_ref);
+	$offset += 33;
 
-	# c-struct component 'rate_abact' at offset '16'
-	$rate_abact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
 
-	# c-struct component 'rate_abcum' at offset '17'
-	$rate_abcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	####### return hash and used length #######
+	$return ( {
+		"Name" => $Name,
+	}, $offset );
+}
 
-	# c-struct component 'isdn_status' at offset '18'
-	$isdn_status = unpack("a" . $offset . "/>S", $in_ref);
-	$offset += 2;
 
-	# c-struct component 'rate_dectact' at offset '20'
-	$rate_dectact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+##########################################################################################
+# convert function for 'struct wlan_event_data_client_state_change'
+##########################################################################################
+sub avm_event_read_from_binary_struct_wlan_event_data_client_state_change {
+	my ( $msg_length, $in_ref ) = $@;
+	my $offset = 0;
+	my $struct_offset;
+	my $array_element_anzahl = 0;
+	my $array_element_size = 1;
 
-	# c-struct component 'rate_dectcum' at offset '21'
-	$rate_dectcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	####### liste of hash components #######
+	my $common;
+	my $state;
 
-	# c-struct component 'rate_battchargeact' at offset '22'
-	$rate_battchargeact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	####### convert binary message to hash components #######
 
-	# c-struct component 'rate_battchargecum' at offset '23'
-	$rate_battchargecum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	# c-struct component 'common' at offset '0'
+	( $common, $struct_offset ) = avm_event_read_from_binary_struct_wlan_event_data_client_common(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'dect_status' at offset '24'
-	$dect_status = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	# c-struct component 'state' at offset '0'
+	$state = unpack("", $in_ref);
+	$offset += 0;
 
-	# c-struct component 'rate_usbhostact' at offset '25'
-	$rate_usbhostact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
 
-	# c-struct component 'rate_usbhostcum' at offset '26'
-	$rate_usbhostcum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	####### return hash and used length #######
+	$return ( {
+		"common" => $common,
+		"state" => $state,
+	}, $offset );
+}
 
-	# c-struct component 'usb_status' at offset '27'
-	$usb_status = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
 
-	# c-struct component 'act_temperature' at offset '28'
-	$act_temperature = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
+##########################################################################################
+# convert function for 'struct avm_event_tffs_init'
+##########################################################################################
+sub avm_event_read_from_binary_struct_avm_event_tffs_init {
+	my ( $msg_length, $in_ref ) = $@;
+	my $offset = 0;
+	my $struct_offset;
+	my $array_element_anzahl = 0;
+	my $array_element_size = 1;
 
-	# c-struct component 'min_temperature' at offset '28'
-	$min_temperature = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
+	####### liste of hash components #######
+	my $mem_offset;
+	my $max_seg_size;
 
-	# c-struct component 'max_temperature' at offset '28'
-	$max_temperature = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
+	####### convert binary message to hash components #######
 
-	# c-struct component 'avg_temperature' at offset '28'
-	$avg_temperature = unpack("a" . $offset . "/", $in_ref);
+	# c-struct component 'mem_offset' at offset '0'
+	$mem_offset = unpack("", $in_ref);
 	$offset += 0;
 
-	# c-struct component 'rate_lteact' at offset '28'
-	$rate_lteact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_ltecum' at offset '29'
-	$rate_ltecum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_dvbcact' at offset '30'
-	$rate_dvbcact = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'rate_dvbccum' at offset '31'
-	$rate_dvbccum = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	# c-struct component 'max_seg_size' at offset '0'
+	$max_seg_size = unpack(">I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"reserved1" => $reserved1,
-		"rate_sumact" => $rate_sumact,
-		"rate_sumcum" => $rate_sumcum,
-		"rate_systemact" => $rate_systemact,
-		"rate_systemcum" => $rate_systemcum,
-		"system_status" => $system_status,
-		"rate_dspact" => $rate_dspact,
-		"rate_dspcum" => $rate_dspcum,
-		"rate_wlanact" => $rate_wlanact,
-		"rate_wlancum" => $rate_wlancum,
-		"wlan_devices" => $wlan_devices,
-		"wlan_status" => $wlan_status,
-		"rate_ethact" => $rate_ethact,
-		"rate_ethcum" => $rate_ethcum,
-		"eth_status" => $eth_status,
-		"rate_abact" => $rate_abact,
-		"rate_abcum" => $rate_abcum,
-		"isdn_status" => $isdn_status,
-		"rate_dectact" => $rate_dectact,
-		"rate_dectcum" => $rate_dectcum,
-		"rate_battchargeact" => $rate_battchargeact,
-		"rate_battchargecum" => $rate_battchargecum,
-		"dect_status" => $dect_status,
-		"rate_usbhostact" => $rate_usbhostact,
-		"rate_usbhostcum" => $rate_usbhostcum,
-		"usb_status" => $usb_status,
-		"act_temperature" => $act_temperature,
-		"min_temperature" => $min_temperature,
-		"max_temperature" => $max_temperature,
-		"avg_temperature" => $avg_temperature,
-		"rate_lteact" => $rate_lteact,
-		"rate_ltecum" => $rate_ltecum,
-		"rate_dvbcact" => $rate_dvbcact,
-		"rate_dvbccum" => $rate_dvbccum,
+		"mem_offset" => $mem_offset,
+		"max_seg_size" => $max_seg_size,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_temperature'
+# convert function for 'struct _avm_event_temperature'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_temperature {
+sub avm_event_read_from_binary_struct__avm_event_temperature {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -624,10 +492,16 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
+	my $event_header;
 	my $temperature;
 
 	####### convert binary message to hash components #######
 
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 	# c-struct component 'temperature' at offset '0'
 	$temperature = unpack(">I", $in_ref);
 	$offset += 4;
@@ -635,15 +509,16 @@
 
 	####### return hash and used length #######
 	$return ( {
+		"event_header" => $event_header,
 		"temperature" => $temperature,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_wlan'
+# convert function for 'struct avm_event_internet_new_ip'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_wlan {
+sub avm_event_read_from_binary_struct_avm_event_internet_new_ip {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -651,87 +526,60 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
-	my $mac;
-	my $u1;
-	my $event;
-	my $info;
-	my $status;
-	my $u2;
-	my $if_name;
-	my $ev_initiator;
-	my $ev_reason;
-	my $avm_capabilities;
+	my $sel;
+	my $params;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'mac' at offset '0'
-	$mac = unpack("C6", $in_ref);
-	$offset += 6;
-
-	# c-struct component 'u1' at offset '6'
-	$u1 = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'sel' at offset '0'
+	$sel = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'event' at offset '10'
-	$event = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'params' at offset '4'
+	( $params, $struct_offset ) = avm_event_read_from_binary_union_avm_event_internet_new_ip_param(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'info' at offset '14'
-	$info = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
 
-	# c-struct component 'status' at offset '18'
-	$status = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	####### return hash and used length #######
+	$return ( {
+		"sel" => $sel,
+		"params" => $params,
+	}, $offset );
+}
 
-	# c-struct component 'u2' at offset '22'
-	$u2 = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
 
-	# c-struct component 'if_name' at offset '26'
-	$if_name = unpack("a" . $offset . "/CIFNAMSIZ", $in_ref);
-	$offset += IFNAMSIZ;
+##########################################################################################
+# convert function for 'struct avm_event_tffs_deinit'
+##########################################################################################
+sub avm_event_read_from_binary_struct_avm_event_tffs_deinit {
+	my ( $msg_length, $in_ref ) = $@;
+	my $offset = 0;
+	my $struct_offset;
+	my $array_element_anzahl = 0;
+	my $array_element_size = 1;
 
-	# c-struct component 'ev_initiator' at offset '26'
-	$ev_initiator = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	####### liste of hash components #######
+	my $dummy;
 
-	# c-struct component 'ev_reason' at offset '30'
-	$ev_reason = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	####### convert binary message to hash components #######
 
-	# c-struct component 'avm_capabilities' at offset '34'
-	$avm_capabilities = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'dummy' at offset '0'
+	$dummy = unpack(">I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
-		"mac" => $mac,
-		"u1" => $u1,
-		"event" => $event,
-		"info" => $info,
-		"status" => $status,
-		"u2" => $u2,
-		"if_name" => $if_name,
-		"ev_initiator" => $ev_initiator,
-		"ev_reason" => $ev_reason,
-		"avm_capabilities" => $avm_capabilities,
+		"dummy" => $dummy,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_temperature'
+# convert function for 'struct _avm_event_rpc'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_temperature {
+sub avm_event_read_from_binary_struct__avm_event_rpc {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -740,7 +588,10 @@
 
 	####### liste of hash components #######
 	my $event_header;
-	my $temperature;
+	my $type;
+	my $id;
+	my $length;
+	my @message = ();
 
 	####### convert binary message to hash components #######
 
@@ -749,23 +600,42 @@
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'temperature' at offset '0'
-	$temperature = unpack(">I", $in_ref);
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'id' at offset '4'
+	$id = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'length' at offset '8'
+	$length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $length;
+
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$message[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
 		"event_header" => $event_header,
-		"temperature" => $temperature,
+		"type" => $type,
+		"id" => $id,
+		"length" => $length,
+		"message" => [ @message ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_deinit'
+# convert function for 'struct avm_event_tffs_paniclog'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_deinit {
+sub avm_event_read_from_binary_struct_avm_event_tffs_paniclog {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -773,26 +643,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $dummy;
+	my $buff_addr;
+	my $len;
+	my $crc;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'dummy' at offset '0'
-	$dummy = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'buff_addr' at offset '0'
+	$buff_addr = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'len' at offset '0'
+	$len = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'crc' at offset '0'
+	$crc = unpack("", $in_ref);
+	$offset += 0;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"dummy" => $dummy,
+		"buff_addr" => $buff_addr,
+		"len" => $len,
+		"crc" => $crc,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_internet_new_ip'
+# convert function for 'struct _avm_event_cmd'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_internet_new_ip {
+sub avm_event_read_from_binary_struct__avm_event_cmd {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -800,33 +682,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $sel;
-	my $params;
+	my $cmd;
+	my $param;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'sel' at offset '0'
-	$sel = unpack(">I", $in_ref);
+	# c-struct component 'cmd' at offset '0'
+	$cmd = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'params' at offset '4'
-	( $params, $struct_offset ) = avm_event_read_from_binary_union_avm_event_internet_new_ip_param(
+	# c-struct component 'param' at offset '4'
+	( $param, $struct_offset ) = avm_event_read_from_binary_union__avm_event_cmd_param(
 				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"sel" => $sel,
-		"params" => $params,
+		"cmd" => $cmd,
+		"param" => $param,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_remotepcmlink'
+# convert function for 'struct avm_event_tffs_notify'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_remotepcmlink {
+sub avm_event_read_from_binary_struct_avm_event_tffs_notify {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -834,38 +716,32 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $type;
-	my $sharedlen;
-	my $sharedpointer;
+	my $id;
+	my $event;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'sharedlen' at offset '4'
-	$sharedlen = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'sharedpointer' at offset '8'
-	$sharedpointer = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'event' at offset '4'
+	$event = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"type" => $type,
-		"sharedlen" => $sharedlen,
-		"sharedpointer" => $sharedpointer,
+		"id" => $id,
+		"event" => $event,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_cmd_param_source_trigger'
+# convert function for 'struct _cpmac_event_struct'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cmd_param_source_trigger {
+sub avm_event_read_from_binary_struct__cpmac_event_struct {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -873,32 +749,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id;
-	my $data_length;
+	my $ports;
+	my $port;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'ports' at offset '0'
+	$ports = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'data_length' at offset '4'
-	$data_length = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'port' at offset '4'
+	( $port, $struct_offset ) = avm_event_read_from_binary_struct_cpmac_port(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id" => $id,
-		"data_length" => $data_length,
+		"ports" => $ports,
+		"port" => $port,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_reindex'
+# convert function for 'struct _avm_event_led_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_reindex {
+sub avm_event_read_from_binary_struct__avm_event_led_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -906,26 +783,51 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $dummy;
+	my $header;
+	my $led;
+	my $state;
+	my $param_len;
+	my $params;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'dummy' at offset '0'
-	$dummy = unpack(">I", $in_ref);
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
+	# c-struct component 'led' at offset '0'
+	$led = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'state' at offset '4'
+	$state = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'param_len' at offset '8'
+	$param_len = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'params' at offset '12'
+	$params = unpack("a" . $offset . "/C245", $in_ref);
+	$offset += 245;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"dummy" => $dummy,
+		"header" => $header,
+		"led" => $led,
+		"state" => $state,
+		"param_len" => $param_len,
+		"params" => $params,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct cpmac_event_struct'
+# convert function for 'struct cpmac_port'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_cpmac_event_struct {
+sub avm_event_read_from_binary_struct_cpmac_port {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -933,40 +835,56 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $ports;
-	my $port;
+	my $cable;
+	my $link;
+	my $speed100;
+	my $fullduplex;
+	my $speed;
+	my $maxspeed;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'cable' at offset '0'
+	$cable = unpack("", $in_ref);
+	$offset += 0;
 
-	# c-struct component 'ports' at offset '0'
-	$ports = unpack(">I", $in_ref);
+	# c-struct component 'link' at offset '0'
+	$link = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'speed100' at offset '0'
+	$speed100 = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'fullduplex' at offset '0'
+	$fullduplex = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'speed' at offset '0'
+	$speed = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'port' at offset '4'
-	( $port, $struct_offset ) = avm_event_read_from_binary_struct_cpmac_port(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'maxspeed' at offset '4'
+	$maxspeed = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"ports" => $ports,
-		"port" => $port,
+		"cable" => $cable,
+		"link" => $link,
+		"speed100" => $speed100,
+		"fullduplex" => $fullduplex,
+		"speed" => $speed,
+		"maxspeed" => $maxspeed,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_data'
+# convert function for 'struct avm_event_tffs'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_data {
+sub avm_event_read_from_binary_struct_avm_event_tffs {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -974,33 +892,75 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id;
-	my $data;
+	my $src_id;
+	my $dst_id;
+	my $seq_nr;
+	my $ack;
+	my $srv_handle;
+	my $clt_handle;
+	my $result;
+	my $type;
+	my $call;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'src_id' at offset '0'
+	$src_id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'data' at offset '4'
-	( $data, $struct_offset ) = avm_event_read_from_binary_union_avm_event_data_union(
+	# c-struct component 'dst_id' at offset '4'
+	$dst_id = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'seq_nr' at offset '8'
+	$seq_nr = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'ack' at offset '12'
+	$ack = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'srv_handle' at offset '16'
+	$srv_handle = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'clt_handle' at offset '16'
+	$clt_handle = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'result' at offset '16'
+	$result = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'type' at offset '16'
+	$type = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'call' at offset '20'
+	( $call, $struct_offset ) = avm_event_read_from_binary_union_avm_event_tffs_call_union(
 				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id" => $id,
-		"data" => $data,
+		"src_id" => $src_id,
+		"dst_id" => $dst_id,
+		"seq_nr" => $seq_nr,
+		"ack" => $ack,
+		"srv_handle" => $srv_handle,
+		"clt_handle" => $clt_handle,
+		"result" => $result,
+		"type" => $type,
+		"call" => $call,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_powermanagment_remote_ressourceinfo'
+# convert function for 'struct _avm_event_internet_new_ip'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_powermanagment_remote_ressourceinfo {
+sub avm_event_read_from_binary_struct__avm_event_internet_new_ip {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1009,8 +969,8 @@
 
 	####### liste of hash components #######
 	my $header;
-	my $device;
-	my $power_rate;
+	my $sel;
+	my $params;
 
 	####### convert binary message to hash components #######
 
@@ -1019,28 +979,29 @@
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'device' at offset '0'
-	$device = unpack(">I", $in_ref);
+	# c-struct component 'sel' at offset '0'
+	$sel = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'power_rate' at offset '4'
-	$power_rate = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'params' at offset '4'
+	( $params, $struct_offset ) = avm_event_read_from_binary_union_avm_event_internet_new_ip_param(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
 		"header" => $header,
-		"device" => $device,
-		"power_rate" => $power_rate,
+		"sel" => $sel,
+		"params" => $params,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_read'
+# convert function for 'struct _avm_event_checkpoint'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_read {
+sub avm_event_read_from_binary_struct__avm_event_checkpoint {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1048,44 +1009,39 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $buff_addr;
-	my $len;
-	my $id;
-	my $crc;
+	my $event_header;
+	my $node_id;
+	my $checkpoints;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'buff_addr' at offset '0'
-	$buff_addr = unpack("", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'len' at offset '0'
-	$len = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'node_id' at offset '0'
+	$node_id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'crc' at offset '4'
-	$crc = unpack("a" . $offset . "/", $in_ref);
+	# c-struct component 'checkpoints' at offset '4'
+	$checkpoints = unpack("a" . $offset . "/", $in_ref);
 	$offset += 0;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"buff_addr" => $buff_addr,
-		"len" => $len,
-		"id" => $id,
-		"crc" => $crc,
+		"event_header" => $event_header,
+		"node_id" => $node_id,
+		"checkpoints" => $checkpoints,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_cmd_param_trigger'
+# convert function for 'struct wlan_event_def'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cmd_param_trigger {
+sub avm_event_read_from_binary_struct_wlan_event_def {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1093,26 +1049,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id;
+	my $event_id;
+	my $event_data;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'event_id' at offset '0'
+	$event_id = unpack(">I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'event_data' at offset '4'
+	( $event_data, $struct_offset ) = avm_event_read_from_binary_union_wlan_event_data(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"id" => $id,
+		"event_id" => $event_id,
+		"event_data" => $event_data,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_open'
+# convert function for 'struct _avm_event_cmd_param_source_trigger'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_open {
+sub avm_event_read_from_binary_struct__avm_event_cmd_param_source_trigger {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1121,8 +1084,7 @@
 
 	####### liste of hash components #######
 	my $id;
-	my $mode;
-	my $max_segment_size;
+	my $data_length;
 
 	####### convert binary message to hash components #######
 
@@ -1130,28 +1092,23 @@
 	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'mode' at offset '4'
-	$mode = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'max_segment_size' at offset '8'
-	$max_segment_size = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'data_length' at offset '4'
+	$data_length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
 		"id" => $id,
-		"mode" => $mode,
-		"max_segment_size" => $max_segment_size,
+		"data_length" => $data_length,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_powermanagment_remote'
+# convert function for 'struct avm_event_tffs_reindex'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_powermanagment_remote {
+sub avm_event_read_from_binary_struct_avm_event_tffs_reindex {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1159,33 +1116,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $remote_action;
-	my $param;
+	my $dummy;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'remote_action' at offset '0'
-	$remote_action = unpack(">I", $in_ref);
+	# c-struct component 'dummy' at offset '0'
+	$dummy = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'param' at offset '4'
-	( $param, $struct_offset ) = avm_event_read_from_binary_union_avm_event_powermanagment_remote_union(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 
 	####### return hash and used length #######
 	$return ( {
-		"remote_action" => $remote_action,
-		"param" => $param,
+		"dummy" => $dummy,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_source_unregister'
+# convert function for 'struct avm_event_powermanagment_remote_ressourceinfo'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_source_unregister {
+sub avm_event_read_from_binary_struct_avm_event_powermanagment_remote_ressourceinfo {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1193,33 +1143,32 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id_mask;
-	my $name;
+	my $device;
+	my $power_rate;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id_mask' at offset '0'
-	( $id_mask, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_id_mask(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'device' at offset '0'
+	$device = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'name' at offset '0'
-	$name = unpack("C32", $in_ref);
-	$offset += 32;
+	# c-struct component 'power_rate' at offset '4'
+	$power_rate = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id_mask" => $id_mask,
-		"name" => $name,
+		"device" => $device,
+		"power_rate" => $power_rate,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_powermanagment_status'
+# convert function for 'struct _avm_event_powermanagment_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_powermanagment_status {
+sub avm_event_read_from_binary_struct__avm_event_powermanagment_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1227,11 +1176,17 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
+	my $event_header;
 	my $substatus;
 	my $param;
 
 	####### convert binary message to hash components #######
 
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 	# c-struct component 'substatus' at offset '0'
 	$substatus = unpack(">I", $in_ref);
 	$offset += 4;
@@ -1244,6 +1199,7 @@
 
 	####### return hash and used length #######
 	$return ( {
+		"event_header" => $event_header,
 		"substatus" => $substatus,
 		"param" => $param,
 	}, $offset );
@@ -1251,9 +1207,9 @@
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_mass_storage_mount'
+# convert function for 'struct _avm_event_pm_info_stat'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_mass_storage_mount {
+sub avm_event_read_from_binary_struct__avm_event_pm_info_stat {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1261,48 +1217,231 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $size;
-	my $free;
-	my $name_length;
-	my @name = ();
+	my $header;
+	my $reserved1;
+	my $rate_sumact;
+	my $rate_sumcum;
+	my $rate_systemact;
+	my $rate_systemcum;
+	my $system_status;
+	my $rate_dspact;
+	my $rate_dspcum;
+	my $rate_wlanact;
+	my $rate_wlancum;
+	my $wlan_devices;
+	my $wlan_status;
+	my $rate_ethact;
+	my $rate_ethcum;
+	my $eth_status;
+	my $rate_abact;
+	my $rate_abcum;
+	my $isdn_status;
+	my $rate_dectact;
+	my $rate_dectcum;
+	my $rate_battchargeact;
+	my $rate_battchargecum;
+	my $dect_status;
+	my $rate_usbhostact;
+	my $rate_usbhostcum;
+	my $usb_status;
+	my $act_temperature;
+	my $min_temperature;
+	my $max_temperature;
+	my $avg_temperature;
+	my $rate_lteact;
+	my $rate_ltecum;
+	my $rate_dvbcact;
+	my $rate_dvbccum;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'size' at offset '0'
-	$size = unpack(">L", $in_ref);
-	$offset += 8;
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'free' at offset '8'
-	$free = unpack("a" . $offset . "/>L", $in_ref);
-	$offset += 8;
+	# c-struct component 'reserved1' at offset '0'
+	$reserved1 = unpack("C", $in_ref);
+	$offset += 1;
 
-	# c-struct component 'name_length' at offset '16'
-	$name_length = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $name_length;
+	# c-struct component 'rate_sumact' at offset '1'
+	$rate_sumact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+	# c-struct component 'rate_sumcum' at offset '2'
+	$rate_sumcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+	# c-struct component 'rate_systemact' at offset '3'
+	$rate_systemact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	# c-struct component 'rate_systemcum' at offset '4'
+	$rate_systemcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'system_status' at offset '5'
+	$system_status = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_dspact' at offset '6'
+	$rate_dspact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_dspcum' at offset '7'
+	$rate_dspcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_wlanact' at offset '8'
+	$rate_wlanact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_wlancum' at offset '9'
+	$rate_wlancum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'wlan_devices' at offset '10'
+	$wlan_devices = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'wlan_status' at offset '11'
+	$wlan_status = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_ethact' at offset '12'
+	$rate_ethact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_ethcum' at offset '13'
+	$rate_ethcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'eth_status' at offset '14'
+	$eth_status = unpack("a" . $offset . "/>S", $in_ref);
+	$offset += 2;
+
+	# c-struct component 'rate_abact' at offset '16'
+	$rate_abact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_abcum' at offset '17'
+	$rate_abcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'isdn_status' at offset '18'
+	$isdn_status = unpack("a" . $offset . "/>S", $in_ref);
+	$offset += 2;
+
+	# c-struct component 'rate_dectact' at offset '20'
+	$rate_dectact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_dectcum' at offset '21'
+	$rate_dectcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_battchargeact' at offset '22'
+	$rate_battchargeact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_battchargecum' at offset '23'
+	$rate_battchargecum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'dect_status' at offset '24'
+	$dect_status = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_usbhostact' at offset '25'
+	$rate_usbhostact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_usbhostcum' at offset '26'
+	$rate_usbhostcum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'usb_status' at offset '27'
+	$usb_status = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'act_temperature' at offset '28'
+	$act_temperature = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'min_temperature' at offset '28'
+	$min_temperature = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'max_temperature' at offset '28'
+	$max_temperature = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'avg_temperature' at offset '28'
+	$avg_temperature = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'rate_lteact' at offset '28'
+	$rate_lteact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_ltecum' at offset '29'
+	$rate_ltecum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_dvbcact' at offset '30'
+	$rate_dvbcact = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
+
+	# c-struct component 'rate_dvbccum' at offset '31'
+	$rate_dvbccum = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"size" => $size,
-		"free" => $free,
-		"name_length" => $name_length,
-		"name" => [ @name ],
+		"header" => $header,
+		"reserved1" => $reserved1,
+		"rate_sumact" => $rate_sumact,
+		"rate_sumcum" => $rate_sumcum,
+		"rate_systemact" => $rate_systemact,
+		"rate_systemcum" => $rate_systemcum,
+		"system_status" => $system_status,
+		"rate_dspact" => $rate_dspact,
+		"rate_dspcum" => $rate_dspcum,
+		"rate_wlanact" => $rate_wlanact,
+		"rate_wlancum" => $rate_wlancum,
+		"wlan_devices" => $wlan_devices,
+		"wlan_status" => $wlan_status,
+		"rate_ethact" => $rate_ethact,
+		"rate_ethcum" => $rate_ethcum,
+		"eth_status" => $eth_status,
+		"rate_abact" => $rate_abact,
+		"rate_abcum" => $rate_abcum,
+		"isdn_status" => $isdn_status,
+		"rate_dectact" => $rate_dectact,
+		"rate_dectcum" => $rate_dectcum,
+		"rate_battchargeact" => $rate_battchargeact,
+		"rate_battchargecum" => $rate_battchargecum,
+		"dect_status" => $dect_status,
+		"rate_usbhostact" => $rate_usbhostact,
+		"rate_usbhostcum" => $rate_usbhostcum,
+		"usb_status" => $usb_status,
+		"act_temperature" => $act_temperature,
+		"min_temperature" => $min_temperature,
+		"max_temperature" => $max_temperature,
+		"avg_temperature" => $avg_temperature,
+		"rate_lteact" => $rate_lteact,
+		"rate_ltecum" => $rate_ltecum,
+		"rate_dvbcact" => $rate_dvbcact,
+		"rate_dvbccum" => $rate_dvbccum,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_ping'
+# convert function for 'struct avm_event_checkpoint'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_ping {
+sub avm_event_read_from_binary_struct_avm_event_checkpoint {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1310,26 +1449,32 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $seq;
+	my $node_id;
+	my $checkpoints;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'seq' at offset '0'
-	$seq = unpack(">I", $in_ref);
+	# c-struct component 'node_id' at offset '0'
+	$node_id = unpack(">I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'checkpoints' at offset '4'
+	$checkpoints = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"seq" => $seq,
+		"node_id" => $node_id,
+		"checkpoints" => $checkpoints,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct wlan_event_data_scan_event_info'
+# convert function for 'struct avm_event_wlan'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_wlan_event_data_scan_event_info {
+sub avm_event_read_from_binary_struct_avm_event_wlan {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1337,33 +1482,82 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $common;
-	my $event_type;
+	my $mac;
+	my $u1;
+	my $event;
+	my $info;
+	my $status;
+	my $u2;
+	my $if_name;
+	my $ev_initiator;
+	my $ev_reason;
+	my $avm_capabilities;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'common' at offset '0'
-	( $common, $struct_offset ) = avm_event_read_from_binary_struct_wlan_event_data_scan_common(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	# c-struct component 'mac' at offset '0'
+	$mac = unpack("C6", $in_ref);
+	$offset += 6;
+
+	# c-struct component 'u1' at offset '6'
+	( $u1, $struct_offset ) = avm_event_read_from_binary_union_avm_event_wlan_client_status_u1(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'event_type' at offset '0'
-	$event_type = unpack(">I", $in_ref);
+	# c-struct component 'event' at offset '6'
+	$event = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'info' at offset '10'
+	$info = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'status' at offset '14'
+	$status = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'u2' at offset '18'
+	( $u2, $struct_offset ) = avm_event_read_from_binary_union_avm_event_wlan_client_status_u2(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
+	# c-struct component 'if_name' at offset '18'
+	$if_name = unpack("a" . $offset . "/CIFNAMSIZ", $in_ref);
+	$offset += IFNAMSIZ;
+
+	# c-struct component 'ev_initiator' at offset '18'
+	$ev_initiator = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'ev_reason' at offset '22'
+	$ev_reason = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'avm_capabilities' at offset '26'
+	$avm_capabilities = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"common" => $common,
-		"event_type" => $event_type,
+		"mac" => $mac,
+		"u1" => $u1,
+		"event" => $event,
+		"info" => $info,
+		"status" => $status,
+		"u2" => $u2,
+		"if_name" => $if_name,
+		"ev_initiator" => $ev_initiator,
+		"ev_reason" => $ev_reason,
+		"avm_capabilities" => $avm_capabilities,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_cpu_run'
+# convert function for 'struct avm_event_push_button'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cpu_run {
+sub avm_event_read_from_binary_struct_avm_event_push_button {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1371,39 +1565,32 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $cputype;
-	my $cpu_run;
+	my $key;
+	my $pressed;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'cputype' at offset '0'
-	$cputype = unpack(">I", $in_ref);
+	# c-struct component 'key' at offset '0'
+	$key = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'cpu_run' at offset '4'
-	$cpu_run = unpack("a" . $offset . "/C4", $in_ref);
+	# c-struct component 'pressed' at offset '4'
+	$pressed = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"cputype" => $cputype,
-		"cpu_run" => $cpu_run,
+		"key" => $key,
+		"pressed" => $pressed,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_remotewatchdog'
+# convert function for 'struct avm_event_tffs_close'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_remotewatchdog {
+sub avm_event_read_from_binary_struct_avm_event_tffs_close {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1411,45 +1598,60 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $cmd;
-	my $name;
-	my $param;
+	my $dummy;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'cmd' at offset '0'
-	$cmd = unpack(">I", $in_ref);
+	# c-struct component 'dummy' at offset '0'
+	$dummy = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'name' at offset '4'
-	$name = unpack("a" . $offset . "/C16", $in_ref);
-	$offset += 16;
 
-	# c-struct component 'param' at offset '20'
-	$param = unpack("a" . $offset . "/>I", $in_ref);
+	####### return hash and used length #######
+	$return ( {
+		"dummy" => $dummy,
+	}, $offset );
+}
+
+
+##########################################################################################
+# convert function for 'struct avm_event_powermanagment_remote'
+##########################################################################################
+sub avm_event_read_from_binary_struct_avm_event_powermanagment_remote {
+	my ( $msg_length, $in_ref ) = $@;
+	my $offset = 0;
+	my $struct_offset;
+	my $array_element_anzahl = 0;
+	my $array_element_size = 1;
+
+	####### liste of hash components #######
+	my $remote_action;
+	my $param;
+
+	####### convert binary message to hash components #######
+
+	# c-struct component 'remote_action' at offset '0'
+	$remote_action = unpack(">I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'param' at offset '4'
+	( $param, $struct_offset ) = avm_event_read_from_binary_union_avm_event_powermanagment_remote_union(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"cmd" => $cmd,
-		"name" => $name,
+		"remote_action" => $remote_action,
 		"param" => $param,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_header'
+# convert function for 'struct avm_event_source_notifier'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_header {
+sub avm_event_read_from_binary_struct_avm_event_source_notifier {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1474,9 +1676,9 @@
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_powermanagment_remote'
+# convert function for 'struct avm_event_rpc'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_powermanagment_remote {
+sub avm_event_read_from_binary_struct_avm_event_rpc {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1484,40 +1686,48 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
-	my $remote_action;
-	my $param;
+	my $type;
+	my $id;
+	my $length;
+	my @message = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'remote_action' at offset '0'
-	$remote_action = unpack(">I", $in_ref);
+	# c-struct component 'id' at offset '4'
+	$id = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'param' at offset '4'
-	( $param, $struct_offset ) = avm_event_read_from_binary_union_avm_event_powermanagment_remote_union(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'length' at offset '8'
+	$length = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+	$array_element_anzahl  = $length;
+
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$message[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
-		"remote_action" => $remote_action,
-		"param" => $param,
+		"type" => $type,
+		"id" => $id,
+		"length" => $length,
+		"message" => [ @message ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_telefonprofile'
+# convert function for 'struct _avm_event_mass_storage_unmount'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_telefonprofile {
+sub avm_event_read_from_binary_struct__avm_event_mass_storage_unmount {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1525,33 +1735,43 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $on;
+	my $header;
+	my $name_length;
+	my @name = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'on' at offset '0'
-	$on = unpack(">I", $in_ref);
+	# c-struct component 'name_length' at offset '0'
+	$name_length = unpack(">I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $name_length;
+
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"on" => $on,
+		"header" => $header,
+		"name_length" => $name_length,
+		"name" => [ @name ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_info'
+# convert function for 'struct avm_event_remotewatchdog'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_info {
+sub avm_event_read_from_binary_struct_avm_event_remotewatchdog {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1559,26 +1779,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $fill_level;
+	my $cmd;
+	my $name;
+	my $param;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'fill_level' at offset '0'
-	$fill_level = unpack(">I", $in_ref);
+	# c-struct component 'cmd' at offset '0'
+	$cmd = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'name' at offset '4'
+	$name = unpack("a" . $offset . "/C16", $in_ref);
+	$offset += 16;
+
+	# c-struct component 'param' at offset '20'
+	$param = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"fill_level" => $fill_level,
+		"cmd" => $cmd,
+		"name" => $name,
+		"param" => $param,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_unserialised'
+# convert function for 'struct avm_event_source_register'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_unserialised {
+sub avm_event_read_from_binary_struct_avm_event_source_register {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1586,38 +1818,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $evnt_id;
-	my $data_len;
-	my $data;
+	my $id_mask;
+	my $name;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'evnt_id' at offset '0'
-	$evnt_id = unpack("", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'data_len' at offset '0'
-	$data_len = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'id_mask' at offset '0'
+	( $id_mask, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_id_mask(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'data' at offset '4'
-	$data = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	# c-struct component 'name' at offset '0'
+	$name = unpack("C32", $in_ref);
+	$offset += 32;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"evnt_id" => $evnt_id,
-		"data_len" => $data_len,
-		"data" => $data,
+		"id_mask" => $id_mask,
+		"name" => $name,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_telephony_missed_call_params'
+# convert function for 'struct avm_event_data'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params {
+sub avm_event_read_from_binary_struct_avm_event_data {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1626,7 +1853,7 @@
 
 	####### liste of hash components #######
 	my $id;
-	my $params;
+	my $data;
 
 	####### convert binary message to hash components #######
 
@@ -1634,8 +1861,8 @@
 	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'params' at offset '4'
-	( $params, $struct_offset ) = avm_event_read_from_binary_union_avm_event_telephony_call_params(
+	# c-struct component 'data' at offset '4'
+	( $data, $struct_offset ) = avm_event_read_from_binary_union_avm_event_data_union(
 				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
@@ -1643,15 +1870,15 @@
 	####### return hash and used length #######
 	$return ( {
 		"id" => $id,
-		"params" => $params,
+		"data" => $data,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_cmd'
+# convert function for 'struct _avm_event_powerline_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cmd {
+sub avm_event_read_from_binary_struct__avm_event_powerline_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1659,33 +1886,84 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $cmd;
-	my $param;
+	my $event_header;
+	my $status;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'cmd' at offset '0'
-	$cmd = unpack(">I", $in_ref);
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
+	# c-struct component 'status' at offset '0'
+	$status = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'param' at offset '4'
-	( $param, $struct_offset ) = avm_event_read_from_binary_union__avm_event_cmd_param(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+
+	####### return hash and used length #######
+	$return ( {
+		"event_header" => $event_header,
+		"status" => $status,
+	}, $offset );
+}
+
+
+##########################################################################################
+# convert function for 'struct avm_event_tffs_write'
+##########################################################################################
+sub avm_event_read_from_binary_struct_avm_event_tffs_write {
+	my ( $msg_length, $in_ref ) = $@;
+	my $offset = 0;
+	my $struct_offset;
+	my $array_element_anzahl = 0;
+	my $array_element_size = 1;
+
+	####### liste of hash components #######
+	my $buff_addr;
+	my $len;
+	my $id;
+	my $final;
+	my $crc;
+
+	####### convert binary message to hash components #######
+
+	# c-struct component 'buff_addr' at offset '0'
+	$buff_addr = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'len' at offset '0'
+	$len = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'final' at offset '4'
+	$final = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'crc' at offset '8'
+	$crc = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"cmd" => $cmd,
-		"param" => $param,
+		"buff_addr" => $buff_addr,
+		"len" => $len,
+		"id" => $id,
+		"final" => $final,
+		"crc" => $crc,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct wlan_event_def'
+# convert function for 'struct _avm_event_telephony_missed_call_params'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_wlan_event_def {
+sub avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1693,33 +1971,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_id;
-	my $event_data;
+	my $id;
+	my $params;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_id' at offset '0'
-	$event_id = unpack(">I", $in_ref);
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'event_data' at offset '4'
-	( $event_data, $struct_offset ) = avm_event_read_from_binary_union_wlan_event_data(
+	# c-struct component 'params' at offset '4'
+	( $params, $struct_offset ) = avm_event_read_from_binary_union_avm_event_telephony_call_params(
 				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_id" => $event_id,
-		"event_data" => $event_data,
+		"id" => $id,
+		"params" => $params,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_pm_info_stat'
+# convert function for 'struct avm_event_pm_info_stat'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_pm_info_stat {
+sub avm_event_read_from_binary_struct_avm_event_pm_info_stat {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1727,7 +2005,6 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
 	my $reserved1;
 	my $rate_sumact;
 	my $rate_sumcum;
@@ -1765,11 +2042,6 @@
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 	# c-struct component 'reserved1' at offset '0'
 	$reserved1 = unpack("C", $in_ref);
 	$offset += 1;
@@ -1909,7 +2181,6 @@
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
 		"reserved1" => $reserved1,
 		"rate_sumact" => $rate_sumact,
 		"rate_sumcum" => $rate_sumcum,
@@ -1949,9 +2220,9 @@
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_cpu_idle'
+# convert function for 'struct avm_event_tffs_open'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_cpu_idle {
+sub avm_event_read_from_binary_struct_avm_event_tffs_open {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -1959,62 +2230,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $cpu_idle;
-	my $dsl_dsp_idle;
-	my $voice_dsp_idle;
-	my $mem_strictlyused;
-	my $mem_cacheused;
-	my $mem_physfree;
-	my $cputype;
+	my $id;
+	my $mode;
+	my $max_segment_size;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'cpu_idle' at offset '0'
-	$cpu_idle = unpack("C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'dsl_dsp_idle' at offset '1'
-	$dsl_dsp_idle = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'voice_dsp_idle' at offset '2'
-	$voice_dsp_idle = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'mem_strictlyused' at offset '3'
-	$mem_strictlyused = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
-
-	# c-struct component 'mem_cacheused' at offset '4'
-	$mem_cacheused = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'mem_physfree' at offset '5'
-	$mem_physfree = unpack("a" . $offset . "/C", $in_ref);
-	$offset += 1;
+	# c-struct component 'mode' at offset '4'
+	$mode = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'cputype' at offset '6'
-	$cputype = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'max_segment_size' at offset '8'
+	$max_segment_size = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"cpu_idle" => $cpu_idle,
-		"dsl_dsp_idle" => $dsl_dsp_idle,
-		"voice_dsp_idle" => $voice_dsp_idle,
-		"mem_strictlyused" => $mem_strictlyused,
-		"mem_cacheused" => $mem_cacheused,
-		"mem_physfree" => $mem_physfree,
-		"cputype" => $cputype,
+		"id" => $id,
+		"mode" => $mode,
+		"max_segment_size" => $max_segment_size,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_telephony_string'
+# convert function for 'struct _avm_event_id_mask'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_telephony_string {
+sub avm_event_read_from_binary_struct__avm_event_id_mask {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2022,36 +2269,27 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $length;
-	my @string = ();
+	my $mask;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'length' at offset '0'
-	$length = unpack(">I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
-
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
-
-		$string[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	# c-struct component 'mask' at offset '0'
+	( $mask, $struct_offset ) = avm_event_read_from_binary_avm_event_mask_fieldentry(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"length" => $length,
-		"string" => [ @string ],
+		"mask" => $mask,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_log'
+# convert function for 'struct _avm_event_user_mode_source_notify'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_log {
+sub avm_event_read_from_binary_struct__avm_event_user_mode_source_notify {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2059,50 +2297,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $logtype;
-	my $loglen;
-	my $logpointer;
-	my $checksum;
-	my $rebootflag;
+	my $header;
+	my $id;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'logtype' at offset '0'
-	$logtype = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'loglen' at offset '4'
-	$loglen = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'logpointer' at offset '8'
-	$logpointer = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'checksum' at offset '12'
-	$checksum = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'rebootflag' at offset '16'
-	$rebootflag = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"logtype" => $logtype,
-		"loglen" => $loglen,
-		"logpointer" => $logpointer,
-		"checksum" => $checksum,
-		"rebootflag" => $rebootflag,
+		"header" => $header,
+		"id" => $id,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct cpmac_port'
+# convert function for 'struct avm_event_message'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_cpmac_port {
+sub avm_event_read_from_binary_struct_avm_event_message {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2110,56 +2331,75 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $cable;
-	my $link;
-	my $speed100;
-	my $fullduplex;
-	my $speed;
-	my $maxspeed;
+	my $length;
+	my $magic;
+	my $nonce;
+	my $flags;
+	my $result;
+	my $transmitter_handle;
+	my $receiver_handle;
+	my $type;
+	my $message;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'cable' at offset '0'
-	$cable = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'length' at offset '0'
+	$length = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'link' at offset '0'
-	$link = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'magic' at offset '4'
+	$magic = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'speed100' at offset '0'
-	$speed100 = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'nonce' at offset '8'
+	$nonce = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'fullduplex' at offset '0'
-	$fullduplex = unpack("", $in_ref);
+	# c-struct component 'flags' at offset '12'
+	$flags = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'result' at offset '16'
+	$result = unpack("a" . $offset . "/", $in_ref);
 	$offset += 0;
 
-	# c-struct component 'speed' at offset '0'
-	$speed = unpack(">I", $in_ref);
+	# c-struct component 'transmitter_handle' at offset '16'
+	$transmitter_handle = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'maxspeed' at offset '4'
-	$maxspeed = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'receiver_handle' at offset '20'
+	$receiver_handle = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'type' at offset '24'
+	$type = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'message' at offset '28'
+	( $message, $struct_offset ) = avm_event_read_from_binary_union_avm_event_message_union(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"cable" => $cable,
-		"link" => $link,
-		"speed100" => $speed100,
-		"fullduplex" => $fullduplex,
-		"speed" => $speed,
-		"maxspeed" => $maxspeed,
+		"length" => $length,
+		"magic" => $magic,
+		"nonce" => $nonce,
+		"flags" => $flags,
+		"result" => $result,
+		"transmitter_handle" => $transmitter_handle,
+		"receiver_handle" => $receiver_handle,
+		"type" => $type,
+		"message" => $message,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_rpc'
+# convert function for 'struct avm_event_temperature'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_rpc {
+sub avm_event_read_from_binary_struct_avm_event_temperature {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2167,48 +2407,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $type;
-	my $id;
-	my $length;
-	my @message = ();
+	my $temperature;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'id' at offset '4'
-	$id = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'length' at offset '8'
-	$length = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'temperature' at offset '0'
+	$temperature = unpack(">I", $in_ref);
 	$offset += 4;
-	$array_element_anzahl  = $length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
-
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
-
-		$message[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"type" => $type,
-		"id" => $id,
-		"length" => $length,
-		"message" => [ @message ],
+		"temperature" => $temperature,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs'
+# convert function for 'struct _avm_event_remotepcmlink'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs {
+sub avm_event_read_from_binary_struct__avm_event_remotepcmlink {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2216,75 +2434,45 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $src_id;
-	my $dst_id;
-	my $seq_nr;
-	my $ack;
-	my $srv_handle;
-	my $clt_handle;
-	my $result;
+	my $event_header;
 	my $type;
-	my $call;
+	my $sharedlen;
+	my $sharedpointer;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'src_id' at offset '0'
-	$src_id = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'dst_id' at offset '4'
-	$dst_id = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'seq_nr' at offset '8'
-	$seq_nr = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'ack' at offset '12'
-	$ack = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'sharedlen' at offset '4'
+	$sharedlen = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'srv_handle' at offset '16'
-	$srv_handle = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'clt_handle' at offset '16'
-	$clt_handle = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'result' at offset '16'
-	$result = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'type' at offset '16'
-	$type = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'sharedpointer' at offset '8'
+	$sharedpointer = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'call' at offset '20'
-	( $call, $struct_offset ) = avm_event_read_from_binary_union_avm_event_tffs_call_union(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 
 	####### return hash and used length #######
 	$return ( {
-		"src_id" => $src_id,
-		"dst_id" => $dst_id,
-		"seq_nr" => $seq_nr,
-		"ack" => $ack,
-		"srv_handle" => $srv_handle,
-		"clt_handle" => $clt_handle,
-		"result" => $result,
+		"event_header" => $event_header,
 		"type" => $type,
-		"call" => $call,
+		"sharedlen" => $sharedlen,
+		"sharedpointer" => $sharedpointer,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_firmware_update_available'
+# convert function for 'struct _avm_event_telephony_missed_call'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_firmware_update_available {
+sub avm_event_read_from_binary_struct__avm_event_telephony_missed_call {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2293,9 +2481,8 @@
 
 	####### liste of hash components #######
 	my $header;
-	my $type;
-	my $version_length;
-	my @version = ();
+	my $length;
+	my $p;
 
 	####### convert binary message to hash components #######
 
@@ -2304,37 +2491,30 @@
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'version_length' at offset '4'
-	$version_length = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'length' at offset '0'
+	$length = unpack(">I", $in_ref);
 	$offset += 4;
-	$array_element_anzahl  = $version_length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
-
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+	$array_element_anzahl  = $length;
 
-		$version[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	# c-struct component 'p' at offset '4'
+	( $p, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
 		"header" => $header,
-		"type" => $type,
-		"version_length" => $version_length,
-		"version" => [ @version ],
+		"length" => $length,
+		"p" => $p,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_mass_storage_mount'
+# convert function for 'struct avm_event_source_unregister'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_mass_storage_mount {
+sub avm_event_read_from_binary_struct_avm_event_source_unregister {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2342,55 +2522,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
-	my $size;
-	my $free;
-	my $name_length;
-	my @name = ();
+	my $id_mask;
+	my $name;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+	# c-struct component 'id_mask' at offset '0'
+	( $id_mask, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_id_mask(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'size' at offset '0'
-	$size = unpack(">L", $in_ref);
-	$offset += 8;
-
-	# c-struct component 'free' at offset '8'
-	$free = unpack("a" . $offset . "/>L", $in_ref);
-	$offset += 8;
-
-	# c-struct component 'name_length' at offset '16'
-	$name_length = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $name_length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
-
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
-
-		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	# c-struct component 'name' at offset '0'
+	$name = unpack("C32", $in_ref);
+	$offset += 32;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
-		"size" => $size,
-		"free" => $free,
-		"name_length" => $name_length,
-		"name" => [ @name ],
+		"id_mask" => $id_mask,
+		"name" => $name,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_init'
+# convert function for 'struct _avm_event_smarthome_switch_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_init {
+sub avm_event_read_from_binary_struct__avm_event_smarthome_switch_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2398,32 +2556,55 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $mem_offset;
-	my $max_seg_size;
+	my $header;
+	my $type;
+	my $value;
+	my $ain_length;
+	my @ain = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'mem_offset' at offset '0'
-	$mem_offset = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'max_seg_size' at offset '0'
-	$max_seg_size = unpack(">I", $in_ref);
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'value' at offset '4'
+	$value = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'ain_length' at offset '8'
+	$ain_length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $ain_length;
+
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$ain[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"mem_offset" => $mem_offset,
-		"max_seg_size" => $max_seg_size,
+		"header" => $header,
+		"type" => $type,
+		"value" => $value,
+		"ain_length" => $ain_length,
+		"ain" => [ @ain ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_led_info'
+# convert function for 'struct avm_event_telephony_string'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_led_info {
+sub avm_event_read_from_binary_struct_avm_event_telephony_string {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2431,62 +2612,36 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $mode;
-	my $param1;
-	my $param2;
-	my $gpio_driver_type;
-	my $gpio;
-	my $pos;
-	my $name;
+	my $length;
+	my @string = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'mode' at offset '0'
-	$mode = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'param1' at offset '4'
-	$param1 = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'param2' at offset '8'
-	$param2 = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'gpio_driver_type' at offset '12'
-	$gpio_driver_type = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'length' at offset '0'
+	$length = unpack(">I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $length;
 
-	# c-struct component 'gpio' at offset '16'
-	$gpio = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
 
-	# c-struct component 'pos' at offset '20'
-	$pos = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
 
-	# c-struct component 'name' at offset '24'
-	$name = unpack("a" . $offset . "/C32", $in_ref);
-	$offset += 32;
+		$string[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"mode" => $mode,
-		"param1" => $param1,
-		"param2" => $param2,
-		"gpio_driver_type" => $gpio_driver_type,
-		"gpio" => $gpio,
-		"pos" => $pos,
-		"name" => $name,
+		"length" => $length,
+		"string" => [ @string ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_push_button'
+# convert function for 'struct wlan_event_data_client_common'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_push_button {
+sub avm_event_read_from_binary_struct_wlan_event_data_client_common {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2494,32 +2649,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $key;
-	my $pressed;
+	my $mac;
+	my $iface;
+	my $initiator;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'key' at offset '0'
-	$key = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'mac' at offset '0'
+	$mac = unpack("6", $in_ref);
+	$offset += 6;
 
-	# c-struct component 'pressed' at offset '4'
-	$pressed = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'iface' at offset '0'
+	$iface = unpack("CIFNAMSIZ + 1", $in_ref);
+	$offset += IFNAMSIZ + 1;
+
+	# c-struct component 'initiator' at offset '0'
+	$initiator = unpack("C16 + 1", $in_ref);
+	$offset += 16 + 1;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"key" => $key,
-		"pressed" => $pressed,
+		"mac" => $mac,
+		"iface" => $iface,
+		"initiator" => $initiator,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_remotewatchdog'
+# convert function for 'struct avm_event_led_status'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_remotewatchdog {
+sub avm_event_read_from_binary_struct_avm_event_led_status {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2527,38 +2688,44 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $cmd;
-	my $name;
-	my $param;
+	my $led;
+	my $state;
+	my $param_len;
+	my $params;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'cmd' at offset '0'
-	$cmd = unpack(">I", $in_ref);
+	# c-struct component 'led' at offset '0'
+	$led = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'name' at offset '4'
-	$name = unpack("a" . $offset . "/C16", $in_ref);
-	$offset += 16;
+	# c-struct component 'state' at offset '4'
+	$state = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'param' at offset '20'
-	$param = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'param_len' at offset '8'
+	$param_len = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'params' at offset '12'
+	$params = unpack("a" . $offset . "/C245", $in_ref);
+	$offset += 245;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"cmd" => $cmd,
-		"name" => $name,
-		"param" => $param,
+		"led" => $led,
+		"state" => $state,
+		"param_len" => $param_len,
+		"params" => $params,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_telefonprofile'
+# convert function for 'struct _avm_event_powermanagment_remote_ressourceinfo'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_telefonprofile {
+sub avm_event_read_from_binary_struct__avm_event_powermanagment_remote_ressourceinfo {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2566,26 +2733,39 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $on;
+	my $header;
+	my $device;
+	my $power_rate;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'on' at offset '0'
-	$on = unpack(">I", $in_ref);
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
+	# c-struct component 'device' at offset '0'
+	$device = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'power_rate' at offset '4'
+	$power_rate = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"on" => $on,
+		"header" => $header,
+		"device" => $device,
+		"power_rate" => $power_rate,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_write'
+# convert function for 'struct _avm_event_firmware_update_available'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_write {
+sub avm_event_read_from_binary_struct__avm_event_firmware_update_available {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2593,50 +2773,49 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $buff_addr;
-	my $len;
-	my $id;
-	my $final;
-	my $crc;
+	my $header;
+	my $type;
+	my $version_length;
+	my @version = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'buff_addr' at offset '0'
-	$buff_addr = unpack("", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'len' at offset '0'
-	$len = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'final' at offset '4'
-	$final = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'version_length' at offset '4'
+	$version_length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $version_length;
 
-	# c-struct component 'crc' at offset '8'
-	$crc = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$version[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"buff_addr" => $buff_addr,
-		"len" => $len,
-		"id" => $id,
-		"final" => $final,
-		"crc" => $crc,
+		"header" => $header,
+		"type" => $type,
+		"version_length" => $version_length,
+		"version" => [ @version ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _cpmac_event_struct'
+# convert function for 'struct _avm_event_telefonprofile'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__cpmac_event_struct {
+sub avm_event_read_from_binary_struct__avm_event_telefonprofile {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2644,33 +2823,33 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $ports;
-	my $port;
+	my $event_header;
+	my $on;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'ports' at offset '0'
-	$ports = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'port' at offset '4'
-	( $port, $struct_offset ) = avm_event_read_from_binary_struct_cpmac_port(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
+	# c-struct component 'on' at offset '0'
+	$on = unpack(">I", $in_ref);
+	$offset += 4;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"ports" => $ports,
-		"port" => $port,
+		"event_header" => $event_header,
+		"on" => $on,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_mass_storage_unmount'
+# convert function for 'struct _avm_event_powermanagment_remote'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_mass_storage_unmount {
+sub avm_event_read_from_binary_struct__avm_event_powermanagment_remote {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2678,36 +2857,40 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $name_length;
-	my @name = ();
+	my $header;
+	my $remote_action;
+	my $param;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'name_length' at offset '0'
-	$name_length = unpack(">I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $name_length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+	# c-struct component 'remote_action' at offset '0'
+	$remote_action = unpack(">I", $in_ref);
+	$offset += 4;
 
-		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	# c-struct component 'param' at offset '4'
+	( $param, $struct_offset ) = avm_event_read_from_binary_union_avm_event_powermanagment_remote_union(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"name_length" => $name_length,
-		"name" => [ @name ],
+		"header" => $header,
+		"remote_action" => $remote_action,
+		"param" => $param,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_cpu_idle'
+# convert function for 'struct avm_event_cpu_idle'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cpu_idle {
+sub avm_event_read_from_binary_struct_avm_event_cpu_idle {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2715,7 +2898,6 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
 	my $cpu_idle;
 	my $dsl_dsp_idle;
 	my $voice_dsp_idle;
@@ -2726,11 +2908,6 @@
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 	# c-struct component 'cpu_idle' at offset '0'
 	$cpu_idle = unpack("C", $in_ref);
 	$offset += 1;
@@ -2762,7 +2939,6 @@
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
 		"cpu_idle" => $cpu_idle,
 		"dsl_dsp_idle" => $dsl_dsp_idle,
 		"voice_dsp_idle" => $voice_dsp_idle,
@@ -2775,108 +2951,9 @@
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_paniclog'
-##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_paniclog {
-	my ( $msg_length, $in_ref ) = $@;
-	my $offset = 0;
-	my $struct_offset;
-	my $array_element_anzahl = 0;
-	my $array_element_size = 1;
-
-	####### liste of hash components #######
-	my $buff_addr;
-	my $len;
-	my $crc;
-
-	####### convert binary message to hash components #######
-
-	# c-struct component 'buff_addr' at offset '0'
-	$buff_addr = unpack("", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'len' at offset '0'
-	$len = unpack("", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'crc' at offset '0'
-	$crc = unpack("", $in_ref);
-	$offset += 0;
-
-
-	####### return hash and used length #######
-	$return ( {
-		"buff_addr" => $buff_addr,
-		"len" => $len,
-		"crc" => $crc,
-	}, $offset );
-}
-
-
-##########################################################################################
-# convert function for 'struct avm_event_cpu_run'
-##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_cpu_run {
-	my ( $msg_length, $in_ref ) = $@;
-	my $offset = 0;
-	my $struct_offset;
-	my $array_element_anzahl = 0;
-	my $array_element_size = 1;
-
-	####### liste of hash components #######
-	my $cputype;
-	my $cpu_run;
-
-	####### convert binary message to hash components #######
-
-	# c-struct component 'cputype' at offset '0'
-	$cputype = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'cpu_run' at offset '4'
-	$cpu_run = unpack("a" . $offset . "/C4", $in_ref);
-	$offset += 4;
-
-
-	####### return hash and used length #######
-	$return ( {
-		"cputype" => $cputype,
-		"cpu_run" => $cpu_run,
-	}, $offset );
-}
-
-
-##########################################################################################
-# convert function for 'struct _avm_event_cmd_param_release'
-##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cmd_param_release {
-	my ( $msg_length, $in_ref ) = $@;
-	my $offset = 0;
-	my $struct_offset;
-	my $array_element_anzahl = 0;
-	my $array_element_size = 1;
-
-	####### liste of hash components #######
-	my $Name;
-
-	####### convert binary message to hash components #######
-
-	# c-struct component 'Name' at offset '0'
-	$Name = unpack("C33", $in_ref);
-	$offset += 33;
-
-
-	####### return hash and used length #######
-	$return ( {
-		"Name" => $Name,
-	}, $offset );
-}
-
-
-##########################################################################################
-# convert function for 'struct _avm_event_mass_storage_unmount'
+# convert function for 'struct avm_event_remote_source_trigger_request'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_mass_storage_unmount {
+sub avm_event_read_from_binary_struct_avm_event_remote_source_trigger_request {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2884,43 +2961,27 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
-	my $name_length;
-	my @name = ();
+	my $data;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+	# c-struct component 'data' at offset '0'
+	( $data, $struct_offset ) = avm_event_read_from_binary_struct_avm_event_data(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'name_length' at offset '0'
-	$name_length = unpack(">I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $name_length;
-
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
-
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
-
-		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
-
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
-		"name_length" => $name_length,
-		"name" => [ @name ],
+		"data" => $data,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct wlan_event_data_client_state_change'
+# convert function for 'struct _avm_event_remotewatchdog'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_wlan_event_data_client_state_change {
+sub avm_event_read_from_binary_struct__avm_event_remotewatchdog {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -2928,74 +2989,45 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $common;
-	my $state;
+	my $event_header;
+	my $cmd;
+	my $name;
+	my $param;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'common' at offset '0'
-	( $common, $struct_offset ) = avm_event_read_from_binary_struct_wlan_event_data_client_common(
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'state' at offset '0'
-	$state = unpack("", $in_ref);
-	$offset += 0;
-
-
-	####### return hash and used length #######
-	$return ( {
-		"common" => $common,
-		"state" => $state,
-	}, $offset );
-}
-
-
-##########################################################################################
-# convert function for 'struct _avm_event_internet_new_ip'
-##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_internet_new_ip {
-	my ( $msg_length, $in_ref ) = $@;
-	my $offset = 0;
-	my $struct_offset;
-	my $array_element_anzahl = 0;
-	my $array_element_size = 1;
-
-	####### liste of hash components #######
-	my $header;
-	my $sel;
-	my $params;
-
-	####### convert binary message to hash components #######
+	# c-struct component 'cmd' at offset '0'
+	$cmd = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'name' at offset '4'
+	$name = unpack("a" . $offset . "/C16", $in_ref);
+	$offset += 16;
 
-	# c-struct component 'sel' at offset '0'
-	$sel = unpack(">I", $in_ref);
+	# c-struct component 'param' at offset '20'
+	$param = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'params' at offset '4'
-	( $params, $struct_offset ) = avm_event_read_from_binary_union_avm_event_internet_new_ip_param(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
-		"sel" => $sel,
-		"params" => $params,
+		"event_header" => $event_header,
+		"cmd" => $cmd,
+		"name" => $name,
+		"param" => $param,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_user_mode_source_notify'
+# convert function for 'struct avm_event_tffs_read'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_user_mode_source_notify {
+sub avm_event_read_from_binary_struct_avm_event_tffs_read {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3003,33 +3035,44 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
+	my $buff_addr;
+	my $len;
 	my $id;
+	my $crc;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'buff_addr' at offset '0'
+	$buff_addr = unpack("", $in_ref);
+	$offset += 0;
+
+	# c-struct component 'len' at offset '0'
+	$len = unpack("", $in_ref);
+	$offset += 0;
 
 	# c-struct component 'id' at offset '0'
 	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'crc' at offset '4'
+	$crc = unpack("a" . $offset . "/", $in_ref);
+	$offset += 0;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
+		"buff_addr" => $buff_addr,
+		"len" => $len,
 		"id" => $id,
+		"crc" => $crc,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_message'
+# convert function for 'struct avm_event_tffs_info'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_message {
+sub avm_event_read_from_binary_struct_avm_event_tffs_info {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3037,75 +3080,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $length;
-	my $magic;
-	my $nonce;
-	my $flags;
-	my $result;
-	my $transmitter_handle;
-	my $receiver_handle;
-	my $type;
-	my $message;
+	my $fill_level;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'length' at offset '0'
-	$length = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'magic' at offset '4'
-	$magic = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'nonce' at offset '8'
-	$nonce = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'flags' at offset '12'
-	$flags = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'result' at offset '16'
-	$result = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'transmitter_handle' at offset '16'
-	$transmitter_handle = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'receiver_handle' at offset '20'
-	$receiver_handle = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'type' at offset '24'
-	$type = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'fill_level' at offset '0'
+	$fill_level = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'message' at offset '28'
-	( $message, $struct_offset ) = avm_event_read_from_binary_union_avm_event_message_union(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 
 	####### return hash and used length #######
 	$return ( {
-		"length" => $length,
-		"magic" => $magic,
-		"nonce" => $nonce,
-		"flags" => $flags,
-		"result" => $result,
-		"transmitter_handle" => $transmitter_handle,
-		"receiver_handle" => $receiver_handle,
-		"type" => $type,
-		"message" => $message,
+		"fill_level" => $fill_level,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_telephony_missed_call'
+# convert function for 'struct _avm_event_cpu_idle'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_telephony_missed_call {
+sub avm_event_read_from_binary_struct__avm_event_cpu_idle {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3113,101 +3107,61 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
-	my $length;
-	my $p;
+	my $event_header;
+	my $cpu_idle;
+	my $dsl_dsp_idle;
+	my $voice_dsp_idle;
+	my $mem_strictlyused;
+	my $mem_cacheused;
+	my $mem_physfree;
+	my $cputype;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'length' at offset '0'
-	$length = unpack(">I", $in_ref);
-	$offset += 4;
-	$array_element_anzahl  = $length;
-
-	# c-struct component 'p' at offset '4'
-	( $p, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-
-	####### return hash and used length #######
-	$return ( {
-		"header" => $header,
-		"length" => $length,
-		"p" => $p,
-	}, $offset );
-}
-
-
-##########################################################################################
-# convert function for 'struct avm_event_powermanagment_remote_ressourceinfo'
-##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_powermanagment_remote_ressourceinfo {
-	my ( $msg_length, $in_ref ) = $@;
-	my $offset = 0;
-	my $struct_offset;
-	my $array_element_anzahl = 0;
-	my $array_element_size = 1;
-
-	####### liste of hash components #######
-	my $device;
-	my $power_rate;
-
-	####### convert binary message to hash components #######
-
-	# c-struct component 'device' at offset '0'
-	$device = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'power_rate' at offset '4'
-	$power_rate = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
+	# c-struct component 'cpu_idle' at offset '0'
+	$cpu_idle = unpack("C", $in_ref);
+	$offset += 1;
 
-	####### return hash and used length #######
-	$return ( {
-		"device" => $device,
-		"power_rate" => $power_rate,
-	}, $offset );
-}
+	# c-struct component 'dsl_dsp_idle' at offset '1'
+	$dsl_dsp_idle = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
+	# c-struct component 'voice_dsp_idle' at offset '2'
+	$voice_dsp_idle = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-##########################################################################################
-# convert function for 'struct avm_event_telephony_missed_call'
-##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_telephony_missed_call {
-	my ( $msg_length, $in_ref ) = $@;
-	my $offset = 0;
-	my $struct_offset;
-	my $array_element_anzahl = 0;
-	my $array_element_size = 1;
+	# c-struct component 'mem_strictlyused' at offset '3'
+	$mem_strictlyused = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-	####### liste of hash components #######
-	my $length;
-	my $p;
+	# c-struct component 'mem_cacheused' at offset '4'
+	$mem_cacheused = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-	####### convert binary message to hash components #######
+	# c-struct component 'mem_physfree' at offset '5'
+	$mem_physfree = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
-	# c-struct component 'length' at offset '0'
-	$length = unpack(">I", $in_ref);
+	# c-struct component 'cputype' at offset '6'
+	$cputype = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
-	$array_element_anzahl  = $length;
-
-	# c-struct component 'p' at offset '4'
-	( $p, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_telephony_missed_call_params(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"length" => $length,
-		"p" => $p,
+		"event_header" => $event_header,
+		"cpu_idle" => $cpu_idle,
+		"dsl_dsp_idle" => $dsl_dsp_idle,
+		"voice_dsp_idle" => $voice_dsp_idle,
+		"mem_strictlyused" => $mem_strictlyused,
+		"mem_cacheused" => $mem_cacheused,
+		"mem_physfree" => $mem_physfree,
+		"cputype" => $cputype,
 	}, $offset );
 }
 
@@ -3283,9 +3237,9 @@
 
 
 ##########################################################################################
-# convert function for 'struct wlan_event_data_client_connect_info'
+# convert function for 'struct _avm_event_push_button'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_wlan_event_data_client_connect_info {
+sub avm_event_read_from_binary_struct__avm_event_push_button {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3293,51 +3247,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $common;
-	my $info_context;
-	my $reason;
-	my $max_node_count;
-	my $ieee80211_code;
+	my $id;
+	my $key;
+	my $pressed;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'common' at offset '0'
-	( $common, $struct_offset ) = avm_event_read_from_binary_struct_wlan_event_data_client_common(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'info_context' at offset '0'
-	$info_context = unpack("", $in_ref);
-	$offset += 0;
-
-	# c-struct component 'reason' at offset '0'
-	$reason = unpack("", $in_ref);
-	$offset += 0;
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'max_node_count' at offset '0'
-	$max_node_count = unpack(">I", $in_ref);
+	# c-struct component 'key' at offset '4'
+	$key = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'ieee80211_code' at offset '4'
-	$ieee80211_code = unpack("a" . $offset . "/>S", $in_ref);
-	$offset += 2;
+	# c-struct component 'pressed' at offset '8'
+	$pressed = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"common" => $common,
-		"info_context" => $info_context,
-		"reason" => $reason,
-		"max_node_count" => $max_node_count,
-		"ieee80211_code" => $ieee80211_code,
+		"id" => $id,
+		"key" => $key,
+		"pressed" => $pressed,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_log'
+# convert function for 'struct avm_event_cpu_run'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_log {
+sub avm_event_read_from_binary_struct_avm_event_cpu_run {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3345,49 +3286,24 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $logtype;
-	my $loglen;
-	my $logpointer;
-	my $checksum;
-	my $rebootflag;
+	my $cputype;
+	my $cpu_run;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'logtype' at offset '0'
-	$logtype = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'loglen' at offset '4'
-	$loglen = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'logpointer' at offset '8'
-	$logpointer = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'checksum' at offset '12'
-	$checksum = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'cputype' at offset '0'
+	$cputype = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'rebootflag' at offset '16'
-	$rebootflag = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'cpu_run' at offset '4'
+	$cpu_run = unpack("a" . $offset . "/C4", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"logtype" => $logtype,
-		"loglen" => $loglen,
-		"logpointer" => $logpointer,
-		"checksum" => $checksum,
-		"rebootflag" => $rebootflag,
+		"cputype" => $cputype,
+		"cpu_run" => $cpu_run,
 	}, $offset );
 }
 
@@ -3442,9 +3358,9 @@
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_powermanagment_status'
+# convert function for 'struct _avm_event_header'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_powermanagment_status {
+sub avm_event_read_from_binary_struct__avm_event_header {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3452,40 +3368,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $substatus;
-	my $param;
+	my $id;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'substatus' at offset '0'
-	$substatus = unpack(">I", $in_ref);
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'param' at offset '4'
-	( $param, $struct_offset ) = avm_event_read_from_binary_union___powermanagment_status_union(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"substatus" => $substatus,
-		"param" => $param,
+		"id" => $id,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_powerline_status'
+# convert function for 'struct cpmac_event_struct'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_powerline_status {
+sub avm_event_read_from_binary_struct_cpmac_event_struct {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3493,26 +3395,40 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $status;
+	my $event_header;
+	my $ports;
+	my $port;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'status' at offset '0'
-	$status = unpack(">I", $in_ref);
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
+	# c-struct component 'ports' at offset '0'
+	$ports = unpack(">I", $in_ref);
 	$offset += 4;
 
+	# c-struct component 'port' at offset '4'
+	( $port, $struct_offset ) = avm_event_read_from_binary_struct_cpmac_port(
+				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
 
 	####### return hash and used length #######
 	$return ( {
-		"status" => $status,
+		"event_header" => $event_header,
+		"ports" => $ports,
+		"port" => $port,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_id_mask'
+# convert function for 'struct avm_event_led_info'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_id_mask {
+sub avm_event_read_from_binary_struct_avm_event_led_info {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3520,27 +3436,62 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $mask;
+	my $mode;
+	my $param1;
+	my $param2;
+	my $gpio_driver_type;
+	my $gpio;
+	my $pos;
+	my $name;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'mask' at offset '0'
-	( $mask, $struct_offset ) = avm_event_read_from_binary_avm_event_mask_fieldentry(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'mode' at offset '0'
+	$mode = unpack(">I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'param1' at offset '4'
+	$param1 = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'param2' at offset '8'
+	$param2 = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'gpio_driver_type' at offset '12'
+	$gpio_driver_type = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'gpio' at offset '16'
+	$gpio = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'pos' at offset '20'
+	$pos = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'name' at offset '24'
+	$name = unpack("a" . $offset . "/C32", $in_ref);
+	$offset += 32;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"mask" => $mask,
+		"mode" => $mode,
+		"param1" => $param1,
+		"param2" => $param2,
+		"gpio_driver_type" => $gpio_driver_type,
+		"gpio" => $gpio,
+		"pos" => $pos,
+		"name" => $name,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_wlan'
+# convert function for 'struct avm_event_remotepcmlink'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_wlan {
+sub avm_event_read_from_binary_struct_avm_event_remotepcmlink {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3548,82 +3499,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $mac;
-	my $u1;
-	my $event;
-	my $info;
-	my $status;
-	my $u2;
-	my $if_name;
-	my $ev_initiator;
-	my $ev_reason;
-	my $avm_capabilities;
+	my $type;
+	my $sharedlen;
+	my $sharedpointer;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'mac' at offset '0'
-	$mac = unpack("C6", $in_ref);
-	$offset += 6;
-
-	# c-struct component 'u1' at offset '6'
-	( $u1, $struct_offset ) = avm_event_read_from_binary_union_avm_event_wlan_client_status_u1(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'event' at offset '6'
-	$event = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'info' at offset '10'
-	$info = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'status' at offset '14'
-	$status = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'u2' at offset '18'
-	( $u2, $struct_offset ) = avm_event_read_from_binary_union_avm_event_wlan_client_status_u2(
-				( $msg_length - $offset), unpack("a" . $offset . "/C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'if_name' at offset '18'
-	$if_name = unpack("a" . $offset . "/CIFNAMSIZ", $in_ref);
-	$offset += IFNAMSIZ;
-
-	# c-struct component 'ev_initiator' at offset '18'
-	$ev_initiator = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'type' at offset '0'
+	$type = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'ev_reason' at offset '22'
-	$ev_reason = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'sharedlen' at offset '4'
+	$sharedlen = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'avm_capabilities' at offset '26'
-	$avm_capabilities = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'sharedpointer' at offset '8'
+	$sharedpointer = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"mac" => $mac,
-		"u1" => $u1,
-		"event" => $event,
-		"info" => $info,
-		"status" => $status,
-		"u2" => $u2,
-		"if_name" => $if_name,
-		"ev_initiator" => $ev_initiator,
-		"ev_reason" => $ev_reason,
-		"avm_capabilities" => $avm_capabilities,
+		"type" => $type,
+		"sharedlen" => $sharedlen,
+		"sharedpointer" => $sharedpointer,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_cmd_param_register'
+# convert function for 'struct wlan_event_data_scan_common'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_cmd_param_register {
+sub avm_event_read_from_binary_struct_wlan_event_data_scan_common {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3631,33 +3538,32 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $mask;
-	my $Name;
+	my $iface;
+	my $initiator;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'mask' at offset '0'
-	( $mask, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_id_mask(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'iface' at offset '0'
+	$iface = unpack("CIFNAMSIZ + 1", $in_ref);
+	$offset += IFNAMSIZ + 1;
 
-	# c-struct component 'Name' at offset '0'
-	$Name = unpack("C33", $in_ref);
-	$offset += 33;
+	# c-struct component 'initiator' at offset '0'
+	$initiator = unpack("C16 + 1", $in_ref);
+	$offset += 16 + 1;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"mask" => $mask,
-		"Name" => $Name,
+		"iface" => $iface,
+		"initiator" => $initiator,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_source_notifier'
+# convert function for 'struct avm_event_tffs_cleanup'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_source_notifier {
+sub avm_event_read_from_binary_struct_avm_event_tffs_cleanup {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3665,26 +3571,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id;
+	my $dummy;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
+	# c-struct component 'dummy' at offset '0'
+	$dummy = unpack(">I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id" => $id,
+		"dummy" => $dummy,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_firmware_update_available'
+# convert function for 'struct avm_event_mass_storage_unmount'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_firmware_update_available {
+sub avm_event_read_from_binary_struct_avm_event_mass_storage_unmount {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3692,42 +3598,36 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $type;
-	my $version_length;
-	my @version = ();
+	my $name_length;
+	my @name = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
-
-	# c-struct component 'version_length' at offset '4'
-	$version_length = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'name_length' at offset '0'
+	$name_length = unpack(">I", $in_ref);
 	$offset += 4;
-	$array_element_anzahl  = $version_length;
+	$array_element_anzahl  = $name_length;
 
 	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
 
 		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
 
-		$version[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
 	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"type" => $type,
-		"version_length" => $version_length,
-		"version" => [ @version ],
+		"name_length" => $name_length,
+		"name" => [ @name ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_cleanup'
+# convert function for 'struct avm_event_ping'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_cleanup {
+sub avm_event_read_from_binary_struct_avm_event_ping {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3735,26 +3635,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $dummy;
+	my $seq;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'dummy' at offset '0'
-	$dummy = unpack(">I", $in_ref);
+	# c-struct component 'seq' at offset '0'
+	$seq = unpack(">I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"dummy" => $dummy,
+		"seq" => $seq,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_tffs_notify'
+# convert function for 'struct avm_event_mass_storage_mount'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_tffs_notify {
+sub avm_event_read_from_binary_struct_avm_event_mass_storage_mount {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3762,32 +3662,48 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id;
-	my $event;
+	my $size;
+	my $free;
+	my $name_length;
+	my @name = ();
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id' at offset '0'
-	$id = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'size' at offset '0'
+	$size = unpack(">L", $in_ref);
+	$offset += 8;
 
-	# c-struct component 'event' at offset '4'
-	$event = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'free' at offset '8'
+	$free = unpack("a" . $offset . "/>L", $in_ref);
+	$offset += 8;
+
+	# c-struct component 'name_length' at offset '16'
+	$name_length = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
+	$array_element_anzahl  = $name_length;
+
+	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+
+		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
+
+		$name[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
+	}
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id" => $id,
-		"event" => $event,
+		"size" => $size,
+		"free" => $free,
+		"name_length" => $name_length,
+		"name" => [ @name ],
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_led_status'
+# convert function for 'struct _avm_event_cpu_run'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_led_status {
+sub avm_event_read_from_binary_struct__avm_event_cpu_run {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3795,44 +3711,39 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $led;
-	my $state;
-	my $param_len;
-	my $params;
+	my $event_header;
+	my $cputype;
+	my $cpu_run;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'led' at offset '0'
-	$led = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'event_header' at offset '0'
+	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'state' at offset '4'
-	$state = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'cputype' at offset '0'
+	$cputype = unpack(">I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'param_len' at offset '8'
-	$param_len = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'cpu_run' at offset '4'
+	$cpu_run = unpack("a" . $offset . "/C4", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'params' at offset '12'
-	$params = unpack("a" . $offset . "/C245", $in_ref);
-	$offset += 245;
-
 
 	####### return hash and used length #######
 	$return ( {
-		"led" => $led,
-		"state" => $state,
-		"param_len" => $param_len,
-		"params" => $params,
+		"event_header" => $event_header,
+		"cputype" => $cputype,
+		"cpu_run" => $cpu_run,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct wlan_event_data_client_common'
+# convert function for 'struct avm_event_unserialised'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_wlan_event_data_client_common {
+sub avm_event_read_from_binary_struct_avm_event_unserialised {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3840,38 +3751,38 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $mac;
-	my $iface;
-	my $initiator;
+	my $evnt_id;
+	my $data_len;
+	my $data;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'mac' at offset '0'
-	$mac = unpack("6", $in_ref);
-	$offset += 6;
+	# c-struct component 'evnt_id' at offset '0'
+	$evnt_id = unpack("", $in_ref);
+	$offset += 0;
 
-	# c-struct component 'iface' at offset '0'
-	$iface = unpack("CIFNAMSIZ + 1", $in_ref);
-	$offset += IFNAMSIZ + 1;
+	# c-struct component 'data_len' at offset '0'
+	$data_len = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'initiator' at offset '0'
-	$initiator = unpack("C16 + 1", $in_ref);
-	$offset += 16 + 1;
+	# c-struct component 'data' at offset '4'
+	$data = unpack("a" . $offset . "/C", $in_ref);
+	$offset += 1;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"mac" => $mac,
-		"iface" => $iface,
-		"initiator" => $initiator,
+		"evnt_id" => $evnt_id,
+		"data_len" => $data_len,
+		"data" => $data,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_powerline_status'
+# convert function for 'struct avm_event_telefonprofile'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_powerline_status {
+sub avm_event_read_from_binary_struct_avm_event_telefonprofile {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3879,33 +3790,26 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $event_header;
-	my $status;
+	my $on;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'event_header' at offset '0'
-	( $event_header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
-
-	# c-struct component 'status' at offset '0'
-	$status = unpack(">I", $in_ref);
+	# c-struct component 'on' at offset '0'
+	$on = unpack(">I", $in_ref);
 	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"event_header" => $event_header,
-		"status" => $status,
+		"on" => $on,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct _avm_event_smarthome_switch_status'
+# convert function for 'struct wlan_event_data_client_connect_info'
 ##########################################################################################
-sub avm_event_read_from_binary_struct__avm_event_smarthome_switch_status {
+sub avm_event_read_from_binary_struct_wlan_event_data_client_connect_info {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3913,55 +3817,78 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $header;
-	my $type;
-	my $value;
-	my $ain_length;
-	my @ain = ();
+	my $common;
+	my $info_context;
+	my $reason;
+	my $max_node_count;
+	my $ieee80211_code;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'header' at offset '0'
-	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+	# c-struct component 'common' at offset '0'
+	( $common, $struct_offset ) = avm_event_read_from_binary_struct_wlan_event_data_client_common(
 				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
 	$offset += $struct_offset;
 
-	# c-struct component 'type' at offset '0'
-	$type = unpack(">I", $in_ref);
-	$offset += 4;
+	# c-struct component 'info_context' at offset '0'
+	$info_context = unpack("", $in_ref);
+	$offset += 0;
 
-	# c-struct component 'value' at offset '4'
-	$value = unpack("a" . $offset . "/>I", $in_ref);
-	$offset += 4;
+	# c-struct component 'reason' at offset '0'
+	$reason = unpack("", $in_ref);
+	$offset += 0;
 
-	# c-struct component 'ain_length' at offset '8'
-	$ain_length = unpack("a" . $offset . "/>I", $in_ref);
+	# c-struct component 'max_node_count' at offset '0'
+	$max_node_count = unpack(">I", $in_ref);
 	$offset += 4;
-	$array_element_anzahl  = $ain_length;
 
-	$for ( my $i = 0 ; $i < $array_element_anzahl ; $i++ ) {
+	# c-struct component 'ieee80211_code' at offset '4'
+	$ieee80211_code = unpack("a" . $offset . "/>S", $in_ref);
+	$offset += 2;
 
-		my @unpack_type = ( " ", "C", ">S", ">C>S", ">I" );
 
-		$ain[$i] = unpack("a" . $offset . "/" . $unpack_type[$array_element_size], $in_ref );
-	}
+	####### return hash and used length #######
+	$return ( {
+		"common" => $common,
+		"info_context" => $info_context,
+		"reason" => $reason,
+		"max_node_count" => $max_node_count,
+		"ieee80211_code" => $ieee80211_code,
+	}, $offset );
+}
+
+
+##########################################################################################
+# convert function for 'struct _avm_event_cmd_param_trigger'
+##########################################################################################
+sub avm_event_read_from_binary_struct__avm_event_cmd_param_trigger {
+	my ( $msg_length, $in_ref ) = $@;
+	my $offset = 0;
+	my $struct_offset;
+	my $array_element_anzahl = 0;
+	my $array_element_size = 1;
+
+	####### liste of hash components #######
+	my $id;
+
+	####### convert binary message to hash components #######
+
+	# c-struct component 'id' at offset '0'
+	$id = unpack(">I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"header" => $header,
-		"type" => $type,
-		"value" => $value,
-		"ain_length" => $ain_length,
-		"ain" => [ @ain ],
+		"id" => $id,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_source_register'
+# convert function for 'struct avm_event_log'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_source_register {
+sub avm_event_read_from_binary_struct_avm_event_log {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -3969,33 +3896,50 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $id_mask;
-	my $name;
+	my $logtype;
+	my $loglen;
+	my $logpointer;
+	my $checksum;
+	my $rebootflag;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'id_mask' at offset '0'
-	( $id_mask, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_id_mask(
-				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
-	$offset += $struct_offset;
+	# c-struct component 'logtype' at offset '0'
+	$logtype = unpack(">I", $in_ref);
+	$offset += 4;
 
-	# c-struct component 'name' at offset '0'
-	$name = unpack("C32", $in_ref);
-	$offset += 32;
+	# c-struct component 'loglen' at offset '4'
+	$loglen = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'logpointer' at offset '8'
+	$logpointer = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'checksum' at offset '12'
+	$checksum = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'rebootflag' at offset '16'
+	$rebootflag = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"id_mask" => $id_mask,
-		"name" => $name,
+		"logtype" => $logtype,
+		"loglen" => $loglen,
+		"logpointer" => $logpointer,
+		"checksum" => $checksum,
+		"rebootflag" => $rebootflag,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct avm_event_checkpoint'
+# convert function for 'struct _avm_event_wlan'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_avm_event_checkpoint {
+sub avm_event_read_from_binary_struct__avm_event_wlan {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -4003,32 +3947,87 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $node_id;
-	my $checkpoints;
+	my $header;
+	my $mac;
+	my $u1;
+	my $event;
+	my $info;
+	my $status;
+	my $u2;
+	my $if_name;
+	my $ev_initiator;
+	my $ev_reason;
+	my $avm_capabilities;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'node_id' at offset '0'
-	$node_id = unpack(">I", $in_ref);
+	# c-struct component 'header' at offset '0'
+	( $header, $struct_offset ) = avm_event_read_from_binary_struct__avm_event_header(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
+
+	# c-struct component 'mac' at offset '0'
+	$mac = unpack("C6", $in_ref);
+	$offset += 6;
+
+	# c-struct component 'u1' at offset '6'
+	$u1 = unpack("a" . $offset . "/>I", $in_ref);
 	$offset += 4;
 
-	# c-struct component 'checkpoints' at offset '4'
-	$checkpoints = unpack("a" . $offset . "/", $in_ref);
-	$offset += 0;
+	# c-struct component 'event' at offset '10'
+	$event = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'info' at offset '14'
+	$info = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'status' at offset '18'
+	$status = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'u2' at offset '22'
+	$u2 = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'if_name' at offset '26'
+	$if_name = unpack("a" . $offset . "/CIFNAMSIZ", $in_ref);
+	$offset += IFNAMSIZ;
+
+	# c-struct component 'ev_initiator' at offset '26'
+	$ev_initiator = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'ev_reason' at offset '30'
+	$ev_reason = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
+
+	# c-struct component 'avm_capabilities' at offset '34'
+	$avm_capabilities = unpack("a" . $offset . "/>I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"node_id" => $node_id,
-		"checkpoints" => $checkpoints,
+		"header" => $header,
+		"mac" => $mac,
+		"u1" => $u1,
+		"event" => $event,
+		"info" => $info,
+		"status" => $status,
+		"u2" => $u2,
+		"if_name" => $if_name,
+		"ev_initiator" => $ev_initiator,
+		"ev_reason" => $ev_reason,
+		"avm_capabilities" => $avm_capabilities,
 	}, $offset );
 }
 
 
 ##########################################################################################
-# convert function for 'struct wlan_event_data_scan_common'
+# convert function for 'struct wlan_event_data_scan_event_info'
 ##########################################################################################
-sub avm_event_read_from_binary_struct_wlan_event_data_scan_common {
+sub avm_event_read_from_binary_struct_wlan_event_data_scan_event_info {
 	my ( $msg_length, $in_ref ) = $@;
 	my $offset = 0;
 	my $struct_offset;
@@ -4036,24 +4035,25 @@
 	my $array_element_size = 1;
 
 	####### liste of hash components #######
-	my $iface;
-	my $initiator;
+	my $common;
+	my $event_type;
 
 	####### convert binary message to hash components #######
 
-	# c-struct component 'iface' at offset '0'
-	$iface = unpack("CIFNAMSIZ + 1", $in_ref);
-	$offset += IFNAMSIZ + 1;
+	# c-struct component 'common' at offset '0'
+	( $common, $struct_offset ) = avm_event_read_from_binary_struct_wlan_event_data_scan_common(
+				( $msg_length - $offset), unpack("C" . ($msg_length - $offset), $in_ref));
+	$offset += $struct_offset;
 
-	# c-struct component 'initiator' at offset '0'
-	$initiator = unpack("C16 + 1", $in_ref);
-	$offset += 16 + 1;
+	# c-struct component 'event_type' at offset '0'
+	$event_type = unpack(">I", $in_ref);
+	$offset += 4;
 
 
 	####### return hash and used length #######
 	$return ( {
-		"iface" => $iface,
-		"initiator" => $initiator,
+		"common" => $common,
+		"event_type" => $event_type,
 	}, $offset );
 }
 
--- linux-3.10/drivers/char/avm_new/avm_event.h	2017-03-17 16:37:46.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/avm_event.h	2019-08-22 13:31:47.000000000 +0200
@@ -877,47 +877,80 @@
 #endif /*--- #ifdef WIRESHARK_PLUGIN ---*/
 
 
-char *get_enum_wlan_sm_states_name (enum wlan_sm_states value);
-char *get_enum___avm_event_cmd_name (enum __avm_event_cmd value);
-char *get_enum_avm_event_powermanagment_remote_action_name (enum avm_event_powermanagment_remote_action value);
-char *get_enum_avm_event_switch_type_name (enum avm_event_switch_type value);
-char *get_enum__avm_event_push_button_key_name (enum _avm_event_push_button_key value);
-char *get_enum_ePLCState_name (enum ePLCState value);
-char *get_enum__avm_logtype_name (enum _avm_logtype value);
-char *get_enum_wlan_event_sel_name (enum wlan_event_sel value);
 char *get_enum_wlan_info_sel_name (enum wlan_info_sel value);
-char *get_enum_avm_event_tffs_call_type_name (enum avm_event_tffs_call_type value);
+char *get_enum_avm_event_telephony_param_sel_name (enum avm_event_telephony_param_sel value);
+char *get_enum_avm_event_switch_type_name (enum avm_event_switch_type value);
+char *get_enum_wlan_sm_states_name (enum wlan_sm_states value);
+char *get_enum_wlan_event_scan_type_name (enum wlan_event_scan_type value);
+char *get_enum__avm_event_ethernet_speed_name (enum _avm_event_ethernet_speed value);
 char *get_enum_avm_event_msg_type_name (enum avm_event_msg_type value);
+char *get_enum__avm_remotepcmlinktype_name (enum _avm_remotepcmlinktype value);
+char *get_enum_avm_event_powermanagment_remote_action_name (enum avm_event_powermanagment_remote_action value);
+char *get_enum_wlan_event_id_name (enum wlan_event_id value);
+char *get_enum_avm_event_led_id_name (enum avm_event_led_id value);
 char *get_enum__powermanagment_device_name (enum _powermanagment_device value);
-char *get_enum_avm_event_telephony_param_sel_name (enum avm_event_telephony_param_sel value);
+char *get_enum___avm_event_cmd_name (enum __avm_event_cmd value);
+char *get_enum_avm_event_tffs_notify_event_name (enum avm_event_tffs_notify_event value);
 char *get_enum__powermanagment_status_type_name (enum _powermanagment_status_type value);
+char *get_enum__cputype_name (enum _cputype value);
+char *get_enum__avm_event_push_button_key_name (enum _avm_event_push_button_key value);
 char *get_enum__avm_event_id_name (enum _avm_event_id value);
-char *get_enum_wlan_info_special_name (enum wlan_info_special value);
+char *get_enum__avm_logtype_name (enum _avm_logtype value);
+char *get_enum_avm_event_firmware_type_name (enum avm_event_firmware_type value);
 char *get_enum__avm_rpctype_name (enum _avm_rpctype value);
-char *get_enum__avm_event_ethernet_speed_name (enum _avm_event_ethernet_speed value);
+char *get_enum_wlan_info_special_name (enum wlan_info_special value);
+char *get_enum__avm_remote_wdt_cmd_name (enum _avm_remote_wdt_cmd value);
 char *get_enum_avm_event_internet_new_ip_param_sel_name (enum avm_event_internet_new_ip_param_sel value);
-char *get_enum__avm_remotepcmlinktype_name (enum _avm_remotepcmlinktype value);
-char *get_enum_avm_event_firmware_type_name (enum avm_event_firmware_type value);
-char *get_enum_wlan_event_id_name (enum wlan_event_id value);
-char *get_enum__cputype_name (enum _cputype value);
+char *get_enum_wlan_event_sel_name (enum wlan_event_sel value);
+char *get_enum_ePLCState_name (enum ePLCState value);
 char *get_enum_avm_event_tffs_open_mode_name (enum avm_event_tffs_open_mode value);
-char *get_enum_avm_event_tffs_notify_event_name (enum avm_event_tffs_notify_event value);
-char *get_enum__avm_remote_wdt_cmd_name (enum _avm_remote_wdt_cmd value);
-char *get_enum_wlan_event_scan_type_name (enum wlan_event_scan_type value);
-char *get_enum_avm_event_led_id_name (enum avm_event_led_id value);
-/* pos 9562.5 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_telephony_string {
-	unsigned int length;
-	unsigned char string[0];
+char *get_enum_avm_event_tffs_call_type_name (enum avm_event_tffs_call_type value);
+/* pos 9550 (Thu Aug 22 13:31:47 2019) */
+struct wlan_event_data_client_common {
+	uint8_t mac[6];
+	char iface[IFNAMSIZ + 1];
+	char initiator[16 + 1];
 } __attribute__((packed));
 
-/* pos 9575 (Fri Mar 17 16:37:46 2017) */
+/* pos 9550 (Thu Aug 22 13:31:47 2019) */
+/*-----------------------------------------------------------------------------------
+	union entry is select by variable of type 'enum avm_event_internet_new_ip_param_sel'
+-----------------------------------------------------------------------------------*/
+union avm_event_internet_new_ip_param {
+	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v4) ---*/
+	unsigned char ipv4[4];
+	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v6) ---*/
+	unsigned char ipv6[16];
+} __attribute__((packed));
+
+/* pos 9556.25 (Thu Aug 22 13:31:47 2019) */
 struct wlan_event_data_scan_common {
 	char iface[IFNAMSIZ + 1];
 	char initiator[16 + 1];
 } __attribute__((packed));
 
-/* pos 9575 (Fri Mar 17 16:37:46 2017) */
+/* pos 9556.25 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_telephony_string {
+	unsigned int length;
+	unsigned char string[0];
+} __attribute__((packed));
+
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
+struct wlan_event_data_scan_event_info {
+	struct wlan_event_data_scan_common common;
+	enum wlan_event_scan_type event_type;
+} __attribute__((packed));
+
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
+struct wlan_event_data_client_connect_info {
+	struct wlan_event_data_client_common common;
+	uint8_t info_context;
+	uint8_t reason;
+	uint32_t max_node_count;
+	uint16_t ieee80211_code;
+} __attribute__((packed));
+
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum avm_event_telephony_param_sel'
 -----------------------------------------------------------------------------------*/
@@ -934,52 +967,49 @@
 	unsigned int id;
 } __attribute__((packed));
 
-/* pos 9581.25 (Fri Mar 17 16:37:46 2017) */
-struct wlan_event_data_client_common {
-	uint8_t mac[6];
-	char iface[IFNAMSIZ + 1];
-	char initiator[16 + 1];
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_powermanagment_remote_ressourceinfo {
+	enum _powermanagment_device device;
+	unsigned int power_rate;
 } __attribute__((packed));
 
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
+/* pos 9562.5 (Thu Aug 22 13:31:47 2019) */
 struct wlan_event_data_client_state_change {
 	struct wlan_event_data_client_common common;
 	uint8_t state;
 } __attribute__((packed));
 
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_powermanagment_remote_ressourceinfo {
-	enum _powermanagment_device device;
-	unsigned int power_rate;
-} __attribute__((packed));
-
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
-struct wlan_event_data_client_connect_info {
-	struct wlan_event_data_client_common common;
-	uint8_t info_context;
-	uint8_t reason;
-	uint32_t max_node_count;
-	uint16_t ieee80211_code;
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
+/*-----------------------------------------------------------------------------------
+	union entry is select by variable of type 'enum avm_event_powermanagment_remote_action'
+-----------------------------------------------------------------------------------*/
+union avm_event_powermanagment_remote_union {
+	/*--- select by [select-variable] one of (avm_event_powermanagment_ressourceinfo) ---*/
+	struct avm_event_powermanagment_remote_ressourceinfo ressourceinfo;
+	/*--- select by [select-variable] one of (avm_event_powermanagment_activatepowermode) ---*/
+	char powermode[32];
 } __attribute__((packed));
 
-/* pos 9587.5 (Fri Mar 17 16:37:46 2017) */
-struct wlan_event_data_scan_event_info {
-	struct wlan_event_data_scan_common common;
-	enum wlan_event_scan_type event_type;
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_telephony_missed_call_params {
+	enum avm_event_telephony_param_sel id;
+	union avm_event_telephony_call_params params;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'enum avm_event_internet_new_ip_param_sel'
+	union entry is select by variable of type 'wlan_event_id'
 -----------------------------------------------------------------------------------*/
-union avm_event_internet_new_ip_param {
-	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v4) ---*/
-	unsigned char ipv4[4];
-	/*--- select by [select-variable] one of (avm_event_internet_new_ip_v6) ---*/
-	unsigned char ipv6[16];
+union wlan_event_data {
+	/*--- select by [select-variable] one of (CLIENT_STATE_CHANGE) ---*/
+	struct wlan_event_data_client_state_change client_state_change;
+	/*--- select by [select-variable] one of (CLIENT_CONNECT_INFO) ---*/
+	struct wlan_event_data_client_connect_info client_connect_info;
+	/*--- select by [select-variable] one of (WLAN_EVENT_SCAN) ---*/
+	struct wlan_event_data_scan_event_info scan_event_info;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum _powermanagment_status_type_dsl'
 -----------------------------------------------------------------------------------*/
@@ -988,18 +1018,28 @@
 	unsigned int dsl_status;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
+struct cpmac_port {
+	uint8_t cable;
+	uint8_t link;
+	uint8_t speed100;
+	uint8_t fullduplex;
+	enum _avm_event_ethernet_speed speed;
+	enum _avm_event_ethernet_speed maxspeed;
+} __attribute__((packed));
+
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'enum avm_event_powermanagment_remote_action'
+	union entry is select by variable of type 'wlan_event_sel'
 -----------------------------------------------------------------------------------*/
-union avm_event_powermanagment_remote_union {
-	/*--- select by [select-variable] one of (avm_event_powermanagment_ressourceinfo) ---*/
-	struct avm_event_powermanagment_remote_ressourceinfo ressourceinfo;
-	/*--- select by [select-variable] one of (avm_event_powermanagment_activatepowermode) ---*/
-	char powermode[32];
+union avm_event_wlan_client_status_u2 {
+	/*--- select by [select-variable] one of (INPUT_RADAR) ---*/
+	unsigned int radar_freq;
+	/*--- select by [select-variable] one of (INPUT_AUTH_1_D INPUT_AUTH_3_D INPUT_DE_AUTH_STATION INPUT_ASSOC_REQ_A INPUT_ASSOC_REQ_D INPUT_RE_ASSOC_REQ_D INPUT_DIS_ASSOC_STATION INPUT_AUTH_TIMEOUT INPUT_DE_AUTH_MNG_UNICAST INPUT_DE_AUTH_MNG_BROADCAST INPUT_DIS_ASSOC_MNG_UNICAST INPUT_DIS_ASSOC_MNG_BROADCAST INPUT_MAC_AUTHORIZE INPUT_WDS_LINK_UP INPUT_WDS_LINK_DOWN INPUT_MADWIFI_WRONG_PSK INPUT_WPS INPUT_MINI INPUT_WPS_ENROLLEE INPUT_STA INPUT_GREENAP_PS INPUT_EAP_AUTHORIZED INPUT_MWO_INTERFERENCE INPUT_AUTH_EXPIRED INPUT_COEXIST_SWITCH INPUT_STA_ASSOC INPUT_STA_AUTH INPUT_STA_AUTHORIZATION INPUT_WDS_NO_TIAGGR INPUT_MAX_NODE_REACHED INPUT_RADAR_DFS_WAIT INPUT_AUTH_1_OS_A INPUT_AUTH_1_SK_A INPUT_ASSOC_REQ_CHECK INPUT_ASSOC_REQ_SEC_D INPUT_RE_ASSOC_REQ_CHECK INPUT_RE_ASSOC_REQ_A INPUT_RE_ASSOC_REQ_SEC_D INPUT_CLASS_3 INPUT_FRAME_TX_COMPLETE) ---*/
+	unsigned int wlan_mode;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
+/* pos 9575 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'wlan_event_sel'
 -----------------------------------------------------------------------------------*/
@@ -1034,146 +1074,106 @@
 	unsigned int dummy0;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-/*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'wlan_event_id'
------------------------------------------------------------------------------------*/
-union wlan_event_data {
-	/*--- select by [select-variable] one of (CLIENT_STATE_CHANGE) ---*/
-	struct wlan_event_data_client_state_change client_state_change;
-	/*--- select by [select-variable] one of (CLIENT_CONNECT_INFO) ---*/
-	struct wlan_event_data_client_connect_info client_connect_info;
-	/*--- select by [select-variable] one of (WLAN_EVENT_SCAN) ---*/
-	struct wlan_event_data_scan_event_info scan_event_info;
-} __attribute__((packed));
-
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-struct cpmac_port {
-	uint8_t cable;
-	uint8_t link;
-	uint8_t speed100;
-	uint8_t fullduplex;
-	enum _avm_event_ethernet_speed speed;
-	enum _avm_event_ethernet_speed maxspeed;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_led_info {
+	unsigned int mode;
+	unsigned int param1;
+	unsigned int param2;
+	unsigned int gpio_driver_type;
+	unsigned int gpio;
+	unsigned int pos;
+	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-/*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'wlan_event_sel'
------------------------------------------------------------------------------------*/
-union avm_event_wlan_client_status_u2 {
-	/*--- select by [select-variable] one of (INPUT_RADAR) ---*/
-	unsigned int radar_freq;
-	/*--- select by [select-variable] one of (INPUT_AUTH_1_D INPUT_AUTH_3_D INPUT_DE_AUTH_STATION INPUT_ASSOC_REQ_A INPUT_ASSOC_REQ_D INPUT_RE_ASSOC_REQ_D INPUT_DIS_ASSOC_STATION INPUT_AUTH_TIMEOUT INPUT_DE_AUTH_MNG_UNICAST INPUT_DE_AUTH_MNG_BROADCAST INPUT_DIS_ASSOC_MNG_UNICAST INPUT_DIS_ASSOC_MNG_BROADCAST INPUT_MAC_AUTHORIZE INPUT_WDS_LINK_UP INPUT_WDS_LINK_DOWN INPUT_MADWIFI_WRONG_PSK INPUT_WPS INPUT_MINI INPUT_WPS_ENROLLEE INPUT_STA INPUT_GREENAP_PS INPUT_EAP_AUTHORIZED INPUT_MWO_INTERFERENCE INPUT_AUTH_EXPIRED INPUT_COEXIST_SWITCH INPUT_STA_ASSOC INPUT_STA_AUTH INPUT_STA_AUTHORIZATION INPUT_WDS_NO_TIAGGR INPUT_MAX_NODE_REACHED INPUT_RADAR_DFS_WAIT INPUT_AUTH_1_OS_A INPUT_AUTH_1_SK_A INPUT_ASSOC_REQ_CHECK INPUT_ASSOC_REQ_SEC_D INPUT_RE_ASSOC_REQ_CHECK INPUT_RE_ASSOC_REQ_A INPUT_RE_ASSOC_REQ_SEC_D INPUT_CLASS_3 INPUT_FRAME_TX_COMPLETE) ---*/
-	unsigned int wlan_mode;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_remotepcmlink {
+	enum _avm_remotepcmlinktype type;
+	unsigned int sharedlen;
+	unsigned int sharedpointer;
 } __attribute__((packed));
 
-/* pos 9600 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_telephony_missed_call_params {
-	enum avm_event_telephony_param_sel id;
-	union avm_event_telephony_call_params params;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_smarthome_switch_status {
+	enum avm_event_switch_type type;
+	unsigned int value;
+	unsigned int ain_length;
+	unsigned char ain[0];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_cpu_run {
 	enum _cputype cputype;
 	unsigned char cpu_run[4];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_remotewatchdog {
-	enum _avm_remote_wdt_cmd cmd;
-	char name[16];
-	unsigned int param;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_read {
+	uint64_t buff_addr;
+	uint64_t len;
+	uint32_t id;
+	int32_t crc;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_telefonprofile {
-	unsigned int on;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_info {
+	uint32_t fill_level;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct _cpmac_event_struct {
-	unsigned int ports;
-	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_log {
+	enum _avm_logtype logtype;
+	unsigned int loglen;
+	unsigned int logpointer;
+	unsigned int checksum;
+	unsigned int rebootflag;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_telefonprofile {
+	unsigned int on;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_mass_storage_unmount {
 	unsigned int name_length;
 	unsigned char name[0];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_wlan {
-	char mac[6];
-	union avm_event_wlan_client_status_u1 u1;
-	wlan_event event;
-	wlan_info info;
-	enum wlan_sm_states status;
-	union avm_event_wlan_client_status_u2 u2;
-	char if_name[IFNAMSIZ];
-	unsigned int ev_initiator;
-	unsigned int ev_reason;
-	unsigned int avm_capabilities;
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_led_status {
-	enum avm_event_led_id led;
-	unsigned int state;
-	unsigned int param_len;
-	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_firmware_update_available {
-	enum avm_event_firmware_type type;
-	unsigned int version_length;
-	unsigned char version[0];
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_checkpoint {
-	uint32_t node_id;
-	uint64_t checkpoints;
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_telephony_missed_call {
-	unsigned int length;
-	struct _avm_event_telephony_missed_call_params p[0];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_mass_storage_mount {
+	unsigned long long size;
+	unsigned long long free;
+	unsigned int name_length;
+	unsigned char name[0];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_smarthome_switch_status {
-	enum avm_event_switch_type type;
-	unsigned int value;
-	unsigned int ain_length;
-	unsigned char ain[0];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_cleanup {
+	uint32_t dummy;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_powermanagment_status {
-	enum _powermanagment_status_type substatus;
-	union __powermanagment_status_union param;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_temperature {
+	int temperature;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_powermanagment_remote {
-	enum avm_event_powermanagment_remote_action remote_action;
-	union avm_event_powermanagment_remote_union param;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_open {
+	uint32_t id;
+	enum avm_event_tffs_open_mode mode;
+	uint32_t max_segment_size;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_mass_storage_mount {
-	unsigned long long size;
-	unsigned long long free;
-	unsigned int name_length;
-	unsigned char name[0];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_write {
+	uint64_t buff_addr;
+	uint64_t len;
+	uint32_t id;
+	uint32_t final;
+	int32_t crc;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_pm_info_stat {
 	unsigned char reserved1;
 	unsigned char rate_sumact;
@@ -1211,51 +1211,44 @@
 	unsigned char rate_dvbccum;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_temperature {
-	int temperature;
-} __attribute__((packed));
-
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_internet_new_ip {
-	enum avm_event_internet_new_ip_param_sel sel;
-	union avm_event_internet_new_ip_param params;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_cpu_idle {
+	unsigned char cpu_idle;
+	unsigned char dsl_dsp_idle;
+	unsigned char voice_dsp_idle;
+	unsigned char mem_strictlyused;
+	unsigned char mem_cacheused;
+	unsigned char mem_physfree;
+	enum _cputype cputype;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_remotepcmlink {
-	enum _avm_remotepcmlinktype type;
-	unsigned int sharedlen;
-	unsigned int sharedpointer;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_led_status {
+	enum avm_event_led_id led;
+	unsigned int state;
+	unsigned int param_len;
+	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct wlan_event_def {
 	enum wlan_event_id event_id;
 	union wlan_event_data event_data;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_cpu_idle {
-	unsigned char cpu_idle;
-	unsigned char dsl_dsp_idle;
-	unsigned char voice_dsp_idle;
-	unsigned char mem_strictlyused;
-	unsigned char mem_cacheused;
-	unsigned char mem_physfree;
-	enum _cputype cputype;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_reindex {
+	uint32_t dummy;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_log {
-	enum _avm_logtype logtype;
-	unsigned int loglen;
-	unsigned int logpointer;
-	unsigned int checksum;
-	unsigned int rebootflag;
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_remotewatchdog {
+	enum _avm_remote_wdt_cmd cmd;
+	char name[16];
+	unsigned int param;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_rpc {
 	enum _avm_rpctype type;
 	unsigned int id;
@@ -1263,31 +1256,99 @@
 	unsigned char message[AVM_EVENT_RPC_MAX_MESSAGE_SIZE];
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_led_info {
-	unsigned int mode;
-	unsigned int param1;
-	unsigned int param2;
-	unsigned int gpio_driver_type;
-	unsigned int gpio;
-	unsigned int pos;
-	char name[MAX_EVENT_SOURCE_NAME_LEN];
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_close {
+	uint32_t dummy;
 } __attribute__((packed));
 
-/* pos 9625 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_powermanagment_remote {
+	enum avm_event_powermanagment_remote_action remote_action;
+	union avm_event_powermanagment_remote_union param;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_push_button {
 	enum _avm_event_push_button_key key;
 	uint32_t pressed;
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_wlan {
+	char mac[6];
+	union avm_event_wlan_client_status_u1 u1;
+	wlan_event event;
+	wlan_info info;
+	enum wlan_sm_states status;
+	union avm_event_wlan_client_status_u2 u2;
+	char if_name[IFNAMSIZ];
+	unsigned int ev_initiator;
+	unsigned int ev_reason;
+	unsigned int avm_capabilities;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_checkpoint {
+	uint32_t node_id;
+	uint64_t checkpoints;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_init {
+	int64_t mem_offset;
+	uint32_t max_seg_size;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_telephony_missed_call {
+	unsigned int length;
+	struct _avm_event_telephony_missed_call_params p[0];
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_powermanagment_status {
+	enum _powermanagment_status_type substatus;
+	union __powermanagment_status_union param;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_firmware_update_available {
+	enum avm_event_firmware_type type;
+	unsigned int version_length;
+	unsigned char version[0];
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct _cpmac_event_struct {
+	unsigned int ports;
+	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_notify {
+	uint32_t id;
+	enum avm_event_tffs_notify_event event;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_tffs_paniclog {
 	uint64_t buff_addr;
 	uint64_t len;
 	int32_t crc;
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_tffs_deinit {
+	uint32_t dummy;
+} __attribute__((packed));
+
+/* pos 9600 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_internet_new_ip {
+	enum avm_event_internet_new_ip_param_sel sel;
+	union avm_event_internet_new_ip_param params;
+} __attribute__((packed));
+
+/* pos 9650 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum avm_event_data_type'
 -----------------------------------------------------------------------------------*/
@@ -1348,68 +1409,18 @@
 	struct avm_event_cpu_run cpu_run;
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_write {
-	uint64_t buff_addr;
-	uint64_t len;
-	uint32_t id;
-	uint32_t final;
-	int32_t crc;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_cleanup {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_notify {
-	uint32_t id;
-	enum avm_event_tffs_notify_event event;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_reindex {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_open {
-	uint32_t id;
-	enum avm_event_tffs_open_mode mode;
-	uint32_t max_segment_size;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_read {
-	uint64_t buff_addr;
-	uint64_t len;
-	uint32_t id;
-	int32_t crc;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_close {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_deinit {
-	uint32_t dummy;
-} __attribute__((packed));
-
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_init {
-	int64_t mem_offset;
-	uint32_t max_seg_size;
+/* pos 9700 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_id_mask {
+	avm_event_mask_fieldentry mask[avm_event_mask_fieldentries];
 } __attribute__((packed));
 
-/* pos 9650 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_tffs_info {
-	uint32_t fill_level;
+/* pos 9700 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_data {
+	enum _avm_event_id id;
+	union avm_event_data_union data;
 } __attribute__((packed));
 
-/* pos 9700 (Fri Mar 17 16:37:46 2017) */
+/* pos 9700 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'enum avm_event_tffs_call_type'
 -----------------------------------------------------------------------------------*/
@@ -1438,45 +1449,23 @@
 	struct avm_event_tffs_paniclog paniclog;
 } __attribute__((packed));
 
-/* pos 9700 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_id_mask {
-	avm_event_mask_fieldentry mask[avm_event_mask_fieldentries];
-} __attribute__((packed));
-
-/* pos 9700 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_data {
-	enum _avm_event_id id;
-	union avm_event_data_union data;
-} __attribute__((packed));
-
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_source_notifier {
-	enum _avm_event_id id;
-} __attribute__((packed));
-
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_source_register {
-	struct _avm_event_id_mask id_mask;
-	char name[MAX_EVENT_SOURCE_NAME_LEN];
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_ping {
+	uint32_t seq;
 } __attribute__((packed));
 
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_source_unregister {
 	struct _avm_event_id_mask id_mask;
 	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
-struct avm_event_ping {
-	uint32_t seq;
-} __attribute__((packed));
-
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_remote_source_trigger_request {
 	struct avm_event_data data;
 } __attribute__((packed));
 
-/* pos 9800 (Fri Mar 17 16:37:46 2017) */
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
 struct avm_event_tffs {
 	uint32_t src_id;
 	uint32_t dst_id;
@@ -1489,46 +1478,45 @@
 	union avm_event_tffs_call_union call;
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_cmd_param_release {
-	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_source_register {
+	struct _avm_event_id_mask id_mask;
+	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_cmd_param_register {
-	struct _avm_event_id_mask mask;
-	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
+/* pos 9800 (Thu Aug 22 13:31:47 2019) */
+struct avm_event_source_notifier {
+	enum _avm_event_id id;
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_cmd_param_trigger {
+	enum _avm_event_id id;
+} __attribute__((packed));
+
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
 struct _avm_event_cmd_param_source_trigger {
 	enum _avm_event_id id;
 	unsigned int data_length;
 } __attribute__((packed));
 
-/* pos 9850 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_cmd_param_trigger {
-	enum _avm_event_id id;
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_cmd_param_release {
+	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
 } __attribute__((packed));
 
-/* pos 9900 (Fri Mar 17 16:37:46 2017) */
-/*-----------------------------------------------------------------------------------
-	union entry is select by variable of type 'enum __avm_event_cmd'
------------------------------------------------------------------------------------*/
-union _avm_event_cmd_param {
-	/*--- select by [select-variable] one of (avm_event_cmd_register) ---*/
-	struct _avm_event_cmd_param_register avm_event_cmd_param_register;
-	/*--- select by [select-variable] one of (avm_event_cmd_release) ---*/
-	struct _avm_event_cmd_param_release avm_event_cmd_param_release;
-	/*--- select by [select-variable] one of (avm_event_cmd_trigger) ---*/
-	struct _avm_event_cmd_param_trigger avm_event_cmd_param_trigger;
-	/*--- select by [select-variable] one of (avm_event_cmd_source_register) ---*/
-	struct _avm_event_cmd_param_register avm_event_cmd_param_source_register;
-	/*--- select by [select-variable] one of (avm_event_cmd_source_trigger) ---*/
-	struct _avm_event_cmd_param_source_trigger avm_event_cmd_param_source_trigger;
+/* pos 9850 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_cmd_param_register {
+	struct _avm_event_id_mask mask;
+	char Name[MAX_EVENT_CLIENT_NAME_LEN + 1];
 } __attribute__((packed));
 
-/* pos 9900 (Fri Mar 17 16:37:46 2017) */
+/* pos 9900 (Thu Aug 22 13:31:47 2019) */
+struct _avm_event_header {
+	enum _avm_event_id id;
+} __attribute__((packed));
+
+/* pos 9900 (Thu Aug 22 13:31:47 2019) */
 /*-----------------------------------------------------------------------------------
 	union entry is select by variable of type 'avm_event_msg_type'
 -----------------------------------------------------------------------------------*/
@@ -1547,26 +1535,44 @@
 	struct avm_event_tffs tffs;
 } __attribute__((packed));
 
-/* pos 9900 (Fri Mar 17 16:37:46 2017) */
-struct _avm_event_header {
-	enum _avm_event_id id;
+/* pos 9900 (Thu Aug 22 13:31:47 2019) */
+/*-----------------------------------------------------------------------------------
+	union entry is select by variable of type 'enum __avm_event_cmd'
+-----------------------------------------------------------------------------------*/
+union _avm_event_cmd_param {
+	/*--- select by [select-variable] one of (avm_event_cmd_register) ---*/
+	struct _avm_event_cmd_param_register avm_event_cmd_param_register;
+	/*--- select by [select-variable] one of (avm_event_cmd_release) ---*/
+	struct _avm_event_cmd_param_release avm_event_cmd_param_release;
+	/*--- select by [select-variable] one of (avm_event_cmd_trigger) ---*/
+	struct _avm_event_cmd_param_trigger avm_event_cmd_param_trigger;
+	/*--- select by [select-variable] one of (avm_event_cmd_source_register) ---*/
+	struct _avm_event_cmd_param_register avm_event_cmd_param_source_register;
+	/*--- select by [select-variable] one of (avm_event_cmd_source_trigger) ---*/
+	struct _avm_event_cmd_param_source_trigger avm_event_cmd_param_source_trigger;
 } __attribute__((packed));
 
-struct _avm_event_mass_storage_unmount {
-	struct _avm_event_header header;
-	unsigned int name_length;
-	unsigned char name[0];
+struct cpmac_event_struct {
+	struct _avm_event_header event_header;
+	unsigned int ports;
+	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
 } __attribute__((packed));
 
-struct _avm_event_user_mode_source_notify {
-	struct _avm_event_header header;
+struct _avm_event_push_button {
 	enum _avm_event_id id;
+	enum _avm_event_push_button_key key;
+	uint32_t pressed;
 } __attribute__((packed));
 
-struct _avm_event_internet_new_ip {
+struct _avm_event_led_info {
 	struct _avm_event_header header;
-	enum avm_event_internet_new_ip_param_sel sel;
-	union avm_event_internet_new_ip_param params;
+	unsigned int mode;
+	unsigned int param1;
+	unsigned int param2;
+	unsigned int gpio_driver_type;
+	unsigned int gpio;
+	unsigned int pos;
+	char name[MAX_EVENT_SOURCE_NAME_LEN];
 } __attribute__((packed));
 
 struct _avm_event_cpu_idle {
@@ -1580,17 +1586,50 @@
 	enum _cputype cputype;
 } __attribute__((packed));
 
-struct _avm_event_smarthome_switch_status {
+struct _avm_event_remotewatchdog {
+	struct _avm_event_header event_header;
+	enum _avm_remote_wdt_cmd cmd;
+	char name[16];
+	unsigned int param;
+} __attribute__((packed));
+
+struct _avm_event_wlan {
 	struct _avm_event_header header;
-	enum avm_event_switch_type type;
-	unsigned int value;
-	unsigned int ain_length;
-	unsigned char ain[0];
+	char mac[6];
+	unsigned int u1;
+	unsigned int event;
+	unsigned int info;
+	unsigned int status;
+	unsigned int u2;
+	char if_name[IFNAMSIZ];
+	unsigned int ev_initiator;
+	unsigned int ev_reason;
+	unsigned int avm_capabilities;
 } __attribute__((packed));
 
-struct _avm_event_powerline_status {
+struct avm_event_unserialised {
+	uint64_t evnt_id;
+	uint32_t data_len;
+	unsigned char data;
+} __attribute__((packed));
+
+struct _avm_event_cpu_run {
 	struct _avm_event_header event_header;
-	enum ePLCState status;
+	enum _cputype cputype;
+	unsigned char cpu_run[4];
+} __attribute__((packed));
+
+struct _avm_event_telephony_missed_call {
+	struct _avm_event_header header;
+	unsigned int length;
+	struct _avm_event_telephony_missed_call_params p[0];
+} __attribute__((packed));
+
+struct _avm_event_remotepcmlink {
+	struct _avm_event_header event_header;
+	enum _avm_remotepcmlinktype type;
+	unsigned int sharedlen;
+	unsigned int sharedpointer;
 } __attribute__((packed));
 
 struct avm_event_message {
@@ -1605,46 +1644,32 @@
 	union avm_event_message_union message;
 } __attribute__((packed));
 
-struct _avm_event_led_info {
-	struct _avm_event_header header;
-	unsigned int mode;
-	unsigned int param1;
-	unsigned int param2;
-	unsigned int gpio_driver_type;
-	unsigned int gpio;
-	unsigned int pos;
-	char name[MAX_EVENT_SOURCE_NAME_LEN];
-} __attribute__((packed));
-
-struct _avm_event_telephony_missed_call {
+struct _avm_event_user_mode_source_notify {
 	struct _avm_event_header header;
-	unsigned int length;
-	struct _avm_event_telephony_missed_call_params p[0];
+	enum _avm_event_id id;
 } __attribute__((packed));
 
-struct _avm_event_log {
+struct _avm_event_powerline_status {
 	struct _avm_event_header event_header;
-	enum _avm_logtype logtype;
-	unsigned int loglen;
-	unsigned int logpointer;
-	unsigned int checksum;
-	unsigned int rebootflag;
+	enum ePLCState status;
 } __attribute__((packed));
 
-struct _avm_event_powermanagment_status {
-	struct _avm_event_header event_header;
-	enum _powermanagment_status_type substatus;
-	union __powermanagment_status_union param;
+struct _avm_event_powermanagment_remote {
+	struct _avm_event_header header;
+	enum avm_event_powermanagment_remote_action remote_action;
+	union avm_event_powermanagment_remote_union param;
 } __attribute__((packed));
 
-struct avm_event_powerline_status {
-	enum ePLCState status;
+struct _avm_event_telefonprofile {
+	struct _avm_event_header event_header;
+	unsigned int on;
 } __attribute__((packed));
 
-struct cpmac_event_struct {
-	struct _avm_event_header event_header;
-	unsigned int ports;
-	struct cpmac_port port[AVM_EVENT_ETH_MAXPORTS];
+struct _avm_event_firmware_update_available {
+	struct _avm_event_header header;
+	enum avm_event_firmware_type type;
+	unsigned int version_length;
+	unsigned char version[0];
 } __attribute__((packed));
 
 struct _avm_event_powermanagment_remote_ressourceinfo {
@@ -1653,19 +1678,12 @@
 	unsigned int power_rate;
 } __attribute__((packed));
 
-struct _avm_event_remotepcmlink {
-	struct _avm_event_header event_header;
-	enum _avm_remotepcmlinktype type;
-	unsigned int sharedlen;
-	unsigned int sharedpointer;
-} __attribute__((packed));
-
-struct _avm_event_led_status {
+struct _avm_event_smarthome_switch_status {
 	struct _avm_event_header header;
-	enum avm_event_led_id led;
-	unsigned int state;
-	unsigned int param_len;
-	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
+	enum avm_event_switch_type type;
+	unsigned int value;
+	unsigned int ain_length;
+	unsigned char ain[0];
 } __attribute__((packed));
 
 struct _avm_event_checkpoint {
@@ -1674,37 +1692,16 @@
 	uint64_t checkpoints;
 } __attribute__((packed));
 
-struct _avm_event_push_button {
-	enum _avm_event_id id;
-	enum _avm_event_push_button_key key;
-	uint32_t pressed;
-} __attribute__((packed));
-
-struct _avm_event_rpc {
-	struct _avm_event_header event_header;
-	enum _avm_rpctype type;
-	unsigned int id;
-	unsigned int length;
-	unsigned char message[AVM_EVENT_RPC_MAX_MESSAGE_SIZE];
-} __attribute__((packed));
-
-struct _avm_event_wlan {
+struct _avm_event_internet_new_ip {
 	struct _avm_event_header header;
-	char mac[6];
-	unsigned int u1;
-	unsigned int event;
-	unsigned int info;
-	unsigned int status;
-	unsigned int u2;
-	char if_name[IFNAMSIZ];
-	unsigned int ev_initiator;
-	unsigned int ev_reason;
-	unsigned int avm_capabilities;
+	enum avm_event_internet_new_ip_param_sel sel;
+	union avm_event_internet_new_ip_param params;
 } __attribute__((packed));
 
-struct _avm_event_temperature {
-	struct _avm_event_header event_header;
-	int temperature;
+struct _avm_event_mass_storage_unmount {
+	struct _avm_event_header header;
+	unsigned int name_length;
+	unsigned char name[0];
 } __attribute__((packed));
 
 struct _avm_event_pm_info_stat {
@@ -1745,11 +1742,10 @@
 	unsigned char rate_dvbccum;
 } __attribute__((packed));
 
-struct _avm_event_firmware_update_available {
-	struct _avm_event_header header;
-	enum avm_event_firmware_type type;
-	unsigned int version_length;
-	unsigned char version[0];
+struct _avm_event_powermanagment_status {
+	struct _avm_event_header event_header;
+	enum _powermanagment_status_type substatus;
+	union __powermanagment_status_union param;
 } __attribute__((packed));
 
 struct _avm_event_mass_storage_mount {
@@ -1760,34 +1756,25 @@
 	unsigned char name[0];
 } __attribute__((packed));
 
-struct _avm_event_cpu_run {
-	struct _avm_event_header event_header;
-	enum _cputype cputype;
-	unsigned char cpu_run[4];
-} __attribute__((packed));
-
-struct _avm_event_remotewatchdog {
+struct _avm_event_log {
 	struct _avm_event_header event_header;
-	enum _avm_remote_wdt_cmd cmd;
-	char name[16];
-	unsigned int param;
+	enum _avm_logtype logtype;
+	unsigned int loglen;
+	unsigned int logpointer;
+	unsigned int checksum;
+	unsigned int rebootflag;
 } __attribute__((packed));
 
-struct _avm_event_telefonprofile {
-	struct _avm_event_header event_header;
-	unsigned int on;
+struct avm_event_powerline_status {
+	enum ePLCState status;
 } __attribute__((packed));
 
-struct _avm_event_powermanagment_remote {
+struct _avm_event_led_status {
 	struct _avm_event_header header;
-	enum avm_event_powermanagment_remote_action remote_action;
-	union avm_event_powermanagment_remote_union param;
-} __attribute__((packed));
-
-struct avm_event_unserialised {
-	uint64_t evnt_id;
-	uint32_t data_len;
-	unsigned char data;
+	enum avm_event_led_id led;
+	unsigned int state;
+	unsigned int param_len;
+	unsigned char params[AVM_LED_STATUS_MAX_PARAMLEN];
 } __attribute__((packed));
 
 struct _avm_event_cmd {
@@ -1795,6 +1782,19 @@
 	union _avm_event_cmd_param param;
 } __attribute__((packed));
 
+struct _avm_event_rpc {
+	struct _avm_event_header event_header;
+	enum _avm_rpctype type;
+	unsigned int id;
+	unsigned int length;
+	unsigned char message[AVM_EVENT_RPC_MAX_MESSAGE_SIZE];
+} __attribute__((packed));
+
+struct _avm_event_temperature {
+	struct _avm_event_header event_header;
+	int temperature;
+} __attribute__((packed));
+
 
 #endif /*--- #ifndef _avm_event_gen_types_h_ ---*/
 /*------------------------------------------------------------------------------------------*\
--- linux-3.10/drivers/char/avm_new/Makefile	2017-03-17 16:37:45.000000000 +0100
+++ linux-3.10/drivers/char/avm_new/Makefile	2019-08-22 13:31:47.000000000 +0200
@@ -1,6 +1,6 @@
 #############################################
 # Makefile: automaticly generated by ./init_avm
-#           Fr 17. Mär 16:37:45 CET 2017
+#           Do 22. Aug 13:31:47 CEST 2019
 #############################################
 
 #####################################################################################
--- linux-3.10/drivers/char/Piglet_noemif/init_Piglet	2006-01-17 13:00:39.000000000 +0100
+++ linux-3.10/drivers/char/Piglet_noemif/init_Piglet	1970-01-01 01:00:00.000000000 +0100
@@ -1,17 +0,0 @@
-#! /bin/sh
-
-KERNEL_CLASS=$1
-DRIVER_NAME=$2
-
-if [ -z "$KERNEL_CLASS" ] ; then
-    KERNEL_CLASS=26
-fi
-
-for i in `find . -name Makefile.$KERNEL_CLASS` ; do
-    dest=${i%.$KERNEL_CLASS}
-    source="`pwd`/$i"
-    rm -f $dest
-    ln -fvs $source $dest
-done
-
-exit 0
--- linux-3.10/drivers/char/Piglet_noemif/init_Piglet_noemif	2007-06-13 19:35:58.000000000 +0200
+++ linux-3.10/drivers/char/Piglet_noemif/init_Piglet_noemif	1970-01-01 01:00:00.000000000 +0100
@@ -1,17 +0,0 @@
-#! /bin/sh
-
-KERNEL_CLASS=$1
-DRIVER_NAME=$2
-
-if [ -z "$KERNEL_CLASS" ] ; then
-    KERNEL_CLASS=26
-fi
-
-for i in `find . -name Makefile.$KERNEL_CLASS` ; do
-    dest=${i%.$KERNEL_CLASS}
-    source="`pwd`/$i"
-    rm -f $dest
-    ln -fvs $source $dest
-done
-
-exit 0
--- linux-3.10/drivers/char/Piglet_noemif/Kbuild	1970-01-01 01:00:00.000000000 +0100
+++ linux-3.10/drivers/char/Piglet_noemif/Kbuild	2018-10-09 08:53:53.000000000 +0200
@@ -0,0 +1 @@
+# Empty kbuild dummy
--- linux-3.10/drivers/char/Piglet_noemif/Makefile.24	2005-11-04 09:41:12.000000000 +0100
+++ linux-3.10/drivers/char/Piglet_noemif/Makefile.24	1970-01-01 01:00:00.000000000 +0100
@@ -1,9 +0,0 @@
-###################################################################################################################
-#
-#   vim: noexpandtab
-#
-#	dummy Makefile with no function
-#
-###################################################################################################################
-
-include $(TOPDIR)/Rules.make
--- linux-3.10/drivers/char/Piglet_noemif/Makefile.26	2005-11-04 09:18:32.000000000 +0100
+++ linux-3.10/drivers/char/Piglet_noemif/Makefile.26	1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-###################################################################################################################
-#
-#   vim: noexpandtab
-#
-#	dummy Makefile with no function
-#
-###################################################################################################################
-
--- linux-3.10/drivers/net/avm_cpmac/switch/ifx/7port/ifxmips_ppa_datapath_7port_common.c	2016-11-10 16:05:17.000000000 +0100
+++ linux-3.10/drivers/net/avm_cpmac/switch/ifx/7port/ifxmips_ppa_datapath_7port_common.c	2018-01-12 13:04:58.000000000 +0100
@@ -998,16 +998,16 @@
     struct skb_shared_info *shinfo;
 
     len = skb->len;
-	if (unlikely(skb->len <= ETH_MIN_TX_PACKET_LENGTH )){
+    if (unlikely(skb->len < ETH_MIN_TX_PACKET_LENGTH )){
 
-		/*--- 0byte padding behind skb->len, skb->len is not increased ---*/
+	    /*--- 0byte padding behind skb->len, skb->len is not increased ---*/
 
-		if (skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
-			skb = NULL;
-			goto ETH_XMIT_DROP;
-		}
-		len = ETH_MIN_TX_PACKET_LENGTH;
-	} 
+	    if (skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+		    skb = NULL;
+		    goto ETH_XMIT_DROP;
+	    }
+	    len = ETH_MIN_TX_PACKET_LENGTH;
+    }
 
 #if defined(DEBUG_MIRROR_PROC) && DEBUG_MIRROR_PROC
     if ( g_mirror_netdev != NULL && (g_wan_itf & (1 << eth_ifid)) )
--- linux-3.10/drivers/net/avm_cpmac/switch/ifx/ar10/ifxmips_ppa_datapath_ar10_a5.c	2016-02-09 13:38:45.000000000 +0100
+++ linux-3.10/drivers/net/avm_cpmac/switch/ifx/ar10/ifxmips_ppa_datapath_ar10_a5.c	2018-01-12 13:04:58.000000000 +0100
@@ -2015,199 +2015,212 @@
 
 
 static int ifx_ppa_eth_qos_hard_start_xmit_a5(struct sk_buff *skb, struct net_device *dev) {
-    int dpid;
-    int qid;
-    unsigned long sys_flag;
-    volatile struct eth_tx_descriptor *desc;
-    struct eth_tx_descriptor reg_desc;
-    struct sk_buff *skb_to_free;
-    int byteoff;
-    int len;
-    struct sw_eg_pkt_header pkth = {0};
+	int dpid;
+	int qid;
+	unsigned long sys_flag;
+	volatile struct eth_tx_descriptor *desc;
+	struct eth_tx_descriptor reg_desc;
+	struct sk_buff *skb_to_free;
+	int byteoff;
+	int len;
+	struct sw_eg_pkt_header pkth = {0};
 
 	avmnet_netdev_priv_t *priv = netdev_priv(dev);
 	avmnet_device_t *avm_dev = priv->avm_dev;
 
-    if ( g_stop_datapath != 0 )
-        goto ETH_XMIT_DROP;
+	if ( g_stop_datapath != 0 )
+		goto ETH_XMIT_DROP;
 
-    if (skb->ip_summed == CHECKSUM_PARTIAL) {
-    	err("Dropping SG Packet in ETHWAN Path");
-        goto ETH_XMIT_DROP;
-    }
+	if (skb->ip_summed == CHECKSUM_PARTIAL) {
+		err("Dropping SG Packet in ETHWAN Path");
+		goto ETH_XMIT_DROP;
+	}
 
-    dpid = get_eth_port(dev);
-    if ( dpid < 0 )
-        return -ENODEV;
+	dpid = get_eth_port(dev);
+	if ( dpid < 0 )
+		return -ENODEV;
 
-    if ( skb->cb[13] == 0x5A ) {
-        // magic number indicating forcing QId (e.g. directpath)
-        qid = skb->cb[15];
-    } else {
+	/*
+	 * AVM/CBU: JZ-34572 Zero-padding for small packets
+	 */
+	len = skb->len;
+	if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+		if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len)){
+			skb = NULL;
+			goto ETH_PAD_DROP;
+		}
+		len = ETH_MIN_TX_PACKET_LENGTH;
+		skb->len = len;
+	}
 
-        //printk(KERN_ERR "[%s] dpid=%d, prio=%d\n", __func__, dpid, skb->priority );
-        qid = avm_get_eth_qid( dpid, skb->priority );
-        //printk(KERN_ERR "[%s] qid=%d\n", __func__, qid);
-    }
+	if ( skb->cb[13] == 0x5A ) {
+		// magic number indicating forcing QId (e.g. directpath)
+		qid = skb->cb[15];
+	} else {
+
+		//printk(KERN_ERR "[%s] dpid=%d, prio=%d\n", __func__, dpid, skb->priority );
+		qid = avm_get_eth_qid( dpid, skb->priority );
+		//printk(KERN_ERR "[%s] qid=%d\n", __func__, qid);
+	}
 
 #if 0
-    // AVMCCB UGW54 vs AVM-Concept
-    pkth.spid           = 2;    //  CPU
-//    pkth.dpid           = dpid; //  eth0/eth1
-    pkth.dpid           = 1; //  eth0/eth1
-    pkth.lrn_dis        = 0;
+	// AVMCCB UGW54 vs AVM-Concept
+	pkth.spid           = 2;    //  CPU
+	//    pkth.dpid           = dpid; //  eth0/eth1
+	pkth.dpid           = 1; //  eth0/eth1
+	pkth.lrn_dis        = 0;
 
-    pkth.class_en       = PS_MC_GENCFG3->class_en;
-    pkth.class          = g_wan_queue_class_map[qid];
-    if ( pkth.dpid < 2 )
-        pkth.dpid_en    = g_egress_direct_forward_enable;
+	pkth.class_en       = PS_MC_GENCFG3->class_en;
+	pkth.class          = g_wan_queue_class_map[qid];
+	if ( pkth.dpid < 2 )
+		pkth.dpid_en    = g_egress_direct_forward_enable;
 #else
 
-    // for cpu -> ethernet
-    pkth.spid = 2; //  CPU
-    pkth.dpid_en = 1;
-    pkth.dpid = 1; // 0 or 1 for PORT_MAP_MODE
-    pkth.port_map_en = 1;
-    pkth.port_map_sel = 1;
-    pkth.port_map = (1 << if_id_to_mac_nr(dpid));
-    pkth.lrn_dis = 0;
-    pkth.class_en = 0;
-    pkth.class = 0;
-    dbg_dma("port_map: %#x", (unsigned int)pkth.port_map);
+	// for cpu -> ethernet
+	pkth.spid = 2; //  CPU
+	pkth.dpid_en = 1;
+	pkth.dpid = 1; // 0 or 1 for PORT_MAP_MODE
+	pkth.port_map_en = 1;
+	pkth.port_map_sel = 1;
+	pkth.port_map = (1 << if_id_to_mac_nr(dpid));
+	pkth.lrn_dis = 0;
+	pkth.class_en = 0;
+	pkth.class = 0;
+	dbg_dma("port_map: %#x", (unsigned int)pkth.port_map);
 
 #endif
-    len = skb->len <= ETH_MIN_TX_PACKET_LENGTH ? ETH_MIN_TX_PACKET_LENGTH : skb->len;
+	BUG_ON( len < ETH_MIN_TX_PACKET_LENGTH);
 
-    dump_skb(skb, DUMP_SKB_LEN, __func__, dpid, qid, 1, 0);
+	dump_skb(skb, DUMP_SKB_LEN, __func__, dpid, qid, 1, 0);
 
-    /*  reserve space to put pointer in skb */
-    byteoff = (((unsigned int)skb->data - sizeof(pkth)) & (DMA_TX_ALIGNMENT - 1)) + sizeof(pkth);
-    //if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb->end - skb->data < 1564 /* 1518 (max ETH frame) + 22 (reserved for firmware) + 10 (AAL5) + 6 (PPPoE) + 4 x 2 (2 VLAN) */ || skb_shared(skb) || skb_cloned(skb) )
+	/*  reserve space to put pointer in skb */
+	byteoff = (((unsigned int)skb->data - sizeof(pkth)) & (DMA_TX_ALIGNMENT - 1)) + sizeof(pkth);
+	//if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb->end - skb->data < 1564 /* 1518 (max ETH frame) + 22 (reserved for firmware) + 10 (AAL5) + 6 (PPPoE) + 4 x 2 (2 VLAN) */ || skb_shared(skb) || skb_cloned(skb) )
 
-    if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb_shared(skb) || skb_cloned(skb) ||
-          (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE  )
-    {
-        struct sk_buff *new_skb;
+	if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb_shared(skb) || skb_cloned(skb) ||
+	     (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE  )
+	{
+		struct sk_buff *new_skb;
 
 		dma_alignment_ethwan_qos_bad_count++;
 
-        dbg_dma("realloc skb");
-        ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff, "skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff");
-        new_skb = alloc_skb_tx(sizeof(pkth) + skb->len < DMA_PACKET_SIZE ? DMA_PACKET_SIZE : sizeof(pkth) + skb->len);  //  may be used by RX fastpath later
-        if ( !new_skb )
-        {
-            err("no memory");
-            goto ALLOC_SKB_TX_FAIL;
-        }
-        skb_put(new_skb, sizeof(pkth) + skb->len);
-        memcpy(new_skb->data, &pkth, sizeof(pkth));
-        memcpy(new_skb->data + sizeof(pkth), skb->data, skb->len);
+		dbg_dma("realloc skb");
+		ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff, "skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff");
+		new_skb = alloc_skb_tx(sizeof(pkth) + skb->len < DMA_PACKET_SIZE ? DMA_PACKET_SIZE : sizeof(pkth) + skb->len);  //  may be used by RX fastpath later
+		if ( !new_skb )
+		{
+			err("no memory");
+			goto ALLOC_SKB_TX_FAIL;
+		}
+		skb_put(new_skb, sizeof(pkth) + skb->len);
+		memcpy(new_skb->data, &pkth, sizeof(pkth));
+		memcpy(new_skb->data + sizeof(pkth), skb->data, skb->len);
 
 		new_skb->priority = skb->priority;
 
-        dev_kfree_skb_any(skb);
-        skb = new_skb;
-        byteoff = (u32)skb->data & (DMA_TX_ALIGNMENT - 1);
+		dev_kfree_skb_any(skb);
+		skb = new_skb;
+		byteoff = (u32)skb->data & (DMA_TX_ALIGNMENT - 1);
 
-        dump_skb(skb, DUMP_SKB_LEN, "realloc", dpid, qid, 1, 0);
+		dump_skb(skb, DUMP_SKB_LEN, "realloc", dpid, qid, 1, 0);
 #ifndef CONFIG_MIPS_UNCACHED
-        /*  write back to physical memory   */
-        dma_cache_wback((u32)skb->data, skb->len);
+		/*  write back to physical memory   */
+		dma_cache_wback((u32)skb->data, skb->len);
 #endif
-    }
-    else
-    {
+	}
+	else
+	{
 
 		dma_alignment_ethwan_qos_good_count++;
-        skb_push(skb, sizeof(pkth));
-        byteoff -= sizeof(pkth);
-        memcpy(skb->data, &pkth, sizeof(pkth));
-        *(struct sk_buff **)((u32)skb->data - byteoff - sizeof(struct sk_buff *)) = skb;
+		skb_push(skb, sizeof(pkth));
+		byteoff -= sizeof(pkth);
+		memcpy(skb->data, &pkth, sizeof(pkth));
+		*(struct sk_buff **)((u32)skb->data - byteoff - sizeof(struct sk_buff *)) = skb;
 #ifndef CONFIG_MIPS_UNCACHED
-        /*  write back to physical memory   */
-        dma_cache_wback((u32)skb->data - byteoff - sizeof(struct sk_buff *), skb->len + byteoff + sizeof(struct sk_buff *));
+		/*  write back to physical memory   */
+		dma_cache_wback((u32)skb->data - byteoff - sizeof(struct sk_buff *), skb->len + byteoff + sizeof(struct sk_buff *));
 #endif
-    }
-    wmb();
+	}
+	wmb();
 
-    /*  allocate descriptor */
-    spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
-    desc = (volatile struct eth_tx_descriptor *)(CPU_TO_WAN_TX_DESC_BASE + g_cpu_to_wan_tx_desc_pos);
-    if ( desc->own )    //  PPE hold
-    {
-        spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
-        err("PPE hold");
-        goto NO_FREE_DESC;
-    }
-    if ( ++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM )
-        g_cpu_to_wan_tx_desc_pos = 0;
-    spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	/*  allocate descriptor */
+	spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	desc = (volatile struct eth_tx_descriptor *)(CPU_TO_WAN_TX_DESC_BASE + g_cpu_to_wan_tx_desc_pos);
+	if ( desc->own )    //  PPE hold
+	{
+		spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+		err("PPE hold");
+		goto NO_FREE_DESC;
+	}
+	if ( ++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM )
+		g_cpu_to_wan_tx_desc_pos = 0;
+	spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
 
-    /*  load descriptor from memory */
-    reg_desc = *desc;
+	/*  load descriptor from memory */
+	reg_desc = *desc;
 
-    /*  free previous skb   */
-    ASSERT((reg_desc.dataptr & 31) == 0, "reg_desc.dataptr (0x%#x) must be 8 DWORDS aligned", reg_desc.dataptr);
-    free_skb_clear_dataptr(&reg_desc);
+	/*  free previous skb   */
+	ASSERT((reg_desc.dataptr & 31) == 0, "reg_desc.dataptr (0x%#x) must be 8 DWORDS aligned", reg_desc.dataptr);
+	free_skb_clear_dataptr(&reg_desc);
 
-    /*  detach from protocol    */
-    skb_to_free = skb;
-    if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
-        skb = skb_to_free;
+	/*  detach from protocol    */
+	skb_to_free = skb;
+	if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
+		skb = skb_to_free;
 		goto ALLOC_SKB_TX_FAIL;
-    }
+	}
 
-    put_skb_to_dbg_pool(skb);
+	put_skb_to_dbg_pool(skb);
 
 #if defined(DEBUG_MIRROR_PROC) && DEBUG_MIRROR_PROC
-    if ( g_mirror_netdev != NULL )
-    {
-        struct sk_buff *new_skb = skb_copy(skb, GFP_ATOMIC);
+	if ( g_mirror_netdev != NULL )
+	{
+		struct sk_buff *new_skb = skb_copy(skb, GFP_ATOMIC);
 
-        if ( new_skb != NULL )
-        {
-            skb_pull(new_skb, sizeof(pkth));
-            new_skb->dev = g_mirror_netdev;
-            dev_queue_xmit(new_skb);
-        }
-    }
+		if ( new_skb != NULL )
+		{
+			skb_pull(new_skb, sizeof(pkth));
+			new_skb->dev = g_mirror_netdev;
+			dev_queue_xmit(new_skb);
+		}
+	}
 #endif
 
-    /*  update descriptor   */
-    reg_desc.small      = (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE ? 1 : 0;
-    reg_desc.dataptr    = (u32)skb->data & (0x1FFFFFFF ^ (DMA_TX_ALIGNMENT - 1));  //  byte address
-    reg_desc.byteoff    = byteoff;
-    reg_desc.datalen    = len + sizeof(pkth);
-    reg_desc.qid        = qid;
-    reg_desc.own        = 1;
-    reg_desc.c          = 0;    //? vr9_e5 ist hier anders
-    reg_desc.sop = reg_desc.eop = 1;
+	/*  update descriptor   */
+	reg_desc.small      = (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE ? 1 : 0;
+	reg_desc.dataptr    = (u32)skb->data & (0x1FFFFFFF ^ (DMA_TX_ALIGNMENT - 1));  //  byte address
+	reg_desc.byteoff    = byteoff;
+	reg_desc.datalen    = len + sizeof(pkth);
+	reg_desc.qid        = qid;
+	reg_desc.own        = 1;
+	reg_desc.c          = 0;    //? vr9_e5 ist hier anders
+	reg_desc.sop = reg_desc.eop = 1;
 
-    /*  update MIB  */
-    dev->trans_start = jiffies;
+	/*  update MIB  */
+	dev->trans_start = jiffies;
 
-    dbg_dma("skb->data %#x data_ptr %#x, byteoff %d\n", (u32)skb->data, reg_desc.dataptr, byteoff  );
+	dbg_dma("skb->data %#x data_ptr %#x, byteoff %d\n", (u32)skb->data, reg_desc.dataptr, byteoff  );
 
 	/*  update MIB  */
 	if (avm_dev){
-        avm_dev->device_stats.tx_packets++;
-        avm_dev->device_stats.tx_bytes += reg_desc.datalen;
+		avm_dev->device_stats.tx_packets++;
+		avm_dev->device_stats.tx_bytes += reg_desc.datalen;
 	}
 
-    /*  write discriptor to memory and write back cache */
-    *((volatile u32 *)desc + 1) = *((u32 *)&reg_desc + 1);
-    *(volatile u32 *)desc = *(u32 *)&reg_desc;
+	/*  write discriptor to memory and write back cache */
+	*((volatile u32 *)desc + 1) = *((u32 *)&reg_desc + 1);
+	*(volatile u32 *)desc = *(u32 *)&reg_desc;
 
-    return 0;
+	return 0;
 
 NO_FREE_DESC:
 ALLOC_SKB_TX_FAIL:
 ETH_XMIT_DROP:
-    dev_kfree_skb_any(skb);
-
+	dev_kfree_skb_any(skb);
+ETH_PAD_DROP:
 	if (avm_dev)
 		avm_dev->device_stats.tx_dropped++;
-    return 0;
+	return 0;
 }
 
 
@@ -2300,9 +2313,7 @@
     if ( g_stop_datapath != 0 )
         goto ETH_XMIT_DROP;
 
-	if (skb->len <= ETH_MIN_TX_PACKET_LENGTH ){
-
-		/*--- 0byte padding behind skb->len, skb->len is not increased, this function linearzies our skb ---*/
+	if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
 
 		if (skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
 			skb = NULL;
--- linux-3.10/drivers/net/avm_cpmac/switch/ifx/ar9/ifxmips_ppa_datapath_ar9_a5.c	2015-10-20 19:03:02.000000000 +0200
+++ linux-3.10/drivers/net/avm_cpmac/switch/ifx/ar9/ifxmips_ppa_datapath_ar9_a5.c	2018-01-12 13:04:58.000000000 +0100
@@ -2680,8 +2680,21 @@
     if ( g_stop_datapath != 0 )
         goto ETH_XMIT_DROP;
 
+    /*
+     * AVM/CBU: JZ-34572 Zero-padding for small packets
+     */
+    len = skb->len;
+    if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+	    if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+		    skb = NULL;
+		    goto ETH_PAD_DROP;
+	    }
+	    len = ETH_MIN_TX_PACKET_LENGTH;
+	    skb->len = len;
+    }
+
     if ( skb->cb[13] == 0x5A )  //  magic number indicating directpath
-        qid = skb->cb[15];
+	    qid = skb->cb[15];
     else
     {
 		if ( skb->priority >= NUM_ENTITY(g_eth_prio_queue_map) )
@@ -2695,7 +2708,7 @@
     pkth.qid    = g_wan_queue_class_map[qid];       //  0 is lowest priority, 3 is highest priority
     pkth.direct = g_egress_direct_forward_enable;   //  enable/disable direct forward according to flag, need re-consideration
 
-    len = skb->len <= ETH_MIN_TX_PACKET_LENGTH ? ETH_MIN_TX_PACKET_LENGTH : skb->len;
+    BUG_ON(len < ETH_MIN_TX_PACKET_LENGTH); 
 
     dump_skb(skb, DUMP_SKB_LEN, "eth_qos_hard_start_xmit", if_id, qid, 1, 0);
 
@@ -2728,7 +2741,7 @@
     }
     else
     {
-		dma_alignment_eth_good_count++;
+	dma_alignment_eth_good_count++;
 
         skb_push(skb, sizeof(pkth));
         byteoff -= sizeof(pkth);
@@ -2802,6 +2815,8 @@
 ALLOC_SKB_TX_FAIL:
 ETH_XMIT_DROP:
     dev_kfree_skb_any(skb);
+ETH_PAD_DROP:
+    if (avm_dev)
 	avm_dev->device_stats.tx_dropped++;
     return 0;
 }
@@ -2928,7 +2943,16 @@
     if ( g_stop_datapath != 0 )
         goto ETH_XMIT_DROP;
 
-    len = skb->len <= ETH_MIN_TX_PACKET_LENGTH ? ETH_MIN_TX_PACKET_LENGTH : skb->len;
+    len = skb->len;
+    if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+	    if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len)){
+		    skb = NULL;
+		    goto ETH_PAD_DROP;
+	    }
+	    len = ETH_MIN_TX_PACKET_LENGTH;
+	    skb->len = len;
+    }
+
 #ifdef CONFIG_IFX_PORT_MIRROR
     if ( (g_wan_itf & (1 << port)) && ifx_get_mirror_netdev && ifx_get_mirror_netdev() != NULL )
         mirror_pkt_eth(skb, 0);
@@ -2987,9 +3011,11 @@
 ETH_XMIT_DROP:
     dbg("ETH_XMIT_DROP");
     dev_kfree_skb_any(skb);
-	if (priv && priv->avm_dev) {
-		avm_dev->device_stats.tx_dropped++;
-	}
+
+ETH_PAD_DROP:
+    if (priv && priv->avm_dev) {
+	    avm_dev->device_stats.tx_dropped++;
+    }
     return -1;
 }
 
@@ -6839,9 +6865,14 @@
 
             skb = skb_get(ppa_pushthrough_data[i].skb_list);
 
-            len = skb->len;
-            if ( len < ETH_MIN_TX_PACKET_LENGTH + sizeof(struct sw_eg_pkt_header) )
-                len = ETH_MIN_TX_PACKET_LENGTH + sizeof(struct sw_eg_pkt_header);
+	    len = skb->len;
+	    if (unlikely(skb->len < ETH_MIN_TX_PACKET_LENGTH + sizeof(struct sw_eg_pkt_header))){
+		    if (skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH + sizeof(struct sw_eg_pkt_header) - skb->len )){
+			    return -1;
+		    }
+		    len =  ETH_MIN_TX_PACKET_LENGTH + sizeof(struct sw_eg_pkt_header);
+		    skb->len = len;
+	    }
 
             put_skb_to_dbg_pool(skb);
             if ( dma_device_write(g_dma_device_ppe, skb->data, len, skb) == len )
--- linux-3.10/drivers/net/avm_cpmac/switch/ifx/ar9/swi_ar9.c	2016-03-22 12:52:58.000000000 +0100
+++ linux-3.10/drivers/net/avm_cpmac/switch/ifx/ar9/swi_ar9.c	2018-01-12 13:04:58.000000000 +0100
@@ -1508,8 +1508,17 @@
         return -EFAULT;
     }
 
-	if( g_stop_datapath )
-        goto ETH_XMIT_DROP;
+    if( g_stop_datapath )
+	    goto ETH_XMIT_DROP;
+
+    len = skb->len;
+    if (unlikely(skb->len < ETH_ZLEN )){
+	    if (skb_pad(skb, ETH_ZLEN - skb->len )){
+		    skb = NULL;
+		    goto ETH_PAD_DROP;
+	    }
+	    len = ETH_ZLEN;
+    }
 
     // get avm_device and find out the device's mac_nr
     eth_priv = (avmnet_netdev_priv_t *) netdev_priv(dev);
@@ -1525,7 +1534,6 @@
         BUG();
     }
 
-    len = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len;
 
 #ifdef DUMP_PACKET
     AVMNET_ERR("[%s] skb->len: %d\n", __func__, skb->len);
@@ -1595,6 +1603,7 @@
 
 ETH_XMIT_DROP:
 	dev_kfree_skb_any(skb);
+ETH_PAD_DROP:
 	if (eth_priv){
 		eth_priv->avm_dev->device_stats.tx_dropped++;
 		eth_priv->avm_dev->device_stats.tx_errors++;
--- linux-3.10/drivers/net/avm_cpmac/switch/ifx/vr9/ifxmips_ppa_datapath_vr9_a5.c	2016-02-09 13:38:45.000000000 +0100
+++ linux-3.10/drivers/net/avm_cpmac/switch/ifx/vr9/ifxmips_ppa_datapath_vr9_a5.c	2018-01-12 13:04:58.000000000 +0100
@@ -2001,159 +2001,171 @@
 
 
 int ifx_ppa_eth_qos_hard_start_xmit_a5(struct sk_buff *skb, struct net_device *dev) {
-    int port;
-    int qid;
-    unsigned long sys_flag;
-    volatile struct eth_tx_descriptor *desc;
-    struct eth_tx_descriptor reg_desc;
-    struct sk_buff *skb_to_free;
-    int byteoff;
-    int len;
-    struct sw_eg_pkt_header pkth = {0};
+	int port;
+	int qid;
+	unsigned long sys_flag;
+	volatile struct eth_tx_descriptor *desc;
+	struct eth_tx_descriptor reg_desc;
+	struct sk_buff *skb_to_free;
+	int byteoff;
+	int len;
+	struct sw_eg_pkt_header pkth = {0};
 	avmnet_device_t *avm_dev = NULL;
 	avmnet_netdev_priv_t *priv = netdev_priv(dev);
 
-    if (priv)
-    	avm_dev = priv->avm_dev;
+	if (priv)
+		avm_dev = priv->avm_dev;
 
-    if ( g_stop_datapath != 0 )
-        goto ETH_XMIT_DROP;
+	if ( g_stop_datapath != 0 )
+		goto ETH_XMIT_DROP;
 
 	if (!priv || !avm_dev || !avm_dev->device || !netif_running(avm_dev->device) || !netif_carrier_ok(avm_dev->device))
-        goto ETH_XMIT_DROP;
+		goto ETH_XMIT_DROP;
 
-    port = get_eth_port(dev);
-    if ( port < 0 )
-        return -ENODEV;
+	port = get_eth_port(dev);
+	if ( port < 0 )
+		return -ENODEV;
 
-    if ( skb->cb[13] == 0x5A )  //  magic number indicating directpath
-        qid = skb->cb[15];
-    else 
-        qid = avm_get_eth_qid( port, skb->priority);
+	/*
+	 * AVM/CBU: JZ-34572 Zero-padding for small packets
+	 */
+	len = skb->len;
+	if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+		if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+			skb = NULL;
+			goto ETH_PAD_DROP;
+		}
+		len = ETH_MIN_TX_PACKET_LENGTH;
+		skb->len = len;
+	}
 
-    pkth.spid           = 2;    //  CPU
-    pkth.dpid           = port; //  eth0/eth1
-    pkth.lrn_dis        = 0;
-    pkth.class_en       = PS_MC_GENCFG3->class_en;
-    pkth.class          = g_wan_queue_class_map[qid];
-    if ( pkth.dpid < 2 )
-        pkth.dpid_en    = g_egress_direct_forward_enable;
+	if ( skb->cb[13] == 0x5A )  //  magic number indicating directpath
+		qid = skb->cb[15];
+	else 
+		qid = avm_get_eth_qid( port, skb->priority);
 
-    len = skb->len <= ETH_MIN_TX_PACKET_LENGTH ? ETH_MIN_TX_PACKET_LENGTH : skb->len;
+	pkth.spid           = 2;    //  CPU
+	pkth.dpid           = port; //  eth0/eth1
+	pkth.lrn_dis        = 0;
+	pkth.class_en       = PS_MC_GENCFG3->class_en;
+	pkth.class          = g_wan_queue_class_map[qid];
+	if ( pkth.dpid < 2 )
+		pkth.dpid_en    = g_egress_direct_forward_enable;
 
-    dump_skb(skb, DUMP_SKB_LEN, "eth_qos_hard_start_xmit", port, qid, 1, 1);
+	dump_skb(skb, DUMP_SKB_LEN, "eth_qos_hard_start_xmit", port, qid, 1, 1);
 
-    /*  reserve space to put pointer in skb */
-    byteoff = (((unsigned int)skb->data - sizeof(pkth)) & (DMA_ALIGNMENT - 1)) + sizeof(pkth);
-    //if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb->end - skb->data < 1564 /* 1518 (max ETH frame) + 22 (reserved for firmware) + 10 (AAL5) + 6 (PPPoE) + 4 x 2 (2 VLAN) */ || skb_shared(skb) || skb_cloned(skb) )
-    if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb_shared(skb) || skb_cloned(skb) ||
-          (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE  )
-    {
-        struct sk_buff *new_skb;
+	/*  reserve space to put pointer in skb */
+	byteoff = (((unsigned int)skb->data - sizeof(pkth)) & (DMA_ALIGNMENT - 1)) + sizeof(pkth);
+	//if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb->end - skb->data < 1564 /* 1518 (max ETH frame) + 22 (reserved for firmware) + 10 (AAL5) + 6 (PPPoE) + 4 x 2 (2 VLAN) */ || skb_shared(skb) || skb_cloned(skb) )
+	if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb_shared(skb) || skb_cloned(skb) ||
+	     (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE  )
+	{
+		struct sk_buff *new_skb;
 
-        ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff, "skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff");
-        new_skb = alloc_skb_tx(sizeof(pkth) + skb->len < DMA_PACKET_SIZE ? DMA_PACKET_SIZE : sizeof(pkth) + skb->len);  //  may be used by RX fastpath later
-        if ( !new_skb )
-        {
-            err("no memory");
-            goto ALLOC_SKB_TX_FAIL;
-        }
-        skb_put(new_skb, sizeof(pkth) + skb->len);
-        my_memcpy(new_skb->data, &pkth, sizeof(pkth));
-        my_memcpy(new_skb->data + sizeof(pkth), skb->data, skb->len);
-        dev_kfree_skb_any(skb);
-        skb = new_skb;
-        byteoff = (u32)skb->data & (DMA_ALIGNMENT - 1);
+		ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff, "skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff");
+		new_skb = alloc_skb_tx(sizeof(pkth) + skb->len < DMA_PACKET_SIZE ? DMA_PACKET_SIZE : sizeof(pkth) + skb->len);  //  may be used by RX fastpath later
+		if ( !new_skb )
+		{
+			err("no memory");
+			goto ALLOC_SKB_TX_FAIL;
+		}
+		skb_put(new_skb, sizeof(pkth) + skb->len);
+		my_memcpy(new_skb->data, &pkth, sizeof(pkth));
+		my_memcpy(new_skb->data + sizeof(pkth), skb->data, skb->len);
+		dev_kfree_skb_any(skb);
+		skb = new_skb;
+		byteoff = (u32)skb->data & (DMA_ALIGNMENT - 1);
 #ifndef CONFIG_MIPS_UNCACHED
-        /*  write back to physical memory   */
-        dma_cache_wback((u32)skb->data, skb->len);
+		/*  write back to physical memory   */
+		dma_cache_wback((u32)skb->data, skb->len);
 #endif
-    }
-    else
-    {
-        skb_push(skb, sizeof(pkth));
-        byteoff -= sizeof(pkth);
-        my_memcpy(skb->data, &pkth, sizeof(pkth));
-        *(struct sk_buff **)((u32)skb->data - byteoff - sizeof(struct sk_buff *)) = skb;
+	}
+	else
+	{
+		skb_push(skb, sizeof(pkth));
+		byteoff -= sizeof(pkth);
+		my_memcpy(skb->data, &pkth, sizeof(pkth));
+		*(struct sk_buff **)((u32)skb->data - byteoff - sizeof(struct sk_buff *)) = skb;
 #ifndef CONFIG_MIPS_UNCACHED
-        /*  write back to physical memory   */
-        dma_cache_wback((u32)skb->data - byteoff - sizeof(struct sk_buff *), skb->len + byteoff + sizeof(struct sk_buff *));
+		/*  write back to physical memory   */
+		dma_cache_wback((u32)skb->data - byteoff - sizeof(struct sk_buff *), skb->len + byteoff + sizeof(struct sk_buff *));
 #endif
-    }
+	}
 
-    /*  allocate descriptor */
-    spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
-    desc = (volatile struct eth_tx_descriptor *)(CPU_TO_WAN_TX_DESC_BASE + g_cpu_to_wan_tx_desc_pos);
-    if ( desc->own )    //  PPE hold
-    {
-        spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
-        err("PPE hold");
-        goto NO_FREE_DESC;
-    }
-    if ( ++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM )
-        g_cpu_to_wan_tx_desc_pos = 0;
-    spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	/*  allocate descriptor */
+	spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	desc = (volatile struct eth_tx_descriptor *)(CPU_TO_WAN_TX_DESC_BASE + g_cpu_to_wan_tx_desc_pos);
+	if ( desc->own )    //  PPE hold
+	{
+		spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+		err("PPE hold");
+		goto NO_FREE_DESC;
+	}
+	if ( ++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM )
+		g_cpu_to_wan_tx_desc_pos = 0;
+	spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
 
-    /*  load descriptor from memory */
-    reg_desc = *desc;
+	/*  load descriptor from memory */
+	reg_desc = *desc;
 
-    /*  free previous skb   */
-    ASSERT((reg_desc.dataptr & (DMA_ALIGNMENT - 1)) == 0, "reg_desc.dataptr (0x%#x) must be 8 DWORDS aligned", reg_desc.dataptr);
-    free_skb_clear_dataptr(&reg_desc);
+	/*  free previous skb   */
+	ASSERT((reg_desc.dataptr & (DMA_ALIGNMENT - 1)) == 0, "reg_desc.dataptr (0x%#x) must be 8 DWORDS aligned", reg_desc.dataptr);
+	free_skb_clear_dataptr(&reg_desc);
 
-    /*  detach from protocol    */
-    skb_to_free = skb;
-    if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
-        skb = skb_to_free;
+	/*  detach from protocol    */
+	skb_to_free = skb;
+	if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
+		skb = skb_to_free;
 		goto ALLOC_SKB_TX_FAIL;
-    }
+	}
 
-    put_skb_to_dbg_pool(skb);
+	put_skb_to_dbg_pool(skb);
 
 #if defined(DEBUG_MIRROR_PROC) && DEBUG_MIRROR_PROC
-    if ( g_mirror_netdev != NULL )
-    {
-        struct sk_buff *new_skb = skb_copy(skb, GFP_ATOMIC);
+	if ( g_mirror_netdev != NULL )
+	{
+		struct sk_buff *new_skb = skb_copy(skb, GFP_ATOMIC);
 
-        if ( new_skb != NULL )
-        {
-            skb_pull(new_skb, sizeof(pkth));
-            new_skb->dev = g_mirror_netdev;
-            dev_queue_xmit(new_skb);
-        }
-    }
+		if ( new_skb != NULL )
+		{
+			skb_pull(new_skb, sizeof(pkth));
+			new_skb->dev = g_mirror_netdev;
+			dev_queue_xmit(new_skb);
+		}
+	}
 #endif
 
-    /*  update descriptor   */
-    reg_desc.small      = (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE ? 1 : 0;
-    reg_desc.dataptr    = (u32)skb->data & (0x1FFFFFFF ^ (DMA_ALIGNMENT - 1));  //  byte address
-    reg_desc.byteoff    = byteoff;
-    reg_desc.datalen    = len + sizeof(pkth);
-    reg_desc.qid        = qid;
-    reg_desc.own        = 1;
-    reg_desc.c          = 1;    //  ?
-    reg_desc.sop = reg_desc.eop = 1;
+	/*  update descriptor   */
+	reg_desc.small      = (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE ? 1 : 0;
+	reg_desc.dataptr    = (u32)skb->data & (0x1FFFFFFF ^ (DMA_ALIGNMENT - 1));  //  byte address
+	reg_desc.byteoff    = byteoff;
+	reg_desc.datalen    = len + sizeof(pkth);
+	reg_desc.qid        = qid;
+	reg_desc.own        = 1;
+	reg_desc.c          = 1;    //  ?
+	reg_desc.sop = reg_desc.eop = 1;
 
-    /*  update MIB  */
-    dev->trans_start = jiffies;
+	/*  update MIB  */
+	dev->trans_start = jiffies;
 
-    avm_dev->device_stats.tx_packets++;
-    avm_dev->device_stats.tx_bytes += len;
+	avm_dev->device_stats.tx_packets++;
+	avm_dev->device_stats.tx_bytes += len;
 
-    /*  write discriptor to memory and write back cache */
-    *((volatile u32 *)desc + 1) = *((u32 *)&reg_desc + 1);
-    *(volatile u32 *)desc = *(u32 *)&reg_desc;
+	/*  write discriptor to memory and write back cache */
+	*((volatile u32 *)desc + 1) = *((u32 *)&reg_desc + 1);
+	*(volatile u32 *)desc = *(u32 *)&reg_desc;
 
-    return 0;
+	return 0;
 
 NO_FREE_DESC:
 ALLOC_SKB_TX_FAIL:
 ETH_XMIT_DROP:
-    dev_kfree_skb_any(skb);
+	dev_kfree_skb_any(skb);
+ETH_PAD_DROP:
 	if (priv && priv->avm_dev) {
 		avm_dev->device_stats.tx_dropped++;
 	}
-    return 0;
+	return 0;
 }
 
 /*------------------------------------------------------------------------------------------*\
@@ -2277,15 +2289,15 @@
         goto ETH_XMIT_DROP;
 
     len = skb->len;
-	if (skb->len <= ETH_MIN_TX_PACKET_LENGTH ){
-		/*--- 0byte padding behind skb->len, skb->len is not increased ---*/
-		if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
-			skb = NULL;
-			goto ETH_XMIT_DROP;
-		}
-		len = ETH_MIN_TX_PACKET_LENGTH;
-		padded_frame_count++;
-	} 
+    if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+	    /*--- 0byte padding behind skb->len, skb->len is not increased ---*/
+	    if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+		    skb = NULL;
+		    goto ETH_XMIT_DROP;
+	    }
+	    len = ETH_MIN_TX_PACKET_LENGTH;
+	    padded_frame_count++;
+    } 
 
 #if defined (CONFIG_AVM_SCATTER_GATHER)
     /* If packet is not checksummed and device does not support
--- linux-3.10/drivers/net/avm_cpmac/switch/ifx/vr9/ifxmips_ppa_datapath_vr9_e5.c	2016-02-09 13:38:45.000000000 +0100
+++ linux-3.10/drivers/net/avm_cpmac/switch/ifx/vr9/ifxmips_ppa_datapath_vr9_e5.c	2018-01-12 13:04:58.000000000 +0100
@@ -1093,7 +1093,7 @@
 	struct tx_descriptor reg_desc = { 0 };
 	struct sk_buff *skb_to_free;
 	unsigned int byteoff;
-    int cache_wback_len;
+	int cache_wback_len;
 	avmnet_netdev_priv_t *priv = netdev_priv(dev);
 	avmnet_device_t *avm_dev = priv->avm_dev;
 
@@ -1108,7 +1108,7 @@
 	/*  allocate descriptor */
 	desc_base = -1;
 	f_full = 1;
-    spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
 	if (CPU_TO_WAN_TX_DESC_BASE[g_cpu_to_wan_tx_desc_pos].own == 0) {
 		desc_base = g_cpu_to_wan_tx_desc_pos;
 		if (++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM)
@@ -1119,14 +1119,14 @@
 	if (f_full) {
 		dev->trans_start = jiffies;
 		netif_stop_queue(dev);
-        AVMNET_DBG_TX_QUEUE("full, stop device %s", dev->name);
+		AVMNET_DBG_TX_QUEUE("full, stop device %s", dev->name);
 
 
 		if (priv->lantiq_ppe_hold_timeout == 0){
-		    priv->lantiq_ppe_hold_timeout = jiffies + (PPE_HOLD_TIMEOUT * HZ);
+			priv->lantiq_ppe_hold_timeout = jiffies + (PPE_HOLD_TIMEOUT * HZ);
 		} else if ( time_after(jiffies, priv->lantiq_ppe_hold_timeout )){
-    		err("PPE hold timeout reached");
-    		BUG();
+			err("PPE hold timeout reached");
+			BUG();
 		}
 
 		spin_lock(&g_mailbox_signal_spinlock);
@@ -1134,11 +1134,11 @@
 		SW_WRITE_REG32_MASK(0, CPU_TO_WAN_TX_SIG, MBOX_IGU1_ISRC);
 		g_mailbox_signal_mask |= CPU_TO_WAN_TX_SIG;
 		SW_WRITE_REG32(g_mailbox_signal_mask, MBOX_IGU1_IER);
-        spin_unlock(&g_mailbox_signal_spinlock);
+		spin_unlock(&g_mailbox_signal_spinlock);
 	} else {
 		priv->lantiq_ppe_hold_timeout = 0;
 	}
-    spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
 	if (desc_base < 0)
 		goto PTM_HARD_START_XMIT_FAIL;
 	desc = &CPU_TO_WAN_TX_DESC_BASE[desc_base];
@@ -1152,7 +1152,7 @@
 
 		ASSERT (byteoff < 32, "byteoff zu gross %d ", byteoff);
 		ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff,
-				"   skb_headroom < sizeof(struct sk_buff *) +  byteoff \n");
+		       "   skb_headroom < sizeof(struct sk_buff *) +  byteoff \n");
 
 #if defined(CONFIG_AVMNET_DEBUG) 
 		if ( g_dbg_datapath & DBG_ENABLE_MASK_DEBUG_ALIGNMENT )
@@ -1165,13 +1165,13 @@
 				"   skb->head:       %p\n"
 				"   skb->data:       %p\n"
 				"   in_dev:          %s\n",
-					skb_headroom(skb),
-					sizeof(struct sk_buff *),
-					byteoff,
-					dev->hard_header_len,
-					skb->head,
-					skb->data,
-					skb->input_dev?skb->input_dev->name:"no_input_device");
+				skb_headroom(skb),
+				sizeof(struct sk_buff *),
+				byteoff,
+				dev->hard_header_len,
+				skb->head,
+				skb->data,
+				skb->input_dev?skb->input_dev->name:"no_input_device");
 #endif
 
 		ASSERT(!skb_cloned(skb), "skb is cloned");
@@ -1183,10 +1183,10 @@
 		}
 		skb_put(new_skb, skb->len);
 		memcpy(new_skb->data, skb->data, skb->len);
-		
+
 		/* AVMGRM: priority wegen QoS auch kopieren */
 		new_skb->priority = skb->priority;
-		
+
 		dev_kfree_skb_any(skb);
 		skb = new_skb;
 		byteoff = (unsigned int) skb->data & (DMA_TX_ALIGNMENT - 1);
@@ -1194,11 +1194,22 @@
 		dma_cache_wback((unsigned long)skb->data, skb->len);
 	} else {
 		dma_alignment_ptm_good_count++;
-        skb_orphan(skb);
+		skb_orphan(skb);
+	}
+
+	/*
+	 * AVM/CBU: JZ-34572 Zero-padding for small packets
+	 */
+	if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+		if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+			skb = NULL;
+			goto PTM_HARD_START_PAD_FAIL;
+		}
+		skb->len = ETH_MIN_TX_PACKET_LENGTH;
 	}
 
 	*(struct sk_buff **) ((unsigned int) skb->data - byteoff
-			- sizeof(struct sk_buff *)) = skb;
+			      - sizeof(struct sk_buff *)) = skb;
 	/*  write back to physical memory   */
 	dma_cache_wback(
 			(unsigned long)skb->data - byteoff - sizeof(struct sk_buff *),
@@ -1209,10 +1220,10 @@
 
 	/*  detach from protocol    */
 	skb_to_free = skb;
-    if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
-        skb = skb_to_free;
+	if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
+		skb = skb_to_free;
 		goto ALLOC_SKB_TX_FAIL;
-    }
+	}
 
 	put_skb_to_dbg_pool(skb);
 
@@ -1229,13 +1240,14 @@
 
 	/*  update descriptor   */
 	reg_desc.small =
-			(unsigned int) skb->end - (unsigned int) skb->data < DMA_PACKET_SIZE ?
-					1 : 0;
+		(unsigned int) skb->end - (unsigned int) skb->data < DMA_PACKET_SIZE ?
+		1 : 0;
 	reg_desc.dataptr = (unsigned int) skb->data
-			& (0x1FFFFFFF ^ (DMA_TX_ALIGNMENT - 1));
-	reg_desc.datalen = skb->len < ETH_ZLEN ? ETH_ZLEN : skb->len;
-    // reg_desc.qid     = qid; //AVMCCB: UGW54 vs. AVM-Concept
-    reg_desc.qid = avm_get_ptm_qid(skb->priority);
+		& (0x1FFFFFFF ^ (DMA_TX_ALIGNMENT - 1));
+	BUG_ON(skb->len < ETH_ZLEN);
+	reg_desc.datalen = skb->len;
+	// reg_desc.qid     = qid; //AVMCCB: UGW54 vs. AVM-Concept
+	reg_desc.qid = avm_get_ptm_qid(skb->priority);
 	reg_desc.byteoff = byteoff;
 	reg_desc.own = 1;
 	reg_desc.c = 1;
@@ -1267,8 +1279,8 @@
 
 	dump_skb(skb, DUMP_SKB_LEN, (char *) __func__, 0, reg_desc.qid, 1, 0);
 
-    if ( (cache_wback_len = swap_mac(skb->data)) )
-        dma_cache_wback((unsigned long)skb->data, cache_wback_len);
+	if ( (cache_wback_len = swap_mac(skb->data)) )
+		dma_cache_wback((unsigned long)skb->data, cache_wback_len);
 
 
 	/*  write discriptor to memory  */
@@ -1281,9 +1293,10 @@
 
 	return NETDEV_TX_OK;
 
-	ALLOC_SKB_TX_FAIL:
-	PTM_HARD_START_XMIT_FAIL:
+ALLOC_SKB_TX_FAIL:
+PTM_HARD_START_XMIT_FAIL:
 	dev_kfree_skb_any(skb);
+PTM_HARD_START_PAD_FAIL:
 	if (avm_dev)
 		avm_dev->device_stats.tx_dropped++;
 	return NETDEV_TX_OK;
@@ -1425,195 +1438,207 @@
 
 
 static int ifx_ppa_eth_qos_hard_start_xmit_e5(struct sk_buff *skb, struct net_device *dev) {
-    int dpid;
-    int qid;
-    unsigned long sys_flag;
-    volatile struct tx_descriptor *desc;
-    struct tx_descriptor reg_desc;
-    struct sk_buff *skb_to_free;
-    int byteoff;
-    int len;
-    struct sw_eg_pkt_header pkth = {0};
+	int dpid;
+	int qid;
+	unsigned long sys_flag;
+	volatile struct tx_descriptor *desc;
+	struct tx_descriptor reg_desc;
+	struct sk_buff *skb_to_free;
+	int byteoff;
+	int len;
+	struct sw_eg_pkt_header pkth = {0};
 
 	avmnet_netdev_priv_t *priv = netdev_priv(dev);
 	avmnet_device_t *avm_dev = priv->avm_dev;
 
-    if ( g_stop_datapath != 0 )
-        goto ETH_XMIT_DROP;
+	if ( g_stop_datapath != 0 )
+		goto ETH_XMIT_DROP;
 
-    if (skb->ip_summed == CHECKSUM_PARTIAL) {
-    	err("Dropping SG Packet in ETHWAN Path");
-        goto ETH_XMIT_DROP;
-    }
+	if (skb->ip_summed == CHECKSUM_PARTIAL){
+		err("Dropping SG Packet in ETHWAN Path");
+		goto ETH_XMIT_DROP;
+	}
 
-    dpid = get_eth_port(dev);
-    if ( dpid < 0 )
-        return -ENODEV;
+	/*
+	 * AVM/CBU: JZ-34572 Zero-padding for small packets
+	 */
+	if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+		if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+			skb = NULL;
+			goto ETH_PAD_DROP;
+		}
+		skb->len = ETH_MIN_TX_PACKET_LENGTH;
+	}
 
-    if ( skb->cb[13] == 0x5A ) {
-        // magic number indicating forcing QId (e.g. directpath)
-        qid = skb->cb[15];
-    } else {
-        qid = avm_get_eth_qid( dpid, skb->priority );
-    }
+	dpid = get_eth_port(dev);
+	if ( dpid < 0 )
+		return -ENODEV;
+
+	if ( skb->cb[13] == 0x5A ) {
+		// magic number indicating forcing QId (e.g. directpath)
+		qid = skb->cb[15];
+	} else {
+		qid = avm_get_eth_qid( dpid, skb->priority );
+	}
 
 #if 0
-    // AVMCCB UGW54 vs AVM-Concept
-    pkth.spid           = 2;    //  CPU
-//    pkth.dpid           = dpid; //  eth0/eth1
-    pkth.dpid           = 1; //  eth0/eth1
-    pkth.lrn_dis        = 0;
+	// AVMCCB UGW54 vs AVM-Concept
+	pkth.spid           = 2;    //  CPU
+	//    pkth.dpid           = dpid; //  eth0/eth1
+	pkth.dpid           = 1; //  eth0/eth1
+	pkth.lrn_dis        = 0;
 
-    pkth.class_en       = PS_MC_GENCFG3->class_en;
-    pkth.class          = g_wan_queue_class_map[qid];
-    if ( pkth.dpid < 2 )
-        pkth.dpid_en    = g_egress_direct_forward_enable;
+	pkth.class_en       = PS_MC_GENCFG3->class_en;
+	pkth.class          = g_wan_queue_class_map[qid];
+	if ( pkth.dpid < 2 )
+		pkth.dpid_en    = g_egress_direct_forward_enable;
 #else
 
-    // for cpu -> ethernet
-    pkth.spid = 2; //  CPU
-    pkth.dpid_en = 1;
-    pkth.dpid = 1; // 0 or 1 for PORT_MAP_MODE
-    pkth.port_map_en = 1;
-    pkth.port_map_sel = 1;
-    pkth.port_map = (1 << if_id_to_mac_nr(dpid));
-    pkth.lrn_dis = 0;
-    pkth.class_en = 0;
-    pkth.class = 0;
-    dbg_dma("port_map: %#x", (unsigned int)pkth.port_map);
+	// for cpu -> ethernet
+	pkth.spid = 2; //  CPU
+	pkth.dpid_en = 1;
+	pkth.dpid = 1; // 0 or 1 for PORT_MAP_MODE
+	pkth.port_map_en = 1;
+	pkth.port_map_sel = 1;
+	pkth.port_map = (1 << if_id_to_mac_nr(dpid));
+	pkth.lrn_dis = 0;
+	pkth.class_en = 0;
+	pkth.class = 0;
+	dbg_dma("port_map: %#x", (unsigned int)pkth.port_map);
 
 #endif
-    len = skb->len <= ETH_MIN_TX_PACKET_LENGTH ? ETH_MIN_TX_PACKET_LENGTH : skb->len;
+	BUG_ON(skb->len < ETH_MIN_TX_PACKET_LENGTH);
+	len = skb->len;
 
-    dump_skb(skb, DUMP_SKB_LEN, __func__, dpid, qid, 1, 0);
+	dump_skb(skb, DUMP_SKB_LEN, __func__, dpid, qid, 1, 0);
 
-    /*  reserve space to put pointer in skb */
-    byteoff = (((unsigned int)skb->data - sizeof(pkth)) & (DMA_TX_ALIGNMENT - 1)) + sizeof(pkth);
-    //if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb->end - skb->data < 1564 /* 1518 (max ETH frame) + 22 (reserved for firmware) + 10 (AAL5) + 6 (PPPoE) + 4 x 2 (2 VLAN) */ || skb_shared(skb) || skb_cloned(skb) )
+	/*  reserve space to put pointer in skb */
+	byteoff = (((unsigned int)skb->data - sizeof(pkth)) & (DMA_TX_ALIGNMENT - 1)) + sizeof(pkth);
+	//if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb->end - skb->data < 1564 /* 1518 (max ETH frame) + 22 (reserved for firmware) + 10 (AAL5) + 6 (PPPoE) + 4 x 2 (2 VLAN) */ || skb_shared(skb) || skb_cloned(skb) )
 
-    if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb_shared(skb) || skb_cloned(skb) ||
-          (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE  )
-    {
-        struct sk_buff *new_skb;
+	if ( skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff || skb_shared(skb) || skb_cloned(skb) ||
+	     (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE  )
+	{
+		struct sk_buff *new_skb;
 
 		dma_alignment_ethwan_qos_bad_count++;
 
-        dbg_dma("realloc skb");
-        ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff, "skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff");
-        new_skb = alloc_skb_tx(sizeof(pkth) + skb->len < DMA_PACKET_SIZE ? DMA_PACKET_SIZE : sizeof(pkth) + skb->len);  //  may be used by RX fastpath later
-        if ( !new_skb )
-        {
-            err("no memory");
-            goto ALLOC_SKB_TX_FAIL;
-        }
-        skb_put(new_skb, sizeof(pkth) + skb->len);
-        memcpy(new_skb->data, &pkth, sizeof(pkth));
-        memcpy(new_skb->data + sizeof(pkth), skb->data, skb->len);
+		dbg_dma("realloc skb");
+		ASSERT(skb_headroom(skb) >= sizeof(struct sk_buff *) + byteoff, "skb_headroom(skb) < sizeof(struct sk_buff *) + byteoff");
+		new_skb = alloc_skb_tx(sizeof(pkth) + skb->len < DMA_PACKET_SIZE ? DMA_PACKET_SIZE : sizeof(pkth) + skb->len);  //  may be used by RX fastpath later
+		if ( !new_skb )
+		{
+			err("no memory");
+			goto ALLOC_SKB_TX_FAIL;
+		}
+		skb_put(new_skb, sizeof(pkth) + skb->len);
+		memcpy(new_skb->data, &pkth, sizeof(pkth));
+		memcpy(new_skb->data + sizeof(pkth), skb->data, skb->len);
 
 		new_skb->priority = skb->priority;
 
-        dev_kfree_skb_any(skb);
-        skb = new_skb;
-        byteoff = (u32)skb->data & (DMA_TX_ALIGNMENT - 1);
+		dev_kfree_skb_any(skb);
+		skb = new_skb;
+		byteoff = (u32)skb->data & (DMA_TX_ALIGNMENT - 1);
 
-        dump_skb(skb, DUMP_SKB_LEN, "realloc", dpid, qid, 1, 0);
+		dump_skb(skb, DUMP_SKB_LEN, "realloc", dpid, qid, 1, 0);
 #ifndef CONFIG_MIPS_UNCACHED
-        /*  write back to physical memory   */
-        dma_cache_wback((u32)skb->data, skb->len);
+		/*  write back to physical memory   */
+		dma_cache_wback((u32)skb->data, skb->len);
 #endif
-    }
-    else
-    {
+	}
+	else
+	{
 
 		dma_alignment_ethwan_qos_good_count++;
-        skb_push(skb, sizeof(pkth));
-        byteoff -= sizeof(pkth);
-        memcpy(skb->data, &pkth, sizeof(pkth));
-        *(struct sk_buff **)((u32)skb->data - byteoff - sizeof(struct sk_buff *)) = skb;
+		skb_push(skb, sizeof(pkth));
+		byteoff -= sizeof(pkth);
+		memcpy(skb->data, &pkth, sizeof(pkth));
+		*(struct sk_buff **)((u32)skb->data - byteoff - sizeof(struct sk_buff *)) = skb;
 #ifndef CONFIG_MIPS_UNCACHED
-        /*  write back to physical memory   */
-        dma_cache_wback((u32)skb->data - byteoff - sizeof(struct sk_buff *), skb->len + byteoff + sizeof(struct sk_buff *));
+		/*  write back to physical memory   */
+		dma_cache_wback((u32)skb->data - byteoff - sizeof(struct sk_buff *), skb->len + byteoff + sizeof(struct sk_buff *));
 #endif
-    }
+	}
 
-    /*  allocate descriptor */
-    spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
-    desc = (volatile struct tx_descriptor *)(CPU_TO_WAN_TX_DESC_BASE + g_cpu_to_wan_tx_desc_pos);
-    if ( desc->own )    //  PPE hold
-    {
-        spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
-        err("PPE hold");
-        goto NO_FREE_DESC;
-    }
-    if ( ++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM )
-        g_cpu_to_wan_tx_desc_pos = 0;
-    spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	/*  allocate descriptor */
+	spin_lock_irqsave(&g_cpu_to_wan_tx_spinlock, sys_flag);
+	desc = (volatile struct tx_descriptor *)(CPU_TO_WAN_TX_DESC_BASE + g_cpu_to_wan_tx_desc_pos);
+	if ( desc->own )    //  PPE hold
+	{
+		spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
+		err("PPE hold");
+		goto NO_FREE_DESC;
+	}
+	if ( ++g_cpu_to_wan_tx_desc_pos == CPU_TO_WAN_TX_DESC_NUM )
+		g_cpu_to_wan_tx_desc_pos = 0;
+	spin_unlock_irqrestore(&g_cpu_to_wan_tx_spinlock, sys_flag);
 
-    /*  load descriptor from memory */
-    reg_desc = *desc;
+	/*  load descriptor from memory */
+	reg_desc = *desc;
 
-    /*  free previous skb   */
-    ASSERT((reg_desc.dataptr & 31) == 0, "reg_desc.dataptr (0x%#x) must be 8 DWORDS aligned", reg_desc.dataptr);
-    free_skb_clear_dataptr(&reg_desc);
+	/*  free previous skb   */
+	ASSERT((reg_desc.dataptr & 31) == 0, "reg_desc.dataptr (0x%#x) must be 8 DWORDS aligned", reg_desc.dataptr);
+	free_skb_clear_dataptr(&reg_desc);
 
-    /*  detach from protocol    */
-    skb_to_free = skb;
-    if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
-        skb = skb_to_free;
+	/*  detach from protocol    */
+	skb_to_free = skb;
+	if( (skb = skb_break_away_from_protocol_avm(skb)) == NULL) {
+		skb = skb_to_free;
 		goto ALLOC_SKB_TX_FAIL;
-    }
+	}
 
-    put_skb_to_dbg_pool(skb);
+	put_skb_to_dbg_pool(skb);
 
 #if defined(DEBUG_MIRROR_PROC) && DEBUG_MIRROR_PROC
-    if ( g_mirror_netdev != NULL )
-    {
-        struct sk_buff *new_skb = skb_copy(skb, GFP_ATOMIC);
+	if ( g_mirror_netdev != NULL )
+	{
+		struct sk_buff *new_skb = skb_copy(skb, GFP_ATOMIC);
 
-        if ( new_skb != NULL )
-        {
-            skb_pull(new_skb, sizeof(pkth));
-            new_skb->dev = g_mirror_netdev;
-            dev_queue_xmit(new_skb);
-        }
-    }
+		if ( new_skb != NULL )
+		{
+			skb_pull(new_skb, sizeof(pkth));
+			new_skb->dev = g_mirror_netdev;
+			dev_queue_xmit(new_skb);
+		}
+	}
 #endif
 
-    /*  update descriptor   */
-    reg_desc.small      = (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE ? 1 : 0;
-    reg_desc.dataptr    = (u32)skb->data & (0x1FFFFFFF ^ (DMA_TX_ALIGNMENT - 1));  //  byte address
-    reg_desc.byteoff    = byteoff;
-    reg_desc.datalen    = len + sizeof(pkth);
-    reg_desc.qid        = qid;
-    reg_desc.own        = 1;
-    reg_desc.c          = 1;    //  ?
-    reg_desc.sop = reg_desc.eop = 1;
+	/*  update descriptor   */
+	reg_desc.small      = (unsigned int)skb->end - (unsigned int)skb->data < DMA_PACKET_SIZE ? 1 : 0;
+	reg_desc.dataptr    = (u32)skb->data & (0x1FFFFFFF ^ (DMA_TX_ALIGNMENT - 1));  //  byte address
+	reg_desc.byteoff    = byteoff;
+	reg_desc.datalen    = len + sizeof(pkth);
+	reg_desc.qid        = qid;
+	reg_desc.own        = 1;
+	reg_desc.c          = 1;    //  ?
+	reg_desc.sop = reg_desc.eop = 1;
 
-    /*  update MIB  */
-    dev->trans_start = jiffies;
+	/*  update MIB  */
+	dev->trans_start = jiffies;
 
-    dbg_dma("skb->data %#x data_ptr %#x, byteoff %d\n", (u32)skb->data, reg_desc.dataptr, byteoff  );
+	dbg_dma("skb->data %#x data_ptr %#x, byteoff %d\n", (u32)skb->data, reg_desc.dataptr, byteoff  );
 
 	/*  update MIB  */
 	if (avm_dev){
-        avm_dev->device_stats.tx_packets++;
-        avm_dev->device_stats.tx_bytes += reg_desc.datalen;
+		avm_dev->device_stats.tx_packets++;
+		avm_dev->device_stats.tx_bytes += reg_desc.datalen;
 	}
 
-    /*  write discriptor to memory and write back cache */
-    *((volatile u32 *)desc + 1) = *((u32 *)&reg_desc + 1);
-    *(volatile u32 *)desc = *(u32 *)&reg_desc;
+	/*  write discriptor to memory and write back cache */
+	*((volatile u32 *)desc + 1) = *((u32 *)&reg_desc + 1);
+	*(volatile u32 *)desc = *(u32 *)&reg_desc;
 
-    return 0;
+	return 0;
 
 NO_FREE_DESC:
 ALLOC_SKB_TX_FAIL:
 ETH_XMIT_DROP:
-    dev_kfree_skb_any(skb);
-
+	dev_kfree_skb_any(skb);
+ETH_PAD_DROP:
 	if (avm_dev)
 		avm_dev->device_stats.tx_dropped++;
-    return 0;
+	return 0;
 }
 
 int ifx_ppa_eth_ioctl_e5(struct net_device *dev, struct ifreq *ifr, int fcmd) {
@@ -1695,15 +1720,15 @@
 		goto ETH_XMIT_DROP;
 
     len = skb->len;
-	if (skb->len <= ETH_MIN_TX_PACKET_LENGTH ){
-		/*--- 0byte padding behind skb->len, skb->len is not increased, this function linearizes our skb ---*/
-		if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
-			skb = NULL;
-			goto ETH_XMIT_DROP;
-		}
+    if (skb->len < ETH_MIN_TX_PACKET_LENGTH ){
+	    /*--- 0byte padding behind skb->len, skb->len is not increased, this function linearizes our skb ---*/
+	    if ( skb_pad(skb, ETH_MIN_TX_PACKET_LENGTH - skb->len )){
+		    skb = NULL;
+		    goto ETH_XMIT_DROP;
+	    }
 	    len = ETH_MIN_TX_PACKET_LENGTH;
-		padded_frame_count++;
-	} 
+	    padded_frame_count++;
+    }
 
 #if defined (CONFIG_AVM_SCATTER_GATHER)
     /* If packet is not checksummed and device does not support
--- linux-3.10/net/ipv4/tcp_input.c	2015-03-31 14:03:21.000000000 +0200
+++ linux-3.10/net/ipv4/tcp_input.c	2019-07-09 15:52:19.000000000 +0200
@@ -77,7 +77,7 @@
 
 int sysctl_tcp_timestamps __read_mostly = 1;
 int sysctl_tcp_window_scaling __read_mostly = 1;
-int sysctl_tcp_sack __read_mostly = 1;
+int sysctl_tcp_sack __read_mostly = 0;
 int sysctl_tcp_fack __read_mostly = 1;
 int sysctl_tcp_reordering __read_mostly = TCP_FASTRETRANS_THRESH;
 EXPORT_SYMBOL(sysctl_tcp_reordering);
--- linux-3.10/net/ipv4/tcp_output.c	2015-08-18 15:38:22.000000000 +0200
+++ linux-3.10/net/ipv4/tcp_output.c	2019-08-21 13:57:21.000000000 +0200
@@ -1239,9 +1239,9 @@
 	/* Now subtract optional transport overhead */
 	mss_now -= icsk->icsk_ext_hdr_len;
 
-	/* Then reserve room for full set of TCP options and 8 bytes of data */
-	if (mss_now < 48)
-		mss_now = 48;
+	/* CVE-2019-11479: set mss to 536 minimum */
+	mss_now = max(mss_now, 536);
+
 	return mss_now;
 }
 
--- linux-3.10/net/ipv4/tcp_timer.c	2013-10-07 09:50:10.000000000 +0200
+++ linux-3.10/net/ipv4/tcp_timer.c	2019-07-09 15:52:20.000000000 +0200
@@ -113,6 +113,8 @@
 			mss = tcp_mtu_to_mss(sk, icsk->icsk_mtup.search_low) >> 1;
 			mss = min(sysctl_tcp_base_mss, mss);
 			mss = max(mss, 68 - tp->tcp_header_len);
+			/* CVE-2019-11479: set mss to 536 minimum */
+			mss = max(mss, 536);
 			icsk->icsk_mtup.search_low = tcp_mss_to_mtu(sk, mss);
 			tcp_sync_mss(sk, icsk->icsk_pmtu_cookie);
 		}
