Skip to content
Permalink
Browse files

[ Odroid N2 ] Added Odroid N2 with mods necessary to build from sourc…

…es. Made a few tests builds ... it works at least as good as stock.
  • Loading branch information...
igorpecovnik committed May 10, 2019
1 parent 5df7a1c commit 2bd7f8efbd165e9e3a0db1cfb9d18dad1432cc4d
@@ -0,0 +1,14 @@
# S922X hexa core 4GB eMMC GBE USB3
BOARD_NAME="Odroid N2"
BOARDFAMILY="odroidn2"
BOOTCONFIG="odroidn2_config"
#
MODULES=""
MODULES_NEXT=""
#
KERNEL_TARGET="default"
CLI_TARGET="stretch,bionic:default"
DESKTOP_TARGET="stretch,bionic:default"
#
CLI_BETA_TARGET=""
DESKTOP_BETA_TARGET=""
@@ -0,0 +1,112 @@
ODROIDN2-UBOOT-CONFIG

setenv rootdev "/dev/mmcblk0p1"
setenv rootfstype "ext4"

ODROIDN2-UBOOT-CONFIG

# Default Console Device Setting
setenv condev "console=ttyS0,115200n8 console=tty1 loglevel=1" # on both

# Auto Detection of Monitor settings based on your Screen information
setenv display_autodetect "true"

# HDMI Mode
# Resolution Configuration
# Symbol | Resolution
# ----------------------+-------------
# "480x320p60hz" | 480x320 Progressive 60Hz
# "480p60hz" | 720x480 Progressive 60Hz
# "576p50hz" | 720x576 Progressive 50Hz
# "720p60hz" | 1280x720 Progressive 60Hz
# "720p50hz" | 1280x720 Progressive 50Hz
# "1080p60hz" | 1920x1080 Progressive 60Hz
# "1080p50hz" | 1920x1080 Progressive 50Hz
# "1080p30hz" | 1920x1080 Progressive 30Hz
# "1080p24hz" | 1920x1080 Progressive 24Hz
# "1080i60hz" | 1920x1080 Interlaced 60Hz
# "1080i50hz" | 1920x1080 Interlaced 50Hz
# "2160p60hz" | 3840x2160 Progressive 60Hz
# "2160p50hz" | 3840x2160 Progressive 50Hz
# "2160p30hz" | 3840x2160 Progressive 30Hz
# "2160p25hz" | 3840x2160 Progressive 25Hz
# "2160p24hz" | 3840x2160 Progressive 24Hz
# "smpte24hz" | 3840x2160 Progressive 24Hz SMPTE
# "2160p60hz420" | 3840x2160 Progressive 60Hz YCbCr 4:2:0
# "2160p50hz420" | 3840x2160 Progressive 50Hz YCbCr 4:2:0
# "640x480p60hz" | 640x480 Progressive 60Hz
# "800x480p60hz" | 800x480 Progressive 60Hz
# "800x600p60hz" | 800x600 Progressive 60Hz
# "1024x600p60hz" | 1024x600 Progressive 60Hz
# "1024x768p60hz" | 1024x768 Progressive 60Hz
# "1280x800p60hz" | 1280x800 Progressive 60Hz
# "1280x1024p60hz" | 1280x1024 Progressive 60Hz
# "1360x768p60hz" | 1360x768 Progressive 60Hz
# "1440x900p60hz" | 1440x900 Progressive 60Hz
# "1600x900p60hz" | 1600x900 Progressive 60Hz
# "1600x1200p60hz" | 1600x1200 Progressive 60Hz
# "1680x1050p60hz" | 1680x1050 Progressive 60Hz
# "1920x1200p60hz" | 1920x1200 Progressive 60Hz
# "2560x1080p60hz" | 2560x1080 Progressive 60Hz
# "2560x1440p60hz" | 2560x1440 Progressive 60Hz
# "2560x1600p60hz" | 2560x1600 Progressive 60Hz
# "3440x1440p60hz" | 3440x1440 Progressive 60Hz
setenv hdmimode "1080p60hz"

# Overscan percentage
# This value scales down the actual screen size by the percentage below
# valid range is 80 to 100
setenv overscan "100"

### voutmode : hdmi or dvi
setenv voutmode "hdmi"
# setenv voutmode "dvi"

# HPD enable/disable option
setenv disablehpd "false"

# max cpu frequency for big core, A73 in MHz unit
# setenv max_freq_a73 "2004" # 2.004 GHz
# setenv max_freq_a73 "1992" # 1.992 GHz
# setenv max_freq_a73 "1908" # 1.908 GHz
setenv max_freq_a73 "1800" # 1.8 GHz, default value
# setenv max_freq_a73 "1704" # 1.704 GHz

# max cpu frequency for little core, A53 in MHz unit
# setenv max_freq_a53 "1992" # 1.992 GHz
setenv max_freq_a53 "1896" # 1.896 GHz, default value
# setenv max_freq_a53 "1704" # 1.704 GHz


# max cpu-cores
# Note:
# CPU's 0 and 1 are the A53 (small cores)
# CPU's 2 to 5 are the A73 (big cores)
# Lowering this value disables only the bigger cores (the last cores).
# setenv maxcpus "4"
# setenv maxcpus "5"
setenv maxcpus "6"

### Normal HDMI Monitors
if test "${display_autodetect}" = "true"; then hdmitx edid; fi
if test "${hdmimode}" = "custombuilt"; then setenv cmode "modeline=${modeline}"; fi

# Boot Args
setenv bootargs "root=${rootdev} rootwait rootflags=data=writeback rw rootfstype=${rootfstype} ${condev} ${amlogic} no_console_suspend fsck.repair=yes net.ifnames=0 elevator=noop hdmimode=${hdmimode} cvbsmode=576cvbs max_freq_a53=${max_freq_a53} max_freq_a73=${max_freq_a73} maxcpus=${maxcpus} voutmode=${voutmode} ${cmode} disablehpd=${disablehpd} cvbscable=${cvbscable} overscan=${overscan}"

# Set load addresses
setenv dtb_loadaddr "0x1000000"
setenv k_addr "0x1100000"
setenv loadaddr "0x1B00000"
setenv initrd_loadaddr "0x3700000"

# Load kernel, dtb and initrd
ext4load mmc ${devno}:1 ${k_addr} boot/zImage
ext4load mmc ${devno}:1 ${dtb_loadaddr} boot/dtb/amlogic/meson64_odroidn2.dtb
ext4load mmc ${devno}:1 ${initrd_loadaddr} boot/uInitrd
fdt addr ${dtb_loadaddr}
# unzip the kernel
unzip ${k_addr} ${loadaddr}

# boot
booti ${loadaddr} ${initrd_loadaddr} ${dtb_loadaddr}

5 comments on commit 2bd7f8e

@ThomasKaiser

This comment has been minimized.

Copy link
Member

replied May 10, 2019

No IRQ affinity settings, CONFIG_CRYPTO_LZ4* not set and CONFIG_ZRAM=y instead of m -- amazing.

The days when Armbian tried to provide consistency across the range of boards are definitely long gone...

@igorpecovnik

This comment has been minimized.

Copy link
Member Author

replied May 10, 2019

IMO good enough for initial/1st commit/build. Will be improved in next streak.

@Tonymac32

This comment has been minimized.

Copy link
Member

replied May 10, 2019

@ThomasKaiser

This comment has been minimized.

Copy link
Member

replied May 11, 2019

to avoid parallel work for no reason

Well, project work could be coordinated as well. But here it's the usual 'style' again and again...

BTW: good luck with BOARDFAMILY="odroidn2" instead of a more sane meson_g12b or something like that (or do you all think no other board maker will ever rely on S922X or A311D? Hardkernel folks said they will explore a possible other N2 derivate (NAS device like HC2) so why limiting a 'family' to just one or two members from one single board maker?)

@Tonymac32

This comment has been minimized.

Copy link
Member

replied May 11, 2019

Please sign in to comment.
You can’t perform that action at this time.