mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 13:22:23 +00:00
IXP4xx: Prevent HSS transmitter lockup by disabling FRaMe signals.
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>
This commit is contained in:
parent
ee977c2c4f
commit
627634293a
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user