#ifndef _LINUX_DECT_NETLINK_H #define _LINUX_DECT_NETLINK_H struct dectmsg { int dm_index; }; enum dect_nlgroups { DECTNLGRP_NONE, DECTNLGRP_TRANSCEIVER, DECTNLGRP_CELL, DECTNLGRP_CLUSTER, DECTNLGRP_LLME, __DECTNLGRP_MAX }; #define DECTNLGRP_MAX (__DECTNLGRP_MAX - 1) enum dect_netlink_msg_types { DECT_MSG_BASE = 0x10, DECT_NEW_TRANSCEIVER, DECT_DEL_TRANSCEIVER, DECT_GET_TRANSCEIVER, DECT_NEW_CELL, DECT_DEL_CELL, DECT_GET_CELL, DECT_NEW_CLUSTER, DECT_DEL_CLUSTER, DECT_GET_CLUSTER, DECT_LLME_MSG, __DECT_MSG_MAX }; #define DECT_MSG_MAX (__DECT_MSG_MAX - 1) #define DECT_NR_MSGTYPES (DECT_MSG_MAX + 1 - DECT_MSG_BASE) enum dect_list_attrs { DECTA_LIST_UNSPEC, DECTA_LIST_ELEM, __DECTA_LIST_MAX }; #define DECTA_LIST_MAX (__DECTA_LIST_MAX - 1) enum dect_slot_states { DECT_SLOT_IDLE, DECT_SLOT_SCANNING, DECT_SLOT_RX, DECT_SLOT_TX, }; enum dect_slot_attrs { DECTA_SLOT_UNSPEC, DECTA_SLOT_NUM, DECTA_SLOT_STATE, DECTA_SLOT_CARRIER, DECTA_SLOT_FREQUENCY, DECTA_SLOT_RSSI, DECTA_SLOT_RX_PACKETS, DECTA_SLOT_RX_BYTES, DECTA_SLOT_TX_PACKETS, DECTA_SLOT_TX_BYTES, __DECTA_SLOT_MAX }; #define DECTA_SLOT_MAX (__DECTA_SLOT_MAX - 1) enum dect_transceiver_stats_attrs { DECTA_TRANSCEIVER_STATS_UNSPEC, DECTA_TRANSCEIVER_STATS_EVENT_BUSY, DECTA_TRANSCEIVER_STATS_EVENT_LATE, __DECTA_TRANSCEIVER_STATS_MAX }; #define DECTA_TRANSCEIVER_STATS_MAX (__DECTA_TRANSCEIVER_STATS_MAX - 1) enum dect_transceiver_attrs { DECTA_TRANSCEIVER_UNSPEC, DECTA_TRANSCEIVER_NAME, DECTA_TRANSCEIVER_TYPE, DECTA_TRANSCEIVER_LINK, DECTA_TRANSCEIVER_STATS, DECTA_TRANSCEIVER_BAND, DECTA_TRANSCEIVER_SLOTS, __DECTA_TRANSCEIVER_MAX }; #define DECTA_TRANSCEIVER_MAX (__DECTA_TRANSCEIVER_MAX - 1) enum dect_cell_flags { DECT_CELL_CCP = (1 << 0), }; enum dect_cell_attrs { DECTA_CELL_UNSPEC, DECTA_CELL_NAME, DECTA_CELL_FLAGS, DECTA_CELL_TRANSCEIVERS, DECTA_CELL_CLUSTER, __DECTA_CELL_MAX }; #define DECTA_CELL_MAX (__DECTA_CELL_MAX - 1) enum dect_cluster_attrs { DECTA_CLUSTER_UNSPEC, DECTA_CLUSTER_NAME, DECTA_CLUSTER_MODE, DECTA_CLUSTER_PARI, DECTA_CLUSTER_CELLS, __DECTA_CLUSTER_MAX }; #define DECTA_CLUSTER_MAX (__DECTA_CLUSTER_MAX - 1) enum dect_cluster_modes { DECT_MODE_FP, DECT_MODE_PP, DECT_MODE_MONITOR, }; /** * DECT ARI classes * * @DECT_ARC_A: Residential and private (PBX) single- and small multiple cell systems * @DECT_ARC_B: Private (PABXs) multiple cell * @DECT_ARC_C: Public single and multiple cell systems * @DECT_ARC_D: Public DECT access to a GSM network * @DECT_ARC_E: PP to PP direct communication (private) */ enum dect_ari_classes { DECT_ARC_A, DECT_ARC_B, DECT_ARC_C, DECT_ARC_D, DECT_ARC_E, }; enum dect_ari_attrs { DECTA_ARI_UNSPEC, DECTA_ARI_CLASS, DECTA_ARI_FPN, DECTA_ARI_FPS, DECTA_ARI_EMC, DECTA_ARI_EIC, DECTA_ARI_POC, DECTA_ARI_GOP, DECTA_ARI_FIL, __DECTA_ARI_MAX }; #define DECTA_ARI_MAX (__DECTA_ARI_MAX - 1) enum decta_sari_attrs { DECTA_SARI_UNSPEC, DECTA_SARI_ARI, DECTA_SARI_BLACK, DECTA_SARI_TARI, __DECTA_SARI_MAX }; #define DECTA_SARI_MAX (__DECTA_SARI_MAX - 1) enum dect_fixed_part_capabilities { DECT_FPC_EXTENDED_FP_INFO = 0x80000, DECT_FPC_DOUBLE_DUPLEX_BEARER_CONNECTION= 0x40000, DECT_FPC_RESERVED = 0x20000, DECT_FPC_DOUBLE_SLOT = 0x10000, DECT_FPC_HALF_SLOT = 0x8000, DECT_FPC_FULL_SLOT = 0x4000, DECT_FPC_FREQ_CONTROL = 0x2000, DECT_FPC_PAGE_REPETITION = 0x1000, DECT_FPC_CO_SETUP_ON_DUMMY = 0x800, DECT_FPC_CL_UPLINK = 0x400, DECT_FPC_CL_DOWNLINK = 0x200, DECT_FPC_BASIC_A_FIELD_SETUP = 0x100, DECT_FPC_ADV_A_FIELD_SETUP = 0x80, DECT_FPC_B_FIELD_SETUP = 0x40, DECT_FPC_CF_MESSAGES = 0x20, DECT_FPC_IN_MIN_DELAY = 0x10, DECT_FPC_IN_NORM_DELAY = 0x8, DECT_FPC_IP_ERROR_DETECTION = 0x4, DECT_FPC_IP_ERROR_CORRECTION = 0x2, DECT_FPC_MULTIBEARER_CONNECTIONS = 0x1, }; enum dect_higher_layer_capabilities { DECT_HLC_ADPCM_G721_VOICE = 0x8000, DECT_HLC_GAP_PAP_BASIC_SPEECH = 0x4000, DECT_HLC_NON_VOICE_CIRCUIT_SWITCHED = 0x2000, DECT_HLC_NON_VOICE_PACKET_SWITCHED = 0x1000, DECT_HLC_STANDARD_AUTHENTICATION = 0x800, DECT_HLC_STANDARD_CIPHERING = 0x400, DECT_HLC_LOCATION_REGISTRATION = 0x200, DECT_HLC_SIM_SERVICES = 0x100, DECT_HLC_NON_STATIC_FIXED_PART = 0x80, DECT_HLC_CISS_SERVICE = 0x40, DECT_HLC_CLMS_SERVICE = 0x20, DECT_HLC_COMS_SERVICE = 0x10, DECT_HLC_ACCESS_RIGHT_REQUESTS = 0x8, DECT_HLC_EXTERNAL_HANDOVER = 0x4, DECT_HLC_CONNECTION_HANDOVER = 0x2, DECT_HLC_RESERVED = 0x1, }; enum dect_extended_higher_layer_capabilities { DECT_EHLC_ISDN_DATA_SERVICE = 0x1, DECT_EHLC_DATA_SERVICE_PROFILE_A_B = 0x2, DECT_EHLC_DATA_SERVICE_PROFILE_C = 0x4, DECT_EHLC_DATA_SERVICE_PROFILE_D = 0x8, DECT_EHLC_DATA_SERVICE_PROFILE_E = 0x10, DECT_EHLC_DATA_SERVICE_PROFILE_F = 0x20, DECT_EHLC_ASYMETRIC_BEARERS = 0x40, DECT_EHLC_TPUI_LOCATION_REGISTRATION = 0x100, }; enum dect_efpc_attrs { DECTA_EFPC_UNSPEC, DECTA_EFPC_CRFP_HOPS, DECTA_EFPC_CRFP_ENCRYPTION, DECTA_EFPC_REP_HOPS, DECTA_EFPC_REP_INTERLACING, DECTA_EFPC_EHLC, __DECTA_EFPC_MAX }; #define DECTA_EFPC_MAX (__DECTA_EFPC_MAX - 1) enum dect_mac_info_attrs { DECTA_MAC_INFO_UNSPEC, DECTA_MAC_INFO_PARI, DECTA_MAC_INFO_RPN, DECTA_MAC_INFO_RSSI, DECTA_MAC_INFO_SARI_LIST, DECTA_MAC_INFO_FPC, DECTA_MAC_INFO_HLC, DECTA_MAC_INFO_EFPC, __DECTA_MAC_INFO_MAX }; #define DECTA_MAC_INFO_MAX (__DECTA_MAC_INFO_MAX - 1) enum dect_llme_ops { DECT_LLME_REQUEST, DECT_LLME_INDICATE, DECT_LLME_RESPONSE, DECT_LLME_CONFIRM, }; enum dect_llme_msg_types { DECT_LLME_SCAN, DECT_LLME_MAC_INFO, __DECT_LLME_MAX }; #define DECT_LLME_MAX (__DECT_LLME_MAX - 1) enum dect_llme_msg_attrs { DECTA_LLME_UNSPEC, DECTA_LLME_OP, DECTA_LLME_TYPE, DECTA_LLME_DATA, __DECTA_LLME_MAX }; #define DECTA_LLME_MAX (__DECTA_LLME_MAX - 1) #endif /* _LINUX_DECT_NETLINK_H */