[RESEND v2 PATCH 00/16] Nokia RX-51: Fix USB TTY console and enable it

Pali Rohár
2021-02-08T22:54:29Z

On Monday 08 February 2021 23:45:37 Marek Vasut wrote:
> On 2/8/21 11:34 PM, Pali Roh?r wrote:
> > On Monday 08 February 2021 23:21:38 Pali Roh?r wrote:
> > > On Monday 08 February 2021 23:15:33 Lukasz Majewski wrote:
> > > > Hi Pali,
> > > >
> > > > > Resended v2 patch series with fixed commit messages
> > > > >
> > > > > This patch series fix usbtty code (serial console via USB peripheral
> > > > > mode), fix underlying musb peripheral code, fix compilation of
> > > > > CONFIG_USB_DEVICE (used by usbtty), remove unused Nokia RX-51 code to
> > > > > decrease size of U-Boot binary and finally enable usbtty serial
> > > > > console for Nokia RX-51.
> > > > >
> > > > > With this patch series debugging of Nokia RX-51 can be done also via
> > > > > USB serial console.
> > > > >
> > > > > It fixes also stability of musb code and allows usage of file
> > > > > transfers via Kermit protocol on Nokia RX-51. Kermit file transfer
> > > > > via U-Boot loadb command is stable on Nokia N900 and gives about
> > > > > 52kB/s transfer rate.
> > > > >
> > > > > On computer this serial console is accessible via /dev/ttyACM0 device.
> > > > >
> > > >
> > > > I've integrated your patchset and now it turns out that the u-boot size
> > > > is too big:
> > > > https://dev.azure.com/lukma633/U-Boot/_build/results?buildId=24&view=results
> > > > https://dev.azure.com/lukma633/U-Boot/_build/results?buildId=24&view=logs&j=9a06d2a9-1498-5de0-2a01-be581d48ba67&t=f9a6b761-daa3-500f-4840-65a939c5040d
> > >
> > > Ah :-(
> > > In November when I sent these patches, U-Boot binary was smaller.
> > >
> > > > The branch is https://github.com/lmajewski/u-boot-dfu/tree/testing
> > > >
> > > > Have you experienced similar issues?
> > >
> > > Yes, memory for U-Boot is limited. It is needed to decrease size of
> > > U-Boot binary and then it will work.
> > >
> > > I will try to look at it later and find some dead code which can be
> > > commented or removed to decrease binary size...
> >
> > Just a quick test, could you try to add
> >
> > CONFIG_OPTIMIZE_INLINING=y
> >
> > into configs/nokia_rx51_defconfig file, if it helps?
>
> Surely you can try build-testing the patches yourself ? :-)

They are working fine on my two testes machines. I do not have this
problem which Lukasz described. Otherwise I would not send patches to
mailing list for upstream. Also I have tested CONFIG_OPTIMIZE_INLINING
and it decreased size of u-boot binary on my machine.

But I already figured out that "working on my machine" does not mean
that it would also on other machines... In past I hit compiler bugs
which caused that on my machine gcc compiled code correctly but on other
machine with older (buggy) gcc code was compiled incorrectly and result
of computation was incorrect.

That is why I'm asking if people who triggered mentioned issue can check
if proposed fix helps.

Btw, if I understood correctly without CONFIG_OPTIMIZE_INLINING U-Boot
redefine "inline" to "always inline". And with CONFIG_OPTIMIZE_INLINING
"inline" is "inline". From past I know that gcc is very smart and can
decide that it is better to ignore inlining some functions for -Os size
optimizations.