8 Replies Latest reply on Sep 30, 2015 7:50 AM by KurtE

    How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?

    KurtE

      Was wondering if it makes sense to try to install some of the changes that have showed up in this github project to builds that one does following the build guide.  And are there any defined ways to do this?

       

      Earlier I downloaded the sources for the current release 2.1 from the download page: IoT - Intel® Edison Board Download | Intel® Developer Zone

      I also then followed the instructions to build these sources...  I have also cloned the edison-linux tree to my Linux build machine and set the branch to edison-3.10-17

       

      To find the list of changes I go to a command prompt on my linux machine and do a: git log

      I have done a look at the commits and would like to apply some/all of them that occurred since the sources for the last release were posted.  

       

      So: I go to a command prompt on my linux machine and do a: git log

      Which gives me a list of commits including the commit number (nice long number).

      I then went and created patch files for those changes after some point: git format-patch <a commit before the one I want>

       

      This created several patch files.

       

      So a couple of questions come to mind:

       

      What was the last commit that was included in the release 2.1?  Hopefully there is clear line.

       

      Can I then apply these patch files and how to do so?

      My first guess is to do something like:

      Copy the patch file(s) into one of the locations of the build, probably where there currently exists one of the upstream_to_edison.patch files.

      Example: edison-src/meta-intel-edison/meta-intel-edison-bsp/receipes-kernel/linux/files

       

      And then edit the corresponding linux-yocto_3.10.bbappend file in the parent directory and add one or more lines like:SRC_URI += "file://Mypatch"

       

      Does this makes sense?

       

      In particular I am looking to apply the commit: kernel: enable sony HID config for ps3 controller support.  But in addition to this would be interesting to see if some of the SPI changes fix some issues I have had.

       

      Thanks

        • 1. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
          CMata_Intel

          Hi Kurt,

           

          I will look into which is the last commit considered in the image and I will post it here

          About the patches, one thing you could do is to look into the .patch and .do_patch files in the edison-src/build/tmp/work folder. Also take a look at the documentation for Yocto: Patching the Kernel - Yocto. I hope this works.

           

          Regards,

          Charlie

          • 2. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
            KurtE

            Thanks,

             

            I think the instructions in the Patching the kernel are very similar to what I was thinking of doing, so I tried what I mentioned.

             

            Took me two attempts as I forgot to redo the stuff for menu-config as to select the Sony HID stuff to be included.  I think that part may now be actually working as now do some of the normal bluetooth stuff like:

            rfkill unblock bluetooth

            Plug the PS3 into USB and use the tool to bind the joystick.

            use Bluetoothctl and do a scan and then do a trust and connect to the joystick, which appear to work.

             

            However still now /dev/input/js0 object.  Which I know is probably a different subject..    On that end, I have gone back to menu config and I think enable some of the joystick stuff including the generic analog joystick and did another build, another reflash of the board... (Wonder if there is way to simply find the new generated modules) and simply somehow install them without doing a flash... (Maybe again off this topic).

             

            Still no /dev/input/js0 object.  My next guess is I need to create some new udev rules.  That is for example on my Ubuntu 14.04 machine the file /lib/udev/rules.d/60-persistent-input.rules.d has some rules to I believe create the js objects from both id links as well as by-path.  These types of rules are not (yet) in the edison version of this file..

            There are also some other rules for the js objects in a couple other rules files on my NUC.  May try adding these same rules to see if this would help.

             

            Again another joystick side note: wish I could also just do an opkg install of jstest   (may ask in other thread).  But I also have my own test programs.

             

            Thanks Again

            Kurt

            • 3. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
              KurtE

              Another Question I meant to ask, is there an set of steps that one can take to build an Edison Image directly using the github project?  Maybe something like a setup script (or special parameter to make) and a make ?

               

              Alternatively it would be great if Intel posted builds somewhere that matches what is up on github?

               

              Kurt

              • 4. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
                CMata_Intel

                Hi Kurt,

                 

                The last commit should be the  43befd916a21fcd96acf222e1da766012e085486

                About dev/input/js0  how are you including the module? Are you installing it or are you adding it as a module? Which modules did you enabled?

                How are you adding jstest right now? An alternative is to create the .ipk file of jstest but if you are building your own image it would be better to include it in the image too.

                 

                There isn't a step by step tutorial for how to build an image from the github project but I will pass your ideas to the proper team. Thank you for the feedback.

                 

                 

                Regards,

                Charlie

                • 5. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
                  CMata_Intel

                  If you want, you can use the files from the github project to build the kernel you will also need the layers from https://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/log/

                  Take a look at the following document, it may help you with this: https://software.intel.com/sites/default/files/managed/f1/49/building_yocto_and__ipks.pdf

                   

                  Regards,

                  Charlie

                  • 6. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
                    KurtE

                    Thanks Charlie,

                     

                    Was gone a few days, so will take a look.  Thanks for the information showing which was the last thing included in the current release.

                     

                    As for your question: I tried it both as <M> as well as <*> (Module and built-in)

                     

                    As for which ones I included ( I would need to run it again to give you the exact ones.  I also believe I may have mentioned them in the other thread about joysticks.

                    But it included things like (Joystick support, Generic Analog support and some Test one).  I was not sure if that was jstest or not, but if not I have my own test program that is part of my Raspberry_pi project up on github (kurte).

                     

                    Will have to take a look at the github project you showed in the last posting to see if I can setup to directly build from github, which would be great.

                     

                    Thanks again

                    • 7. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
                      CMata_Intel

                      Hi Kurt,

                       

                      Do you have updates in this?

                       

                       

                      Regards,

                      Charlie

                      • 8. Re: How to apply updates from https://github.com/01org/edison-linux/tree/edison-3.10.17?
                        KurtE

                        Sorry, I need to get back to this.

                         

                        Warning: This is sort-of off my topic here...

                         

                        I sort-of go around in cycles with the HR-OS1.   Started off with RPI2, had issues with it talking reliably to the Arbotix Pro controller (arm M0 using FTDI to communicate).   So went back to Edison, although not built in.  There does not appear to be the same issues with FTDI.  Not sure why... But was running into issues with PS3 controller... So I decided to try swapping in an Odroid C1+, which is the same size and has the same hole pattern of RPI2.  Quad core 1.5ghz...

                        Run into same issue with talking to Arbotix Pro, but works fine with PS3 using sixad...  So I started to diagnose it.   It was timing out on waiting for responses.  So far I found having the code that talks to the Arbotix Pro do a call to tcdrain on the file handle before it starts the timeout code waiting for a response has helped.  I am no longer getting timeouts, but I do think there are still latency issues.  (Latency set to 1 in FTDI driver)... Still diagnosing.

                         

                        (Back on topic)

                        So soon I will try some more with the Edison.  I have been sort-of procrastinating here, hoping that either a) someone comes out and says yep here are the steps, or potentially better yet, b) Intel releases a new build with all of the stuff in it, including SPI fixes, FTDI built in, ...

                         

                        Thanks again Charlie,

                        Kurt