From 86522c848c66196571ecf7d59882bc113f2ed618 Mon Sep 17 00:00:00 2001 From: reinoud Date: Fri, 6 Jun 2014 15:00:20 +0000 Subject: [PATCH] Add gpio, i2c and USB devices to ODROID and clean it up a bit too. Since its a SoC, some devices might just as well move to std.odroid but are kept here for now. I got confirmation from Hardkernel, the company that creates the Odroid's that *all* Samsung SoC's that are used in products other than Samsungs own have the trustzone firmware mandatory. Its also part of the bootloading step and Hardkernel has to digitally sign part of the bootloaders to be allowed to have it boot at all. --- sys/arch/evbarm/conf/ODROID | 39 ++++++++++++++++++++++----------- sys/arch/evbarm/conf/ODROID-U | 8 ++++--- sys/arch/evbarm/conf/std.odroid | 6 +++-- 3 files changed, 35 insertions(+), 18 deletions(-) diff --git a/sys/arch/evbarm/conf/ODROID b/sys/arch/evbarm/conf/ODROID index e1f0bac6af98..a40fb44a7267 100644 --- a/sys/arch/evbarm/conf/ODROID +++ b/sys/arch/evbarm/conf/ODROID @@ -1,5 +1,5 @@ # -# $NetBSD: ODROID,v 1.2 2014/05/05 20:31:03 reinoud Exp $ +# $NetBSD: ODROID,v 1.3 2014/06/06 15:00:20 reinoud Exp $ # # ODROID -- ODROID series Exynos Kernel # @@ -159,6 +159,7 @@ options USB_DEBUG options EHCI_DEBUG options OHCI_DEBUG options UHUB_DEBUG +options USBVERBOSE # Valid options for BOOT_ARGS: @@ -204,26 +205,38 @@ sscom2 at exyo0 port 2 # UART2 # Exynos Watchdog Timer #exyowdt0 at exyo0 # watchdog -# Odroid-U connectivity +# GPIO +exyogpio0 at exyo0 +gpio* at exyogpio? -# UARTS -# sscom0 attached to expansion port -# sscom1 is default serial UART console, enable for low-level console: -options SSCOM0CONSOLE, CONSPEED=115200 # On-board USB -#exyousb0 at exyo0 port 0 -#exyousb1 at exyo0 port 1 -#ohci* at exyousb? -#ehci* at exyousb? -#usb* at ohci? -#usb* at ehci? +exyousb* at exyo0 +ohci* at exyousb? +ehci* at exyousb? +usb* at ohci? +usb* at ehci? + +# Network phy for the LAN9730 +ukphy* at mii? phy ? # generic unknown PHYs + +# I2C devices +exyoiic0 at exyo0 +iic* at exyoiic? # SATA #ahcisata* at exyno0 #atabus* at ata? #wd* at atabus? drive ? -#include "dev/usb/usbdevices.config" + +# serial console connectivity +# UARTS +# sscom0 is default serial UART console, enable for low-level console: +# sscomX attached to expansion port +options SSCOM0CONSOLE, CONSPEED=115200 + +# include all USB devices +include "dev/usb/usbdevices.config" # Pseudo-Devices diff --git a/sys/arch/evbarm/conf/ODROID-U b/sys/arch/evbarm/conf/ODROID-U index bcbda2328f6e..32ce50fb0ec2 100644 --- a/sys/arch/evbarm/conf/ODROID-U +++ b/sys/arch/evbarm/conf/ODROID-U @@ -1,5 +1,5 @@ # -# $NetBSD: ODROID-U,v 1.6 2014/05/21 12:24:52 reinoud Exp $ +# $NetBSD: ODROID-U,v 1.7 2014/06/06 15:00:20 reinoud Exp $ # # ODROID-U -- ODROID-U series Exynos Kernel # @@ -26,7 +26,6 @@ options EXYNOS4412P options PMAPCOUNTERS options BUSDMA_COUNTERS options EXYNOS_CONSOLE_EARLY -options ARM_TRUSTZONE_FIRMWARE options UVMHIST #options UVMHIST_PRINT,KERNHIST_DELAY=0 options __HAVE_MM_MD_DIRECT_MAPPED_PHYS @@ -128,7 +127,7 @@ options DKWEDGE_METHOD_GPT options KTRACE # system call tracing, a la ktrace(1) #options KMEMSTATS # kernel memory statistics #options SCSIVERBOSE # Verbose SCSI errors -#options MIIVERBOSE # Verbose MII autoconfuration messages +options MIIVERBOSE # Verbose MII autoconfuration messages #options DDB_KEYCODE=0x40 #options USERCONF # userconf(4) support #options PIPE_SOCKETPAIR # smaller, but slower pipe(2) @@ -203,6 +202,9 @@ ehci* at exyousb? usb* at ohci? usb* at ehci? +# Network phy for the LAN9730 +ukphy* at mii? phy ? # generic unknown PHYs + # I2C devices exyoiic0 at exyo0 iic* at exyoiic? diff --git a/sys/arch/evbarm/conf/std.odroid b/sys/arch/evbarm/conf/std.odroid index d94dcfd7599b..7bf55b0de888 100644 --- a/sys/arch/evbarm/conf/std.odroid +++ b/sys/arch/evbarm/conf/std.odroid @@ -1,4 +1,4 @@ -# $NetBSD: std.odroid,v 1.1 2014/04/13 02:26:26 matt Exp $ +# $NetBSD: std.odroid,v 1.2 2014/06/06 15:00:20 reinoud Exp $ # # standard NetBSD/evbarm for ODROID options @@ -20,7 +20,9 @@ options __HAVE_FAST_SOFTINTS # should be in types.h options TPIDRPRW_IS_CURCPU options KERNEL_BASE_EXT=0x80000000 options FPU_VFP -#options ARM_TRUSTZONE_FIRMWARE + +# All shipped Samsung SoC's that are not Samsung products have this +options ARM_TRUSTZONE_FIRMWARE makeoptions KERNEL_BASE_PHYS="0x80000000" makeoptions KERNEL_BASE_VIRT="0x80000000"