Author: imp
Date: Thu Aug 16 05:03:59 2012
New Revision: 239324
URL: http://svn.freebsd.org/changeset/base/239324

Log:
  Preliminary Embest ATEB9200 support.

Added:
  head/sys/arm/at91/board_eb9200.c
     - copied, changed from r239191, head/sys/arm/at91/board_kb920x.c
  head/sys/arm/at91/std.eb9200   (contents, props changed)
  head/sys/arm/conf/EB9200   (contents, props changed)
  head/sys/arm/conf/EB9200.hints   (contents, props changed)
Modified:
  head/sys/arm/at91/files.at91

Copied and modified: head/sys/arm/at91/board_eb9200.c (from r239191, 
head/sys/arm/at91/board_kb920x.c)
==============================================================================
--- head/sys/arm/at91/board_kb920x.c    Sat Aug 11 05:58:56 2012        
(r239191, copy source)
+++ head/sys/arm/at91/board_eb9200.c    Thu Aug 16 05:03:59 2012        
(r239324)
@@ -38,27 +38,29 @@ BOARD_INIT long
 board_init(void)
 {
 
-       at91rm9200_set_subtype(AT91_ST_RM9200_PQFP);
+       at91rm9200_set_subtype(AT91_ST_RM9200_BGA);
 
        /*
         * Setup the serial ports.
-        * DBGU is the main one, although jumpers can make USART0 default.
-        * USART1 is IrDA, and USART3 is optional RS485.
+        * DBGU and USART0 are DB9 ports.
+        * USART2 is IrDA.
         */
        at91rm9200_config_uart(AT91_ID_DBGU, 0, 0);   /* DBGU just Tx and Rx */
-       at91rm9200_config_uart(AT91RM9200_ID_USART0, 1, 0);   /* Tx and Rx */
-       at91rm9200_config_uart(AT91RM9200_ID_USART1, 2, 0);   /* Tx and Rx - 
IRDA */
-       at91rm9200_config_uart(AT91RM9200_ID_USART3, 3, /* Tx, Rx, CTS, RTS - 
RS485 */
-           AT91_UART_CTS | AT91_UART_RTS);
+       at91rm9200_config_uart(AT91RM9200_ID_USART0, 1,
+           AT91_UART_CTS | AT91_UART_RTS | AT91_UART_DTR | AT91_UART_DSR |
+           AT91_UART_DCD | AT91_UART_RI);
+       at91rm9200_config_uart(AT91RM9200_ID_USART1, 2, 0);
 
        at91rm9200_config_mci(1);
 
        /* CFE interface */
+       /* SPI interface */
        /* ethernet interface */
-       /* lcd interface */
        /* USB host */
        /* USB device (gadget) */
        /* TWI */
+       /* CF interface */
+       /* SmartMedia Interface */
 
        return (at91_ramsize());
 }

Modified: head/sys/arm/at91/files.at91
==============================================================================
--- head/sys/arm/at91/files.at91        Thu Aug 16 04:53:30 2012        
(r239323)
+++ head/sys/arm/at91/files.at91        Thu Aug 16 05:03:59 2012        
(r239324)
@@ -38,6 +38,7 @@ arm/at91/at91sam9x5.c         optional        at91sam9
 # All the boards we support
 #
 arm/at91/board_bwct.c          optional        at91_board_bwct
+arm/at91/board_eb9200.c                optional        at91_board_eb9200
 arm/at91/board_ethernut5.c     optional        at91_board_ethernut5
 arm/at91/board_hl200.c         optional        at91_board_hl200
 arm/at91/board_hl201.c         optional        at91_board_hl201

Added: head/sys/arm/at91/std.eb9200
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/sys/arm/at91/std.eb9200        Thu Aug 16 05:03:59 2012        
(r239324)
@@ -0,0 +1,10 @@
+#$FreeBSD$
+include "../at91/std.at91"
+
+options                STARTUP_PAGETABLE_ADDR=0x20800000
+makeoptions    KERNPHYSADDR=0x20000000
+options                KERNPHYSADDR=0x20000000 
+makeoptions    KERNVIRTADDR=0xc0000000
+options                KERNVIRTADDR=0xc0000000
+
+device         at91_board_eb9200

Added: head/sys/arm/conf/EB9200
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/sys/arm/conf/EB9200    Thu Aug 16 05:03:59 2012        (r239324)
@@ -0,0 +1,109 @@
+# EB9200 - Custom kernel for the Embest ATEB9200 AT91RM9200 evaluation board.
+#
+# For more information on this file, please read the handbook section on
+# Kernel Configuration Files:
+#
+#    
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
+#
+# An exhaustive list of options and more detailed explanations of the
+# device lines is also present in the ../../conf/NOTES and NOTES files.
+# If you are in doubt as to the purpose or necessity of a line, check first
+# in NOTES.
+#
+# $FreeBSD$
+
+ident          EB9200
+
+include                "../at91/std.eb9200"
+# The AT91 platform doesn't use /boot/loader, so we have to statically wire
+# hints.
+hints          "EB9200.hints"
+makeoptions    MODULES_OVERRIDE=""
+
+makeoptions    DEBUG=-g                #Build kernel with gdb(1) debug symbols
+options        DDB
+options        KDB
+
+options        SCHED_4BSD              #4BSD scheduler
+options        INET                    #InterNETworking
+#options       INET6                   #IPv6 communications protocols
+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       MD_ROOT                 #MD is a potential root device
+#options       MD_ROOT_SIZE=4096       # 4MB ram disk
+#options       ROOTDEVNAME=\"ufs:/dev/da0s1a\"
+options        NFSCL                   #New Network Filesystem Client
+options        NFSD                    #New Network Filesystem Server
+options        NFSLOCKD                #Network Lock Manager
+options        NFS_ROOT                #NFS usable as /, requires NFSCL
+options        BOOTP_NFSROOT
+options        BOOTP
+
+#options       MSDOSFS                 #MSDOS Filesystem
+#options       CD9660                  #ISO 9660 Filesystem
+#options       PROCFS                  #Process filesystem (requires PSEUDOFS)
+options        PSEUDOFS                #Pseudo-filesystem framework
+#options       SCSI_DELAY=5000         #Delay (in ms) before probing SCSI
+#options       KTRACE                  #ktrace(1) support
+options        SYSVSHM                 #SYSV-style shared memory
+options        SYSVMSG                 #SYSV-style message queues
+options        SYSVSEM                 #SYSV-style semaphores
+options        _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
+#options       NO_SYSCTL_DESCR
+# Disable the inlining of mutex, rwlock and sx locks.  These eat up a lot
+# of space.
+options        MUTEX_NOINLINE
+options        RWLOCK_NOINLINE
+options        SX_NOINLINE
+options        NO_FFS_SNAPSHOT
+options        NO_SWAPPING
+device         random
+device         loop
+device         ether
+device         uart
+device         ate
+device         miibus
+#device                lxtphy
+
+device         at91_cfata
+device         ata
+
+# 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         md
+device         at91_twi                # TWI: Two Wire Interface
+device         at91_spi                # SPI:
+device         spibus
+# MMC/SD
+device         at91_mci
+device         mmc
+device         mmcsd
+# iic
+device         iic
+device         iicbus
+device         icee
+
+device         bpf
+# USB support
+options        USB_DEBUG       # enable debug msgs
+device         ohci            # OHCI localbus->USB interface
+device         usb             # USB Bus (required)
+device         umass           # Disks/Mass storage - Requires scbus and da
+# SCSI peripherals
+device         scbus           # SCSI bus (required for SCSI)
+device         da              # Direct Access (disks)
+device         cd              # CD
+device         pass            # Passthrough device (direct SCSI access)
+
+# USB device (gadget) support
+#device                at91_dci        # Atmel's usb device
+#device                usfs            # emulate a flash
+#device                cdce            # emulate an ethernet
+#device                usb_template    # Control of the gadget

Added: head/sys/arm/conf/EB9200.hints
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/sys/arm/conf/EB9200.hints      Thu Aug 16 05:03:59 2012        
(r239324)
@@ -0,0 +1,6 @@
+# $FreeBSD$
+
+# should likely list CF here since its address isn't fixed.
+# but since it is at an external chip select, do we use that or the address
+# to configure it as its bus address?  Need to fix arbitrary bus mapping
+# before I can list it here.
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to