Skip to content

Commit

Permalink
IXP4xx: Prevent HSS transmitter lockup by disabling FRaMe signals.
Browse files Browse the repository at this point in the history
With port configured with PCR_FRM_SYNC_OUTPUT* and external clock, bringing
the hdlcX interface up and down without active clock supplied to the HSS
causes a TX lockup. We don't support channelized/partial interfaces so
FRaMe signals can't be used anyway, disabling them makes the lockup go away.

Changes to this logic will be required if we want to support channelized
HSS mode (this is most probably bug in NPE-A HSS firmware).

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
  • Loading branch information
Krzysztof Hałasa committed May 27, 2010
1 parent ee977c2 commit 6276342
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/net/wan/ixp4xx_hss.c
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ static void hss_config(struct port *port)
msg.cmd = PORT_CONFIG_WRITE;
msg.hss_port = port->id;
msg.index = HSS_CONFIG_TX_PCR;
msg.data32 = PCR_FRM_SYNC_OUTPUT_RISING | PCR_MSB_ENDIAN |
msg.data32 = PCR_FRM_PULSE_DISABLED | PCR_MSB_ENDIAN |
PCR_TX_DATA_ENABLE | PCR_SOF_NO_FBIT;
if (port->clock_type == CLOCK_INT)
msg.data32 |= PCR_SYNC_CLK_DIR_OUTPUT;
Expand Down

0 comments on commit 6276342

Please sign in to comment.