Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Jun 2018 13:43:44 +0200
From:      Emmanuel Vadot <manu@bidouilliste.com>
To:        Edward Tomasz Napierala <trasz@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org, owner-src-committers@freebsd.org
Subject:   Re: svn commit: r335004 - head/release/tools
Message-ID:  <941a15be461602ae3d723c3f30804248@megadrive.org>
In-Reply-To: <201806121645.w5CGjrMM099365@repo.freebsd.org>
References:  <201806121645.w5CGjrMM099365@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2018-06-12 18:45, Edward Tomasz Napierala wrote:
> Author: trasz
> Date: Tue Jun 12 16:45:52 2018
> New Revision: 335004
> URL: https://svnweb.freebsd.org/changeset/base/335004
> 
> Log:
>   Enable USB OTG serial terminal on ARM SD card images.  This 
> configures
>   the system to make use of USB device mode / USB OTG to provide a 
> "virtual
>   serial port" on release images.
> 
>   Reviewed by:	gjb@
>   MFC after:	2 weeks
>   Relnotes:	yes
>   Sponsored by:	The FreeBSD Foundation
>   Differential Revision:	https://reviews.freebsd.org/D15602
> 
> Modified:
>   head/release/tools/arm.subr
> 
> Modified: head/release/tools/arm.subr
> ==============================================================================
> --- head/release/tools/arm.subr	Tue Jun 12 16:44:13 2018	(r335003)
> +++ head/release/tools/arm.subr	Tue Jun 12 16:45:52 2018	(r335004)
> @@ -92,6 +92,41 @@ arm_create_user() {
>  	return 0
>  }
> 
> +arm_setup_usb_otg() {
> +	# Set up virtual serial port over USB OTG / device mode.
> +	echo >> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '# Required for USB OTG virtual serial port.' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo 'notify 100 {' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '	match "system"		"DEVFS";' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '	match "subsystem"	"CDEV";' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '	match "type"		"CREATE";' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '	match "cdev"		"ttyU[0-9]+";' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '	action "/sbin/init q";' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf
> +	echo '};' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/devd.conf

  This will be wiped after the first update, better create 
/etc/devd/otg_serial.conf

> +	echo '# USB OTG virtual serial port' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/ttys
> +	echo 'ttyU0	"/usr/libexec/getty 3wire"	vt100	onifconsole  secure' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/ttys
> +	echo 'ttyU1	"/usr/libexec/getty 3wire"	vt100	onifconsole  secure' \
> +		>> ${CHROOTDIR}/${DESTDIR}/etc/ttys

  If I have no OTG port and a usb<->uart plugged into my board that will 
give weird result no ?

> +	echo '# Configure USB OTG; see usb_template(4).' \
> +		>> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf
> +	echo 'hw.usb.template=3' \
> +		>> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf
> +	echo 'umodem_load="YES"' \
> +		>> ${CHROOTDIR}/${DESTDIR}/boot/loader.conf

  I'm not a big fan of always enabling this functionality. Do you have a 
board that have no uart but an otg port ?

> +}
> +
>  arm_install_base() {
>  	chroot ${CHROOTDIR} mount /dev/${mddev}s2a ${DESTDIR}
>  	eval chroot ${CHROOTDIR} make -C ${WORLDDIR} \
> @@ -102,6 +137,7 @@ arm_install_base() {
>  	chroot ${CHROOTDIR} mkdir -p ${DESTDIR}/boot/msdos
> 
>  	arm_create_user
> +	arm_setup_usb_otg
> 
>  	echo '# Custom /etc/fstab for FreeBSD embedded images' \
>  		> ${CHROOTDIR}/${DESTDIR}/etc/fstab

-- 
Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?941a15be461602ae3d723c3f30804248>