[U-Boot] [PATCH] sunxi: Fix gmac not working reliable on the Bananapi
Ian Campbell
ijc at hellion.org.uk
Tue Sep 30 09:06:17 CEST 2014
On Sun, 2014-09-28 at 20:13 +0200, Hans de Goede wrote:
> In order for the gmac nic to work reliable on the Bananapi, we need to poke
> these 2 undocumented bits in the gmac clk register. Since these are
> undocumented, this commit only sets these bits on the Bananapi for now.
>
> I'll contact Allwinner to try and get these bits documented, once they
> are documented we can hopefully replace this hack with a better patch.
>
> Reported-by: Karsten Merker <merker at debian.org>
> Signed-off-by: Hans de Goede <hdegoede at redhat.com>
It would be good to include some of Karsten's more detailed explanation
(see his reply downthread) of what's going on, but other than that:
Acked-by: Ian Campbell <ijc at hellion.org.uk>
and ack to pushing it for v2014.10.
> ---
> board/sunxi/gmac.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/board/sunxi/gmac.c b/board/sunxi/gmac.c
> index e7ff952..f58c963 100644
> --- a/board/sunxi/gmac.c
> +++ b/board/sunxi/gmac.c
> @@ -24,6 +24,15 @@ int sunxi_gmac_initialize(bd_t *bis)
> CCM_GMAC_CTRL_GPIT_MII);
> #endif
>
> + /*
> + * HdG: this is necessary to get GMAC to work reliable on the
> + * Bananapi. We don't know what these undocumented bits do, so this
> + * is a Bananapi specific hack for now.
> + */
> +#ifdef CONFIG_BANANAPI
> + setbits_le32(&ccm->gmac_clk_cfg, 0x3 << 10);
> +#endif
> +
> /* Configure pin mux settings for GMAC */
> for (pin = SUNXI_GPA(0); pin <= SUNXI_GPA(16); pin++) {
> #ifdef CONFIG_RGMII
More information about the U-Boot
mailing list