linux-hardened/arch/arm
Shawn Guo 4f71612ee3 ARM: imx: fix vf610 enet module clock selection
The fec/enet driver calculates MDC rate with the formula below.

  ref_freq / ((MII_SPEED + 1) x 2)

The ref_freq here is the fec internal module clock, which is missing
from clk-vf610 clock driver right now.  And clk-vf610 driver mistakenly
supplies RMII clock (50 MHz) as the source to fec.  This results in the
situation that fec driver gets ref_freq as 50 MHz, while physically it
runs at 66 MHz (fec module clock physically sources from ipg which runs
at 66 MHz).  That's why software expects MDC runs at 2.5 MHz, while the
measurement tells it runs at 3.3 MHz.  And this causes the PHY KSZ8041
keeps swithing between Full and Half mode as below.

  libphy: 400d0000.etherne:00 - Link is Up - 100/Full
  libphy: 400d0000.etherne:00 - Link is Up - 100/Half
  libphy: 400d0000.etherne:00 - Link is Up - 100/Full
  libphy: 400d0000.etherne:00 - Link is Up - 100/Half
  libphy: 400d0000.etherne:00 - Link is Up - 100/Full
  libphy: 400d0000.etherne:00 - Link is Up - 100/Half

Add the missing module clock for ENET0 and ENET1, and correct the clock
supplying in device tree to fix above issue.

Thanks to Alison Wang <b18965@freescale.com> for debugging the issue.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
2013-07-15 08:28:09 +08:00
..
boot ARM: imx: fix vf610 enet module clock selection 2013-07-15 08:28:09 +08:00
common Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
configs ARM: SoC fixes for 3.11-rc 2013-07-13 15:00:26 -07:00
crypto ARM: 7723/1: crypto: sha1-armv4-large.S: fix SP handling 2013-05-22 22:01:35 +01:00
include ARM: SoC fixes for 3.11-rc 2013-07-13 15:00:26 -07:00
kernel Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2013-07-13 14:58:36 -07:00
kvm KVM fixes for 3.11 2013-07-03 13:21:40 -07:00
lib
mach-at91 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-bcm ARM: bcm281xx: Remove init_irq declaration in machine description 2013-05-14 09:48:40 -07:00
mach-bcm2835 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-clps711x reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-cns3xxx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-davinci Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2013-07-13 12:09:57 -07:00
mach-dove Watchdog: allow orion_wdt to be built for Dove 2013-07-11 22:17:56 +02:00
mach-ebsa110 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-ep93xx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-exynos ARM: SoC fixes for 3.11-rc 2013-07-13 15:00:26 -07:00
mach-footbridge reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-gemini ARM: arm-soc cleanup for 3.10 2013-05-02 09:03:55 -07:00
mach-highbank reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-imx ARM: imx: fix vf610 enet module clock selection 2013-07-15 08:28:09 +08:00
mach-integrator reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-iop13xx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-iop32x reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-iop33x
mach-ixp4xx ARM: SoC fixes for 3.11-rc 2013-07-13 15:00:26 -07:00
mach-keystone ARM: keystone: Move CPU bringup code to dedicated asm file 2013-06-24 16:23:36 +02:00
mach-kirkwood Watchdog: allow orion_wdt to be built for Dove 2013-07-11 22:17:56 +02:00
mach-ks8695 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-lpc32xx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-mmp reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-msm Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
mach-mv78xx0 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-mvebu reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-mxs Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
mach-netx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-nomadik reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-nspire arm: Add Initial TI-Nspire support 2013-06-21 20:06:30 +02:00
mach-omap1 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-omap2 ARM: SoC fixes for 3.11-rc 2013-07-13 15:00:26 -07:00
mach-orion5x Watchdog: allow orion_wdt to be built for Dove 2013-07-11 22:17:56 +02:00
mach-picoxcell reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-prima2 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-pxa reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-realview reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-rockchip arm: add basic support for Rockchip RK3066a boards 2013-06-21 09:21:02 +02:00
mach-rpc reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-s3c24xx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-s3c64xx reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-s5p64x0 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-s5pc100 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-s5pv210 For the 3.11 merge we only have one new MFD driver for the Kontron PLD. 2013-07-10 11:10:27 -07:00
mach-sa1100 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-shark reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-shmobile ARM: SoC fixes for 3.11-rc 2013-07-13 15:00:26 -07:00
mach-socfpga reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-spear reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-sti ARM: sti: Add STiH416 SOC support 2013-06-25 13:26:58 -07:00
mach-sunxi reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-tegra reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-u300 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-ux500 The common clock framework changes for 3.11 include new clock drivers 2013-07-03 11:54:50 -07:00
mach-versatile reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-vexpress ARM SoC specific changes 2013-07-02 13:43:38 -07:00
mach-virt Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2013-07-03 09:46:29 -07:00
mach-vt8500 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-w90x900 reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
mach-zynq ARM: zynq: use DT_MACHINE_START 2013-07-05 23:07:39 +02:00
mm Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2013-07-13 14:58:36 -07:00
net arm: bpf_jit: can call module_free() from any context 2013-05-20 14:03:50 -07:00
nwfpe
oprofile
plat-iop reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
plat-omap Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
plat-orion Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
plat-pxa
plat-samsung Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
plat-versatile Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
tools
vfp ARM: 7729/1: vfp: ensure VFP_arch is non-zero when VFP is not supported 2013-05-22 22:01:37 +01:00
xen xen/arm and xen/arm64: implement HYPERVISOR_tmem_op 2013-07-04 11:41:12 +00:00
Kconfig Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm 2013-07-13 14:58:36 -07:00
Kconfig-nommu ARM: mpu: Ensure that MPU depends on CPU_V7 2013-06-17 15:13:18 +01:00
Kconfig.debug Omap fixes and minor defconfig updates that would be good to 2013-07-12 10:59:39 -07:00
Makefile Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2013-07-03 09:46:29 -07:00