8.2.4.5.3.1. Auto-Negotiation

8.2.4.5.3.1.1. Abilities

Return supported technology abilities, supported FEC modes, and supported pause modes.

Corresponding low-level API class: PL1_AUTONEG_ABILITIES

resp = await port.l1.anlt.an.abilities.get()
resp.fec_modes_supported
resp.tech_abilities_supported
resp.pause_modes_supported

8.2.4.5.3.1.2. Configuration

Configure the advertised technology abilities, FEC modes, and pause modes.

Corresponding low-level API class: PL1_AUTONEG_CONFIG

await port.l1.anlt.an.config.set(<advertised_tech_abilities>, <advertised_fec_abilities>, <advertised_pause_mode>)

8.2.4.5.3.1.3. Status

Returns received technology abilities, FEC abilities, pause abilities, HCD technology ability, FEC mode result, and pause mode result.

Corresponding low-level API class: PL1_AUTONEG_STATUS

resp = await port.l1.anlt.an.status.get()
resp.mode
resp.autoneg_state
resp.received_tech_abilities
resp.received_fec_abilities
resp.received_pause_mode
resp.tech_ability_hcd_status
resp.tech_ability_hcd_value
resp.fec_mode_result
resp.pause_mode_result

8.2.4.5.3.1.4. Info

Get L1 auto-negotiation information.

Corresponding low-level API class: PL1_AUTONEGINFO

resp = await port.l1.anlt.an.info.get()
resp.rx_link_codeword_count
resp.rx_next_page_message_count
resp.rx_next_page_unformatted_count
resp.tx_link_codeword_count
resp.tx_next_page_message_count
resp.tx_next_page_unformatted_count
resp.negotiation_hcd_fail_count
resp.negotiation_fec_fail_count
resp.negotiation_loss_of_sync_count
resp.negotiation_timeout_count
resp.negotiation_success_count
resp.duration_us

8.2.4.5.3.1.5. Allow Autoneg In Loopback

This command controls whether the port should permit loopback during AN operations.

await port_obj.l1.anlt.allow_an_loopback.set(values=[enums.OnOff.ON])
await port_obj.l1.anlt.allow_an_loopback.set(values=[enums.OnOff.OFF])

8.2.4.5.3.1.6. Send Empty Next Page

This command controls if the port should send Next Pages if they are empty.

await port_obj.l1.anlt.send_empty_np.set(values=[enums.OnOff.ON])

await port_obj.l1.anlt.send_empty_np.set(values=[enums.OnOff.OFF])