summaryrefslogblamecommitdiffstats
path: root/ports/beagleboneblack/config.h
blob: 2592fdfd6c4c700a65775e63916266b6a54c6cd5 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  
                             












                                                                            



                                                        

   

                   





                                                                
                                    
 


                                    
 
                                      





                                                                      

                                                               


              



                                                                    


                                 










                                                                    



                        





                                                                       
                                     
 
                                 



                                       







                                                                  




                            
                                 
     
                                 
      



                                          

                                       
                                        










                                                                              










                                                                                 





                                                                      



                                             




                                                                              

                                                
 




                                                                 

                                 
                                 
                                 
                                 

                                 
                                 






                                 
                                 
                                 
                                 

                                 
                                 



                                 
                                 
                                 




                                 
                                 









                                               




                                                                   
/*
 * Monitor configuration file
 *
 * General notice:
 * This code is part of a boot-monitor package developed as a generic base
 * platform for embedded system designs.  As such, it is likely to be
 * distributed to various projects beyond the control of the original
 * author.  Please notify the author of any enhancements made or bugs found
 * so that all may benefit from the changes.  In addition, notification back
 * to the author will allow the new user to pick up changes that may have
 * been made by other users after this version of the code was distributed.
 *
 * Author:  Ed Sutter
 * email:   esutter@lucent.com
 * phone:   908-582-2351
 *
 *
 * Adapted by Jarielle Catbagan for the Beaglebone Black
 * email: jcatbagan93@gmail.com
 */

#include "am335x.h"

/*
 * The target_putchar() function also drops the character at the
 * LCD...
 */
//#define MORE_PUTCHAR lcd_putchar
//#define CONSOLE_UART_BASE (OMAP35XX_L4_IO_BASE+0x6C000)
#define CONSOLE_UART_BASE UART0_BASE

#define SIO_STEP                4
#define IEN_DEFAULT             0x40
#define MCTL_DEFAULT            0x01

#define TIMER_TICKS_PER_MSEC    545000

/* DEFAULT_ETHERADD & DEFAULT_IPADD:
 * Refer to notes in ethernet.c function EthernetStartup() for details
 * regarding the use of these definitions.
 * DEFAULT_IPADD could be set to "DHCP" or "BOOTP" as well.
 */
#define DEFAULT_ETHERADD "00:30:23:40:00:"      // Cogent Block
#define DEFAULT_IPADD    "192.168.254.110"

#define CPU_LE

// Establish a user defined function to be called when uMon
// prints out the startup banner...
// If this is defined, then the output similar to the following will
// be printed just above the uMon header...
//      Silicon ID: 1.0
//      CPU Rev: 2, Variant: 1
//      CM Rev: 1.0, PRM Rev: 1.0
// #define USR_HEADER_FUNC show_revision

/* Defining DONT_CENTER_MONHEADER eliminates the automatic centering
 * of the monitor's startup banner...
 */
#define DONT_CENTER_MONHEADER

/* XBUFCNT & RBUFCNT:
 *  Number of transmit and receive buffers allocated to ethernet.
 *  The total of XBUFCNT+RBUFCNT should not exceed MAXEBDS
 */
#define XBUFCNT     8
#define RBUFCNT     8
#define XBUFSIZE    2048
#define RBUFSIZE    2048

/* LOOPS_PER_SECOND:
 * Approximately the size of a loop that will cause a 1-second delay.
 * This can be guestimated or modified with the sleep -c command at the
 * monitor command line.
 */
#define LOOPS_PER_SECOND        15000

#define INCLUDE_NANDCMD         0

#if INCLUDE_NANDCMD
/* Needed for NAND to work with TFSRAM:
 */
#define NAND_TFS_BASE           0x10000     // base of TFS in NAND

#define FLASHRAM_BASE           0x80300000
#define FLASHRAM_END            0x8037ffff
#define FLASHRAM_SECTORSIZE     0x00010000
#define FLASHRAM_SPARESIZE      FLASHRAM_SECTORSIZE
#define FLASHRAM_BANKNUM        1
#define FLASHRAM_SECTORCOUNT    8
#endif

/* Flash bank configuration:
 */
#ifdef FLASHRAM_BASE
#define FLASHBANKS              2
#else
#define FLASHBANKS              1
#endif
#define SINGLE_FLASH_DEVICE     1
#define FLASH_COPY_TO_RAM       1
#define FLASH_BANK0_BASE_ADDR   0x08000000
#define FLASH_PROTECT_RANGE     "0-2"
#define FLASH_BANK0_WIDTH       2
#define FLASH_LARGEST_SECTOR    0x20000
#define FLASH_LOOP_TIMEOUT      10000000
#define BUFFERED_WRITE

/* TFS definitions:
 *  TFSSTART:       Base address in FLASH at which TFS starts.
 *  TFSEND:         End address of TFS in FLASH.
 *  TFSSPARE:       Location of sector that is used as the spare sector
 *                  by TFS for defragmentation.
 *  TFSSPARESIZE:   Size of the spare sector used by TFS for defragmentation.
 *  TFSSECTORCOUNT: Number of eraseable sectors that TFS covers, not including
 *                  the TFSSPARE sector.
 */
#define TFSSPARESIZE            FLASH_LARGEST_SECTOR
#define TFS_DEVTOT              1
#define TFSSTART                (FLASH_BANK0_BASE_ADDR+0x060000)
//#define TFSEND                (FLASH_BANK0_BASE_ADDR+0x007dffff)  // 8MB Flash
#define TFSEND                  (FLASH_BANK0_BASE_ADDR+0x00edffff)  // 16MB Flash
//#define TFSEND                (FLASH_BANK0_BASE_ADDR+0x03dfffff)  // 64MB Flash
#define TFSSPARE                (TFSEND+1)
#define TFSSECTORCOUNT          ((TFSSPARE-TFSSTART)/0x20000)
#define TFS_EBIN_ELFMSBIN       1
#define TFS_VERBOSE_STARTUP     1
#define TFS_ALTDEVTBL_BASE      &alt_tfsdevtbl_base

/* Specify CPU/PLATFORM type and name so that common code can be used
 * for a similar cpu, on different platforms.
 * The 'TYPE' definition is used for ifdefs in the code and the 'NAME'
 * is used for printfs in the code.
 */
#define CPU_TYPE        AM3358
#define CPU_NAME        "TI AM3358 Cortex-A8"
#define PLATFORM_TYPE   BEAGLEBONEBLACK
#define PLATFORM_NAME   "Beaglebone Black"

/* Specify the size of the memory block (in monitor space) that is to be
 * allocated to malloc in the monitor.  Note that this size can be dynamically
 * increased using the heap extension option in the heap command.
 */
#define ALLOCSIZE           1024    // (64*1024)
#define MONSTACKSIZE        (16*1024)


/* Specify inclusion of subsystems within the monitor here.
 * Refer to comments in common/monitor/inc_check.h for details on
 * each of these macros.
 */

#define INCLUDE_MEMTRACE        0
#define INCLUDE_MEMCMDS         1
#define INCLUDE_EDIT            0
#define INCLUDE_DISASSEMBLER    0
#define INCLUDE_UNZIP           0
#define INCLUDE_ETHERNET        0
#define INCLUDE_ICMP            0
#define INCLUDE_TFTP            0
#define INCLUDE_DHCPBOOT        0
#define INCLUDE_TFS             0
#define INCLUDE_TFSCLI          0
#define INCLUDE_TFSAPI          0
#define INCLUDE_TFSSCRIPT       0
#define INCLUDE_TFSSYMTBL       0
#define INCLUDE_XMODEM          1
#define INCLUDE_LINEEDIT        0
#define INCLUDE_EE              0
#define INCLUDE_FLASH           0
#define INCLUDE_STRACE          0
#define INCLUDE_CAST            0
#define INCLUDE_STRUCT          0
#define INCLUDE_REDIRECT        0
#define INCLUDE_QUICKMEMCPY     0
#define INCLUDE_PROFILER        0
#define INCLUDE_BBC             0
#define INCLUDE_STOREMAC        0
#define INCLUDE_SHELLVARS       0
#define INCLUDE_MALLOC          0
#define INCLUDE_PORTCMD         0
#define INCLUDE_SYSLOG          0
#define INCLUDE_HWTMR           0
#define INCLUDE_VERBOSEHELP     0
#define INCLUDE_GDB             0
#define INCLUDE_USRLVL          0
#define INCLUDE_JFFS2           0
#define INCLUDE_JFFS2ZLIB       0
#define INCLUDE_FBI             0
#define INCLUDE_TSI             0
#define INCLUDE_SD              1
#define INCLUDE_DNS             0
#define INCLUDE_BLINKLED        1
#define TARGET_BLINKLED         target_blinkled

/* Inclusion of this next file will make sure that all of the above
 * inclusions are legal; and warn/adjust where necessary.
 */
#include "inc_check.h"