LTSI Kernel Porting Information: Yocto Poky

From eLinux.org
Jump to: navigation, search

LTSI Kernel Porting Information: Yocto Poky

The following shows the information of the result of porting the Yocto Poky 9.0.0 distribution with the LTSI 3.4 kernel for CuBox. Anyone is more than well come to add information here in the following format

What had been done:

  • Cherry-pick local patches for CuBox from a git repository that has been maintained by Rabeeh Khoury, who is a SolidRun Company guy, and merge them into the LTSI 3.4 kernel.
  • Make a Yocto recipe for CuBox and the LTSI kernel.

Screenshot

Boot log

CuBox
 ** LOADER **


U-Boot 2009.08-dirty (Jan 21 2013 - 10:57:40) Marvell version: 5.4.4 NQ SR1

BootROM:
       Version on chip: 2.33
       Status: OK
       Retries #: 0
Board: CuBox
SoC:   88AP510 (A1)
CPU:   Marvell Sheeva (Rev 5)
       CPU @ 800Mhz, L2 @ 400Mhz
       DDR3 @ 400Mhz, TClock @ 166Mhz
PEX 0: interface detected no Link.
PEX 1: interface detected no Link.
DRAM:   2 GB
       CS 0: base 0x00000000 size  1 GB
       CS 1: base 0x40000000 size  1 GB
       Addresses 60M - 0M are saved for the U-Boot usage.
SF: Detected W25Q32 with page size  4 kB, total  4 MB

Streaming disabled
L2 Cache Prefetch disabled
L2 Cache ECC disabled
Modifying CPU/CORE/DDR power rails to 1.0(-2.5%) / 1.0(-5%) / 1.5(-5%)
USB 0: Host Mode
USB 1: Host Mode
Setting VPU power OFF.
Setting GPU power ON.
MMC:   MV_SDHCI: 0, MV_SDHCI: 1
Net:   egiga0 [PRIME]
Hit any key to stop autoboot:  0
===> Executing ext4load usb 0:1 0x02000000 /boot.scr
(Re)start USB...
USB:   Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 1 USB Device(s) found
Waiting for storage device(s) to settle before scanning...
       scanning bus for storage devices... 0 Storage Device(s) found
** Bad partition 1 **
===> Executing ext4load usb 1:1 0x02000000 /boot.scr
** Bad partition 1 **
===> Executing fatload usb 0:1 0x02000000 /boot.scr
** Can't read from device 0 **

** Unable to use usb 0:1 for fatload **
===> Executing fatload usb 1:1 0x02000000 /boot.scr
** Can't read from device 1 **

** Unable to use usb 1:1 for fatload **
===> Executing ext4load usb 0:1 0x02000000 /boot/boot.scr
** Bad partition 1 **
===> Executing ext4load usb 1:1 0x02000000 /boot/boot.scr
** Bad partition 1 **
===> Executing fatload usb 0:1 0x02000000 /boot/boot.scr
** Can't read from device 0 **

** Unable to use usb 0:1 for fatload **
===> Executing fatload usb 1:1 0x02000000 /boot/boot.scr
** Can't read from device 1 **

** Unable to use usb 1:1 for fatload **
===> Executing ext4load usb 0:2 0x02000000 /boot.scr
** Bad partition 2 **
===> Executing ext4load usb 1:2 0x02000000 /boot.scr
** Bad partition 2 **
===> Executing fatload usb 0:2 0x02000000 /boot.scr
** Can't read from device 0 **

** Unable to use usb 0:2 for fatload **
===> Executing fatload usb 1:2 0x02000000 /boot.scr
** Can't read from device 1 **

** Unable to use usb 1:2 for fatload **
===> Executing ext4load usb 0:2 0x02000000 /boot/boot.scr
** Bad partition 2 **
===> Executing ext4load usb 1:2 0x02000000 /boot/boot.scr
** Bad partition 2 **
===> Executing fatload usb 0:2 0x02000000 /boot/boot.scr
** Can't read from device 0 **

** Unable to use usb 0:2 for fatload **
===> Executing fatload usb 1:2 0x02000000 /boot/boot.scr
** Can't read from device 1 **

** Unable to use usb 1:2 for fatload **
===> Executing ext4load mmc 0:1 0x02000000 /boot.scr
Device: MV_SDHCI
Manufacturer ID: 3
OEM: 5344
Name: SU01G
Tran Speed: 25000000
Rd Block Len: 512
SD version 2.0
High Capacity: No
Capacity: 1015808000
Bus Width: 4-bit
Loading file "/boot.scr" from mmc device 0:1 mmcda1
** File not found /boot.scr
===> Executing fatload mmc 0:1 0x02000000 /boot.scr
reading /boot.scr

** Unable to read "/boot.scr" from mmc 0:1 **
===> Executing ext4load mmc 0:1 0x02000000 /boot/boot.scr
Loading file "/boot/boot.scr" from mmc device 0:1 mmcda1
386 bytes read
## Executing script at 02000000
======== Setting bootargs ========
======== Loading kernel ========
Loading file "/boot/uImage" from mmc device 0:1 (mmcda1)
3855512 bytes read
======== Booting kernel ========
## Booting kernel from Legacy Image at 00200000 ...
   Image Name:   Linux-3.4.39-ltsi-00815-g5c53ec1
   Created:      2013-05-21   5:59:44 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3855448 Bytes =  3.7 MB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Linux version 3.4.39-ltsi-00815-g5c53ec1 (matsu@ubu) (gcc version 4.6.3 (Sourcery CodeBench Lite 2012.03-57) ) #1 PREEMPT Tue May 21 14:5
9:33 JST 2013
CPU: ARMv7 Processor [560f5815] revision 5 (ARMv7), cr=10c53c7d
CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
Machine: SolidRun CuBox
Ignoring unrecognised tag 0x41000403
Ignoring unrecognised tag 0x41000404
vmeta size = 268435456, gpu_size = 67108864
gpu_mem start = 0x6c000000
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 438912
Kernel command line: console=ttyS0,115200n8 vmalloc=384M root=/dev/mmcblk0p2 video=dovefb:lcd0:1920x1080-32@60-edid clcd.lcd0_enable=1 cl
cd.lcd1_enable=0
PID hash table entries: 4096 (order: 2, 16384 bytes)
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 1728MB = 1728MB total
Memory: 1744060k/1744060k available, 25412k reserved, 1130496K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xe7800000 - 0xff000000   ( 376 MB)
    lowmem  : 0xc0000000 - 0xe7000000   ( 624 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .text : 0xc0008000 - 0xc0741000   (7396 kB)
      .init : 0xc0741000 - 0xc0773000   ( 200 kB)
      .data : 0xc0774000 - 0xc07d3c40   ( 384 kB)
       .bss : 0xc07d3c64 - 0xc07fa038   ( 153 kB)
NR_IRQS:135
gpiochip_add: registered GPIOs 0 to 31 on device: orion_gpio0
gpiochip_add: registered GPIOs 32 to 63 on device: orion_gpio1
sched_clock: 32 bits at 166MHz, resolution 5ns, wraps every 25769ms
Console: colour dummy device 80x30
Calibrating delay loop... 789.70 BogoMIPS (lpj=3948544)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
hw perfevents: no hardware support available
Setting up static identity map for 0x537628 - 0x53765c
devtmpfs: initialized
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
Dove 88AP510 SoC, TCLK = 167MHz
Tauros2: Enabling L2 cache.
Tauros2: L2 cache support initialised in ARMv7 mode.
Register vmeta clk
Setting vmeta clock to 500000000 (divider: 4)
LCD0 doesn't use PLL.
Turn on PLL accurate mode.
hw-breakpoint: debug architecture 0x4 unsupported.
Dove PCIe port 0:
link down, ignoring
Dove PCIe port 1:
link down, ignoring
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Advanced Linux Sound Architecture Driver Version 1.0.25.
Bluetooth: Core ver 2.16
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
cfg80211: Calling CRDA to update world regulatory domain
Switching to clocksource orion_clocksource
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 131072 bind 65536)
TCP: reno registered
UDP hash table entries: 512 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 512 (order: 1, 8192 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
Dove hwmon thermal sensor initialized.

[galcore] GC Version: GC Ver0.8.0.3184-1
galcore options:
  irqLine         = 48
  registerMemBase = 0xF1840000
  contiguousSize  = 67108863
  contiguousBase  = 0x6C000000
  bankSize        = 0x02000000
  fastClear       = -1
  compression     = -1
  signal          = 48
  baseAddress     = 0x00000000

[galcore] registerBase =0xf1840000, registerMemSize = 0x0003ffff, contiguousBase= 0x6c000000, contiguousSize = 0x03ffffff
[galcore] streamCount = 1
[galcore] registerMax = 64
[galcore] threadCount = 256
[galcore] shaderCoreCount = 1
[galcore] vertexCacheSize = 8
[galcore] vertexOutputBufferSize = 512

[galcore] real contiguouSize = 0x03ffffff

[galcore] chipModel=0x600,chipRevision=0x19,chipFeatures=0x87ecd,chipMinorFeatures=0x7
highmem bounce pool size: 64 pages
jffs2: version 2.2. (NAND)  2001-2006 Red Hat, Inc.
msgmni has been set to 1198
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver
mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver
mv_xor mv_xor.0: Marvell XOR: ( xor cpy )
mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy )
mv_xor mv_xor.2: Marvell XOR: ( xor cpy )
mv_xor mv_xor.3: Marvell XOR: ( xor fill cpy )
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 7) is a 16550A
console [ttyS0] enabled
serial8250.1: ttyS1 at MMIO 0xf1012100 (irq = 8) is a 16550A
brd: module loaded
loop: module loaded
BMM Module Vmeta memroy start: 0x70000000, size: 268435456
BMM init with size=256MB
sata_mv sata_mv.0: cannot get clkdev
sata_mv sata_mv.0: slots 32 ports 1
scsi0 : sata_mv
ata1: SATA max UDMA/133 irq 62
orion_spi orion_spi.0: master is unqueued, this is deprecated
m25p80 spi0.0: w25q32 (4096 Kbytes)
orion_spi orion_spi.1: master is unqueued, this is deprecated
HSI/SSI char device loaded
mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
mv643xx_eth smi: probed
switching to TEMP
ata1: SATA link down (SStatus 0 SControl F300)
mv643xx_eth_port mv643xx_eth_port.0: eth0: port 0 with MAC address 00:50:43:e4:22:3b
[1] internal addr[0xe7906000],addr[0x10400000] size[524288]
[2] internal addr[0xe7987000],addr[0x103e0000] size[65536]
[3] internal addr[0xe7998000],addr[0x1039d000] size[4096]
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
orion-ehci orion-ehci.0: Marvell Orion EHCI
orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1
orion-ehci orion-ehci.0: irq 24, io mem 0xf1050000
orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
orion-ehci orion-ehci.1: Marvell Orion EHCI
orion-ehci orion-ehci.1: new USB bus registered, assigned bus number 2
orion-ehci orion-ehci.1: irq 25, io mem 0xf1051000
orion-ehci orion-ehci.1: USB 2.0 started, EHCI 1.00
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
usbcore: registered new interface driver cdc_wdm
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver synaptics_usb
rtc-mv rtc-mv: rtc core: registered rtc-mv as rtc0
i2c /dev entries driver
lirc_dev: IR Remote Control driver registered, major 252
IR NEC protocol handler initialized
IR RC5(x) protocol handler initialized
IR RC6 protocol handler initialized
IR JVC protocol handler initialized
IR Sony protocol handler initialized
IR RC5 (streamzap) protocol handler initialized
IR SANYO protocol handler initialized
IR MCE Keyboard/mouse protocol handler initialized
IR LIRC bridge handler initialized
Registered IR keymap rc-empty
input: gpio_ir_recv as /devices/virtual/rc/rc0/input0
rc0: gpio_ir_recv as /devices/virtual/rc/rc0
input: MCE IR Keyboard/Mouse (gpio-rc-recv) as /devices/virtual/input/input1
rc rc0: lirc_dev: driver ir-lirc-codec (gpio-rc-recv) registered at minor = 0
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
mmc0: SDHCI controller on sdhci-dove.0 [sdhci-dove.0] using DMA
mmc1: SDHCI controller on sdhci-dove.1 [sdhci-dove.1] using DMA
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
si5351 0-0060: registered si5351 i2c client
si5351 0-0060: external clock setup : clkdev = d03b0ca0
cubox_extclk_setup : add alias 'extclk/dovefb.0' to clkout0 w 0
external clock setup done
cs42l51-codec 0-004a: failed to read I2C
kirkwood-i2s kirkwood-i2s.1: found external clock
>>> kirkwood_spdif_probe : pdev = c07812b8, pdev->id = 1
mmc0: new SD card at address e14e
mmcblk0: mmc0:e14e SU01G 968 MiB
 mmcblk0: p1 p2
asoc: dit-hifi <-> kirkwood-i2s.1 mapping ok
oprofile: no performance counters
oprofile: using timer interrupt.
TCP: cubic registered
NET: Registered protocol family 17
lib80211: common routines for IEEE802.11 drivers
VFP support v0.3: implementor 56 architecture 2 part 20 variant 9 rev 5
ThumbEE CPU extension supported.
PJ4 iWMMXt coprocessor enabled.
Dove FB driver:
Initialize /proc/mv_lcd0
use cat /proc/mv_lcd0 to see reg settings
dovefb dovefb.0: use ref clock extclk
  o Kernel parameter: 1920x1080-32@60.
  o Failed to read EDID information,using driver resolutions table.
found <1920x1080@60>, pixclock=6734
set_clock_divider : setup reference clk to 148500148
Setting HDMI TX resolution to 1920x1080p @ 60
HDMI TX - FOUND exact resolution 16
YC pitch is 0.User program needs refine
set_clock_divider : setup reference clk to 148500148
Setting HDMI TX resolution to 1920x1080p @ 60
HDMI TX - FOUND exact resolution 16
Console: switching to colour frame buffer device 240x67
  o dovefb: frame buffer device was successfully loaded.
hdmicec(tda19989) 1.3.0 compiled: May 21 2013 14:54:44 -ioctl (2009-10-15)
hdmicec:cec_init:.verbose mode
hdmicec:this_i2c_probe:called
hdmicec:this_i2c_probe:HDMI CEC SW Version:1.4 compatibility:0
hdmicec declared as a playback device type
hdmicec:cec_standby:on --> standby
hdmitx(tda19989) 1.3.0 compiled: May 21 2013 14:54:46 -ioctl (2009-10-15)
HDMI TX SW Version:5.3 compatibility:0
rtc-mv rtc-mv: setting system clock to 2013-10-18 17:40:22 UTC (1382118022)
ALSA device list:
  #0: Kirkwood SPDIF
EXT3-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)
EXT2-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (244)
EXT4-fs (mmcblk0p2): recovery complete
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 179:2.
devtmpfs: mounted
Freeing init memory: 200K
INIT: version 2.88 booting
Starting udev
udevd[695]: starting version 182
EXT4-fs (mmcblk0p1): recovery complete
EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
Starting Bootlog daemon: bootlogd.
EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
Configuring network interfaces... udhcpc (v1.20.2) started
Sending discover...
Sending discover...
Sending discover...
No lease, failing
Starting rpcbind daemon...rpcbind: cannot create socket for udp6
rpcbind: cannot create socket for tcp6
done.
INIT: Entering runlevel: 5
Starting system message bus: dbus.
Starting Connection Manager
Starting Xserver
Starting Dropbear SSH server: dropbear.

Starting syslogd/klogd: done
 * Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon
_XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
_XSERVTransOpen: transport open failed for inet6/cubox:0
_XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6

X.Org X Server 1.14.0
Release Date: 2013-03-05
X Protocol Version 11, Revision 0
Build Operating System: Linux 3.2.0-38-generic x86_64
Current Operating System: Linux cubox 3.4.39-ltsi-00815-g5c53ec1 #1 PREEMPT Tue May 21 14:59:33 JST 2013 armv7l
Kernel command line: console=ttyS0,115200n8 vmalloc=384M root=/dev/mmcblk0p2 video=dovefb:lcd0:1920x1080-32@60-edid clcd.lcd0_enable=1 cl
cd.lcd1_enable=0
Build Date: 23 May 2013  01:20:44PM

Current version of pixman: 0.29.2
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Oct 18 17:40:36 2013
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension DPMS
Initializing built-in extenset_clock_divider : setup reference clk to 148500148
Setting HDMI TX resolution to 1920x1080p @ 60
HDMI TX - FOUND exact resolution 16
sion X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension XFree86-VidModeExtension
Initializing built-in extension XFree86-DGA
set_clock_divider : setup reference clk to 148500148
Setting HDMI TX resolution to 1920x1080p @ 60
HDMI TX - FOUND exact resolution 16
Initializing built-in extension XFree86-DRI
Initializing built-in extension DRI2
   ...done.
Starting Telephony daemon
Stopping Bootlog daemon: bootlogd.
set_clock_divider : setup reference clk to 148500148
Setting HDMI TX resolution to 1920x1080p @ 60
HDMI TX - FOUND exact resolution 16
YC pitch is 0.User program needs refine
xf86SetDesiredModes()
D-BUS per-session daemon address is: unix:abstract=/tmp/dbus-X4hSUhTrJN,guid=34bae990ece8545ca9c0521752617295

Poky 9.0 (Yocto Project 1.4 Reference Distro) 1.4 cubox ttyS0

cubox login:


Changes:

Linux Lernel

The CuBox manufacturer SolidRun is (unofficially?) maintaining a public, but not upstreamed kernel code tree for CuBox at https://github.com/rabeeh/linux althrough the latest mainline kernel may support the platform enough. The SolidRun kernel has been based on the 3.6.9 mainline kernel. So I cherry-picked all local commits from the SolidRun's kernel respository, and tried merging them into the 3.4.39 LTSI kernel. As a result, I understood a few commits were unnecessary for the LTSI 3.4 kernel, and some of commits required small adjustments becauseof the kernel version mismatch.

Finally, I merged the following 97 local patches into the LTSI kernel.

5c53ec1 vmeta uio driver optimzation
06f06b1 Protect BMM_DUMP with the global mutex
c6fce21 Wrong usage of BMM cache flushing
fc4dca0 [PATCH 2/2] bump galcore to 3184-1, from Thomas Genty <tomlohave@openbricks.org>
3577ac5 [PATCH 1/2] bump galcore to 3184, from Thomas Genty <tomlohave@openbricks.org>
4bb9579 Blank screen on shutdown
0823e82 Fixed audio stutter
00e1af7 Prefer external clock on kirkwood-i2s
3a982d7 Make console visible after bootup
21dfe3c Changes Kirkwood SPDIF name
c594c3c Added combined access to i2c controller
de549a2 LK 3.6.8 doesn't like __udelay
59b825a Update overlay when yc/uv pitches change
79b56cb avoid genirq: Flags mismatch on bootup, patch from rudi
f21113d fix section mismatch warnings, patch from rudi
9765e7e Updated cubox_defconfig
beda7b3 Change EDID poll interval to 3 seconds
f9602cf remove inline from function declarations without a body
bfff150 Renamed and reworked clk_enable/clk_disable of GPU
c25a0ab Added misc code fixed for uio vmeta driver
5534760 Renamed clks and added prepare/unprepare for vmeta_uio clocks support
6e5b98d Remove debug messages from si5351 driver
128d3fa Return vmeta initialization
0c01555 Add orion watchdog timer support
e75d5a1 Rewrite of Dove specific clock
32986cd clk: Use a separate struct for holding init data.
1c1bede clk: propagate round_rate for CLK_SET_RATE_PARENT case
8fb99fd clk: pass parent_rate into .set_rate
e66bfae clk: basic: improve parent_names & return errors
b312def clk: core: copy parent_names & return error codes
9dd4af3 clk: Constify parent name arrays
4df0c90 clk: Make clk_get_rate() return 0 on error
74ab763 clk: core: enforce clk_ops consistency
d43a5c2 Fix si5351 init drive strnegth
b4ef9a1 Changed si5351.h to be under include/linux/clk/si5351.h
702eebe Replaced clk_enable / clk_disable with clk_prepare_enable / clk_disable_unprepare
10d0b8d Code beutify
e7d2f04 Removed struct *clk from orion peripheral init
c803327 Add clock gating for SDIO
ff560cd Function call reorg and header files update
b6b31a4 Use orion clk
6df8662 Reworked clk tree stuff.
5cdadc2 Added and moved some register definitions
0a6d060 Modified header files includes
92b7df1 Redefinition of clock gating bits
af311ec Replaced do_mmap with do_mmap_pgoff
1f01510 Removed clock.c and silab5351a.c
d76fafd Reorg of function length to fit in 80 characters
77a2fef Small reorg of sound/soc/kirkwood/Kconfig
fedff1e Added si5351 to clk Makefile
abc9b64 Modify calls to clk_register to the new api
da6e7a9 Removed annoying printks in vmeta uio driver
17a3788 Moved functions around
9a2900f Modified kirkwood audio to support contiguous external clock driver
81cca36 Add CLKDEV_LOOKUP
d440e1c7 Clocks changes -
74e779c clk: add a fixed factor clock
03380f6 Forgotten file for the SDIO card detect patch
2685a817 Type on CuBox LED support; should b red instead of ref Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com>
cc2697a Add GPIO 12 as interrupt for SDIO0 card detect
81341bd LED support for CuBox. Default is ON Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com>
9be82d9 Added wireless drivers and LED configs for CuBox
6c080d0 Infra red support (gpio based)
aa10ef5 Added cubox_defconfig to arch/arm/configs
e71a382 Added ioctl for uio drivers
d639295 Added BMM and Vmeta uio support
9b4cddc Audio support to CuBox -
f8f7753 Added audio support on Dove arch CuBox platform
96d46e7 Replace do_mmap_pgoff with do_mmap Signed-off-by: Rabeeh Khoury <rabeeh@solid-run.com>
19f7d58 switch aio and shm to do_mmap_pgoff(), make do_mmap() static
b9bf73c binfmt_elf: switch elf_map() to vm_mmap/vm_munmap
bdd64b9 Adding cp15 dumping to Makefile
d19145d Adds CPU cp15 dump
699869c Add SDHCI_QUIRK_NO_HISPD_BIT quirk
bbec0ba Fix some compiler warnings
4b5e3ee init union to avoid compile warning
d2e5339 Fix syntax error that disallowed selecting options following the error
3c064d7 Add GPU to dovefb Kconfig
6f0550d Type KERN_ERR instead of KERN_ERROR
8ce2f02 Make GC600 build as part of the kernel and not a module
abc1277 Misc cleanups
9856ee1 Allow ioremap_nocache on PJ4 processor that is in Dove.
633af27 Call fixup after memory tags has been processed
811382a vmeta and gc600 resource allocation
eef3500 88AP510 GC600 GPU kernel driver.
16efbf8 Changed ioctl function to unblocked_ioctl
1928eba NXP HDMI driver support
dc731b4 Add CuBox MPP and GPIO configurations
936f29c Dove LCD driver support
88317f3 Dove clock and Silab clock generator
f52f501 ARM: Orion: UART: Get the clock rate via clk_get_rate().
1318b08 ARM: Orion: WDT: Add clk/clkdev support
ad2cb34 ARM: Orion: Eth: Add clk/clkdev support.
0db9dc0 ARM: Orion: SPI: Add clk/clkdev support.
2222f61 ARM: Orion: Add clocks using the generic clk infrastructure.
702a215 Added Dove temperature, cpu voltage and core voltage sensors
c9863b7 Add SolidRun Cubox support

Yocto Poky

Luckily, I found a Yocto recipe cutomized for Cubox at a git repository https://github.com/dv1/meta-cubox, which has been maintained by a guy 'dv1'. So I just added two small changes into the recipe for my LTSI kernel and the latest Yocto.

Patches:

You can see the cherry-picked and merged kernel patches at the '3.4-ltsi_cubox' branch in my git repository https://github.com/matsu/linux-stable/ or clone it from git://github.com/matsu/linux-stable.git

And you can also get my Yocto recipe for Cubox from the 'ltsi' branch in https://github.com/matsu/meta-cubox.git

Notes:

I know some issues remain in my current kernel and yocto recipe. Particularly, the video decoder and the 3D graphics acceleration in CuBox SoC could not be supported yet. So I would like to resume the porting when circumstances allow...