mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-31 00:11:36 +08:00
Add an NSH configuratin for the PIC32 starter kit
git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4462 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
@@ -2536,4 +2536,8 @@
|
|||||||
devices that have USB, but no serial port.
|
devices that have USB, but no serial port.
|
||||||
* arch/mips/src/pic32mx/pic32mx_spi.c: Add a PIC32 SPI driver. Initial
|
* arch/mips/src/pic32mx/pic32mx_spi.c: Add a PIC32 SPI driver. Initial
|
||||||
checkin is primitive, incomplete (lacks interrupt logic), and untested.
|
checkin is primitive, incomplete (lacks interrupt logic), and untested.
|
||||||
|
* configs/pic32-startkit/nsh: Completed verification of the PIC32 Ethernet
|
||||||
|
Starter Kit port. Added and verified the NuttShell (NSH) on the PIC32
|
||||||
|
Ethernet Starter Kit. I can now (finally) claim to have complete the
|
||||||
|
basic port to this board.
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,11 @@ configs/pic32-starterkit README
|
|||||||
|
|
||||||
|
|
||||||
This README file discusses the port of NuttX to the Microchip PIC32 Ethernet
|
This README file discusses the port of NuttX to the Microchip PIC32 Ethernet
|
||||||
Starter Kit (DM320004) with the Multimedia Expansion Board (MEB, DM320005).
|
Starter Kit (DM320004) with either
|
||||||
|
|
||||||
|
1) The Multimedia Expansion Board (MEB, DM320005), or
|
||||||
|
2) The Starter Kit I/O Exansion Board
|
||||||
|
|
||||||
See www.microchip.com for further information.
|
See www.microchip.com for further information.
|
||||||
|
|
||||||
The PIC32 Ethernet Starter Kit includes:
|
The PIC32 Ethernet Starter Kit includes:
|
||||||
@@ -44,16 +48,21 @@ The MEB adds:
|
|||||||
- CPLD for SPI and Chip Select configuration
|
- CPLD for SPI and Chip Select configuration
|
||||||
- Integrated 802.11 wireless connectivity
|
- Integrated 802.11 wireless connectivity
|
||||||
|
|
||||||
|
The Starter Kit I/O Exansion Board:
|
||||||
|
|
||||||
|
Mostly just brings out all of the pins from the tiny Starter Kit connector.
|
||||||
|
|
||||||
Contents
|
Contents
|
||||||
========
|
========
|
||||||
|
|
||||||
PIC32MX795F512L Pin Out
|
PIC32MX795F512L Pin Out
|
||||||
MEB Connector
|
MEB Connector
|
||||||
PICtail
|
PICtail
|
||||||
|
Serial Output using the
|
||||||
Toolchains
|
Toolchains
|
||||||
Powering the Board
|
|
||||||
Creating Compatible NuttX HEX files
|
Creating Compatible NuttX HEX files
|
||||||
Serial Console
|
Serial Console: MEB
|
||||||
|
Serial Console: Starter Kit I/O Exansion Board
|
||||||
LEDs
|
LEDs
|
||||||
PIC32MX Configuration Options
|
PIC32MX Configuration Options
|
||||||
Configurations
|
Configurations
|
||||||
@@ -502,8 +511,8 @@ Creating Compatible NuttX HEX files
|
|||||||
# to the top-level build directory. It is the only
|
# to the top-level build directory. It is the only
|
||||||
# required input to mkpichex.
|
# required input to mkpichex.
|
||||||
|
|
||||||
Serial Console
|
Serial Console: MEB
|
||||||
==============
|
===================
|
||||||
|
|
||||||
[[Warning: This all sounds great, but the fact is that I have not yet
|
[[Warning: This all sounds great, but the fact is that I have not yet
|
||||||
gotten any serial UART output to work from the MEB.]]
|
gotten any serial UART output to work from the MEB.]]
|
||||||
@@ -596,6 +605,71 @@ Serial Console
|
|||||||
26 3.3V
|
26 3.3V
|
||||||
28 GND
|
28 GND
|
||||||
|
|
||||||
|
Serial Console: Starter Kit I/O Exansion Board
|
||||||
|
==============================================
|
||||||
|
|
||||||
|
U1:
|
||||||
|
Ethernet Starter Kit Exansion I/O board
|
||||||
|
--------------------------------------------- -------------------------
|
||||||
|
PIN Description J2 J1 J10/J11
|
||||||
|
--- ---------------------------------- ------------- ------------------
|
||||||
|
47 AETXD0/CN20/RD14/SS3/U1CTS/U4RX Not available N/A
|
||||||
|
48 AETXD1/CN21/RD15/SCK3/U1RTS/U4TX Not available N/A
|
||||||
|
52 RF2/SDA3/SDI3/U1RX J2 pin 88 J11 pin 41
|
||||||
|
53 RF8/SCL3/SDO3/U1TX J2 pin 90 J11 pin 43
|
||||||
|
|
||||||
|
U2:
|
||||||
|
Ethernet Starter Kit Exansion I/O board
|
||||||
|
--------------------------------------------- -------------------------
|
||||||
|
PIN Description J2 J1 J10/J11
|
||||||
|
--- ---------------------------------- ------------- ------------------
|
||||||
|
39 AC1TX/RF13/SCK4/U2RTS/U5TX J2 pin 106 J11 pin 42
|
||||||
|
40 AC1RX/RF12/SS4/U2CTS/U5RX J2 pin 108 J11 pin 44
|
||||||
|
50 PMA8/CN18/RF5/SCL5/SDO4/U2TX J2 pin 111 J10 pin 52
|
||||||
|
J2 pin 112 J11 pin 48
|
||||||
|
49 PMA9/CN17/RF4/SDA5/SDI4/U2RX J2 pin 109 J10 pin 51
|
||||||
|
J2 pin 110 J11 pin 46
|
||||||
|
|
||||||
|
U3:
|
||||||
|
Ethernet Starter Kit Exansion I/O board
|
||||||
|
--------------------------------------------- -------------------------
|
||||||
|
PIN Description J2 J1 J10/J11
|
||||||
|
--- ---------------------------------- ------------- ------------------
|
||||||
|
10 PMA5/CN8/ECOL/RG6/SCK2/U3RTS/U6TX J2 pin 45 J10 pin 23
|
||||||
|
J2 pin 117 J10 pin 55
|
||||||
|
11 PMA4/CN9/ECRS/RG7/SDA4/SDI2/U3RX J2 pin 47 J10 pin 24
|
||||||
|
J2 pin 119 J10 pin 56
|
||||||
|
12 PMA3/AECRSDV/AERXDV/CN10/ECRSDV/ Not available N/A
|
||||||
|
ERXDV/RG8/SCL4/SDO2/U3TX
|
||||||
|
14 PMA2/AEREFCLK/AERXCLK/CN11/
|
||||||
|
EREFCLK/ERXCLK/RG9/SS2/U3CTS/ Not available N/A
|
||||||
|
U6RX
|
||||||
|
|
||||||
|
U4:
|
||||||
|
Ethernet Starter Kit Exansion I/O board
|
||||||
|
--------------------------------------------- -------------------------
|
||||||
|
PIN Description J2 J1 J10/J11
|
||||||
|
--- ---------------------------------- ------------- ------------------
|
||||||
|
47 AETXD0/CN20/RD14/SS3/U1CTS/U4RX Not available N/A
|
||||||
|
48 AETXD1/CN21/RD15/SCK3/U1RTS/U4TX Not available N/A
|
||||||
|
|
||||||
|
U5:
|
||||||
|
Ethernet Starter Kit Exansion I/O board
|
||||||
|
--------------------------------------------- -------------------------
|
||||||
|
PIN Description J2 J1 J10/J11
|
||||||
|
--- ---------------------------------- ------------- ------------------
|
||||||
|
39 AC1TX/RF13/SCK4/U2RTS/U5TX J2 pin 106 J11 pin 42
|
||||||
|
40 AC1RX/RF12/SS4/U2CTS/U5RX J2 pin 108 J11 pin 44
|
||||||
|
|
||||||
|
U6:
|
||||||
|
PIN Description
|
||||||
|
--- ----------------------------------
|
||||||
|
10 PMA5/CN8/ECOL/RG6/SCK2/U3RTS/U6TX J2 pin 45 J10 pin 23
|
||||||
|
J2 pin 117 J10 pin 55
|
||||||
|
14 PMA2/AEREFCLK/AERXCLK/CN11/ Not available N/A
|
||||||
|
EREFCLK/ERXCLK/RG9/SS2/U3CTS/
|
||||||
|
U6RX
|
||||||
|
|
||||||
LEDs
|
LEDs
|
||||||
====
|
====
|
||||||
|
|
||||||
@@ -897,5 +971,28 @@ selected as follow:
|
|||||||
Where <subdir> is one of the following:
|
Where <subdir> is one of the following:
|
||||||
|
|
||||||
ostest:
|
ostest:
|
||||||
|
=======
|
||||||
|
Description.
|
||||||
|
------------
|
||||||
This configuration directory, performs a simple OS test using
|
This configuration directory, performs a simple OS test using
|
||||||
apps/examples/ostest.
|
apps/examples/ostest.
|
||||||
|
|
||||||
|
Serial Output.
|
||||||
|
--------------
|
||||||
|
The OS test produces all of its test output on the serial console.
|
||||||
|
This configuration has UART1 enabled as a serial console. I have
|
||||||
|
been unable to get this UART work on the MEB. But on the Expansion
|
||||||
|
I/O board, this maps to RX = J11 pin 41 and TX = J11 pin 43
|
||||||
|
|
||||||
|
nsh:
|
||||||
|
====
|
||||||
|
This is the NuttShell (NSH) using the NSH startup logic at
|
||||||
|
apps/examples/nsh.
|
||||||
|
|
||||||
|
Serial Output.
|
||||||
|
--------------
|
||||||
|
The OS test produces all of its test output on the serial console.
|
||||||
|
This configuration has UART1 enabled as a serial console. I have
|
||||||
|
been unable to get this UART work on the MEB. But on the Expansion
|
||||||
|
I/O board, this maps to RX = J11 pin 41 and TX = J11 pin 43
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,160 @@
|
|||||||
|
############################################################################
|
||||||
|
# configs/pic32-starterkit/nsh/Make.defs
|
||||||
|
#
|
||||||
|
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||||
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions
|
||||||
|
# are met:
|
||||||
|
#
|
||||||
|
# 1. Redistributions of source code must retain the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer.
|
||||||
|
# 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer in
|
||||||
|
# the documentation and/or other materials provided with the
|
||||||
|
# distribution.
|
||||||
|
# 3. Neither the name NuttX nor the names of its contributors may be
|
||||||
|
# used to endorse or promote products derived from this software
|
||||||
|
# without specific prior written permission.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||||
|
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||||
|
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
# POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
#
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
include ${TOPDIR}/.config
|
||||||
|
|
||||||
|
# Setup for the selected toolchain
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_PIC32MX_MICROCHIPW),y)
|
||||||
|
# Microchip toolchain under Windows
|
||||||
|
CROSSDEV = pic32-
|
||||||
|
WINTOOL = y
|
||||||
|
MAXOPTIMIZATION = -O2
|
||||||
|
ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data
|
||||||
|
ARCHPICFLAGS = -fpic -membedded-pic
|
||||||
|
LDFLAGS += -nostartfiles -nodefaultlibs
|
||||||
|
endif
|
||||||
|
ifeq ($(CONFIG_PIC32MX_MICROCHIPW_LITE),y)
|
||||||
|
# Microchip toolchain under Windows
|
||||||
|
CROSSDEV = pic32-
|
||||||
|
WINTOOL = y
|
||||||
|
# MAXOPTIMIZATION = -O2
|
||||||
|
ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data
|
||||||
|
ARCHPICFLAGS = -fpic -membedded-pic
|
||||||
|
LDFLAGS += -nostartfiles -nodefaultlibs
|
||||||
|
endif
|
||||||
|
ifeq ($(CONFIG_PIC32MX_MICROCHIPL),y)
|
||||||
|
# Microchip toolchain under Linux
|
||||||
|
CROSSDEV = pic32-
|
||||||
|
MAXOPTIMIZATION = -O2
|
||||||
|
ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data
|
||||||
|
ARCHPICFLAGS = -fpic -membedded-pic
|
||||||
|
LDFLAGS += -nostartfiles -nodefaultlibs
|
||||||
|
endif
|
||||||
|
ifeq ($(CONFIG_PIC32MX_MICROCHIPL_LITE),y)
|
||||||
|
# Microchip toolchain under Linux
|
||||||
|
CROSSDEV = pic32-
|
||||||
|
# MAXOPTIMIZATION = -O2
|
||||||
|
ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data
|
||||||
|
ARCHPICFLAGS = -fpic -membedded-pic
|
||||||
|
LDFLAGS += -nostartfiles -nodefaultlibs
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
# Windows-native toolchains
|
||||||
|
DIRLINK = $(TOPDIR)/tools/winlink.sh
|
||||||
|
DIRUNLINK = $(TOPDIR)/tools/unlink.sh
|
||||||
|
MKDEP = $(TOPDIR)/tools/mknulldeps.sh
|
||||||
|
ARCHINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}"
|
||||||
|
ARCHXXINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" -isystem "${shell cygpath -w $(TOPDIR)/include/cxx}"
|
||||||
|
ARCHSCRIPT = -T "${shell cygpath -w $(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/nsh/ld.script}"
|
||||||
|
else
|
||||||
|
# Linux/Cygwin-native toolchain
|
||||||
|
MKDEP = $(TOPDIR)/tools/mkdeps.sh
|
||||||
|
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
|
||||||
|
ARCHXXINCLUDES = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx
|
||||||
|
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/nsh/ld.script
|
||||||
|
endif
|
||||||
|
|
||||||
|
CC = $(CROSSDEV)gcc
|
||||||
|
CXX = $(CROSSDEV)g++
|
||||||
|
CPP = $(CROSSDEV)gcc -E
|
||||||
|
LD = $(CROSSDEV)ld
|
||||||
|
AR = $(CROSSDEV)ar rcs
|
||||||
|
NM = $(CROSSDEV)nm
|
||||||
|
OBJCOPY = $(CROSSDEV)objcopy
|
||||||
|
OBJDUMP = $(CROSSDEV)objdump
|
||||||
|
|
||||||
|
ifeq ("${CONFIG_DEBUG_SYMBOLS}","y")
|
||||||
|
ARCHOPTIMIZATION = -g
|
||||||
|
else
|
||||||
|
ARCHOPTIMIZATION = $(MAXOPTIMIZATION) -fno-strict-aliasing -fno-strength-reduce -fomit-frame-pointer
|
||||||
|
endif
|
||||||
|
|
||||||
|
ARCHCFLAGS = -fno-builtin
|
||||||
|
ARCHCXXFLAGS = -fno-builtin -fno-exceptions
|
||||||
|
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
|
||||||
|
ARCHWARNINGSXX = -Wall -Wshadow
|
||||||
|
ARCHDEFINES =
|
||||||
|
|
||||||
|
CFLAGS = $(ARCHCFLAGS) $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe
|
||||||
|
CPICFLAGS = $(ARCHPICFLAGS) $(CFLAGS)
|
||||||
|
CXXFLAGS = $(ARCHCXXFLAGS) $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHXXINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe
|
||||||
|
CXXPICFLAGS = $(ARCHPICFLAGS) $(CXXFLAGS)
|
||||||
|
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES)
|
||||||
|
AFLAGS = $(CFLAGS) -D__ASSEMBLY__
|
||||||
|
|
||||||
|
NXFLATLDFLAGS1 = -r -d -warn-common
|
||||||
|
NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat.ld -no-check-sections
|
||||||
|
LDNXFLATFLAGS = -e main -s 2048
|
||||||
|
|
||||||
|
OBJEXT = .o
|
||||||
|
LIBEXT = .a
|
||||||
|
EXEEXT =
|
||||||
|
|
||||||
|
define PREPROCESS
|
||||||
|
@echo "CPP: $1->$2"
|
||||||
|
@$(CPP) $(CPPFLAGS) $1 -o $2
|
||||||
|
endef
|
||||||
|
|
||||||
|
define COMPILE
|
||||||
|
@echo "CC: $1"
|
||||||
|
@$(CC) -c $(CFLAGS) $1 -o $2
|
||||||
|
endef
|
||||||
|
|
||||||
|
define COMPILEXX
|
||||||
|
@echo "CXX: $1"
|
||||||
|
@$(CXX) -c $(CXXFLAGS) $1 -o $2
|
||||||
|
endef
|
||||||
|
|
||||||
|
define ASSEMBLE
|
||||||
|
@echo "AS: $1"
|
||||||
|
@$(CC) -c $(AFLAGS) $1 -o $2
|
||||||
|
endef
|
||||||
|
|
||||||
|
define ARCHIVE
|
||||||
|
echo "AR: $2"; \
|
||||||
|
$(AR) $1 $2 || { echo "$(AR) $1 $2 FAILED!" ; exit 1 ; }
|
||||||
|
endef
|
||||||
|
|
||||||
|
define CLEAN
|
||||||
|
@rm -f *.o *.a
|
||||||
|
endef
|
||||||
|
|
||||||
|
HOSTCC = gcc
|
||||||
|
HOSTINCLUDES = -I.
|
||||||
|
HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -g -pipe
|
||||||
|
HOSTLDFLAGS =
|
||||||
|
|
||||||
@@ -0,0 +1,77 @@
|
|||||||
|
############################################################################
|
||||||
|
# configs/pic32-starterkit/nsh/appconfig
|
||||||
|
#
|
||||||
|
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||||
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions
|
||||||
|
# are met:
|
||||||
|
#
|
||||||
|
# 1. Redistributions of source code must retain the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer.
|
||||||
|
# 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer in
|
||||||
|
# the documentation and/or other materials provided with the
|
||||||
|
# distribution.
|
||||||
|
# 3. Neither the name NuttX nor the names of its contributors may be
|
||||||
|
# used to endorse or promote products derived from this software
|
||||||
|
# without specific prior written permission.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||||
|
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||||
|
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
# POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
#
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
############################################################################
|
||||||
|
# Path to example in apps/examples containing the user_start entry point
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
CONFIGURED_APPS += examples/nsh
|
||||||
|
|
||||||
|
############################################################################
|
||||||
|
# The NSH application library
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
CONFIGURED_APPS += system/readline
|
||||||
|
CONFIGURED_APPS += nshlib
|
||||||
|
|
||||||
|
############################################################################
|
||||||
|
# USB device configurations
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_PIC32MX_USBDEV),y)
|
||||||
|
|
||||||
|
# USB Mass Storage Class device configurations
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_USBMSC),y)
|
||||||
|
# Uncomment to enable the examples/usbstorage built-in
|
||||||
|
# CONFIGURED_APPS += examples/usbstorage
|
||||||
|
endif
|
||||||
|
|
||||||
|
# USB CDC/ACM serial device configurations
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_CDCACM),y)
|
||||||
|
# Uncomment to enable the examples/cdcacm built-in
|
||||||
|
# CONFIGURED_APPS += examples/cdcacm
|
||||||
|
# Uncomment the following to enable the examples/usbterm built-in
|
||||||
|
# CONFIGURED_APPS += examples/usbterm
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Prolifics PL2303 emulation configurations
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_PL2303),y)
|
||||||
|
# Uncomment the following to enable the examples/usbterm built-in
|
||||||
|
# CONFIGURED_APPS += examples/usbterm
|
||||||
|
endif
|
||||||
|
endif
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,317 @@
|
|||||||
|
/****************************************************************************
|
||||||
|
* configs/pic32-starterkit/nsh/ld.script
|
||||||
|
*
|
||||||
|
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||||
|
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||||
|
* used to endorse or promote products derived from this software
|
||||||
|
* without specific prior written permission.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||||
|
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||||
|
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
****************************************************************************/
|
||||||
|
/* Memory Regions ***********************************************************/
|
||||||
|
|
||||||
|
MEMORY
|
||||||
|
{
|
||||||
|
/* The PIC32MX795F512L has 512Kb of program FLASH at physical address
|
||||||
|
* 0x1d000000 but is always accessed at KSEG0 address 0x9d00:0000
|
||||||
|
*/
|
||||||
|
|
||||||
|
kseg0_progmem (rx) : ORIGIN = 0x9d000000, LENGTH = 512K
|
||||||
|
|
||||||
|
/* The PIC32MX795F512L has 12Kb of boot FLASH at physical address
|
||||||
|
* 0x1fc00000. The initial reset vector is in KSEG1, but all other
|
||||||
|
* accesses are in KSEG0.
|
||||||
|
*
|
||||||
|
* REGION PHYSICAL KSEG SIZE
|
||||||
|
* DESCRIPTION START ADDR (BYTES)
|
||||||
|
* ------------- ---------- ------ ----------------------
|
||||||
|
* Exceptions:*
|
||||||
|
* Reset 0x1fc00000 KSEG1 512 512
|
||||||
|
* TLB Refill 0x1fc00200 KSEG1 256 768
|
||||||
|
* Cache Error 0x1fc00300 KSEG1 128 896
|
||||||
|
* Others 0x1fc00380 KSEG1 128 1024 (1Kb)
|
||||||
|
* Interrupt 0x1fc00400 KSEG1 128 1152
|
||||||
|
* JTAG 0x1fc00480 KSEG1 16 1168
|
||||||
|
* Exceptions 0x1fc00490 KSEG0 8192-1168 8192 (4Kb)
|
||||||
|
* Debug code 0x1fc02000 KSEG1 4096-16 12272
|
||||||
|
* DEVCFG3-0 0x1fc02ff0 KSEG1 16 12288 (12Kb)
|
||||||
|
*
|
||||||
|
* Exceptions assume:
|
||||||
|
*
|
||||||
|
* STATUS: BEV=0/1 and EXL=0
|
||||||
|
* CAUSE: IV=1
|
||||||
|
* JTAG: ProbEn=0
|
||||||
|
* And multi-vector support disabled
|
||||||
|
*/
|
||||||
|
|
||||||
|
kseg1_reset (rx) : ORIGIN = 0xbfc00000, LENGTH = 384
|
||||||
|
kseg1_genexcpt (rx) : ORIGIN = 0xbfc00180, LENGTH = 128
|
||||||
|
kseg1_ebexcpt (rx) : ORIGIN = 0xbfc00200, LENGTH = 128
|
||||||
|
kseg1_bevexcpt (rx) : ORIGIN = 0xbfc00380, LENGTH = 128
|
||||||
|
kseg1_intexcpt (rx) : ORIGIN = 0xbfc00400, LENGTH = 128
|
||||||
|
kseg1_dbgexcpt (rx) : ORIGIN = 0xbfc00480, LENGTH = 16
|
||||||
|
kseg0_bootmem (rx) : ORIGIN = 0x9fc00490, LENGTH = 8192-1168
|
||||||
|
kseg1_dbgcode (rx) : ORIGIN = 0xbfc02000, LENGTH = 4096-16
|
||||||
|
kseg1_devcfg (r) : ORIGIN = 0xbfc02ff0, LENGTH = 16
|
||||||
|
|
||||||
|
/* The PIC32MX795F512L has 128Kb of data memory at physical address
|
||||||
|
* 0x00000000. Since the PIC32MX has no data cache, this memory is
|
||||||
|
* always accessed through KSEG1.
|
||||||
|
*
|
||||||
|
* When used with MPLAB, we need to set aside 512 bytes of memory
|
||||||
|
* for use by MPLAB.
|
||||||
|
*/
|
||||||
|
|
||||||
|
kseg1_datamem (w!x) : ORIGIN = 0xa0000200, LENGTH = 128K - 512
|
||||||
|
}
|
||||||
|
|
||||||
|
OUTPUT_FORMAT("elf32-tradlittlemips")
|
||||||
|
OUTPUT_ARCH(pic32mx)
|
||||||
|
ENTRY(__start)
|
||||||
|
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
/* Boot FLASH sections */
|
||||||
|
|
||||||
|
.reset :
|
||||||
|
{
|
||||||
|
KEEP (*(.reset))
|
||||||
|
} > kseg1_reset
|
||||||
|
|
||||||
|
/* Exception handlers. The following is assumed:
|
||||||
|
*
|
||||||
|
* STATUS: BEV=1 and EXL=0
|
||||||
|
* CAUSE: IV=1
|
||||||
|
* JTAG: ProbEn=0
|
||||||
|
* And multi-vector support disabled
|
||||||
|
*
|
||||||
|
* In that configuration, the vector locations become:
|
||||||
|
*
|
||||||
|
* Reset, Soft Reset bfc0:0000
|
||||||
|
* TLB Refill bfc0:0200
|
||||||
|
* Cache Error bfc0:0300
|
||||||
|
* All others bfc0:0380
|
||||||
|
* Interrupt bfc0:0400
|
||||||
|
* EJTAG Debug bfc0:0480
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* KSEG1 exception handler "trampolines" */
|
||||||
|
|
||||||
|
.gen_excpt :
|
||||||
|
{
|
||||||
|
KEEP (*(.gen_excpt))
|
||||||
|
} > kseg1_genexcpt
|
||||||
|
|
||||||
|
.ebase_excpt :
|
||||||
|
{
|
||||||
|
KEEP (*(.ebase_excpt))
|
||||||
|
} > kseg1_ebexcpt
|
||||||
|
|
||||||
|
.bev_excpt :
|
||||||
|
{
|
||||||
|
KEEP (*(.bev_excpt))
|
||||||
|
} > kseg1_bevexcpt
|
||||||
|
|
||||||
|
.int_excpt :
|
||||||
|
{
|
||||||
|
KEEP (*(.int_excpt))
|
||||||
|
} > kseg1_intexcpt
|
||||||
|
|
||||||
|
.dbg_excpt = ORIGIN(kseg1_dbgexcpt);
|
||||||
|
|
||||||
|
.start :
|
||||||
|
{
|
||||||
|
/* KSEG0 Reset startup logic */
|
||||||
|
|
||||||
|
*(.start)
|
||||||
|
|
||||||
|
/* KSEG0 exception handlers */
|
||||||
|
|
||||||
|
*(.nmi_handler)
|
||||||
|
*(.bev_handler)
|
||||||
|
*(.int_handler)
|
||||||
|
} > kseg0_bootmem
|
||||||
|
|
||||||
|
.dbg_code = ORIGIN(kseg1_dbgcode);
|
||||||
|
|
||||||
|
.devcfg :
|
||||||
|
{
|
||||||
|
KEEP (*(.devcfg))
|
||||||
|
} > kseg1_devcfg
|
||||||
|
|
||||||
|
/* Program FLASH sections */
|
||||||
|
|
||||||
|
.text :
|
||||||
|
{
|
||||||
|
_stext = ABSOLUTE(.);
|
||||||
|
*(.text .text.*)
|
||||||
|
*(.stub)
|
||||||
|
KEEP (*(.text.*personality*))
|
||||||
|
*(.gnu.linkonce.t.*)
|
||||||
|
*(.gnu.warning)
|
||||||
|
*(.mips16.fn.*)
|
||||||
|
*(.mips16.call.*)
|
||||||
|
|
||||||
|
/* Read-only data is included in the text section */
|
||||||
|
|
||||||
|
*(.rodata .rodata.*)
|
||||||
|
*(.rodata1)
|
||||||
|
*(.gnu.linkonce.r.*)
|
||||||
|
|
||||||
|
/* Small initialized constant global and static data */
|
||||||
|
|
||||||
|
*(.sdata2 .sdata2.*)
|
||||||
|
*(.gnu.linkonce.s2.*)
|
||||||
|
|
||||||
|
/* Uninitialized constant global and static data */
|
||||||
|
|
||||||
|
*(.sbss2 .sbss2.*)
|
||||||
|
*(.gnu.linkonce.sb2.*)
|
||||||
|
_etext = ABSOLUTE(.);
|
||||||
|
} > kseg0_progmem
|
||||||
|
|
||||||
|
/* Initialization data begins here in progmem */
|
||||||
|
|
||||||
|
_data_loaddr = LOADADDR(.data);
|
||||||
|
|
||||||
|
.eh_frame_hdr : { *(.eh_frame_hdr) }
|
||||||
|
.eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
|
||||||
|
|
||||||
|
/* RAM functions are positioned at the beginning of RAM so that
|
||||||
|
* they can be guaranteed to satisfy the 2Kb alignment requirement.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* This causes failures if there are no RAM functions
|
||||||
|
.ramfunc ALIGN(2K) :
|
||||||
|
{
|
||||||
|
_sramfunc = ABSOLUTE(.);
|
||||||
|
*(.ramfunc .ramfunc.*)
|
||||||
|
_eramfunc = ABSOLUTE(.);
|
||||||
|
} > kseg1_datamem AT > kseg0_progmem
|
||||||
|
|
||||||
|
_ramfunc_loadaddr = LOADADDR(.ramfunc);
|
||||||
|
_ramfunc_sizeof = SIZEOF(.ramfunc);
|
||||||
|
_bmxdkpba_address = _sramfunc - ORIGIN(kseg1_datamem) ;
|
||||||
|
_bmxdudba_address = LENGTH(kseg1_datamem) ;
|
||||||
|
_bmxdupba_address = LENGTH(kseg1_datamem) ;
|
||||||
|
*/
|
||||||
|
|
||||||
|
.data :
|
||||||
|
{
|
||||||
|
_sdata = ABSOLUTE(.);
|
||||||
|
*(.data .data.*)
|
||||||
|
*(.gnu.linkonce.d.*)
|
||||||
|
KEEP (*(.gnu.linkonce.d.*personality*))
|
||||||
|
*(.data1)
|
||||||
|
} > kseg1_datamem AT > kseg0_progmem
|
||||||
|
|
||||||
|
.eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
|
||||||
|
_gp = ALIGN(16) + 0x7FF0 ;
|
||||||
|
|
||||||
|
.got :
|
||||||
|
{
|
||||||
|
*(.got.plt) *(.got)
|
||||||
|
} > kseg1_datamem AT > kseg0_progmem
|
||||||
|
|
||||||
|
.sdata :
|
||||||
|
{
|
||||||
|
*(.sdata .sdata.* .gnu.linkonce.s.*)
|
||||||
|
} > kseg1_datamem AT > kseg0_progmem
|
||||||
|
|
||||||
|
.lit8 :
|
||||||
|
{
|
||||||
|
*(.lit8)
|
||||||
|
} > kseg1_datamem AT > kseg0_progmem
|
||||||
|
|
||||||
|
.lit4 :
|
||||||
|
{
|
||||||
|
*(.lit4)
|
||||||
|
_edata = ABSOLUTE(.);
|
||||||
|
} >kseg1_datamem AT>kseg0_progmem
|
||||||
|
|
||||||
|
.sbss :
|
||||||
|
{
|
||||||
|
_sbss = ABSOLUTE(.);
|
||||||
|
*(.dynsbss)
|
||||||
|
*(.sbss .sbss.* .gnu.linkonce.sb.*)
|
||||||
|
*(.scommon)
|
||||||
|
} >kseg1_datamem
|
||||||
|
|
||||||
|
.bss :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss .bss.*)
|
||||||
|
*(.gnu.linkonce.b.*)
|
||||||
|
*(COMMON)
|
||||||
|
_ebss = ABSOLUTE(.);
|
||||||
|
} > kseg1_datamem
|
||||||
|
|
||||||
|
/* Stabs debugging sections */
|
||||||
|
|
||||||
|
.stab 0 : { *(.stab) }
|
||||||
|
.stabstr 0 : { *(.stabstr) }
|
||||||
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
|
.stab.index 0 : { *(.stab.index) }
|
||||||
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
|
.comment 0 : { *(.comment) }
|
||||||
|
|
||||||
|
/* DWARF debug sections */
|
||||||
|
/* DWARF 1 */
|
||||||
|
|
||||||
|
.debug 0 : { *(.debug) }
|
||||||
|
.line 0 : { *(.line) }
|
||||||
|
|
||||||
|
/* GNU DWARF 1 extensions */
|
||||||
|
|
||||||
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
|
|
||||||
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
|
|
||||||
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
|
|
||||||
|
/* DWARF 2 */
|
||||||
|
|
||||||
|
.debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) }
|
||||||
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
|
.debug_line 0 : { *(.debug_line) }
|
||||||
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
|
.debug_str 0 : { *(.debug_str) }
|
||||||
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
|
|
||||||
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
|
|
||||||
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
|
|
||||||
|
/DISCARD/ : { *(.note.GNU-stack) }
|
||||||
|
}
|
||||||
Executable
+61
@@ -0,0 +1,61 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# configs/pic32-starterkit/nsh/setenv.sh
|
||||||
|
#
|
||||||
|
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||||
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use in source and binary forms, with or without
|
||||||
|
# modification, are permitted provided that the following conditions
|
||||||
|
# are met:
|
||||||
|
#
|
||||||
|
# 1. Redistributions of source code must retain the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer.
|
||||||
|
# 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
# notice, this list of conditions and the following disclaimer in
|
||||||
|
# the documentation and/or other materials provided with the
|
||||||
|
# distribution.
|
||||||
|
# 3. Neither the name NuttX nor the names of its contributors may be
|
||||||
|
# used to endorse or promote products derived from this software
|
||||||
|
# without specific prior written permission.
|
||||||
|
#
|
||||||
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||||
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||||
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||||
|
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||||
|
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||||
|
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||||
|
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||||
|
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||||
|
# POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
#
|
||||||
|
|
||||||
|
if [ "$_" = "$0" ] ; then
|
||||||
|
echo "You must source this script, not run it!" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${PATH_ORIG}" ]; then export PATH_ORIG="${PATH}"; fi
|
||||||
|
|
||||||
|
WD=`pwd`
|
||||||
|
if [ ! -x "setenv.sh" ]; then
|
||||||
|
echo "This script must be executed from the top-level NuttX build directory"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# This the Cygwin path to the location where I installed the MicroChip
|
||||||
|
# PIC32MX toolchain under windows. This is *not* the default install
|
||||||
|
# location so you will probably have to edit this. You will also have
|
||||||
|
# to edit this if you install a different version of if you install
|
||||||
|
# the Linux PIC32MX toolchain as well
|
||||||
|
export TOOLCHAIN_BIN="/cygdrive/c/MicroChip/mplabc32/v1.12/bin"
|
||||||
|
|
||||||
|
# This is the path to the tools subdirectory
|
||||||
|
export PIC32TOOL_DIR="${WD}/configs/pic32-starterkit/tools"
|
||||||
|
|
||||||
|
# Add the path to the toolchain to the PATH varialble
|
||||||
|
export PATH="${TOOLCHAIN_BIN}:${PIC32TOOL_DIR}:/sbin:/usr/sbin:${PATH_ORIG}"
|
||||||
|
|
||||||
|
echo "PATH : ${PATH}"
|
||||||
@@ -141,8 +141,8 @@ CONFIG_PIC32MX_OC5=n
|
|||||||
CONFIG_PIC32MX_I2C1=n
|
CONFIG_PIC32MX_I2C1=n
|
||||||
CONFIG_PIC32MX_I2C2=n
|
CONFIG_PIC32MX_I2C2=n
|
||||||
CONFIG_PIC32MX_SPI2=n
|
CONFIG_PIC32MX_SPI2=n
|
||||||
CONFIG_PIC32MX_UART1=n
|
CONFIG_PIC32MX_UART1=y
|
||||||
CONFIG_PIC32MX_UART2=y
|
CONFIG_PIC32MX_UART2=n
|
||||||
CONFIG_PIC32MX_UART3=n
|
CONFIG_PIC32MX_UART3=n
|
||||||
CONFIG_PIC32MX_UART4=n
|
CONFIG_PIC32MX_UART4=n
|
||||||
CONFIG_PIC32MX_UART5=n
|
CONFIG_PIC32MX_UART5=n
|
||||||
@@ -209,8 +209,8 @@ CONFIG_PIC32MX_ICESEL=1
|
|||||||
# CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
|
# CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
|
||||||
# CONFIG_UARTn_2STOP - Two stop bits
|
# CONFIG_UARTn_2STOP - Two stop bits
|
||||||
#
|
#
|
||||||
CONFIG_UART1_SERIAL_CONSOLE=n
|
CONFIG_UART1_SERIAL_CONSOLE=y
|
||||||
CONFIG_UART2_SERIAL_CONSOLE=y
|
CONFIG_UART2_SERIAL_CONSOLE=n
|
||||||
CONFIG_UART3_SERIAL_CONSOLE=n
|
CONFIG_UART3_SERIAL_CONSOLE=n
|
||||||
CONFIG_UART4_SERIAL_CONSOLE=n
|
CONFIG_UART4_SERIAL_CONSOLE=n
|
||||||
CONFIG_UART5_SERIAL_CONSOLE=n
|
CONFIG_UART5_SERIAL_CONSOLE=n
|
||||||
@@ -298,6 +298,12 @@ CONFIG_NET_NTXDESC=7
|
|||||||
CONFIG_NET_NRXDESC=7
|
CONFIG_NET_NRXDESC=7
|
||||||
CONFIG_NET_REGDEBUG=n
|
CONFIG_NET_REGDEBUG=n
|
||||||
|
|
||||||
|
#
|
||||||
|
# PIC32MX-specific USB device setup
|
||||||
|
#
|
||||||
|
CONFIG_PIC32MX_USBDEV_REGDEBUG=n
|
||||||
|
CONFIG_PIC32MX_USBDEV_BDTDEBUG=n
|
||||||
|
|
||||||
#
|
#
|
||||||
# General build options
|
# General build options
|
||||||
#
|
#
|
||||||
@@ -408,12 +414,18 @@ CONFIG_HAVE_LIBM=n
|
|||||||
# thread. Default: CONFIG_IDLETHREAD_STACKSIZE.
|
# thread. Default: CONFIG_IDLETHREAD_STACKSIZE.
|
||||||
# CONFIG_SIG_SIGWORK - The signal number that will be used to wake-up
|
# CONFIG_SIG_SIGWORK - The signal number that will be used to wake-up
|
||||||
# the worker thread. Default: 4
|
# the worker thread. Default: 4
|
||||||
|
# CONFIG_SCHED_WAITPID - Enable the waitpid() API
|
||||||
|
# CONFIG_SCHED_ATEXIT - Enabled the atexit() API
|
||||||
#
|
#
|
||||||
#CONFIG_APPS_DIR=
|
#CONFIG_APPS_DIR=
|
||||||
|
|
||||||
CONFIG_DEBUG=n
|
CONFIG_DEBUG=n
|
||||||
CONFIG_DEBUG_VERBOSE=n
|
CONFIG_DEBUG_VERBOSE=n
|
||||||
CONFIG_DEBUG_SYMBOLS=n
|
CONFIG_DEBUG_SYMBOLS=n
|
||||||
CONFIG_DEBUG_SCHED=n
|
CONFIG_DEBUG_SCHED=n
|
||||||
|
|
||||||
|
CONFIG_HAVE_CXX=n
|
||||||
|
CONFIG_HAVE_CXXINITIALIZE=n
|
||||||
CONFIG_MM_REGIONS=1
|
CONFIG_MM_REGIONS=1
|
||||||
CONFIG_ARCH_LOWPUTC=y
|
CONFIG_ARCH_LOWPUTC=y
|
||||||
CONFIG_RR_INTERVAL=200
|
CONFIG_RR_INTERVAL=200
|
||||||
@@ -434,10 +446,12 @@ CONFIG_FDCLONE_DISABLE=n
|
|||||||
CONFIG_FDCLONE_STDIO=n
|
CONFIG_FDCLONE_STDIO=n
|
||||||
CONFIG_SDCLONE_DISABLE=y
|
CONFIG_SDCLONE_DISABLE=y
|
||||||
CONFIG_SCHED_WORKQUEUE=n
|
CONFIG_SCHED_WORKQUEUE=n
|
||||||
CONFIG_SCHED_WORKPRIORITY=50
|
CONFIG_SCHED_WORKPRIORITY=192
|
||||||
CONFIG_SCHED_WORKPERIOD=(50*1000)
|
CONFIG_SCHED_WORKPERIOD=(50*1000)
|
||||||
CONFIG_SCHED_WORKSTACKSIZE=1024
|
CONFIG_SCHED_WORKSTACKSIZE=1024
|
||||||
CONFIG_SIG_SIGWORK=4
|
CONFIG_SIG_SIGWORK=4
|
||||||
|
CONFIG_SCHED_WAITPID=n
|
||||||
|
CONFIG_SCHED_ATEXIT=n
|
||||||
|
|
||||||
#
|
#
|
||||||
# Settings for nxflat
|
# Settings for nxflat
|
||||||
@@ -521,6 +535,14 @@ CONFIG_ARCH_BZERO=n
|
|||||||
# CONFIG_NAME_MAX - The maximum size of a file name.
|
# CONFIG_NAME_MAX - The maximum size of a file name.
|
||||||
# CONFIG_STDIO_BUFFER_SIZE - Size of the buffer to allocate
|
# CONFIG_STDIO_BUFFER_SIZE - Size of the buffer to allocate
|
||||||
# on fopen. (Only if CONFIG_NFILE_STREAMS > 0)
|
# on fopen. (Only if CONFIG_NFILE_STREAMS > 0)
|
||||||
|
# CONFIG_STDIO_LINEBUFFER - If standard C buffered I/O is enabled
|
||||||
|
# (CONFIG_STDIO_BUFFER_SIZE > 0), then this option may be added
|
||||||
|
# to force automatic, line-oriented flushing the output buffer
|
||||||
|
# for putc(), fputc(), putchar(), puts(), fputs(), printf(),
|
||||||
|
# fprintf(), and vfprintf(). When a newline is encountered in
|
||||||
|
# the output string, the output buffer will be flushed. This
|
||||||
|
# (slightly) increases the NuttX footprint but supports the kind
|
||||||
|
# of behavior that people expect for printf().
|
||||||
# CONFIG_NUNGET_CHARS - Number of characters that can be
|
# CONFIG_NUNGET_CHARS - Number of characters that can be
|
||||||
# buffered by ungetc() (Only if CONFIG_NFILE_STREAMS > 0)
|
# buffered by ungetc() (Only if CONFIG_NFILE_STREAMS > 0)
|
||||||
# CONFIG_PREALLOC_MQ_MSGS - The number of pre-allocated message
|
# CONFIG_PREALLOC_MQ_MSGS - The number of pre-allocated message
|
||||||
@@ -545,7 +567,8 @@ CONFIG_NPTHREAD_KEYS=4
|
|||||||
CONFIG_NFILE_DESCRIPTORS=8
|
CONFIG_NFILE_DESCRIPTORS=8
|
||||||
CONFIG_NFILE_STREAMS=8
|
CONFIG_NFILE_STREAMS=8
|
||||||
CONFIG_NAME_MAX=32
|
CONFIG_NAME_MAX=32
|
||||||
CONFIG_STDIO_BUFFER_SIZE=256
|
CONFIG_STDIO_BUFFER_SIZE=64
|
||||||
|
CONFIG_STDIO_LINEBUFFER=y
|
||||||
CONFIG_NUNGET_CHARS=2
|
CONFIG_NUNGET_CHARS=2
|
||||||
CONFIG_PREALLOC_MQ_MSGS=4
|
CONFIG_PREALLOC_MQ_MSGS=4
|
||||||
CONFIG_MQ_MAXMSGSIZE=32
|
CONFIG_MQ_MAXMSGSIZE=32
|
||||||
@@ -558,9 +581,49 @@ CONFIG_PREALLOC_TIMERS=4
|
|||||||
#
|
#
|
||||||
# CONFIG_FS_FAT - Enable FAT filesystem support
|
# CONFIG_FS_FAT - Enable FAT filesystem support
|
||||||
# CONFIG_FAT_SECTORSIZE - Max supported sector size
|
# CONFIG_FAT_SECTORSIZE - Max supported sector size
|
||||||
|
# CONFIG_FAT_LCNAMES - Enable use of the NT-style upper/lower case 8.3
|
||||||
|
# file name support.
|
||||||
|
# CONFIG_FAT_LFN - Enable FAT long file names. NOTE: Microsoft claims
|
||||||
|
# patents on FAT long file name technology. Please read the
|
||||||
|
# disclaimer in the top-level COPYING file and only enable this
|
||||||
|
# feature if you understand these issues.
|
||||||
|
# CONFIG_FAT_MAXFNAME - If CONFIG_FAT_LFN is defined, then the
|
||||||
|
# default, maximum long file name is 255 bytes. This can eat up
|
||||||
|
# a lot of memory (especially stack space). If you are willing
|
||||||
|
# to live with some non-standard, short long file names, then
|
||||||
|
# define this value. A good choice would be the same value as
|
||||||
|
# selected for CONFIG_NAME_MAX which will limit the visibility
|
||||||
|
# of longer file names anyway.
|
||||||
|
# CONFIG_FS_NXFFS: Enable NuttX FLASH file system (NXFF) support.
|
||||||
|
# CONFIG_NXFFS_ERASEDSTATE: The erased state of FLASH.
|
||||||
|
# This must have one of the values of 0xff or 0x00.
|
||||||
|
# Default: 0xff.
|
||||||
|
# CONFIG_NXFFS_PACKTHRESHOLD: When packing flash file data,
|
||||||
|
# don't both with file chunks smaller than this number of data bytes.
|
||||||
|
# CONFIG_NXFFS_MAXNAMLEN: The maximum size of an NXFFS file name.
|
||||||
|
# Default: 255.
|
||||||
|
# CONFIG_NXFFS_PACKTHRESHOLD: When packing flash file data,
|
||||||
|
# don't both with file chunks smaller than this number of data bytes.
|
||||||
|
# Default: 32.
|
||||||
|
# CONFIG_NXFFS_TAILTHRESHOLD: clean-up can either mean
|
||||||
|
# packing files together toward the end of the file or, if file are
|
||||||
|
# deleted at the end of the file, clean up can simply mean erasing
|
||||||
|
# the end of FLASH memory so that it can be re-used again. However,
|
||||||
|
# doing this can also harm the life of the FLASH part because it can
|
||||||
|
# mean that the tail end of the FLASH is re-used too often. This
|
||||||
|
# threshold determines if/when it is worth erased the tail end of FLASH
|
||||||
|
# and making it available for re-use (and possible over-wear).
|
||||||
|
# Default: 8192.
|
||||||
# CONFIG_FS_ROMFS - Enable ROMFS filesystem support
|
# CONFIG_FS_ROMFS - Enable ROMFS filesystem support
|
||||||
|
# CONFIG_FS_RAMMAP - For file systems that do not support XIP, this
|
||||||
|
# option will enable a limited form of memory mapping that is
|
||||||
|
# implemented by copying whole files into memory.
|
||||||
#
|
#
|
||||||
CONFIG_FS_FAT=n
|
CONFIG_FS_FAT=n
|
||||||
|
CONFIG_FAT_LCNAMES=n
|
||||||
|
CONFIG_FAT_LFN=n
|
||||||
|
CONFIG_FAT_MAXFNAME=32
|
||||||
|
CONFIG_FS_NXFFS=n
|
||||||
CONFIG_FS_ROMFS=n
|
CONFIG_FS_ROMFS=n
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -734,6 +797,78 @@ CONFIG_PL2303_PRODUCTSTR="USBdev Serial"
|
|||||||
CONFIG_PL2303_RXBUFSIZE=512
|
CONFIG_PL2303_RXBUFSIZE=512
|
||||||
CONFIG_PL2303_TXBUFSIZE=512
|
CONFIG_PL2303_TXBUFSIZE=512
|
||||||
|
|
||||||
|
#
|
||||||
|
# USB serial device class driver (Standard CDC ACM class)
|
||||||
|
#
|
||||||
|
# CONFIG_CDCACM
|
||||||
|
# Enable compilation of the USB serial driver
|
||||||
|
# CONFIG_CDCACM_CONSOLE
|
||||||
|
# Configures the CDC/ACM serial port as the console device.
|
||||||
|
# CONFIG_CDCACM_EP0MAXPACKET
|
||||||
|
# Endpoint 0 max packet size. Default 64
|
||||||
|
# CONFIG_CDCACM_EPINTIN
|
||||||
|
# The logical 7-bit address of a hardware endpoint that supports
|
||||||
|
# interrupt IN operation. Default 2.
|
||||||
|
# CONFIG_CDCACM_EPINTIN_FSSIZE
|
||||||
|
# Max package size for the interrupt IN endpoint if full speed mode.
|
||||||
|
# Default 64.
|
||||||
|
# CONFIG_CDCACM_EPINTIN_HSSIZE
|
||||||
|
# Max package size for the interrupt IN endpoint if high speed mode.
|
||||||
|
# Default 64
|
||||||
|
# CONFIG_CDCACM_EPBULKOUT
|
||||||
|
# The logical 7-bit address of a hardware endpoint that supports
|
||||||
|
# bulk OUT operation
|
||||||
|
# CONFIG_CDCACM_EPBULKOUT_FSSIZE
|
||||||
|
# Max package size for the bulk OUT endpoint if full speed mode.
|
||||||
|
# Default 64.
|
||||||
|
# CONFIG_CDCACM_EPBULKOUT_HSSIZE
|
||||||
|
# Max package size for the bulk OUT endpoint if high speed mode.
|
||||||
|
# Default 512.
|
||||||
|
# CONFIG_CDCACM_EPBULKIN
|
||||||
|
# The logical 7-bit address of a hardware endpoint that supports
|
||||||
|
# bulk IN operation
|
||||||
|
# CONFIG_CDCACM_EPBULKIN_FSSIZE
|
||||||
|
# Max package size for the bulk IN endpoint if full speed mode.
|
||||||
|
# Default 64.
|
||||||
|
# CONFIG_CDCACM_EPBULKIN_HSSIZE
|
||||||
|
# Max package size for the bulk IN endpoint if high speed mode.
|
||||||
|
# Default 512.
|
||||||
|
# CONFIG_CDCACM_NWRREQS and CONFIG_CDCACM_NRDREQS
|
||||||
|
# The number of write/read requests that can be in flight.
|
||||||
|
# Default 256.
|
||||||
|
# CONFIG_CDCACM_VENDORID and CONFIG_CDCACM_VENDORSTR
|
||||||
|
# The vendor ID code/string. Default 0x0525 and "NuttX"
|
||||||
|
# 0x0525 is the Netchip vendor and should not be used in any
|
||||||
|
# products. This default VID was selected for compatibility with
|
||||||
|
# the Linux CDC ACM default VID.
|
||||||
|
# CONFIG_CDCACM_PRODUCTID and CONFIG_CDCACM_PRODUCTSTR
|
||||||
|
# The product ID code/string. Default 0xara7 and "CDC/ACM Serial"
|
||||||
|
# 0xa4a7 was selected for compatibility with the Linux CDC ACM
|
||||||
|
# default PID.
|
||||||
|
# CONFIG_CDCACM_RXBUFSIZE and CONFIG_CDCACM_TXBUFSIZE
|
||||||
|
# Size of the serial receive/transmit buffers. Default 256.
|
||||||
|
#
|
||||||
|
CONFIG_CDCACM=n
|
||||||
|
CONFIG_CDCACM_CONSOLE=n
|
||||||
|
#CONFIG_CDCACM_EP0MAXPACKET
|
||||||
|
#CONFIG_CDCACM_EPINTIN
|
||||||
|
#CONFIG_CDCACM_EPINTIN_FSSIZE
|
||||||
|
#CONFIG_CDCACM_EPINTIN_HSSIZE
|
||||||
|
#CONFIG_CDCACM_EPBULKOUT
|
||||||
|
#CONFIG_CDCACM_EPBULKOUT_FSSIZE
|
||||||
|
#CONFIG_CDCACM_EPBULKOUT_HSSIZE
|
||||||
|
#CONFIG_CDCACM_EPBULKIN
|
||||||
|
#CONFIG_CDCACM_EPBULKIN_FSSIZE
|
||||||
|
#CONFIG_CDCACM_EPBULKIN_HSSIZE
|
||||||
|
#CONFIG_CDCACM_NWRREQS
|
||||||
|
#CONFIG_CDCACM_NRDREQS
|
||||||
|
#CONFIG_CDCACM_VENDORID
|
||||||
|
#CONFIG_CDCACM_VENDORSTR
|
||||||
|
#CONFIG_CDCACM_PRODUCTID
|
||||||
|
#CONFIG_CDCACM_PRODUCTSTR
|
||||||
|
#CONFIG_CDCACM_RXBUFSIZE
|
||||||
|
#CONFIG_CDCACM_TXBUFSIZE
|
||||||
|
|
||||||
#
|
#
|
||||||
# USB Storage Device Configuration
|
# USB Storage Device Configuration
|
||||||
#
|
#
|
||||||
@@ -814,6 +949,9 @@ CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
|
|||||||
#
|
#
|
||||||
# Settings for apps/nshlib
|
# Settings for apps/nshlib
|
||||||
#
|
#
|
||||||
|
# CONFIG_NSH_BUILTIN_APPS - Support external registered,
|
||||||
|
# "named" applications that can be executed from the NSH
|
||||||
|
# command line (see apps/README.txt for more information).
|
||||||
# CONFIG_NSH_FILEIOSIZE - Size of a static I/O buffer
|
# CONFIG_NSH_FILEIOSIZE - Size of a static I/O buffer
|
||||||
# CONFIG_NSH_STRERROR - Use strerror(errno)
|
# CONFIG_NSH_STRERROR - Use strerror(errno)
|
||||||
# CONFIG_NSH_LINELEN - Maximum length of one command line
|
# CONFIG_NSH_LINELEN - Maximum length of one command line
|
||||||
@@ -844,6 +982,7 @@ CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=3
|
|||||||
# CONFIG_NSH_FATNSECTORS - FAT FS number of sectors
|
# CONFIG_NSH_FATNSECTORS - FAT FS number of sectors
|
||||||
# CONFIG_NSH_FATMOUNTPT - FAT FS mountpoint
|
# CONFIG_NSH_FATMOUNTPT - FAT FS mountpoint
|
||||||
#
|
#
|
||||||
|
CONFIG_NSH_BUILTIN_APPS=n
|
||||||
CONFIG_NSH_FILEIOSIZE=512
|
CONFIG_NSH_FILEIOSIZE=512
|
||||||
CONFIG_NSH_STRERROR=n
|
CONFIG_NSH_STRERROR=n
|
||||||
CONFIG_NSH_LINELEN=64
|
CONFIG_NSH_LINELEN=64
|
||||||
@@ -943,6 +1082,76 @@ CONFIG_EXAMPLES_USBMSC_TRACETRANSFERS=n
|
|||||||
CONFIG_EXAMPLES_USBMSC_TRACECONTROLLER=n
|
CONFIG_EXAMPLES_USBMSC_TRACECONTROLLER=n
|
||||||
CONFIG_EXAMPLES_USBMSC_TRACEINTERRUPTS=n
|
CONFIG_EXAMPLES_USBMSC_TRACEINTERRUPTS=n
|
||||||
|
|
||||||
|
#
|
||||||
|
# Settings for examples/usbterm
|
||||||
|
#
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_BUILTIN - Build the usbterm example as an NSH
|
||||||
|
# built-in command. NOTE: This is not fully functional as of this
|
||||||
|
# writing.. It should work, but there is no mechanism in place yet
|
||||||
|
# to exit the USB terminal program and return to NSH.
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_DEVINIT - If defined, then the example will
|
||||||
|
# call a user provided function as part of its initialization:
|
||||||
|
# int usbterm_devinit(void);
|
||||||
|
# And another user provided function at termination:
|
||||||
|
# void usbterm_devuninit(void);
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_BUFLEN - The size of the input and output
|
||||||
|
# buffers used for receiving data. Default 256 bytes.
|
||||||
|
#
|
||||||
|
# If CONFIG_USBDEV_TRACE is enabled (or CONFIG_DEBUG and CONFIG_DEBUG_USB, or
|
||||||
|
# CONFIG_USBDEV_TRACE), then the example code will also manage the USB trace
|
||||||
|
# output. The amount of trace output can be controlled using:
|
||||||
|
#
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_TRACEINIT
|
||||||
|
# Show initialization events
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_TRACECLASS
|
||||||
|
# Show class driver events
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_TRACETRANSFERS
|
||||||
|
# Show data transfer events
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_TRACECONTROLLER
|
||||||
|
# Show controller events
|
||||||
|
# CONFIG_EXAMPLES_USBTERM_TRACEINTERRUPTS
|
||||||
|
# Show interrupt-related events.
|
||||||
|
#
|
||||||
|
CONFIG_EXAMPLES_USBTERM_BUILTIN=y
|
||||||
|
CONFIG_EXAMPLES_USBTERM_DEVINIT=y
|
||||||
|
#CONFIG_EXAMPLES_USBTERM_BUFLEN
|
||||||
|
CONFIG_EXAMPLES_USBTERM_TRACEINIT=n
|
||||||
|
CONFIG_EXAMPLES_USBTERM_TRACECLASS=n
|
||||||
|
CONFIG_EXAMPLES_USBTERM_TRACETRANSFERS=n
|
||||||
|
CONFIG_EXAMPLES_USBTERM_TRACECONTROLLER=n
|
||||||
|
CONFIG_EXAMPLES_USBTERM_TRACEINTERRUPTS=n
|
||||||
|
|
||||||
|
#
|
||||||
|
# Settings for examples/cdcacm
|
||||||
|
#
|
||||||
|
# Configuration prequisites:
|
||||||
|
#
|
||||||
|
# CONFIG_USBDEV=y : USB device support must be enabled
|
||||||
|
# CONFIG_CDCACM=y : The CDC/ACM driver must be built
|
||||||
|
# CONFIG_NSH_BUILTIN_APPS : NSH built-in application support must be enabled
|
||||||
|
#
|
||||||
|
# Configuration options specific to this example:
|
||||||
|
#
|
||||||
|
# CONFIG_EXAMPLES_CDCACM_DEVMINOR
|
||||||
|
# The minor number of the CDC/ACM device.
|
||||||
|
# CONFIG_EXAMPLES_CDCACM_TRACEINIT
|
||||||
|
# Show initialization events
|
||||||
|
# CONFIG_EXAMPLES_CDCACM_TRACECLASS
|
||||||
|
# Show class driver events
|
||||||
|
# CONFIG_EXAMPLES_CDCACM_TRACETRANSFERS
|
||||||
|
# Show data transfer events
|
||||||
|
# CONFIG_EXAMPLES_CDCACM_TRACECONTROLLER
|
||||||
|
# Show controller events
|
||||||
|
# CONFIG_EXAMPLES_CDCACM_TRACEINTERRUPTS
|
||||||
|
# Show interrupt-related events.
|
||||||
|
#
|
||||||
|
CONFIG_EXAMPLES_CDCACM_DEVMINOR=0
|
||||||
|
CONFIG_EXAMPLES_CDCACM_TRACEINIT=n
|
||||||
|
CONFIG_EXAMPLES_CDCACM_TRACECLASS=n
|
||||||
|
CONFIG_EXAMPLES_CDCACM_TRACETRANSFERS=n
|
||||||
|
CONFIG_EXAMPLES_CDCACM_TRACECONTROLLER=n
|
||||||
|
CONFIG_EXAMPLES_CDCACM_TRACEINTERRUPTS=n
|
||||||
|
|
||||||
#
|
#
|
||||||
# Stack and heap information
|
# Stack and heap information
|
||||||
#
|
#
|
||||||
|
|||||||
Reference in New Issue
Block a user