Kernel "4.1 branch" at dev.laptop.org/git/olpc-kernel limping on FC22

James Cameron quozl at laptop.org
Thu Jun 4 01:51:46 EDT 2015


I've built a working 4.1.0-rc6 kernel and uploaded an RPM, please try
that as well.

http://dev.laptop.org/~quozl/kernel-4.1.0_rc6_xo1.5-20150604.1436.olpc.3e60eda.i686.rpm

On Wed, Jun 03, 2015 at 10:28:43PM -0400, George Hunt wrote:
> Lots of learning, and only a little progress:

Thanks for the update, and for trying.

> The "learnings" are somewhat questionable (sometimes I was changing
> more than one thing at a time)
> 
>  1. The kernel config file does not need to be in any order (a
>     sorted config works just as well)

Agreed.  The normal order is something one becomes used to though,
which is a good reason to use olddefconfig.

>  2. Changed settings can be appended to kernel config ("make
>     olddefconfig" complains about redefinition, but does what is
>     wanted.
>  3. "make olddefconfig" is my friend, sets all new variables to
>     default, doesn't waste my time.

Agreed.  olddefconfig removes any duplicates, and adds in any new
defaults caused by your changes.

>  4. avoid "make menuconfig" -- it makes decisions without permission
>     (I wasted too much time on this one)

Agreed.  People who recommend it seem to do so because they are very
familiar with it, and with the meaning of each CONFIG_ option.

It would be wonderful to be able to spend all my time in kernel
programming, but I've so much else to do.  ;-)

>  5. modules are cumulative (make clean every time to see the real
>     impact of removing a config setting)

Mildly disagree.  Although the module files may be left lying around,
they don't get used if the kernel has a built-in for the feature.

>  6. James Cameron's xo-1.5-defconfig (in the git repo) yields a
>     kernel that boots to console without initramfs.

Disagree.  My guess is that you didn't copy the module tree onto the
filesystem.  The initramfs can be regenerated, but usually isn't
necessary, since modules required for boot are normally in the kernel.

Our supported method for regenerating the initramfs is to use dracut,
either manually or as part of olpc/buildrpm.

I'm helping you avoid this problem by giving you an RPM to try.  But
that won't help you to do your own builds.  To build an RPM; use a
Fedora VM, which has dracut-modules-olpc installed, typing
"olpc/buildrpm 1.5".

http://wiki.laptop.org/go/Kernel_Building#Building_a_kernel_RPM

>  7. Need to add USB network drivers for remote access (see below #1)

Agreed.  Merged, thanks.  Tested with a USB ethernet device.

>  8. The VIA VX855 southbridge graphical display controller needs
>     settings beyond my comprehension. Compare dmesg of working 3.3.8
>     kernel with that of 4.1 kernel (the missing gpiochip
>     registration). Yet when I try to startx, the Xorg.0.log
>     indicates a failure to compile the keymap -- which I have not
>     learned to correct. So The lack of "gpiochip" entry  may be a
>     red herring.

Disagree.  My guess is that you have missing modules filesystem.  As I
said in my previous commit, X server, keyboard and touchpad all worked
fine for me.

> I found Daniel Drake's submission to upstream at:
> 
> https://lwn.net/Articles/406146/
> 
> and it appears to require gpio, spi, and maybe some IRQ steering.

Yes.  By the way, since that patch by Daniel the configuration names
changed slightly;

- CONFIG_MFD_VX855_GPIO became CONFIG_GPIO_VX855,

- CONFIG_MFD_VX855_SPI became CONFIG_I2C_VIAPRO,

Both were enabled in olpc-4.1 branch.

> list #2 (the kernel settings which added to James xo-1.5-defconfig
> did not fix VX855 (these were all part of the config file released
> with the XO-1.5).

Not merged.  Some of them are already in xo_1.5_defconfig.  Can you
tell me exactly which ones you think should be merged and why?  In
particular if they relate to the problems with the current olpc-4.1
branch head, which are:

- screen blanks briefly on boot; probably the failure to enable
  scanline interrupt in olpc_dcon,

- no camera image shown by Record; the Kconfig suggests the ov7670
  driver is for a specific system, not an XO,

- suspend does not complete; which might relate to the camera driver.

Thanks!

-- 
James Cameron
http://quozl.linux.org.au/



More information about the Devel mailing list