On Wed, Aug 10, 2016 at 7:29 AM, Edward Wingate <edwinga...@gmail.com> wrote: > Nathan, > > May I ask where your gem0 clock is sourced from? > My gem0 clock is sourced from iopll and my clock tree looks like this: > > ps_clk > iopll_int > iopll > gem0_mux > gem0_div0 > gem0_div1 > gem0_emio_mux > gem0 > armpll_int > armpll > cpu_mux > cpu_div > cpu_1x_div > cpu_1x > gem0_aper > > I'm wondering if the gem0_emio_mux before gem0 is the issue (I'm not > going through EMIO).
The "gem0_emio_mux" refers to the fact that the gem unlike other peripherals can mux their clock source from EMIO, it simply represents the MSB of the SRCSEL section of the GEM*_CLK_CTRL register in the SLCR. The kernel just implements it as two muxes (just like the MIO muxes for e.g. the can peripherals). The important part is the tree is sourced from the iopll <- ps_clk. The clk tree on the zybo looks similar: clock enable_cnt prepare_cnt rate accuracy phase ps_clk 3 3 50000000 0 0 iopll_int 1 1 1000000000 0 0 iopll 8 8 1000000000 0 0 gem1_mux 0 0 1000000000 0 0 gem1_div0 0 0 16666667 0 0 gem1_div1 0 0 16666667 0 0 gem1_emio_mux 0 0 16666667 0 0 gem1 0 0 16666667 0 0 gem0_mux 1 1 1000000000 0 0 gem0_div0 1 1 1000000000 0 0 gem0_div1 1 1 125000000 0 0 gem0_emio_mux 1 1 125000000 0 0 gem0 1 1 125000000 0 0 armpll_int 1 1 1300000000 0 0 armpll 2 2 1300000000 0 0 cpu_mux 1 1 1300000000 0 0 cpu_div 3 3 650000000 0 0 cpu_1x_div 1 1 108333333 0 0 cpu_1x 10 10 108333333 0 0 gem1_aper 0 0 108333333 0 0 gem0_aper 2 2 108333333 0 0 And when linked at 100M/25MHz gem0_mux 1 1 1000000000 0 0 gem0_div0 1 1 1000000000 0 0 gem0_div1 1 1 25000000 0 0 gem0_emio_mux 1 1 25000000 0 0 gem0 1 1 25000000 0 0 > > Also, my ps7_ethernet0 node has this in it: > clock-names = "ref_clk", "aper_clk"; > clocks = <&clkc 13>, <&clkc 30>; > > The "30" in clocks is referring to gem0_aper, which looks out of place > in the clock tree (being under armpll instead of iopll). This should be fine, the aper_clk refers to the peripheral bus clock which should be common to all the cores on the same bus. Regards, Nathan > > > On Mon, Aug 8, 2016 at 12:08 PM, Edward Wingate <edwinga...@gmail.com> wrote: >> On Sun, Jul 31, 2016 at 6:26 AM, Nathan Rossi <nat...@nathanrossi.com> wrote: >>> >>> I tested this with both the emacps and the macb driver (linux-xlnx >>> kernel v2016.2, on a ZYBO). Both advertise and link correctly with a >>> 100M switch and forced advert 100M with a 1G switch, and packets are >>> transmitted and received correctly. >> >> Appreciate the confirmation, Nathan. >> >>> If you are having issues with this before diving into the board/hw/etc >>> testing double check your clock setup (and that it is propagated to >>> FSBL/SPL correctly), and/or EMIO setup if you are routing through PL. >> >> I'll be doing so in coming days. But despite the initial clock setup >> from FSBL, won't Linux mess with the registers during boot and >> ethernet initialization? I wonder, can I change the link speed while >> in u-boot to see if it works there? I'm tftping in u-boot >> successfully, probably at 1Gbps. -- _______________________________________________ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx