[OpenWrt-Devel] Q: procd: re-evaluation of inittab entries

John Crispin john at phrozen.org
Wed Dec 5 02:05:02 EST 2018

On 05/12/2018 07:42, Michael Heimpold wrote:
> Hi,
> Am Mittwoch, 5. Dezember 2018, 03:52:20 CET schrieb Yousong Zhou:
>> On Wed, 5 Dec 2018 at 06:00, Michael Heimpold <mhei at heimpold.de> wrote:
>>> Hi,
>>> I'm currently playing with USB gadget stuff. The goal is to run an
>>> Ethernet
>>> link and a console over the USB link. I already selected the relevant
>>> kernel modules and ACM device and RNDIS device is created on the USB host
>>> system - all fine so far.
>>> The ACM device on the USB gadget side is created as /dev/ttyGS0, and
>>> when I use "echo foobar > /dev/ttyGS0" or "cat /dev/ttyGS0" on USB device
>>> side with corresponding counterparts on USB host side, then it already
>>> works like a charme.
>>> My problem is the inittab: I think the right approach is to add an entry
>>> to
>>> inittab when I want to provide a login console on this tty, so I added:
>>> ttyGS0::askfirst:/usr/libexec/login.sh
>>> at the end of my inittab.
>>> However, during boot ttyGS0 is not yet available - it takes until the
>>> USB gadget is setup. procd skips this line at boot time.
>>> So my question is: is this the correct approach, or should I use a
>>> hotplug script to start such a console?
>> I think we should make it possible to use serial console directly in
>> inittab.
>> In this case, could it be that the kernel module was only loaded after
>> parsing inittab and askfirst quitted because it couldn't find the
>> device?  Please check if that is the case by grepping module name in
>> /etc/modules-boot.d/ .  Setting boot flag when calling AutoProbe
>> should fix the issue.
> No, the order is this one:
> 1. modules are loaded (device does not appear yet)
> 2. inittab is parsed
> 3. entry is skipped because device does not exists yet
> 4. configuration of USB gadget with shell script and/or init script
> 5. device appears
> 6. hotplug-call tty is being called and running hotplug scripts
> So it seems that we need a feedback from hotplug script to
> procd to rescan inittab for formerly skipped items and re-trigger
> start in case of device is present now.
> Regards,
> mhei

should have cleaned up the inbox and read all mails before replying. for 
a normal ttyX the approach with modules-boot.d should work. in your case 
there is 4) so what i initially proposed should be the solution.

openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list