Brian Hutchinson

Trying to get 1588 working on imx8 mini

Discussion created by Brian Hutchinson on Nov 15, 2019
Latest reply on Nov 28, 2019 by gusarambula

Hi,

 

I found this link How to get IEEE 1588 1PPS on i.MX6Q?  talking about getting the 1PPS signal working for 1588.

 

I made the change to the fec_ptp.c driver and I "think" I have pinmux setup correctly in my .dts ... but I don't get a signal.

 

So next I thought I'd wiggle the pin manually using the gpiolib echo method just to verify I had things setup correctly.

 

I changed pinmux to use GPIO1_IO09 instead of 1588 then tried:

 

echo 41 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio41/direction

echo 1 > /sys/class/gpio/gpio41/value

echo 0 > /sys/class/gpio/gpio41/value

 

.. and don't see the pin wiggle.

 

So next I moved to more drastic measures and used devmem2 to set direction in GPIO Data Direction register (0x30200004) for bit 9 and then wrote to GPIO Data Register to toggle bit 9 and I can wiggle the pin that way (directly writing to registers) so I know hardware is good, I'm on the right pin etc.

 

My question is, what should the i.mx8 mini dts look like to setup 1588 signal?  (MX8MM_IOMUX_GPIO1_IO09_ENET1_1588_EVENT0_OUT)

 

Any ideas why the echo commands above didn't wiggle the pin?  Is gpio41 not the right pin number for GPIO1_IO09???

 

Thanks for any pointers.

 

Background, I have the linuxptp 2.0 stack running and it is syncing with my master clock so I don't get any errors when I run echo 1 > /sys/class/ptp/ptp0/pps_enable

 

Regards,

 

Brian

Outcomes