mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-03 15:47:36 +00:00
Merge branch 'dsa-hellcreek-fixes'
Kurt Kanzenbach says: ==================== net: dsa: hellcreek: 802.1Qbv Fixes while using TAPRIO offloading on the Hirschmann hellcreek switch, I've noticed two issues in the current implementation: 1. The gate control list is incorrectly programmed 2. The admin base time is not set properly Fix it. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
a423cbe0f2
1 changed files with 4 additions and 4 deletions
|
@ -1472,9 +1472,6 @@ static void hellcreek_setup_gcl(struct hellcreek *hellcreek, int port,
|
|||
u16 data;
|
||||
u8 gates;
|
||||
|
||||
cur++;
|
||||
next++;
|
||||
|
||||
if (i == schedule->num_entries)
|
||||
gates = initial->gate_mask ^
|
||||
cur->gate_mask;
|
||||
|
@ -1503,6 +1500,9 @@ static void hellcreek_setup_gcl(struct hellcreek *hellcreek, int port,
|
|||
(initial->gate_mask <<
|
||||
TR_GCLCMD_INIT_GATE_STATES_SHIFT);
|
||||
hellcreek_write(hellcreek, data, TR_GCLCMD);
|
||||
|
||||
cur++;
|
||||
next++;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1550,7 +1550,7 @@ static bool hellcreek_schedule_startable(struct hellcreek *hellcreek, int port)
|
|||
/* Calculate difference to admin base time */
|
||||
base_time_ns = ktime_to_ns(hellcreek_port->current_schedule->base_time);
|
||||
|
||||
return base_time_ns - current_ns < (s64)8 * NSEC_PER_SEC;
|
||||
return base_time_ns - current_ns < (s64)4 * NSEC_PER_SEC;
|
||||
}
|
||||
|
||||
static void hellcreek_start_schedule(struct hellcreek *hellcreek, int port)
|
||||
|
|
Loading…
Reference in a new issue