1 2 3 4 5 Previous Next 114 Replies Latest reply on Jul 31, 2017 12:40 PM by 0andriy Go to original post
      • 30. Re: Newer Kernel on Edison (OpenWrt)
        0andriy

        ecc kirjoitti:

         

        I meant the internal mmc. I'd like to try using my existing Debian rootfs which is on /dev/mmcblk0p8. When I boot, first I see lots of these errors:

        [ 2.990592] i2c-designware-pci 0000:00:08.0: Can't set power state D0: -16

        [ 2.998952] i2c-designware-pci 0000:00:08.0: Unknown Synopsys component type: 0xffffffff

         

        And then lots of these:

        [ 8.368694] sdhci-pci 0000:00:01.0: SDHCI controller found [8086:1190] (rev 1)

        [ 9.248779] sdhci-pci 0000:00:01.0: Can't set power state D0: -16

        ...

        Again, can you point me at a kernel .config file I can use as a baseline? Thanks.

        It shows you are using version without PWRMU driver. Check my eds branch https://github.com/andy-shev/linux/tree/eds for newest vanilla-based kernel. It has configuration files patched to be run on Edison.

        • 31. Re: Newer Kernel on Edison (OpenWrt)
          0andriy

          Since this thread about new kernel (news) and not for certain debugging, let us move to GitHub. Can you create an issue against repository and share a link to full dmesg log along with u-boot configuration?

          Show in the report full instructions how you prepared the board (basically what steps you did and URLs to sources).

          • 32. Re: Newer Kernel on Edison (OpenWrt)
            0andriy

            Okay, WiFi seems to basically work. I can't test right now any encryption channel and real web browsing, but for open networks I get DHCP, pings, etc.

            Any volunteer to widely test before I send them upstream? I will clean them up within few days and push to my eds branch.

            • 33. Re: Newer Kernel on Edison (OpenWrt)
              Mosfet

              Sir,

              me, me, me (raised hands).... Okie I will test you latest patches and report back.

              • 34. Re: Newer Kernel on Edison (OpenWrt)
                Mosfet

                0andriy is none other than (Andy Shevchenko for beginners)

                 

                And because of him Ubuntu 16.0.4 is now available (Expect more OSes soon)

                 

                Ubuntu 16.0.4 for Edison (Wireless/MMC/SD-Card Enabled Mainline) is available for download!

                • 35. Re: Newer Kernel on Edison (OpenWrt)
                  0andriy

                  Thanks for testing!

                  • 36. Re: Newer Kernel on Edison (OpenWrt)
                    0andriy

                    Seems not only you have similar issues.

                    Can you try the following patch on top of my eds branch?

                    --- a/drivers/pci/pci-mid.c
                    +++ b/drivers/pci/pci-mid.c
                    @@ -46,7 +46,7 @@ static int mid_pci_run_wake(struct pci_dev *dev, bool enable)
                      static bool mid_pci_need_resume(struct pci_dev *dev)
                    {
                    -       return false;
                    +       return true;
                    }
                    • 37. Re: Newer Kernel on Edison (OpenWrt)
                      Mosfet

                      The problem andy refers to is this

                       

                      root@ubuntu:~# [ 72.767543] mmc0: Reset 0x1 never completed.

                      [ 72.771867] sdhci: =========== REGISTER DUMP (mmc0)===========

                      [ 72.777784] sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff

                      [ 72.783685] sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff

                       

                      Complete dump

                      http://pastebin.ubuntu.com/23138493/

                       

                      There is also the issue of wireless not recognizing when mmc is built into the kernel, workaround implemented in the ubuntu distro was to run this (after wifi modules are inserted)

                      echo 0000:00:01.3 > /sys/bus/pci/drivers/sdhci-pci/unbind

                      echo 0000:00:01.3 > /sys/bus/pci/drivers/sdhci-pci/bind

                      • 38. Re: Newer Kernel on Edison (OpenWrt)
                        FerryT

                        Andy,

                         

                        You guys are way ahead of me, so  I need to catch up.

                         

                        I have built your kernel from here https://github.com/andy-shev/linux/tree/eds and followed the instructions from here https://edison.internet-share.com/wiki/Edison_Firmware_with_Stock_Kernel.

                        I am able to boot, and then I am in rootfs (initrd). There is not much to do there, as there are hardly any kernel modules.

                         

                        What I would like to do is boot into the fs that the standard yocto image uses (/ and /home on the emmc). That way I should be able to get my eth (smc95xx) working without needing to configure the edison when testing a new kernel. And test my application over ssh instead of the terminal

                         

                        Would that be possible? Use the new kernel with the existing initrd? I probably need to manually copy kernel modules to the right dir of /lib/modules/... so that systemd can start them.

                         

                        How would the uboot environment vars look then?

                         

                        Ferry

                        • 39. Re: Newer Kernel on Edison (OpenWrt)
                          0andriy

                          As far as I understand you don't need to build initrd at all. What you need is to build a kernel, then copy files (bzImage and modules) to your rootfs to appropriate folders and use ext4load for kernel in U-Boot. I'm sorry I didn't do that myself, so, I can't tell exactly how it will look like.

                          • 40. Re: Newer Kernel on Edison (OpenWrt)
                            ecc

                            Here's how I've been trying kernels with my existing (ubilinux) rootfs.  I copy the new kernel to /boot/bzImage (a different filename than the default kernel).

                            Then with a serial terminal attached, I reboot, interrupt the boot, and get into U-Boot.

                            In U-Boot, I use

                             

                            setenv bootargs console=tty1 console=ttyS2,115200n8 rootwait root=/dev/mmcblk0p8 rootfstype=ext4

                            (/dev/mmcblk0p8 is my rootfs partition; change as needed)

                            fatload mmc 0:7 0x100000 bzImage

                            (7 is the partition number for /boot; change as needed)

                            zboot 0x100000

                            • 41. Re: Newer Kernel on Edison (OpenWrt)
                              FerryT

                              Yeah, something like that. Except with yocto (or at least with my image) /boot is not a separate partition.

                               

                              So maybe I need to follow Andy's advice and copy stuff to the same place yocto does (probably p8 which is ext4 for /) but with a different filename for the kernel image. I'll post back here with the results.

                               

                              Thanks,

                               

                              Ferry

                              • 42. Re: Newer Kernel on Edison (OpenWrt)
                                FerryT

                                The kernel boots, but then waits long for the rootsfs, which doesn't appear. And then it reboots.

                                 

                                I have:

                                fw_setenv 'bootcmd_edsboot=setenv bootargs ${bootargs_edsboot}; run load_edsboot; run boot_edsboot'

                                fw_setenv bootargs_edsboot 'tty1 console=ttyS2,115200n8 rootwait root=PARTUUID=012b3303-34ac-284d-99b4-34e03a2335f4 rootfstype=ext4'

                                fw_setenv load_edsboot 'load mmc 0:9 0x100000 vmlinuz.efi'

                                fw_setenv boot_edsboot 'zboot 0x100000'

                                 

                                The partid is the same as used to boot the yocto kernel.

                                 

                                I remember now that when I booted the initrd under /dev/ there were no mmc disks available. Maybe I need to enable a kernel driver for that before building?

                                • 43. Re: Newer Kernel on Edison (OpenWrt)
                                  0andriy

                                  What is tty1 in the command line? Just typo when posting, or you indeed have this? Also provide logs (enable messaging via passing ignore_loglevel to kernel) through pastebin or alike.

                                   

                                  Hmm... You may create an initial ram fs and load module from there, then continue to boot from real partition using pivot_root mechanism.

                                   

                                  P.S. Better to continue such via email/chat.

                                  • 44. Re: Newer Kernel on Edison (OpenWrt)
                                    FerryT

                                    Uggha-uggha, yes let's call it a typo. Or copy/paste error. Fixed that now. Continuing on e-mail for now.

                                    1 2 3 4 5 Previous Next