Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Jun 2018 13:39:52 +0100
From:      Edward Napierala <trasz@freebsd.org>
To:        Emmanuel Vadot <manu@bidouilliste.com>
Cc:        src-committers <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:  <CAFLM3-oKsP70WmDfDn82-Z9wZ6%2BkJM7WC1aLJGKVm-rsf0Yd_A@mail.gmail.com>
In-Reply-To: <941a15be461602ae3d723c3f30804248@megadrive.org>
References:  <201806121645.w5CGjrMM099365@repo.freebsd.org> <941a15be461602ae3d723c3f30804248@megadrive.org>

next in thread | previous in thread | raw e-mail | index | archive | help
2018-06-13 12:43 GMT+01:00 Emmanuel Vadot <manu@bidouilliste.com>:

> 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
>

Thanks, I'll look into that.


> +       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 ?
>

No, because that port won't be marked as console.  This only applies
to the "virtual" OTG serial ports.


> +       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 ?
>

I don't, but this makes it possible to use OTG-enabled boards without
using the console cable - having to check the pinouts, making sure the
voltage
is right etc.  Do you see some problems this might cause?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFLM3-oKsP70WmDfDn82-Z9wZ6%2BkJM7WC1aLJGKVm-rsf0Yd_A>