On Mon, May 21, 2018 at 11:48 AM, Kirspel, Kevin <kevin-kirs...@idexx.com> wrote:
> I think that is doable for the frame buffer and non-USB touch screen, > mouse, and keyboard drivers. The main problem would be the USB mouse, > keyboard, and touch screen drivers. RTEMS uses LIBBSD for the USB stack. > Posting inline below > > > Kevin Kirspel > > Electrical Engineer - Sr. Staff > > Idexx Roswell > > 235 Hembree Park Drive > > Roswell GA 30076 > > Tel: (770)-510-4444 ext. 81642 > > Direct: (770)-688-1642 > > Fax: (770)-510-4445 > > > > *From:* users [mailto:users-boun...@rtems.org] *On Behalf Of *Mikhail > Svetkin > *Sent:* Monday, May 21, 2018 12:35 PM > *To:* Kirspel, Kevin <kevin-kirs...@idexx.com> > *Cc:* users@rtems.org; Emre Cetin <hsnemrece...@gmail.com> > > *Subject:* Re: Raspberry Pi Rtems-Graphical-Toolkit > > > > So the minimal example of Qt Widgets + RTEMS LIBBSD + EVDEV will be ~24MB. > > It is pretty big. If RTEMS has support of EVDEV or libinput it will be > only ~9MB. > > > > Qt does not require MMAP, only LinuxFB plugin. I wrote my own QPA plugin > and it does not need MMAP. > > > > > > > > > Best regards, > Mikhail > > > > On 21 May 2018 at 17:42, Kirspel, Kevin <kevin-kirs...@idexx.com> wrote: > > To give a little background on this subject, the current support in RTEMS > LIBBSD for the EVDEV input system was motivated by the following: > > > > - Add a “rtems-arm-4.12-gcc” platform to QT. This allows you to configure > QT with RTEMS compilers and libraries. > > - Use QT LinuxFB plugin as is for graphics output and system input. > > > > The QT LinuxFB plugin supports the following input systems: libinput, > tslib, and EVDEV. I choose EVDEV because it is supported by LIBBSD. > > > > -------- > > As a quick indication of footprint, the EVDEV test in the RTEMS LIBBSD > test suite is ~4 times the size of the hello world test. I compiled > against the xilinx_zynq_a9_qemu BSP but the results were similar to my > custom LPC3250 BSP. The hello world test is ~4MB. The EVDEV test is > ~15MB. The EVDEV test pulls in the USB keyboard and mouse drivers. This > is where most of the footprint increase comes from. The EVDEV code itself > is pretty small. The frame buffer and touch drivers are also small. > > That seems large for the normal hello world. Is that the file size or size reported by "arm-rtems5-size"? I would expect something under 256K no matter how complex the BSP is. It is often under 48K. Again is the EVDEV size, file size or real code size? I agree that having a USB keyboard and mouse requires the FreeBSD stack and that has code but that much? > > > -------- > > The frame buffer device in RTEMS is not compatible with QT but it is not > far off. QT expects the following Linux headers: “linux/fb.h”, > “linux/kd.h”, and “sys/kd.h”. I had ported the Linux headers and placed > them under the “dev/include/linux” and “dev/include/linux/sys” directories > in the RTEMS source tree (not currently in the tree because the patches > were rejected). QT also expects the frame buffer device to support the > MMAP device handler. This was added to Gedare’s MMAP work but as Sebastian > pointed out it does not follow the design module. This probably needs to > be dealt with at some point. > > > > -------- > > Right now, the only example on how to use EVDEV is in the LIBBSD test > suite (evdev01). I guess the QT source can also be used as an example. > > > > Kevin Kirspel > > Electrical Engineer - Sr. Staff > > Idexx Roswell > > 235 Hembree Park Drive > <https://urldefense.proofpoint.com/v2/url?u=https-3A__maps.google.com_-3Fq-3D235-2BHembree-2BPark-2BDrive-2B-250D-250A-2BRoswell-2BGA-2B30076-26entry-3Dgmail-26source-3Dg&d=DwMFaQ&c=2do6VJGs3LvEOe4OFFM1bA&r=dbavT-WIJ4nBfQFKYnKdAD52Vyq3ZXSzrL9TAm21lZI&m=pNtc9XwM_Um_y7szn11M51nwp2ESm43_FnaEfLoDrVE&s=4DbjexY91IzNSksLounr94j_irJaI8pnAqf29Wc2q6g&e=> > > Roswell GA 30076 > <https://urldefense.proofpoint.com/v2/url?u=https-3A__maps.google.com_-3Fq-3D235-2BHembree-2BPark-2BDrive-2B-250D-250A-2BRoswell-2BGA-2B30076-26entry-3Dgmail-26source-3Dg&d=DwMFaQ&c=2do6VJGs3LvEOe4OFFM1bA&r=dbavT-WIJ4nBfQFKYnKdAD52Vyq3ZXSzrL9TAm21lZI&m=pNtc9XwM_Um_y7szn11M51nwp2ESm43_FnaEfLoDrVE&s=4DbjexY91IzNSksLounr94j_irJaI8pnAqf29Wc2q6g&e=> > > Tel: (770)-510-4444 ext. 81642 > > Direct: (770)-688-1642 > > Fax: (770)-510-4445 > > > > *From:* Joel Sherrill [mailto:j...@rtems.org] > *Sent:* Monday, May 21, 2018 9:10 AM > *To:* Kirspel, Kevin <kevin-kirs...@idexx.com> > *Cc:* Chris Johns <chr...@rtems.org>; Mikhail Svetkin < > mikhail.svet...@gmail.com>; users@rtems.org; Emre Cetin < > hsnemrece...@gmail.com> > > > *Subject:* Re: Raspberry Pi Rtems-Graphical-Toolkit > > > > > > On Mon, May 21, 2018, 7:52 AM Kirspel, Kevin <kevin-kirs...@idexx.com> > wrote: > > RTEMS LIBBSD has support for EVDEV which is a standard API for keyboard, > mouse, and touchscreen. Is it the best choice, I don't know. Maybe a > better question is "What standard input system should RTEMS support?". > > > > That's the question. > > > > Using the FreeBSD support has a number of advantages but I admit that I > didn't know that support was in place. I have no idea what minimum > footprint using that implies even if you don't use the TCP IP stack. > > > > In the cpukit there has long been support for a frame buffer device > framework and a mouse input parsing library. I expect the FreeBSD support > comes with specific device support that this is weak on. > > > > But footprint is important. Any idea how large a simple non-networked > example would be with the FreeBSD code as a base? > > > > And we need examples and howtos. If I didn't know about it, it isn't > reasonable to expect someone new to find it. :( > > > > --joel > > > > > > > > > Kevin Kirspel > Electrical Engineer - Sr. Staff > Idexx Roswell > 235 Hembree Park Drive > <https://urldefense.proofpoint.com/v2/url?u=https-3A__maps.google.com_-3Fq-3D235-2BHembree-2BPark-2BDrive-2B-250D-250ARoswell-2BGA-2B30076-26entry-3Dgmail-26source-3Dg&d=DwMFaQ&c=2do6VJGs3LvEOe4OFFM1bA&r=dbavT-WIJ4nBfQFKYnKdAD52Vyq3ZXSzrL9TAm21lZI&m=pNtc9XwM_Um_y7szn11M51nwp2ESm43_FnaEfLoDrVE&s=kmmgT8zilp8a-ibdkTczWMS4Xv4e9XPymmkZcbMl88A&e=> > Roswell GA 30076 > Tel: (770)-510-4444 ext. 81642 > Direct: (770)-688-1642 > Fax: (770)-510-4445 > > -----Original Message----- > From: Chris Johns [mailto:chr...@rtems.org] > Sent: Sunday, May 20, 2018 5:51 PM > To: Mikhail Svetkin <mikhail.svet...@gmail.com>; Kirspel, Kevin < > kevin-kirs...@idexx.com> > Cc: users@rtems.org; Emre Cetin <hsnemrece...@gmail.com> > Subject: Re: Raspberry Pi Rtems-Graphical-Toolkit > > On 16/5/18 9:39 pm, Mikhail Svetkin wrote: > > > > I think it will be very good if RTEMS has some kind of input subsystem > > (keyboards, mouse, touchscreen) with standard API. > > > > Do you have an example standard API what would be suitable? > > Chris > _______________________________________________ > users mailing list > users@rtems.org > http://lists.rtems.org/mailman/listinfo/users > <https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.rtems.org_mailman_listinfo_users&d=DwMFaQ&c=2do6VJGs3LvEOe4OFFM1bA&r=HDiJ93ANMEQ32G5JGdpyUxbdebuwKHBbeiHMr3RbR74&m=jEekgiYvWnHgpNcfJlW6X1x8cM7ASFHxgW29on-cOD8&s=fUSHJbQR5SY1RqkgGuU3VIaH-gUdvMJCG2Pr-VhNXNQ&e=> > > > > _______________________________________________ > users mailing list > users@rtems.org > http://lists.rtems.org/mailman/listinfo/users >
_______________________________________________ users mailing list users@rtems.org http://lists.rtems.org/mailman/listinfo/users