From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pali =?utf-8?B?Um9ow6Fy?= Date: Sat, 26 Dec 2020 18:01:02 +0100 Subject: [PATCH v2] Nokia RX-51: Enable usbtty serial console by default In-Reply-To: <4b4077fc-59cb-688a-ca2b-f13b59743bdd@ti.com> References: <20201130192715.1793-1-pali@kernel.org> <784f826d-fa89-0714-dd4c-eb4c4bc1645e@ti.com> <20201222145815.tq6ci2zz3ocjg7p5@pali> <3c590517-5163-bc53-0d86-538f51a8a562@ti.com> <27527e62-a7df-75ab-e96c-8827f7b4e450@ti.com> <20201222151741.bxmyyd2eeoqscv4w@pali> <76a88c4a-377a-f52f-a8cf-7d668514e34c@ti.com> <20201222160231.adht3v7cmeq5626g@pali> <4b4077fc-59cb-688a-ca2b-f13b59743bdd@ti.com> Message-ID: <20201226170102.5t6zyl7cipppcrtr@pali> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Wednesday 23 December 2020 11:35:10 Lokesh Vutla wrote: > On 22/12/20 9:32 pm, Pali Roh?r wrote: > > On Tuesday 22 December 2020 21:08:45 Lokesh Vutla wrote: > >> On 22/12/20 8:47 pm, Pali Roh?r wrote: > >>> On Tuesday 22 December 2020 20:39:11 Lokesh Vutla wrote: > >>>> > >>>> > >>>> On 22/12/20 8:38 pm, Lokesh Vutla wrote: > >>>>> > >>>>> > >>>>> On 22/12/20 8:36 pm, Lokesh Vutla wrote: > >>>>>> > >>>>>> > >>>>>> On 22/12/20 8:28 pm, Pali Roh?r wrote: > >>>>>>> On Tuesday 22 December 2020 19:56:51 Lokesh Vutla wrote: > >>>>>>>> > >>>>>>>> > >>>>>>>> On 01/12/20 12:57 am, Pali Roh?r wrote: > >>>>>>>>> Now when usbtty serial console is fixed in U-Boot enable CONFIG_USB_TTY for > >>>>>>>>> Nokia RX-51 board by default. > >>>>>>>>> > >>>>>>>>> Fix also USB product id as U-Boot ignores CONFIG_USBD_PRODUCTID macro and > >>>>>>>>> include U-Boot string into USB product name to indicate usage of U-Boot. > >>>>>>>>> > >>>>>>>>> CONFIG_CONSOLE_MUX is already used and U-Boot console is available for > >>>>>>>>> all in/out devices. Therefore there is no need to have separate commands > >>>>>>>>> 'run sercon', 'run usbcon' and 'run vgacon', so remove them. > >>>>>>>>> > >>>>>>>>> As space for U-Boot is limited to 256kB, disable some other unused options > >>>>>>>>> so CONFIG_USB_TTY can be enabled. > >>>>>>>>> > >>>>>>>>> Nokia RX-51 does not have easily accessible UART serial console so the only > >>>>>>>>> option for easy debugging is to use device's keyboard+screen or this usbtty > >>>>>>>>> serial console over USB. > >>>>>>>>> > >>>>>>>>> Signed-off-by: Pali Roh?r > >>>>>>>>> --- > >>>>>>>>> Changes since v1: > >>>>>>>>> * Fixed USB product id and product name > >>>>>>>>> * Disabled some other options to free more space > >>>>>>>>> * Changes now passed CI tests: > >>>>>>>>> https://dev.azure.com/u-boot/u-boot/_build/results?buildId=1492&view=results > >>>>>>>>> > >>>>>>>>> Note that this patch depends on other Nokia RX-51 patches which are on > >>>>>>>>> mailing list, otherwise CI tests do not pass: > >>>>>>>>> > >>>>>>>>> https://patchwork.ozlabs.org/project/uboot/patch/20201121223011.14262-1-pali at kernel.org/ > >>>>>>>>> https://patchwork.ozlabs.org/project/uboot/patch/20201121223317.14347-1-pali at kernel.org/ > >>>>>>>>> https://patchwork.ozlabs.org/project/uboot/patch/20201129161505.5092-1-pali at kernel.org/ > >>>>>>>>> https://patchwork.ozlabs.org/project/uboot/patch/20201130191034.795-1-pali at kernel.org/ > >>>>>>>> > >>>>>>>> okay, Ill wait for all these patches to get merged, before I pick this patch. > >>>>>>> > >>>>>>> Web pages for all these patches is saying: > >>>>>>> > >>>>>>> State: Under Review > >>>>>>> Delegated to: Lokesh Vutla > >>>>>>> > >>>>>>> So I think these patches are also waiting for you. > >>>>>> > >>>>>> The main patch I need is this[0]. Without this I am getting a build failure as > >>>>>> you mentioned in the commit description. So, Until [0] patch is applied I cannot > >>>>>> apply this patch. Since you combined disabling of other configs in the same > >>>>>> patch, it is causing my pipeline failure. > >>>>>> > >>>>>> Can you split the disabling of other configs into a separate patch so that > >>>>>> others are unblocked? > >>>>> > >>>>> [0] > >>>>> https://patchwork.ozlabs.org/project/uboot/patch/20201130192715.1793-1-pali at kernel.org/ > >>>> > >>>> ahh copy paste issues: > >>>> [0] > >>>> https://patchwork.ozlabs.org/project/uboot/patch/20201129164618.5829-3-pali at kernel.org/ > >>> > >>> Sorry, now I'm somehow lost. > >>> > >>> All patches are in my git repository git://github.com/pali/u-boot.git in > >>> branch nokia-rx51. And this branch passed pipeline checks. > >> > >> Yeah because there is a usb patch that is not in my queue which is fixing build > >> issues. > >> > >> Let me give more details. Below are the patches that are in my queue: > >> > >> [v2] Nokia RX-51: Enable usbtty serial console by default > >> Nokia RX-51: Do not try calling both ext2load and ext4load > >> Nokia RX-51: Add test for U-Boot serial console Nokia RX-51: > >> Nokia RX-51: Convert to CONFIG_DM_MMC > >> Nokia RX-51: Decrease i2c speed to 100000 > >> > >> Issue1: > >> If I apply all these patches I get this build error > >> https://pastebin.ubuntu.com/p/R7P6z8RJJZ/ > >> > >> When I saw you queue, the patch [0] is fixing the build error. But it[0] is > >> assigned to Marek. So I bisecting the error to $patch and dropped it from my > >> queue for now. > > > > Ok. Now I see what you are trying. Problem that all those patches needs > > to be applied in order as they are in my git tree. > > > > So if you have dropped some of those patches (like you wrote) it is > > expected to see failures. > > > >> Issue2: > >> After applying the below 4 patches, I see the Gitlab pipeline error[1]. > >> Nokia RX-51: Do not try calling both ext2load and ext4load > >> Nokia RX-51: Add test for U-Boot serial console Nokia RX-51: > >> Nokia RX-51: Convert to CONFIG_DM_MMC > >> Nokia RX-51: Decrease i2c speed to 100000 > >> > >> This error[1] can be solved by disabling unnecessary configs like the ones you > >> disabled in $patch > >> +# CONFIG_DM_WARN is not set > >> +# CONFIG_DM_SEQ_ALIAS is not set > >> +# CONFIG_BLOCK_CACHE is not set > >> +# CONFIG_SYS_DEVICE_NULLDEV is not set > >> > >> I am asking to send the above as a separate patch so that the 4 patches can be > >> un blocked. > >> Hope this is clear. > > > > Ok. I can do it, if it helps. But re-arranging and splitting patches > > into different form just more complicate things. Therefore it would be > > easier if all those patches (which accumulated for months) could be > > reviewed and applied in "verified" order. > > Unfortunately I cannot merge usb patches. It should go via usb subsystem tree, I > can only pull platform port patches. If you can split it up, it will unblock the > 4 patches at least. I played a bit with it and on my machine/setup disabling option CONFIG_MMC_VERBOSE in patch "Nokia RX-51: Convert to CONFIG_DM_MMC" helped. Could you try adding following line into configs/nokia_rx51_defconfig? # CONFIG_MMC_VERBOSE is not set > Thanks and regards, > Lokesh > > > > >> [0] > >> https://patchwork.ozlabs.org/project/uboot/patch/20201129164618.5829-3-pali at kernel.org/ > >> [1] https://gitlab.denx.de/u-boot/custodians/u-boot-ti/-/jobs/192532 > >> > >> Thanks and regards, > >> Lokesh > >> > >>> > >>> It took me some time to prepare all patches in state that after applying > >>> all of them whole pipeline pass. > >>> > >>> As this starting to be complicated, could you please tell me which > >>> commit/patch either needs to be modified or if needed how to change > >>> order of them? > >>> > >>>> Thanks and regards, > >>>> Lokesh > >>>> > >>>> > >>>>> > >>>>> Sorry missed this. > >>>>> > >>>>> Thanks and regards, > >>>>> Lokesh > >>>>> > >>>>>> > >>>>>> Thanks and regards, > >>>>>> Lokesh > >>>>>> > >>>>>>> > >>>>>>>> Thanks and regards, > >>>>>>>> Lokesh > >>>>>>>> > >>>>>>>>> --- > >>>>>>>>> configs/nokia_rx51_defconfig | 8 +++++--- > >>>>>>>>> doc/README.nokia_rx51 | 15 +-------------- > >>>>>>>>> include/configs/nokia_rx51.h | 21 +++++++-------------- > >>>>>>>>> 3 files changed, 13 insertions(+), 31 deletions(-) > >>>>>>>>> > >>>>>>>>> diff --git a/configs/nokia_rx51_defconfig b/configs/nokia_rx51_defconfig > >>>>>>>>> index 0f05fe6fc3..963dd145ce 100644 > >>>>>>>>> --- a/configs/nokia_rx51_defconfig > >>>>>>>>> +++ b/configs/nokia_rx51_defconfig > >>>>>>>>> @@ -44,18 +44,16 @@ CONFIG_MTDPARTS_DEFAULT="mtdparts=onenand:128k(bootloader)ro,384k(config),256k(l > >>>>>>>>> CONFIG_ENV_OVERWRITE=y > >>>>>>>>> CONFIG_SYS_RELOC_GD_ENV_ADDR=y > >>>>>>>>> # CONFIG_NET is not set > >>>>>>>>> -CONFIG_TWL4030_LED=y > >>>>>>>>> # CONFIG_MMC_HW_PARTITIONING is not set > >>>>>>>>> +# CONFIG_MMC_VERBOSE is not set > >>>>>>>>> CONFIG_MMC_OMAP_HS=y > >>>>>>>>> CONFIG_MTD=y > >>>>>>>>> CONFIG_CONS_INDEX=3 > >>>>>>>>> CONFIG_SYS_NS16550=y > >>>>>>>>> CONFIG_SPI=y > >>>>>>>>> CONFIG_USB=y > >>>>>>>>> -CONFIG_USB_MUSB_HCD=y > >>>>>>>>> CONFIG_USB_MUSB_UDC=y > >>>>>>>>> CONFIG_USB_OMAP3=y > >>>>>>>>> -CONFIG_TWL4030_USB=y > >>>>>>>>> CONFIG_CFB_CONSOLE=y > >>>>>>>>> CONFIG_CFB_CONSOLE_ANSI=y > >>>>>>>>> # CONFIG_VGA_AS_SINGLE_DEVICE is not set > >>>>>>>>> @@ -66,3 +64,7 @@ CONFIG_DM_I2C=y > >>>>>>>>> CONFIG_DM_MMC=y > >>>>>>>>> # CONFIG_DM_DEVICE_REMOVE is not set > >>>>>>>>> # CONFIG_SYS_MALLOC_F is not set > >>>>>>>>> +# CONFIG_DM_WARN is not set > >>>>>>>>> +# CONFIG_DM_SEQ_ALIAS is not set > >>>>>>>>> +# CONFIG_BLOCK_CACHE is not set > >>>>>>>>> +# CONFIG_SYS_DEVICE_NULLDEV is not set > >>>>>>>>> diff --git a/doc/README.nokia_rx51 b/doc/README.nokia_rx51 > >>>>>>>>> index 320b5efc7d..84d1912ddd 100644 > >>>>>>>>> --- a/doc/README.nokia_rx51 > >>>>>>>>> +++ b/doc/README.nokia_rx51 > >>>>>>>>> @@ -24,8 +24,7 @@ called u-boot-gen-combined. It is available in following repository: > >>>>>>>>> There is support for hardware watchdog. Hardware watchdog is started by > >>>>>>>>> NOLO so u-boot must kick watchdog to prevent reboot device (but not very > >>>>>>>>> often, max every 2 seconds). There is also support for framebuffer display > >>>>>>>>> -output with ANSI escape codes and the N900 HW keyboard input. USB tty works > >>>>>>>>> -but is disabled because it prevents the current Maemo kernel from booting. > >>>>>>>>> +output with ANSI escape codes and the N900 HW keyboard input. > >>>>>>>>> > >>>>>>>>> When U-Boot is starting it enable IBE bit in Auxiliary Control Register, > >>>>>>>>> which is needed for Thumb-2 ISA support. It is workaround for errata 430973. > >>>>>>>>> @@ -49,10 +48,6 @@ Boot from SD or eMMC in this order: > >>>>>>>>> > >>>>>>>>> Available additional commands/variables: > >>>>>>>>> > >>>>>>>>> - * run sercon - Use serial port for control > >>>>>>>>> - * run usbcon - Use usbtty for control > >>>>>>>>> - * run vgacon - Use framebuffer and HW keyboard for control (default) > >>>>>>>>> - > >>>>>>>>> * run sdboot - Boot from external SD card (see boot order) > >>>>>>>>> * run emmcboot - Boot from internal eMMC memory (see boot order) > >>>>>>>>> * run attachboot - Boot attached kernel image (attached to U-Boot binary) > >>>>>>>>> @@ -87,14 +82,6 @@ Additional variables for booting kernel: > >>>>>>>>> and u-boot standard output is set to serial then setup_console_atag is > >>>>>>>>> automatically set to 1. So output from Maemo kernel would go to serial port. > >>>>>>>>> > >>>>>>>>> -USB TTY: > >>>>>>>>> - > >>>>>>>>> - Maemo kernel 2.6.28 will crash if u-boot enable usb tty. So USB TTY is disabled. > >>>>>>>>> - For enabling USB TTY just add this line to file include/configs/nokia_rx51.h > >>>>>>>>> - > >>>>>>>>> - #define CONFIG_USB_TTY > >>>>>>>>> - > >>>>>>>>> - > >>>>>>>>> UBIFS support: > >>>>>>>>> > >>>>>>>>> UBIFS support is disabled, because U-Boot image is too big and cannot be > >>>>>>>>> diff --git a/include/configs/nokia_rx51.h b/include/configs/nokia_rx51.h > >>>>>>>>> index 3f2700d8e2..23368de624 100644 > >>>>>>>>> --- a/include/configs/nokia_rx51.h > >>>>>>>>> +++ b/include/configs/nokia_rx51.h > >>>>>>>>> @@ -70,10 +70,12 @@ > >>>>>>>>> > >>>>>>>>> /* USB device configuration */ > >>>>>>>>> #define CONFIG_USB_DEVICE > >>>>>>>>> +#define CONFIG_USB_TTY > >>>>>>>>> #define CONFIG_USBD_VENDORID 0x0421 > >>>>>>>>> -#define CONFIG_USBD_PRODUCTID 0x01c8 > >>>>>>>>> +#define CONFIG_USBD_PRODUCTID_CDCACM 0x01c8 > >>>>>>>>> +#define CONFIG_USBD_PRODUCTID_GSERIAL 0x01c8 > >>>>>>>>> #define CONFIG_USBD_MANUFACTURER "Nokia" > >>>>>>>>> -#define CONFIG_USBD_PRODUCT_NAME "N900" > >>>>>>>>> +#define CONFIG_USBD_PRODUCT_NAME "N900 (U-Boot)" > >>>>>>>>> > >>>>>>>>> #define GPIO_SLIDE 71 > >>>>>>>>> > >>>>>>>>> @@ -108,15 +110,9 @@ int rx51_kp_getc(struct stdio_dev *sdev); > >>>>>>>>> /* Environment information */ > >>>>>>>>> #define CONFIG_EXTRA_ENV_SETTINGS \ > >>>>>>>>> "usbtty=cdc_acm\0" \ > >>>>>>>>> - "stdin=serial,vga\0" \ > >>>>>>>>> - "stdout=serial,vga\0" \ > >>>>>>>>> - "stderr=serial,vga\0" \ > >>>>>>>>> - "setcon=setenv stdin ${con};" \ > >>>>>>>>> - "setenv stdout ${con};" \ > >>>>>>>>> - "setenv stderr ${con}\0" \ > >>>>>>>>> - "sercon=setenv con serial; run setcon\0" \ > >>>>>>>>> - "usbcon=setenv con usbtty; run setcon\0" \ > >>>>>>>>> - "vgacon=setenv con vga; run setcon\0" \ > >>>>>>>>> + "stdin=usbtty,serial,vga\0" \ > >>>>>>>>> + "stdout=usbtty,serial,vga\0" \ > >>>>>>>>> + "stderr=usbtty,serial,vga\0" \ > >>>>>>>>> "slide=gpio input " __stringify(GPIO_SLIDE) "\0" \ > >>>>>>>>> "switchmmc=mmc dev ${mmcnum}\0" \ > >>>>>>>>> "kernaddr=0x82008000\0" \ > >>>>>>>>> @@ -198,9 +194,6 @@ int rx51_kp_getc(struct stdio_dev *sdev); > >>>>>>>>> #define CONFIG_POSTBOOTMENU \ > >>>>>>>>> "echo;" \ > >>>>>>>>> "echo Extra commands:;" \ > >>>>>>>>> - "echo run sercon - Use serial port for control.;" \ > >>>>>>>>> - "echo run usbcon - Use usbtty for control.;" \ > >>>>>>>>> - "echo run vgacon - Use framebuffer/keyboard.;" \ > >>>>>>>>> "echo run sdboot - Boot from SD card slot.;" \ > >>>>>>>>> "echo run emmcboot - Boot internal eMMC memory.;" \ > >>>>>>>>> "echo run attachboot - Boot attached kernel image.;" \ > >>>>>>>>>