Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions boards/pic32-wifire/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
MODULE = board
include $(RIOTBASE)/Makefile.base
9 changes: 9 additions & 0 deletions boards/pic32-wifire/Makefile.features
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Put defined MCU peripherals here (in alphabetical order)
FEATURES_PROVIDED += periph_timer
FEATURES_PROVIDED += periph_uart
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is periph_uart in FEATURES_PROVIDED if there is no UART available?
according to comment at https://github.com/RIOT-OS/RIOT/pull/6066/files#diff-8790a8833e3d374cd14889b9f0e69a2cR18

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Uart Tx is implemented but not the full UART API yet.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tweaked the comment when squashing see e2d7d36


# Various other features (if any)
FEATURES_PROVIDED += cpp

# The board MPU family (used for grouping by the CI system)
FEATURES_MCU_GROUP = mips32r2
4 changes: 4 additions & 0 deletions boards/pic32-wifire/Makefile.include
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
export CPU = mips_pic32mz
export CPU_MODEL=p32mz2048efg100
export INCLUDES += -I$(RIOTBOARD)/$(BOARD)/include/
export APPDEPS += $(RIOTCPU)/$(CPU)/$(CPU_MODEL)/$(CPU_MODEL).S
58 changes: 58 additions & 0 deletions boards/pic32-wifire/include/board.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
/*
* Copyright(C) 2017, Imagination Technologies Limited and/or its
* affiliated group companies.
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*
*/

/**
* @defgroup boards_pic32-wifire Digilent PIC32 WiFire
* @ingroup boards
* @brief board configuration for the Digilent PIC32 WiFire
* @details
* See:
* http://store.digilentinc.com/chipkit-wi-fire-wifi-enabled-mz-microcontroller-board/
* for more information on the board.
*
* @{
*
* @file
* @brief board configuration for the Digilent PIC32 WiFire
*
* @author Neil Jones <Neil.Jones@imgtec.com>
*/

#ifndef _BOARD_H_
#define _BOARD_H_

#ifdef __cplusplus
extern "C" {
#endif

#include "vendor/p32mz2048efg100.h"

/**
* @brief Set how many increments of the count register per uS
* needed by the timer code.
*/
#define TICKS_PER_US (100)

/**
* @brief We are using an External Interrupt Controller (all pic32 devices use this mode)
*/
#define EIC_IRQ (1)

/**
* @brief Board level initialisation
*/
void board_init(void);

#ifdef __cplusplus
}
#endif

#endif /* _BOARD_H_ */
/** @} */
62 changes: 62 additions & 0 deletions boards/pic32-wifire/include/periph_conf.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
/*
* Copyright(C) 2016,2017, Imagination Technologies Limited and/or its
* affiliated group companies.
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*
*/

/**
* @defgroup boards_pic32-wifire Digilent PIC32 WiFire
* @ingroup boards
* @brief peripheral configuration for the Digilent PIC32 WiFire
* @{
*
* @file
* @brief peripheral configuration for the Digilent PIC32 WiFire
*
* @author Neil Jones <Neil.Jones@imgtec.com>
*/
#ifndef _PERIPH_CONF_H_
#define _PERIPH_CONF_H_

#ifdef __cplusplus
extern "C" {
#endif

/**
* @brief The peripheral clock is required for the UART Baud rate calculation
* It is configured by the 'config' registers (see pic32_config_settings.c)
*/
#define PERIPHERAL_CLOCK (100000000) /* Hz */

/**
* @brief Timer definitions
* @{
*/
#define TIMER_NUMOF (1)
#define TIMER_0_CHANNELS (3)
/** @} */

/**
* @brief UART Definitions
* There are 6 UARTS available on this CPU.
* We route debug via UART4 on this board,
* this is the UART connected to the FTDI USB <-> UART device.
*
* Note Microchip number the UARTS 1->4.
* @{
*/
#define UART_NUMOF (6)
#define DEBUG_VIA_UART (4)
#define DEBUG_UART_BAUD (9600)
/** @} */

#ifdef __cplusplus
}
#endif

#endif
/** @} */
Loading