forked from Mujffar/src
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bring in support for Ingenic XBurst JZ4780 and
X1000 systems on chips. Imgtec CI20 and Ingenic CANNA boards supported. Submitted by: Alexander Kabaev <[email protected]> Reviewed by: Ruslan Bukin <[email protected]> Sponsored by: DARPA, AFRL
- Loading branch information
Showing
35 changed files
with
8,120 additions
and
30 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# CANNA -- Kernel config for Ingenic CANNA board | ||
# | ||
# $FreeBSD$ | ||
|
||
include "X1000" | ||
ident CANNA | ||
|
||
options FDT | ||
options FDT_DTB_STATIC | ||
makeoptions FDT_DTS_FILE=ingenic/canna.dts | ||
|
||
#options KTR | ||
#options KTR_CPUMASK=0x3 | ||
#options KTR_MASK=(KTR_GEN) | ||
#options KTR_COMPILE=(KTR_GEN) | ||
#options KTR_VERBOSE | ||
|
||
# Uncomment for NFS root | ||
#options BOOTP | ||
#options BOOTP_NFSROOT | ||
#options BOOTP_NFSV3 | ||
#options BOOTP_WIRED_TO=dme0 | ||
#options BOOTP_COMPAT | ||
options ROOTDEVNAME=\"ufs:mmcsd0s3\" | ||
|
||
makeoptions TRAMPLOADADDR=0x88000000 | ||
|
||
#options VERBOSE_SYSINIT | ||
options PRINTF_BUFR_SIZE=256 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# CI20 -- Kernel config for Creator CI20 board | ||
# | ||
# $FreeBSD$ | ||
|
||
include "JZ4780" | ||
ident CI20 | ||
|
||
options FDT | ||
options FDT_DTB_STATIC | ||
makeoptions FDT_DTS_FILE=ingenic/ci20.dts | ||
|
||
#options KTR | ||
#options KTR_CPUMASK=0x3 | ||
#options KTR_MASK=(KTR_GEN) | ||
#options KTR_COMPILE=(KTR_GEN) | ||
#options KTR_VERBOSE | ||
|
||
# Uncomment for NFS root | ||
#options BOOTP | ||
#options BOOTP_NFSROOT | ||
#options BOOTP_NFSV3 | ||
#options BOOTP_WIRED_TO=dme0 | ||
#options BOOTP_COMPAT | ||
|
||
options ROOTDEVNAME=\"ufs:mmcsd0\" | ||
|
||
makeoptions TRAMPLOADADDR=0x88000000 | ||
|
||
#options VERBOSE_SYSINIT | ||
device dme | ||
options PRINTF_BUFR_SIZE=256 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
# JZ4780 -- Kernel config for Ingenic JZ47XX boards | ||
# | ||
# $FreeBSD$ | ||
|
||
ident JZ4780 | ||
machine mips mipsel | ||
cpu CPU_XBURST | ||
cpu CPU_MIPS4KC | ||
|
||
makeoptions KERNLOADADDR=0x80020000 | ||
makeoptions ARCH_FLAGS="-EL -march=mips32r2" | ||
|
||
# Don't build any modules yet. | ||
makeoptions MODULES_OVERRIDE="" | ||
|
||
files "../ingenic/files.jz4780" | ||
hints "JZ4780.hints" #Default places to look for devices. | ||
|
||
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols | ||
|
||
options INTRNG # Borrow interrupt code from ARM | ||
options MIPS_NIRQ=264 # 8 cpuintc + 64 intc + 6 * 23 gpio | ||
|
||
options DDB | ||
options KDB | ||
options BREAK_TO_DEBUGGER | ||
|
||
options COMPAT_FREEBSD10 | ||
|
||
options SCHED_4BSD #4BSD scheduler | ||
options INET #InterNETworking | ||
options NFSCL #Network Filesystem Client | ||
options NFS_ROOT #NFS usable as /, requires NFSCL | ||
options NFSLOCKD #Network Lock Manager | ||
options PSEUDOFS #Pseudo-filesystem framework | ||
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions | ||
|
||
options FFS #Berkeley Fast Filesystem | ||
options SOFTUPDATES #Enable FFS soft updates support | ||
options UFS_ACL #Support for access control lists | ||
options UFS_DIRHASH #Improve performance on big directories | ||
#options ROOTDEVNAME=\"ufs:ada0\" | ||
|
||
options GEOM_LABEL # Provides labelization | ||
options GEOM_PART_GPT # GUID Partition Tables. | ||
#options GEOM_RAID # Soft RAID functionality. | ||
|
||
# Debugging for use in -current | ||
#options DEADLKRES #Enable the deadlock resolver | ||
options INVARIANTS #Enable calls of extra sanity checking | ||
options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS | ||
#options WITNESS #Enable checks to detect deadlocks and cycles | ||
#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed | ||
|
||
# Make an SMP-capable kernel by default | ||
# options SMP # Symmetric MultiProcessor Kernel | ||
|
||
device loop | ||
device ether | ||
#device le | ||
device miibus | ||
device bpf | ||
device md | ||
device uart | ||
device random | ||
|
||
device fdt_pinctrl | ||
|
||
device clk | ||
device regulator | ||
device ext_resources | ||
|
||
device gpio | ||
|
||
device scbus | ||
device da | ||
|
||
device mmc | ||
device mmcsd | ||
|
||
# USB support | ||
options USB_DEBUG # enable debug msgs | ||
options USB_HOST_ALIGN=128 # L2 cache line size | ||
device ohci # OHCI PCI->USB interface | ||
device ehci # EHCI PCI->USB interface (USB 2.0) | ||
device dwcotg # DesignWare HS OTG controller | ||
device usb # USB Bus (required) | ||
#device udbp # USB Double Bulk Pipe devices | ||
device uhid # "Human Interface Devices" | ||
#device ulpt # Printer | ||
device umass # Disks/Mass storage - Requires scbus and da | ||
device ums # Mouse |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
# $FreeBSD$ | ||
# device.hints |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
# X1000 -- Kernel config for Ingenic X1000 boards | ||
# | ||
# $FreeBSD$ | ||
|
||
ident X1000 | ||
machine mips mipsel | ||
cpu CPU_XBURST | ||
cpu CPU_MIPS4KC | ||
|
||
makeoptions KERNLOADADDR=0x80020000 | ||
makeoptions ARCH_FLAGS="-EL -march=mips32r2" | ||
|
||
# Don't build any modules yet. | ||
makeoptions MODULES_OVERRIDE="" | ||
|
||
files "../ingenic/files.x1000" | ||
hints "X1000.hints" #Default places to look for devices. | ||
|
||
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols | ||
|
||
options INTRNG # Borrow interrupt code from ARM | ||
options MIPS_NIRQ=264 # 8 cpuintc + 64 intc + 6 * 23 gpio | ||
|
||
options DDB | ||
options KDB | ||
options BREAK_TO_DEBUGGER | ||
|
||
options COMPAT_FREEBSD10 | ||
|
||
options SCHED_4BSD #4BSD scheduler | ||
options INET #InterNETworking | ||
options NFSCL #Network Filesystem Client | ||
options NFS_ROOT #NFS usable as /, requires NFSCL | ||
options NFSLOCKD #Network Lock Manager | ||
options PSEUDOFS #Pseudo-filesystem framework | ||
options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions | ||
|
||
options FFS #Berkeley Fast Filesystem | ||
options SOFTUPDATES #Enable FFS soft updates support | ||
options UFS_ACL #Support for access control lists | ||
options UFS_DIRHASH #Improve performance on big directories | ||
#options ROOTDEVNAME=\"ufs:ada0\" | ||
|
||
options GEOM_LABEL # Provides labelization | ||
options GEOM_PART_GPT # GUID Partition Tables. | ||
#options GEOM_RAID # Soft RAID functionality. | ||
|
||
# Debugging for use in -current | ||
#options DEADLKRES #Enable the deadlock resolver | ||
options INVARIANTS #Enable calls of extra sanity checking | ||
options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS | ||
#options WITNESS #Enable checks to detect deadlocks and cycles | ||
#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed | ||
|
||
device loop | ||
device ether | ||
#device le | ||
device miibus | ||
device bpf | ||
device md | ||
device uart | ||
device random | ||
|
||
device fdt_pinctrl | ||
|
||
device clk | ||
device regulator | ||
device ext_resources | ||
|
||
device gpio | ||
|
||
device scbus | ||
device da | ||
|
||
device mmc | ||
device mmcsd | ||
|
||
# USB support | ||
#options USB_DEBUG # enable debug msgs | ||
#options USB_HOST_ALIGN=128 # L2 cache line size | ||
#device ohci # OHCI PCI->USB interface | ||
#device ehci # EHCI PCI->USB interface (USB 2.0) | ||
#device dwcotg # DesignWare HS OTG controller | ||
#device usb # USB Bus (required) | ||
#device udbp # USB Double Bulk Pipe devices | ||
#device uhid # "Human Interface Devices" | ||
#device ulpt # Printer | ||
#device umass # Disks/Mass storage - Requires scbus and da | ||
#device ums # Mouse |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
# $FreeBSD$ | ||
# device.hints |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# $FreeBSD$ | ||
|
||
mips/ingenic/jz4780_dwc_fdt.c optional dwcotg | ||
mips/ingenic/jz4780_ehci.c optional ehci | ||
mips/ingenic/jz4780_mmc.c optional mmc | ||
mips/ingenic/jz4780_ohci.c optional ohci | ||
mips/ingenic/jz4780_uart.c optional uart | ||
|
||
mips/ingenic/jz4780_clock.c standard | ||
mips/ingenic/jz4780_clk_gen.c standard | ||
mips/ingenic/jz4780_clk_otg.c standard | ||
mips/ingenic/jz4780_clk_pll.c standard | ||
mips/ingenic/jz4780_efuse.c standard | ||
mips/ingenic/jz4780_intr.c standard | ||
mips/ingenic/jz4780_gpio.c standard | ||
mips/ingenic/jz4780_machdep.c standard | ||
mips/ingenic/jz4780_nemc.c standard | ||
mips/ingenic/jz4780_pinctrl.c standard | ||
mips/ingenic/jz4780_timer.c standard | ||
|
||
# SMP | ||
mips/ingenic/jz4780_mp.c optional smp | ||
mips/ingenic/jz4780_mpboot.S optional smp | ||
|
||
# Custom interface between pinctrl and gpio | ||
mips/ingenic/jz4780_gpio_if.m standard |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# $FreeBSD$ | ||
|
||
mips/ingenic/jz4780_mmc.c optional mmc | ||
mips/ingenic/jz4780_uart.c optional uart | ||
|
||
mips/ingenic/jz4780_clock.c standard | ||
mips/ingenic/jz4780_clk_gen.c standard | ||
mips/ingenic/jz4780_clk_otg.c standard | ||
mips/ingenic/jz4780_clk_pll.c standard | ||
mips/ingenic/jz4780_intr.c standard | ||
mips/ingenic/jz4780_gpio.c standard | ||
mips/ingenic/jz4780_machdep.c standard | ||
mips/ingenic/jz4780_pinctrl.c standard | ||
mips/ingenic/jz4780_timer.c standard | ||
|
||
# Custom interface between pinctrl and gpio | ||
mips/ingenic/jz4780_gpio_if.m standard |
Oops, something went wrong.