There, now everyone can clean their messy images . . . https://github.com/wphermans/bbb-cleanup/blob/master/beaglebone-cleanup.md
On Sat, Jun 25, 2016 at 12:16 PM, William Hermans <yyrk...@gmail.com> wrote: > @Jason Kridner > > I do not think anyone is asking to remove remoteproc, and replace it with > uio_pruss. What we've been asking, at least I have been asking is give us > the option. > > For example, all those modules listed in the output from my lsmod on a > fresh install of the latest Jessie testing image: > > debian@beaglebone:~/nfs$ uname -r > 4.4.12-ti-r31 > debian@beaglebone:~/nfs$ cat /etc/dogtag > BeagleBoard.org Debian Image 2016-06-19 > > Anyway all those kernel modules should *NOT* be enabled by default. With > exception of perhaps the USB gadget drivers(and nfsd is something I > personally loaded ). Personally, I would prefer they were not loaded by > default, but I can understand the need. Additionally, those kernel modules > should be loaded via a device tree file as in how the original uio_pruss > module is loaded. > > So again. I do not care what you all at TI work on. It's not my place to > say one way or another. But please do not force us to endure your > developers poor clean up abilities. But I will say, that looking at that > mess that is the output of lsmod from a released debian image. You all must > have zero pride in your work . . . Harsh ? Maybe overly harsh yes, but > think about the message you developers are putting out there with that mess. > > Also as TJF mentioned. Feel free to create your own little sandbox, and > then include the stuff you have finished into the released images. That, > would make me happy, as well as many others, I'm sure. It's either that, or > I'm forced to clean up your mess. Which I am perfectly capable of doing. > But that's not the point. > > Additionally, I am grateful for the work *EVERYONE* has done for the > community. Even the people I'm bitching at right now. Take it as overly > critical constructive complaints. If you want. > > On Sat, Jun 25, 2016 at 11:56 AM, Jason Kridner <jkrid...@beagleboard.org> > wrote: > >> I will work to enable uio_pruss functionality, and I think that is what >> you want, not just getting remoteproc out. >> On Sat, Jun 25, 2016 at 10:39 AM TJF <jeli.freih...@gmail.com> wrote: >> >>> @John: >>> >>> ... so what do you want removed? There is nothing left to be removed. >>>> >>> >>> I want removed: >>> >>> >>> pru_rproc 12632 0 >>> pruss_intc 7223 1 pru_rproc >>> >>> Do you remember, that's the main topic in this discussion? >>> >>> >>> I think TJF is confusing throughput with latency. From the BeagleLogic >>>> project, they were able to achieve better throughput with RemoteProc, but >>>> TJF is able to achieve lower latency with PRUSS_UIO. From what TJF >>>> explained, the latency occurs because of 5 parameters that must be pushed >>>> onto the stack for each call. >>>> >>> >>> I don't think that I'm confusing anthing here. If BeagleLogic could >>> really achieve better throughput with remoteproc, they must have had a >>> masive problem in their code before. I cannot imagine how any driver could >>> have a positive influence on libpruio thoughput. >>> >>> And regarding latency, the five parameters are just the start. Then >>> kernel code and PRU code adds further latency. (And yet the five parameters >>> are much too much for my usecase.) The remoteproc concept isn't made for >>> high performance and it doesn't provide any "hack" to pass it by. >>> >>> >>> Yeah, so long as you don’t need security, interrupt handling, virtual >>>> peripherals (firmware defined devices), etc, why not use a hack to >>>> accomplish your task. I guess there is a reason why Linux doesn’t have a >>>> lot of userspace drivers. >>>> >>> >>> I see lots of userspace drivers in the real world. Ie. regarding >>> one-wire support I know about four. And the numbers will increase, unless >>> kernel development gets closer to user needs. >>> >>> I need security, a high-level target in my projects. That's why I don't >>> like virtual peripherals. That's why I don't want to load my firmware from >>> files. (I've seen projects where firmware files from userspace gets linked >>> to /lib/firmware and loaded. Or when a project runs from SD card, an >>> aggressor can easy put the card in a laptop and override the firmware files >>> in kernel space.) >>> >>> So how does this project provide any additional security? When a user >>> stops the libpruio firmware at the wrong point using "unbind", this may >>> damage the hardware. >>> >>> Remember, the PRUSS are a safety risc per se. Old-fashioned thinking >>> doesn't match the current situation. Im contrast to an arbitrary peripheral >>> subsystem, the PRUSS can access all CPU memory. And the kernel cannot >>> protect any memory against PRU access. That's why PRU control from the >>> command line will not add any security. Instead it'll increase the risc. >>> >>> >>> >>>> This is what I like most about RemotProc/RPMSG, in that you are using >>>> the same framework between ARM, PRU, DSP, etc. >>>> >>> >>> If I'd be an RPi3 user, I'd love this too. Since it'd help me to develop >>> a PRU emulator, using 1, 2 or 3 of the cores for real time tasks. Sure, >>> such a project wouldn't really help the BBB community and it wouldn't be >>> good for TIs buisiness. So I wonder why TI managers allow to develop this >>> remoteproc thingy in public. >>> >>> >>> Suman, you have done very good work. Please take the criticism as >>>> suggestions on how to make RemoteProc/RPMSG better. We understand that you >>>> have many other responsibilities at TI and we want to be respectful of your >>>> time. Thank you again for all your help. >>>> >>> >>> Good work for whom? Competitors are happy. But high performance PRU >>> projects doesn't work any more with TI kernels since kernel 4.x (that's >>> nearly two years now). And further corporate development is blocked until >>> we find a solution. >>> >>> I also have many other responsibilities. And here, I try to build a >>> bridge, and I try to slow down (or stop) the current process of kernel >>> development drifting away from user needs. >>> >>> BR >>> >>> >>> @Suman >>> >>> Thank you for your answer. Most of your colleagues just stop answering >>> and break the discussion when it comes to the point. I really appreciate >>> your effort. >>> >>> And thank you for the examples. They may help others to get started with >>> your framework. At the moment, for me, there is still no reason why I >>> should spend time in testing. >>> >>> >>> I don't know if pasm assembler is still a supported tool by TI. >>>> >>> >>> As far as I understand, PRU isn't supported by TI at all yet. But pasm >>> is the first tool available, and therefor a lot of projects are based on >>> it. You shouldn't ignore it. >>> >>> /dev/mem is your friend. >>>> >>> >>> I don't like /dev/mem. PRUSS are my friends. >>> >>> Define mainstream. >>>> >>> >>> By mainstream I mean the system a user gets when he installs an image. >>> >>> >>> It is optional, it is not even enabled by default in >>>> omap2plus_defconfig. If one doesn't want to spend time, one can always go >>>> back to how they were using it with whatever patches they had before. >>>> >>> >>> Yes, downgrading is an option in any case of conflicts. It's the last >>> option. And I think it shouldn't be the standard answer when kernel >>> developers learn about user needs. >>> >>> Your project is not optional. As you can see in Williams post, your >>> driver gets installed by default in any TI image. >>> >>> Please try to imagine: not every user compiles his own kernel. Instead, >>> most users download and install a prepared image. And this is how it should >>> be (@RCN: thanks for all your efforts). >>> >>> >>> And may I know how would you have done it if you were to redo it from >>>> scratch supporting both kernel and userspace? You are only looking at it >>>> from userspace angle, and as long as you stick to that, any kernel >>>> framework will indeed look like bloat. >>>> >>> >>> User space is what kernel is made for. A kernel without userspace >>> applications makes no sense. And when a kernel framework looks bloated from >>> userspace angle, it may be bloated. >>> >>> You may know how I'd have started your project. As I said, I'd first >>> make the decision: >>> >>> 1. do I want to make something completely new, or >>> 2. do I want to replace an existing solution? >>> >>> In first case, I would create an experimental project, far away from >>> mainstream. In the later case I'd care about existing code and solutions >>> (and I wouldn't go mainstream as well, unless I got the basics working and >>> documented with examples on how to migrate). >>> >>> As far as I understand your project, you made this decision. But you >>> didn't leave the mainstream yet (and I don't understand how you could >>> enter). >>> >>> >>> The TI kernel is not just about BBB, there are 4 other SoC families and >>>> multiple boards where PRU is now supported. And we do have userspace needs >>>> as well for Industrial usecases, they will get addressed in the upcoming >>>> months. You might very well find a thing or two w.r.t UIO in an upcoming >>>> Processor SDK release. >>>> >>> >>> I know that you work for other SoC families as well. I wonder why you >>> don't add your project to the Processor SDK as an *insiders' tip* or >>> *special >>> offer*. By the way, libpruio is already used in lots of industrial and >>> scientific projects today. >>> >>> >>> I understand that it's frustrating that the new framework does not >>>> address all your needs at the moment, and this is an active development so >>>> I will be continuing to close the gaps during the year. >>>> >>> >>> It isn't frustrating that your framework doesn't adress my needs. I >>> wouldn't even care about that. It's frustrating that such a framework is in >>> the mainstream kernel (images). And it's frustrating that this could get >>> fixed very easy, but hasn't been done yet. >>> >>> Do whatever you think that'll be helpful for anyone at anytime. But do >>> it in a sandbox. Don't block corporate development. Don't steal users >>> resources. Don't add further riscs to kernels for boards with PRUSS. >>> >>> Please work with Jason Kridner for any further issues or concerns... >>>> >>> >>> For Jason Kridner I can only repeat: do everthing possible to get >>> remoteproc out of mainstream. It blocks the PRUSS development in BB >>> community and endangers the BB project. >>> >>> BR >>> >> -- >> For more options, visit http://beagleboard.org/discuss >> --- >> You received this message because you are subscribed to the Google Groups >> "BeagleBoard" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to beagleboard+unsubscr...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/beagleboard/CA%2BT6QPn8oKQ5jP-D1fhA%3DF6e6%2BeX1c4rFUfLuVj7ZhBbPoQnnA%40mail.gmail.com >> <https://groups.google.com/d/msgid/beagleboard/CA%2BT6QPn8oKQ5jP-D1fhA%3DF6e6%2BeX1c4rFUfLuVj7ZhBbPoQnnA%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/CALHSORpd6h9MgUxM%2BVsFdUOHo%2BSetsCu4wX%3Di0RDaET47sNwyg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.