return default_port_handler(sci_port, __func__);
}
-
-
-static struct scic_sds_port_state_handler
-scic_sds_port_ready_substate_handler_table[SCIC_SDS_PORT_READY_MAX_SUBSTATES] = {
- {
- /* SCIC_SDS_PORT_READY_SUBSTATE_WAITING */
- scic_sds_port_default_start_handler,
- scic_sds_port_ready_substate_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_ready_substate_add_phy_handler,
- scic_sds_port_default_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_ready_waiting_substate_link_up_handler,
- scic_sds_port_default_link_down_handler,
- scic_sds_port_ready_waiting_substate_start_io_handler,
- scic_sds_port_ready_substate_complete_io_handler,
+static struct scic_sds_port_state_handler scic_sds_port_ready_substate_handler_table[] = {
+ [SCIC_SDS_PORT_READY_SUBSTATE_WAITING] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_ready_substate_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_ready_substate_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_default_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_ready_waiting_substate_link_up_handler,
+ .link_down_handler = scic_sds_port_default_link_down_handler,
+ .start_io_handler = scic_sds_port_ready_waiting_substate_start_io_handler,
+ .complete_io_handler = scic_sds_port_ready_substate_complete_io_handler,
},
-
- {
- /* SCIC_SDS_PORT_READY_SUBSTATE_OPERATIONAL */
- scic_sds_port_default_start_handler,
- scic_sds_port_ready_substate_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_ready_operational_substate_reset_handler,
- scic_sds_port_ready_substate_add_phy_handler,
- scic_sds_port_ready_substate_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_ready_operational_substate_link_up_handler,
- scic_sds_port_ready_operational_substate_link_down_handler,
- scic_sds_port_ready_operational_substate_start_io_handler,
- scic_sds_port_ready_substate_complete_io_handler,
+ [SCIC_SDS_PORT_READY_SUBSTATE_OPERATIONAL] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_ready_substate_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_ready_operational_substate_reset_handler,
+ .add_phy_handler = scic_sds_port_ready_substate_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_ready_substate_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_ready_operational_substate_link_up_handler,
+ .link_down_handler = scic_sds_port_ready_operational_substate_link_down_handler,
+ .start_io_handler = scic_sds_port_ready_operational_substate_start_io_handler,
+ .complete_io_handler = scic_sds_port_ready_substate_complete_io_handler,
},
-
- {
- /* SCIC_SDS_PORT_READY_SUBSTATE_CONFIGURING */
- scic_sds_port_default_start_handler,
- scic_sds_port_ready_substate_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_ready_configuring_substate_add_phy_handler,
- scic_sds_port_ready_configuring_substate_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_default_link_up_handler,
- scic_sds_port_default_link_down_handler,
- scic_sds_port_default_start_io_handler,
- scic_sds_port_ready_configuring_substate_complete_io_handler
+ [SCIC_SDS_PORT_READY_SUBSTATE_CONFIGURING] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_ready_substate_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_ready_configuring_substate_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_ready_configuring_substate_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_default_link_up_handler,
+ .link_down_handler = scic_sds_port_default_link_down_handler,
+ .start_io_handler = scic_sds_port_default_start_io_handler,
+ .complete_io_handler = scic_sds_port_ready_configuring_substate_complete_io_handler
}
};
scic_sds_port_deactivate_phy(port, phy, false);
}
-static struct scic_sds_port_state_handler
-scic_sds_port_state_handler_table[SCI_BASE_PORT_MAX_STATES] =
-{
- /* SCI_BASE_PORT_STATE_STOPPED */
- {
- scic_sds_port_stopped_state_start_handler,
- scic_sds_port_stopped_state_stop_handler,
- scic_sds_port_stopped_state_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_stopped_state_add_phy_handler,
- scic_sds_port_stopped_state_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_default_link_up_handler,
- scic_sds_port_default_link_down_handler,
- scic_sds_port_default_start_io_handler,
- scic_sds_port_default_complete_io_handler
+static struct scic_sds_port_state_handler scic_sds_port_state_handler_table[] = {
+ [SCI_BASE_PORT_STATE_STOPPED] = {
+ .start_handler = scic_sds_port_stopped_state_start_handler,
+ .stop_handler = scic_sds_port_stopped_state_stop_handler,
+ .destruct_handler = scic_sds_port_stopped_state_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_stopped_state_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_stopped_state_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_default_link_up_handler,
+ .link_down_handler = scic_sds_port_default_link_down_handler,
+ .start_io_handler = scic_sds_port_default_start_io_handler,
+ .complete_io_handler = scic_sds_port_default_complete_io_handler
},
- /* SCI_BASE_PORT_STATE_STOPPING */
- {
- scic_sds_port_default_start_handler,
- scic_sds_port_default_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_default_add_phy_handler,
- scic_sds_port_default_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_default_link_up_handler,
- scic_sds_port_default_link_down_handler,
- scic_sds_port_default_start_io_handler,
- scic_sds_port_stopping_state_complete_io_handler
+ [SCI_BASE_PORT_STATE_STOPPING] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_default_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_default_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_default_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_default_link_up_handler,
+ .link_down_handler = scic_sds_port_default_link_down_handler,
+ .start_io_handler = scic_sds_port_default_start_io_handler,
+ .complete_io_handler = scic_sds_port_stopping_state_complete_io_handler
},
- /* SCI_BASE_PORT_STATE_READY */
- {
- scic_sds_port_default_start_handler,
- scic_sds_port_default_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_default_add_phy_handler,
- scic_sds_port_default_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_default_link_up_handler,
- scic_sds_port_default_link_down_handler,
- scic_sds_port_default_start_io_handler,
- scic_sds_port_general_complete_io_handler
+ [SCI_BASE_PORT_STATE_READY] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_default_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_default_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_default_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_default_link_up_handler,
+ .link_down_handler = scic_sds_port_default_link_down_handler,
+ .start_io_handler = scic_sds_port_default_start_io_handler,
+ .complete_io_handler = scic_sds_port_general_complete_io_handler
},
- /* SCI_BASE_PORT_STATE_RESETTING */
- {
- scic_sds_port_default_start_handler,
- scic_sds_port_reset_state_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_default_add_phy_handler,
- scic_sds_port_default_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_reset_state_link_up_handler,
- scic_sds_port_reset_state_link_down_handler,
- scic_sds_port_default_start_io_handler,
- scic_sds_port_general_complete_io_handler
+ [SCI_BASE_PORT_STATE_RESETTING] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_reset_state_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_default_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_default_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_reset_state_link_up_handler,
+ .link_down_handler = scic_sds_port_reset_state_link_down_handler,
+ .start_io_handler = scic_sds_port_default_start_io_handler,
+ .complete_io_handler = scic_sds_port_general_complete_io_handler
},
- /* SCI_BASE_PORT_STATE_FAILED */
- {
- scic_sds_port_default_start_handler,
- scic_sds_port_default_stop_handler,
- scic_sds_port_default_destruct_handler,
- scic_sds_port_default_reset_handler,
- scic_sds_port_default_add_phy_handler,
- scic_sds_port_default_remove_phy_handler,
- scic_sds_port_default_frame_handler,
- scic_sds_port_default_event_handler,
- scic_sds_port_default_link_up_handler,
- scic_sds_port_default_link_down_handler,
- scic_sds_port_default_start_io_handler,
- scic_sds_port_general_complete_io_handler
+ [SCI_BASE_PORT_STATE_FAILED] = {
+ .start_handler = scic_sds_port_default_start_handler,
+ .stop_handler = scic_sds_port_default_stop_handler,
+ .destruct_handler = scic_sds_port_default_destruct_handler,
+ .reset_handler = scic_sds_port_default_reset_handler,
+ .add_phy_handler = scic_sds_port_default_add_phy_handler,
+ .remove_phy_handler = scic_sds_port_default_remove_phy_handler,
+ .frame_handler = scic_sds_port_default_frame_handler,
+ .event_handler = scic_sds_port_default_event_handler,
+ .link_up_handler = scic_sds_port_default_link_up_handler,
+ .link_down_handler = scic_sds_port_default_link_down_handler,
+ .start_io_handler = scic_sds_port_default_start_io_handler,
+ .complete_io_handler = scic_sds_port_general_complete_io_handler
}
};