T2080 Satax_TransCfg recommended setting

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

T2080 Satax_TransCfg recommended setting

385 Views
william_buder
Contributor I

Hi,

Want to clarify what the recommend RX_WATER_MARK setting is for the T2080. In section 22.3.16 of Rev 3 of the reference manual for the SATAx_TransCfg register in the description of the RX_WATER_MARK it specifies an initial value of 15 is recommended. Is this 15 in hex or decimal? The default reset configuration of the register sets RX_WATER_MARK to 10110b 0x16. The freescale sata driver for linux sets the watermark to TRANSCFG_RX_WATER_MARK = (1 << 4).  What should the value of RX_WATER_MARK be set to?

 

Thanks,

Will

Tags (1)
0 Kudos
1 Reply

248 Views
ufedor
NXP Employee
NXP Employee

This is the RX_WATER_MARK explanation from the design:
"The receive FIFO is 58 entry deep. Each entry in the FIFO is 32 bits or 4 bytes long (one Dword). When the RX_WATER _MARK is reached, the controller will send a HOLD primitive to the HDD, but this takes some times and meanwhile the HDD is still sending data and FIFO should account for it. The approximate time it takes form the water_mark levels reached to the hold primitive is sent out to the HDD is about 14 DWords. Then HDD takes some time to receive the HOLD primitive and stop the flow (this is about 20 DWords per SATA standards). Then at this point the HDD has stopped sending but the data that is already in the receive PHY of controller will be sent to the FIFO (which is about 6 DWords). This means FIFO needs to account for 14 DW + 20 DW + 6 DW = 40 DW, after the RX_WATER_MARK is reached, so it does not over flow. FIFO total = 58 DWORD Number of DWords to be accounted for after RX_WATER_MARK = 40 DWORD Max value of RX_WATER_MARK = 58 DW - 40 DW = 18 DW." In case of bigger RX_WATER_MARK setting it is possible to get HStatus[FOR (Rx FIFO Overflow)] when communicating with HDD."

The RM recommends 15 decimal for the RX_WATER_MARK setting.

In the SATA driver the setting is 16, which is also suitable.

0 Kudos