[PATCH] ata: sata_mv: add proper definitions for LP_PHY_CTL register values
Simon Guinot
simon.guinot at sequanux.org
Thu Mar 19 09:13:54 PDT 2015
On Thu, Mar 19, 2015 at 02:36:37PM +0100, Thomas Petazzoni wrote:
> Commit 9013d64e661fc ("ata: sata_mv: fix disk hotplug for Armada
> 370/XP SoCs") added some manipulation of the LP_PHY_CTL register, but
> using magic values. This commit changes the code to use proper
> definitions for the LP_PHY_CTL register, which allows to document what
> the different bits are doing.
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Hi Thomas,
The patch looks fine to me.
Acked-by: Simon Guinot <simon.guinot at sequanux.org>
Thanks,
Simon
> ---
> drivers/ata/sata_mv.c | 20 ++++++++++++++++----
> 1 file changed, 16 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/ata/sata_mv.c b/drivers/ata/sata_mv.c
> index f8c33e3..0281785 100644
> --- a/drivers/ata/sata_mv.c
> +++ b/drivers/ata/sata_mv.c
> @@ -306,6 +306,11 @@ enum {
> MV5_PHY_CTL = 0x0C,
> SATA_IFCFG = 0x050,
> LP_PHY_CTL = 0x058,
> + LP_PHY_CTL_PIN_PU_PLL = (1 << 0),
> + LP_PHY_CTL_PIN_PU_RX = (1 << 1),
> + LP_PHY_CTL_PIN_PU_TX = (1 << 2),
> + LP_PHY_CTL_GEN_TX_3G = (1 << 5),
> + LP_PHY_CTL_GEN_RX_3G = (1 << 9),
>
> MV_M2_PREAMP_MASK = 0x7e0,
>
> @@ -1391,10 +1396,17 @@ static int mv_scr_write(struct ata_link *link, unsigned int sc_reg_in, u32 val)
> /*
> * Set PHY speed according to SControl speed.
> */
> - if ((val & 0xf0) == 0x10)
> - writelfl(0x7, lp_phy_addr);
> - else
> - writelfl(0x227, lp_phy_addr);
> + u32 lp_phy_val =
> + LP_PHY_CTL_PIN_PU_PLL |
> + LP_PHY_CTL_PIN_PU_RX |
> + LP_PHY_CTL_PIN_PU_TX;
> +
> + if ((val & 0xf0) != 0x10)
> + lp_phy_val |=
> + LP_PHY_CTL_GEN_TX_3G |
> + LP_PHY_CTL_GEN_RX_3G;
> +
> + writelfl(lp_phy_val, lp_phy_addr);
> }
> }
> writelfl(val, addr);
> --
> 2.1.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ide" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150319/7b42322a/attachment.sig>
More information about the linux-arm-kernel
mailing list