Module Name: src Committed By: matt Date: Tue Sep 4 00:19:20 UTC 2012
Modified Files: src/sys/arch/evbarm/beagle: beagle_machdep.c src/sys/arch/evbarm/conf: IGEPV2 files.beagle std.igepv2 Log Message: Make reset work on beagle again. Add nand (not yet working) and prcm to IGEPV2. Add smsh to IGEPV2 (use attachment from gumstix). Turn on a few options for IGEPV2. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 src/sys/arch/evbarm/beagle/beagle_machdep.c cvs rdiff -u -r1.10 -r1.11 src/sys/arch/evbarm/conf/IGEPV2 cvs rdiff -u -r1.2 -r1.3 src/sys/arch/evbarm/conf/files.beagle cvs rdiff -u -r1.3 -r1.4 src/sys/arch/evbarm/conf/std.igepv2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/evbarm/beagle/beagle_machdep.c diff -u src/sys/arch/evbarm/beagle/beagle_machdep.c:1.20 src/sys/arch/evbarm/beagle/beagle_machdep.c:1.21 --- src/sys/arch/evbarm/beagle/beagle_machdep.c:1.20 Sat Sep 1 00:20:49 2012 +++ src/sys/arch/evbarm/beagle/beagle_machdep.c Tue Sep 4 00:19:20 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: beagle_machdep.c,v 1.20 2012/09/01 00:20:49 matt Exp $ */ +/* $NetBSD: beagle_machdep.c,v 1.21 2012/09/04 00:19:20 matt Exp $ */ /* * Machine dependent functions for kernel setup for TI OSK5912 board. @@ -125,7 +125,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: beagle_machdep.c,v 1.20 2012/09/01 00:20:49 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: beagle_machdep.c,v 1.21 2012/09/04 00:19:20 matt Exp $"); #include "opt_machdep.h" #include "opt_ddb.h" @@ -175,6 +175,7 @@ __KERNEL_RCSID(0, "$NetBSD: beagle_machd #include <evbarm/beagle/beagle.h> +#include "prcm.h" #include "omapwdt32k.h" BootConfig bootconfig; /* Boot config storage */ @@ -200,6 +201,7 @@ static void kgdb_port_init(void); #endif static void init_clocks(void); +static void beagle_reset(void); #if defined(OMAP_3530) || defined(TI_DM37XX) static void omap3_cpu_clk(void); #endif @@ -385,6 +387,8 @@ initarm(void *arg) kgdb_port_init(); #endif + cpu_reset_address = beagle_reset; + #ifdef VERBOSE_INIT_ARM /* Talk to the user */ printf("\nNetBSD/evbarm (beagle) booting ...\n"); @@ -480,6 +484,17 @@ consinit(void) beagle_putchar('g'); } +void +beagle_reset(void) +{ +#if NPRCM > 0 + prcm_cold_reset(); +#endif +#if NOMAPWDT32K > 0 + omapwdt32k_reboot(); +#endif +} + #ifdef KGDB #ifndef KGDB_DEVADDR #error Specify the address of the kgdb UART with the KGDB_DEVADDR option. Index: src/sys/arch/evbarm/conf/IGEPV2 diff -u src/sys/arch/evbarm/conf/IGEPV2:1.10 src/sys/arch/evbarm/conf/IGEPV2:1.11 --- src/sys/arch/evbarm/conf/IGEPV2:1.10 Thu Aug 23 00:20:16 2012 +++ src/sys/arch/evbarm/conf/IGEPV2 Tue Sep 4 00:19:20 2012 @@ -1,5 +1,5 @@ # -# $NetBSD: IGEPV2,v 1.10 2012/08/23 00:20:16 kiyohara Exp $ +# $NetBSD: IGEPV2,v 1.11 2012/09/04 00:19:20 matt Exp $ # # IGEPv2 -- TI OMAP 3530 Eval Board Kernel # @@ -180,6 +180,33 @@ obio2 at mainbus? base 0x49000000 size # General Purpose Memory Controller gpmc0 at mainbus? base 0x6e000000 +smsh0 at gpmc0 addr 0x2c000000 intr 272 # gpio5 16 (gpio 176) +ukphy* at mii? + +# SDHC controllers +sdhc0 at obio0 addr 0x4809C000 size 0x0400 intr 83 +#sdhc1 at obio0 addr 0x480B4000 size 0x0400 intr 86 +#sdhc2 at obio0 addr 0x480AD000 size 0x0400 intr 94 +sdmmc* at sdhc? # SD/MMC bus +ld* at sdmmc? + +# NAND controller +omapnand0 at gpmc? addr 0x20000000 + +# NAND layer +nand0 at nandbus? + +# use the bad block table +options NAND_BBT + +# Define flash partitions for board +flash0 at nand0 offset 0x000000 size 0x080000 readonly 1 # X-Loader +flash1 at nand0 offset 0x080000 size 0x1e0000 readonly 1 # U-Boot +flash2 at nand0 offset 0x260000 size 0x020000 readonly 1 # UB Env +flash3 at nand0 offset 0x280000 size 0x400000 # kernel +flash4 at nand0 offset 0x680000 size 0 # filesystem + + # Interrupt Controller omapicu0 at obio0 addr 0x48200000 size 0x1000 intrbase 0 omapgpio0 at obio1 addr 0x48310000 size 0x0400 intrbase 96 intr 29 @@ -187,7 +214,7 @@ omapgpio0 at obio1 addr 0x48310000 size #omapgpio2 at obio2 addr 0x49052000 size 0x0400 intrbase 160 intr 31 #omapgpio3 at obio2 addr 0x49054000 size 0x0400 intrbase 192 intr 32 omapgpio4 at obio2 addr 0x49056000 size 0x0400 intrbase 224 intr 33 -#omapgpio5 at obio2 addr 0x49058000 size 0x0400 intrbase 256 intr 34 +omapgpio5 at obio2 addr 0x49058000 size 0x0400 intrbase 256 intr 34 gpio* at omapgpio? @@ -219,6 +246,9 @@ omapwdt32k* at obio2 addr 0x49030000 siz #omapwdt32k* at obio1 addr 0x4830c000 size 2048 # WDT1 #omapwdt32k* at obio1 addr 0x48314000 size 2048 # WDT2 +# Power, Reset and Clock Management +prcm* at obio1 addr 0x48306000 size 0x2000 # PRM Module + # On-board USB #ehci* at obio0 addr 0x48064800 size 0x0400 intr 77 #ohci* at obio0 addr 0x48064400 size 0x0400 intr 76 Index: src/sys/arch/evbarm/conf/files.beagle diff -u src/sys/arch/evbarm/conf/files.beagle:1.2 src/sys/arch/evbarm/conf/files.beagle:1.3 --- src/sys/arch/evbarm/conf/files.beagle:1.2 Sat Sep 1 00:20:49 2012 +++ src/sys/arch/evbarm/conf/files.beagle Tue Sep 4 00:19:20 2012 @@ -1,4 +1,4 @@ -# $NetBSD: files.beagle,v 1.2 2012/09/01 00:20:49 matt Exp $ +# $NetBSD: files.beagle,v 1.3 2012/09/04 00:19:20 matt Exp $ # # TI OMAP2 evaluation board configuration info # @@ -21,3 +21,5 @@ attach com at obio with obiouart file arch/arm/omap/obio_com.c obiouart defparam opt_com.h CONSADDR CONSPEED CONMODE +attach smsh at gpmc with smsh_gpmc +file arch/evbarm/gumstix/if_smsh_gpmc.c smsh_gpmc Index: src/sys/arch/evbarm/conf/std.igepv2 diff -u src/sys/arch/evbarm/conf/std.igepv2:1.3 src/sys/arch/evbarm/conf/std.igepv2:1.4 --- src/sys/arch/evbarm/conf/std.igepv2:1.3 Wed Aug 29 07:14:05 2012 +++ src/sys/arch/evbarm/conf/std.igepv2 Tue Sep 4 00:19:20 2012 @@ -1,4 +1,4 @@ -# $NetBSD: std.igepv2,v 1.3 2012/08/29 07:14:05 matt Exp $ +# $NetBSD: std.igepv2,v 1.4 2012/09/04 00:19:20 matt Exp $ # # standard NetBSD/evbarm for IGEPV2 options @@ -14,9 +14,10 @@ options EXEC_SCRIPT # To support easy transit to ../arch/arm/arm32 options ARM32 options CORTEX_PMC -options CORTEX_PMC_CCNT_HZ=720000000 +options __HAVE_CPU_COUNTER options __HAVE_FAST_SOFTINTS # should be in types.h -#options TPIDRPRW_IS_CURLWP +options __HAVE_CPU_UAREA_ALLOC_IDLELWP +options TPIDRPRW_IS_CURCPU options KERNEL_BASE_EXT=0x80000000 makeoptions LOADADDRESS="0x80300000"