Skip to content

DEV-7522: marvell10g_ptp configure MAC frame size (MRU) for jumbo packets#43

Merged
adrian-nicolau merged 3 commits into
tg-v5.10from
DEV-7522-3.3-RFC-2544-fail-on-packet-size-1534-on-TU-setup
Aug 6, 2025
Merged

DEV-7522: marvell10g_ptp configure MAC frame size (MRU) for jumbo packets#43
adrian-nicolau merged 3 commits into
tg-v5.10from
DEV-7522-3.3-RFC-2544-fail-on-packet-size-1534-on-TU-setup

Conversation

@adrian-nicolau
Copy link
Copy Markdown

@adrian-nicolau adrian-nicolau commented Aug 4, 2025

Description

Configure MRU size depending on the operational speed. According to docs:
1G mode and 2.5G mode are sharing same set of configuration. XG mode and 1/2.5 G mode have
separate configuration register but enable only one group during operation. Therefore two register
group act as one after operation speed is determined

Tests

  • In XG mode, no link, registers have correct value
  • IN 1G mode, link, registers have correct value
Mode Register Value
XG 0x8c02 0x8e02 0x1FFF
1G 0x8c00 0x8e00 0xFFFD

@adrian-nicolau adrian-nicolau marked this pull request as ready for review August 6, 2025 07:06
@adrian-nicolau adrian-nicolau requested a review from Copilot August 6, 2025 07:06

This comment was marked as outdated.

Comment thread drivers/net/phy/marvell10g_ptp.c Outdated
@adrian-nicolau adrian-nicolau requested a review from Copilot August 6, 2025 07:23
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR configures MAC frame size (MRU - Maximum Receive Unit) for jumbo packets in the marvell10g_ptp driver. The implementation dynamically adjusts MRU settings based on operational speed, with separate register configurations for 1G/2.5G mode and XG mode.

  • Added MRU control register definitions and speed-dependent configuration logic
  • Implemented mv3310_ptp_update() function to handle speed changes during link events
  • Added optimization to avoid unnecessary MRU reconfigurations when speed remains in the same class

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
drivers/net/phy/marvell10g_ptp.c Added MRU register definitions, speed tracking, and MRU configuration function
drivers/net/phy/marvell10g.c Added call to update PTP configuration on link status changes

Comment thread drivers/net/phy/marvell10g_ptp.c
Comment thread drivers/net/phy/marvell10g_ptp.c
Comment thread drivers/net/phy/marvell10g_ptp.c
@shmuelhazan
Copy link
Copy Markdown

@adrian-nicolau Let's merge this as-is and ask V&V to validate. Worse-case -- we will have another fix.

@adrian-nicolau adrian-nicolau merged commit 9517330 into tg-v5.10 Aug 6, 2025
@adrian-nicolau adrian-nicolau deleted the DEV-7522-3.3-RFC-2544-fail-on-packet-size-1534-on-TU-setup branch August 6, 2025 08:44
adrian-nicolau added a commit that referenced this pull request Aug 26, 2025
…kets (#43)

## Description

Configure MRU size depending on the operational speed. According to
docs:
_1G mode and 2.5G mode are sharing same set of configuration. XG mode
and 1/2.5 G mode have
separate configuration register but enable only one group during
operation. Therefore two register
group act as one after operation speed is determined_

## Tests
- In XG mode, no link, registers have correct value
- IN 1G mode, link, registers have correct value

| Mode|Register|Value|
|-------|---------|------|
| XG|0x8c02 0x8e02|0x1FFF|
|1G|0x8c00 0x8e00|0xFFFD|
adrian-nicolau added a commit that referenced this pull request Sep 3, 2025
…kets (#43)

## Description

Configure MRU size depending on the operational speed. According to
docs:
_1G mode and 2.5G mode are sharing same set of configuration. XG mode
and 1/2.5 G mode have
separate configuration register but enable only one group during
operation. Therefore two register
group act as one after operation speed is determined_

## Tests
- In XG mode, no link, registers have correct value
- IN 1G mode, link, registers have correct value

| Mode|Register|Value|
|-------|---------|------|
| XG|0x8c02 0x8e02|0x1FFF|
|1G|0x8c00 0x8e00|0xFFFD|
shmuelhazan pushed a commit that referenced this pull request Nov 6, 2025
…kets (#43)

## Description

Configure MRU size depending on the operational speed. According to
docs:
_1G mode and 2.5G mode are sharing same set of configuration. XG mode
and 1/2.5 G mode have
separate configuration register but enable only one group during
operation. Therefore two register
group act as one after operation speed is determined_

## Tests
- In XG mode, no link, registers have correct value
- IN 1G mode, link, registers have correct value

| Mode|Register|Value|
|-------|---------|------|
| XG|0x8c02 0x8e02|0x1FFF|
|1G|0x8c00 0x8e00|0xFFFD|
adrian-nicolau added a commit that referenced this pull request Nov 13, 2025
…kets (#43)

## Description

Configure MRU size depending on the operational speed. According to
docs:
_1G mode and 2.5G mode are sharing same set of configuration. XG mode
and 1/2.5 G mode have
separate configuration register but enable only one group during
operation. Therefore two register
group act as one after operation speed is determined_

## Tests
- In XG mode, no link, registers have correct value
- IN 1G mode, link, registers have correct value

| Mode|Register|Value|
|-------|---------|------|
| XG|0x8c02 0x8e02|0x1FFF|
|1G|0x8c00 0x8e00|0xFFFD|
adrian-nicolau added a commit that referenced this pull request Nov 28, 2025
…kets (#43)

## Description

Configure MRU size depending on the operational speed. According to
docs:
_1G mode and 2.5G mode are sharing same set of configuration. XG mode
and 1/2.5 G mode have
separate configuration register but enable only one group during
operation. Therefore two register
group act as one after operation speed is determined_

## Tests
- In XG mode, no link, registers have correct value
- IN 1G mode, link, registers have correct value

| Mode|Register|Value|
|-------|---------|------|
| XG|0x8c02 0x8e02|0x1FFF|
|1G|0x8c00 0x8e00|0xFFFD|
adrian-nicolau added a commit that referenced this pull request Dec 1, 2025
…kets (#43)

## Description

Configure MRU size depending on the operational speed. According to
docs:
_1G mode and 2.5G mode are sharing same set of configuration. XG mode
and 1/2.5 G mode have
separate configuration register but enable only one group during
operation. Therefore two register
group act as one after operation speed is determined_

## Tests
- In XG mode, no link, registers have correct value
- IN 1G mode, link, registers have correct value

| Mode|Register|Value|
|-------|---------|------|
| XG|0x8c02 0x8e02|0x1FFF|
|1G|0x8c00 0x8e00|0xFFFD|
paul-sirin pushed a commit that referenced this pull request May 28, 2026
paul-sirin pushed a commit that referenced this pull request May 28, 2026
paul-sirin pushed a commit that referenced this pull request May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants