CI20 upstream

From eLinux.org
Revision as of 08:37, 16 December 2014 by Hogan (talk | contribs) (Core: move irq controller row to alphabetical place)
Jump to: navigation, search

This page contains details about the latest kernel branch and any known quirks/special requirements.

It will be periodically updated to keep up to speed with the latest.

The current branch tracking mainline 3.16

https://github.com/MIPS/CI20_linux

Status of Linux Kernel Drivers

Core

Name State Path Notes
Clocks Works drivers/clk/jz47xx Could have common drivers/clk/ingenic for all SoCs with SoC specific binding using common components(?)
CPUfreq
Device Tree Mostly Parsed on boot, but compiled into the kernel. Would be good to allow it to be passed from the bootloader.
DMA Mostly drivers/dma/dma-jz4780.c needs combining into dma-jz4740. Works, just missing priority support
GPIO Works drivers/pinctrl/pinctrl-jz4780.c should perhaps be in drivers/gpio/ (?)
Hotplug
IRQ Controller drivers/irqchip/irq-jz4780.c Very similar between SoCs (4740 has one bank, 60,70,80 has two banks)
MXU Context
PinCtrl Mostly drivers/pinctrl/pinctrl-jz4780.c Differs between SoCs. Functional, may need DT binding changes based on feedback from upstream. See also pinctrl-jz4770.c.
Power Controller (LPCR Register)
Power Off & Reset Works
RTC Works
SMP Works
Watchdog Works

Peripheral drivers

Name State Path Notes
ADC WIP Check branches on https://github.com/ZubairLK/CI20_linux
Audio (ALSA) WIP Check patches on https://groups.google.com/forum/#!forum/mips-creator-ci20-dev
Camera
Ethernet Works drivers/net/ethernet/davicom/dm9000.c Requires regulator and reset support, see [1]. Reset should probably be a reset controller of some sort.
GPU
HDMI WIP Check patches on https://groups.google.com/forum/#!forum/mips-creator-ci20-dev
I2C Works
IPU
IR Driver upstream drivers/media/rc/gpio-ir-recv.c GPIO, so use upstream GPIO driver
MMC Works drivers/mmc/host/jz4740_mmc.c Various changes needed, see [2]. Should not rename driver.
NAND Works
Regulator Works
SPI (SSI) None SPIO GPIO should work, but a dedicated driver for the SSI hardware in drivers/spi/ would be better.
UART Works Quirks: see patches [3] [4] need moving to wrapper driver, like 8250_dw and mediatek which can be common between Ingenic SoCs.
USB (EHCI) Works
USB (OHCI) Works
USB(OTG) Works Upstream driver supports only host mode as of 3.15
VPU
Wifi WIP Check patches on https://groups.google.com/forum/#!forum/mips-creator-ci20-dev
BT WIP Check branches on https://github.com/ZubairLK/CI20_linux

List of other possible issues

  • /etc/init.d/iw8103 is the startup script for the BT/Wifi firmware in the default rootfs.

If using 3.16, the script can cause the boot to hang. Please move the script out of /etc/init.d

Add "root=/dev/mmcblk0p1 rootwait" to bootargs in uboot if you wish to boot a rootfs from mmc.