From owner-freebsd-arm@freebsd.org Mon Jul 23 15:38:07 2018 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8474C104E0E9 for ; Mon, 23 Jul 2018 15:38:07 +0000 (UTC) (envelope-from ralph@ralphsmith.org) Received: from ralphsmith.org (ralphsmith.org [98.172.20.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "ralphsmith.org", Issuer "Go Daddy Secure Certificate Authority - G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1595E81AB5; Mon, 23 Jul 2018 15:38:07 +0000 (UTC) (envelope-from ralph@ralphsmith.org) Received: from [192.168.140.100] ([198.99.129.142]) (authenticated bits=0) by ralphsmith.org (8.15.2/8.15.2) with ESMTPSA id w6NFc16n046136 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 23 Jul 2018 11:38:04 -0400 (EDT) (envelope-from ralph@ralphsmith.org) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ralphsmith.org; s=201502; t=1532360285; bh=5qWBxpPB6bXRo5Wguezf6PJJGAdsdcBImG319iuDKFM=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=X+X9m8zqF8pL97cTjtVqLJYz6+DnvNxkn3MbEkTpLp645bmigB9K3c0uQUVRw4cFJ uQ2xbByoZrxToebtr4BXfWwSMv9fmKdR5HS3Y4RAZlc1+zwqm/OaYwVmLL8IzufwZI HTC6e1CupqZynCrA9uIkql8Ug5aeil04HYFXGqxY= Mime-Version: 1.0 (1.0) Subject: Re: rpi3 and Adafruit GPS Hat From: Ralph Smith X-Mailer: iPhone Mail (15F79) In-Reply-To: <1532359478.1344.142.camel@freebsd.org> Date: Mon, 23 Jul 2018 11:37:56 -0400 Cc: Per olof Ljungmark , David Cornejo , freebsd-arm Message-Id: <002D469F-26E0-492A-BEB7-8A61A56ECABF@ralphsmith.org> References: <47f49a55-66b0-1c02-4530-4701a3bd0c43@nethead.se> <20180718170157.GA40221@night.db.net> <7a14173c-cc28-6dc7-3787-a5b77a396b30@nethead.se> <1532357176.1344.130.camel@freebsd.org> <1532359478.1344.142.camel@freebsd.org> To: Ian Lepore Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.27 X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Jul 2018 15:38:07 -0000 Sent from my iPhone > On Jul 23, 2018, at 11:24 AM, Ian Lepore wrote: >=20 >> On Mon, 2018-07-23 at 17:20 +0200, Per olof Ljungmark wrote: >>> On 07/23/18 16:46, Ian Lepore wrote: >>>=20 >>>> On Mon, 2018-07-23 at 11:40 +0200, Per olof Ljungmark wrote: >>>>=20 >>>>> On 07/23/18 10:46, David Cornejo wrote: >>>>>=20 >>>>>=20 >>>>> this might be a little blasphemous, but for grins I tried an Oncore wi= th >>>>> PPS to a GPIO and running the serial through a TTL-USB serial cable an= d >>>>> that seems to work ok. >>>>>=20 >>>>> there's probably some good reason that this is a bad idea. >>>> Depends on what precision you are after, but for lowest possible jitter= >>>> you need to use the uart, the difference is in magnitudes. >>>>=20 >>> Technically that may be correct, but it's meaningless. On a usb 1.x >>> adapter there may be ~500us of jitter from one measurement to the next. >>> On a usb 2.x adapter the jitter drops to typically ~60us. Those values >>> are pretty much in the noise for ntpd, which uses a median filter to >>> smooth any serious jitter out of the measurements. >>>=20 >>> Here are some real-world measurements. The pps source for all 3 inputs >>> is the same gps-disciplined rubidium oscillator, so all the jitter is >>> within the uart, usb hardware, and freebsd drivers. The usb adapters >>> are both FTDI chips, which have a fixed latency on reporting a change >>> on the DCD pin (pin-change status messages are only delivered once a >>> millisecond on ftdi chips). >>>=20 >>> remote refid st t when poll reach delay offset jitter >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>> xPPS(0) .uart. 0 l 6 16 377 0.000 1.097 0.001 >>> xPPS(1) .usb1. 0 l 4 16 377 0.000 -0.051 0.773 >>> oPPS(2) .usb2. 0 l 4 16 377 0.000 -0.001 0.035 >>> *dvb.hippie.lan .GPS. 1 u 12 64 377 1.234 1.296 2.707 >>> +utcnist2.colora .NIST. 1 u 1 64 377 13.605 3.940 2.729 >>>=20 >>> You can see in this case ntpd actually chose the usb2 pps input as the >>> system peer. It did so because at startup the clock offset was closer >>> than the uart, and the difference in jitter between the two wasn't >>> significant, so the ntpd code that prevents clock-hopping chose to >>> stick with the peer with the smaller offset. >>>=20 >> Yes, I was technically correct but of course you are right too - >> however, the main problem is not the jitter but rather that I am unable >> to switch off the serial console and stop the u-boot loader from >> receiving NMEA data. The Adafruit GPS Hat is made to sit right on the Pi >> 40-pin header, as you probably know. >>=20 >> To quote one of the posters in the thread I linked to: >> "... I am seriously baffled by how difficult (nearly impossible) it had >> been to get rid of the serial console..." >>=20 >> Unfortunately I am not fluid enough to figure out where to make the >> changes, the advices I've seen so far is not applicable to 12-CURRENT in >> an easy way. >>=20 >> And that is also why I wrote bugreport 229976. It may be that all the >> folks involved with FreeBSD/ARM are serious developers so they do not >> see it as a problem but for me it is, being more on the >> application/administration side of things. >>=20 >> Thanks, >>=20 >> //per >>=20 >=20 > Unfortunately, I can't help with the rpi part of this, since it's > related to the firmware and uboot, and that part of the rpi world has > changed drastically since I was involved with it years ago. I know you > can build a custom uboot that disables serial console support > completely, but I don't know if there's a way to achieve that with the > stock uboot. Not using the stock uboot, you will need to modify it. I have this working o= n 12-CURRENT for the Pi 2, I haven=E2=80=99t tried it on the Pi 3. I documen= ted how I modified u-boot for 11-STABLE in https://docs.freebsd.org/cgi/getm= sg.cgi?fetch=3D188164+0+archive/2018/freebsd-arm/20180204.freebsd-arm, this s= hould apply to the current u-boot port as well. You will also meet to modify= the DTB so the system doesn=E2=80=99t send console output to the uart as we= ll.=20 Ralph=