-
Notifications
You must be signed in to change notification settings - Fork 6.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
boards: arm: bmd_345_eval: Add BMD 345 Eval Board Support
Add support for BMD 345 EVAL Board definition with PA/LNA support fixes: #31585 Signed-off-by: NavinSankar Velliangiri <navin@linumiz.com>
- Loading branch information
NavinSankar Velliangiri
committed
Jan 29, 2021
1 parent
2919989
commit 2ebdd0d
Showing
14 changed files
with
661 additions
and
0 deletions.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
# Copyright (c) 2021 Linumiz | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
config BOARD_ENABLE_DCDC | ||
bool "Enable DCDC mode" | ||
select SOC_DCDC_NRF52X | ||
default y | ||
depends on BOARD_BMD_345_EVAL |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# Copyright (c) 2021 Linumiz | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
config BOARD_BMD_345_EVAL | ||
bool "BMD 345 EVAL" | ||
depends on SOC_NRF52840_QIAA |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# EVK BMD 345 board configuration | ||
|
||
# Copyright (c) 2021 Linumiz | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
if BOARD_BMD_345_EVAL | ||
|
||
config BOARD | ||
default "bmd_345_eval" | ||
|
||
if USB | ||
|
||
config USB_NRFX | ||
default y | ||
|
||
config USB_DEVICE_STACK | ||
default y | ||
|
||
endif # USB | ||
|
||
config BT_CTLR | ||
default BT | ||
|
||
endif # BOARD_BMD_345_EVAL |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,265 @@ | ||
/* | ||
* Copyright (c) 2021 Linumiz | ||
* | ||
* SPDX-License-Identifier: Apache-2.0 | ||
*/ | ||
|
||
/dts-v1/; | ||
#include <nordic/nrf52840_qiaa.dtsi> | ||
|
||
/ { | ||
model = "Ublox BMD 345 EVAL"; | ||
compatible = "Ublox,BMD 345 EVAL"; | ||
|
||
chosen { | ||
zephyr,console = &uart0; | ||
zephyr,shell-uart = &uart0; | ||
zephyr,uart-mcumgr = &uart0; | ||
zephyr,bt-mon-uart = &uart0; | ||
zephyr,bt-c2h-uart = &uart0; | ||
zephyr,sram = &sram0; | ||
zephyr,flash = &flash0; | ||
zephyr,code-partition = &slot0_partition; | ||
}; | ||
|
||
leds { | ||
compatible = "gpio-leds"; | ||
led0: led_0 { | ||
gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; | ||
label = "User LD0"; | ||
}; | ||
led1: led_1 { | ||
gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; | ||
label = "User LD1"; | ||
}; | ||
led2: led_2 { | ||
gpios = <&gpio0 15 GPIO_ACTIVE_LOW>; | ||
label = "User LD2"; | ||
}; | ||
led3: led_3 { | ||
gpios = <&gpio0 16 GPIO_ACTIVE_LOW>; | ||
label = "User LD3"; | ||
}; | ||
}; | ||
|
||
pwmleds { | ||
compatible = "pwm-leds"; | ||
pwm_led0: pwm_led_0 { | ||
pwms = <&pwm0 13>; | ||
}; | ||
}; | ||
|
||
gpio_keys { | ||
compatible = "gpio-keys"; | ||
button0: button_0 { | ||
gpios = <&gpio0 11 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; | ||
label = "Push button switch 0"; | ||
}; | ||
button1: button_1 { | ||
gpios = <&gpio0 12 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; | ||
label = "Push button switch 1"; | ||
}; | ||
button2: button_2 { | ||
gpios = <&gpio0 24 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; | ||
label = "Push button switch 2"; | ||
}; | ||
button3: button_3 { | ||
gpios = <&gpio0 25 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; | ||
label = "Push button switch 3"; | ||
}; | ||
}; | ||
|
||
arduino_header: connector { | ||
compatible = "arduino-header-r3"; | ||
#gpio-cells = <2>; | ||
gpio-map-mask = <0xffffffff 0xffffffc0>; | ||
gpio-map-pass-thru = <0 0x3f>; | ||
gpio-map = <0 0 &gpio0 3 0>, /* A0 */ | ||
<1 0 &gpio0 4 0>, /* A1 */ | ||
<2 0 &gpio0 28 0>, /* A2 */ | ||
<3 0 &gpio0 29 0>, /* A3 */ | ||
<4 0 &gpio0 30 0>, /* A4 */ | ||
<5 0 &gpio0 31 0>, /* A5 */ | ||
<6 0 &gpio1 1 0>, /* D0 */ | ||
<8 0 &gpio1 3 0>, /* D2 */ | ||
<12 0 &gpio1 7 0>, /* D6 */ | ||
<13 0 &gpio1 8 0>, /* D7 */ | ||
<14 0 &gpio1 10 0>, /* D8 */ | ||
<15 0 &gpio1 11 0>, /* D9 */ | ||
<16 0 &gpio1 12 0>, /* D10 */ | ||
<17 0 &gpio1 13 0>, /* D11 */ | ||
<18 0 &gpio1 14 0>, /* D12 */ | ||
<19 0 &gpio1 15 0>, /* D13 */ | ||
<20 0 &gpio0 26 0>, /* D14 */ | ||
<21 0 &gpio0 27 0>; /* D15 */ | ||
}; | ||
|
||
arduino_adc: analog-connector { | ||
compatible = "arduino,uno-adc"; | ||
#io-channel-cells = <1>; | ||
io-channel-map = <0 &adc 1>, /* A0 = P0.3 = AIN1 */ | ||
<1 &adc 2>, /* A1 = P0.4 = AIN2 */ | ||
<2 &adc 4>, /* A2 = P0.28 = AIN4 */ | ||
<3 &adc 5>, /* A3 = P0.29 = AIN5 */ | ||
<4 &adc 6>, /* A4 = P0.30 = AIN6 */ | ||
<5 &adc 7>; /* A5 = P0.31 = AIN7 */ | ||
}; | ||
|
||
/* These aliases are provided for compatibility with samples */ | ||
aliases { | ||
led0 = &led0; | ||
led1 = &led1; | ||
led2 = &led2; | ||
led3 = &led3; | ||
pwm-led0 = &pwm_led0; | ||
sw0 = &button0; | ||
sw1 = &button1; | ||
sw2 = &button2; | ||
sw3 = &button3; | ||
}; | ||
}; | ||
|
||
&adc { | ||
status = "okay"; | ||
}; | ||
|
||
&gpiote { | ||
status = "okay"; | ||
}; | ||
|
||
&gpio0 { | ||
status = "okay"; | ||
}; | ||
|
||
&gpio1 { | ||
status = "okay"; | ||
}; | ||
|
||
&pwm0 { | ||
status = "okay"; | ||
ch0-pin = <13>; | ||
ch0-inverted; | ||
}; | ||
|
||
&uart0 { | ||
compatible = "nordic,nrf-uarte"; | ||
status = "okay"; | ||
current-speed = <115200>; | ||
tx-pin = <6>; | ||
rx-pin = <8>; | ||
rts-pin = <5>; | ||
cts-pin = <7>; | ||
}; | ||
|
||
arduino_i2c: &i2c0 { | ||
compatible = "nordic,nrf-twi"; | ||
status = "okay"; | ||
sda-pin = <26>; | ||
scl-pin = <27>; | ||
}; | ||
|
||
&i2c1 { | ||
compatible = "nordic,nrf-twi"; | ||
/* Cannot be used together with spi1. */ | ||
/* status = "okay"; */ | ||
sda-pin = <30>; | ||
scl-pin = <31>; | ||
}; | ||
|
||
&spi0 { | ||
compatible = "nordic,nrf-spi"; | ||
/* Cannot be used together with i2c0. */ | ||
/* status = "okay"; */ | ||
sck-pin = <27>; | ||
mosi-pin = <26>; | ||
miso-pin = <29>; | ||
}; | ||
|
||
&spi2 { | ||
compatible = "nordic,nrf-spi"; | ||
status = "disabled"; | ||
sck-pin = <19>; | ||
mosi-pin = <20>; | ||
miso-pin = <21>; | ||
}; | ||
|
||
&qspi { | ||
status = "okay"; | ||
sck-pin = <19>; | ||
io-pins = <20>, <21>, <22>, <23>; | ||
csn-pins = <17>; | ||
mx25r64: mx25r6435f@0 { | ||
compatible = "nordic,qspi-nor"; | ||
reg = <0>; | ||
/* MX24R64 supports only pp and pp4io */ | ||
writeoc = "pp4io"; | ||
/* MX24R64 supports all readoc options */ | ||
readoc = "read4io"; | ||
sck-frequency = <8000000>; | ||
label = "MX25R64"; | ||
jedec-id = [c2 28 17]; | ||
sfdp-bfp = [ | ||
e5 20 f1 ff ff ff ff 03 44 eb 08 6b 08 3b 04 bb | ||
ee ff ff ff ff ff 00 ff ff ff 00 ff 0c 20 0f 52 | ||
10 d8 00 ff 23 72 f5 00 82 ed 04 cc 44 83 68 44 | ||
30 b0 30 b0 f7 c4 d5 5c 00 be 29 ff f0 d0 ff ff | ||
]; | ||
size = <67108864>; | ||
has-dpd; | ||
t-enter-dpd = <10000>; | ||
t-exit-dpd = <35000>; | ||
}; | ||
}; | ||
|
||
arduino_spi: &spi3 { | ||
status = "okay"; | ||
sck-pin = <47>; | ||
miso-pin = <46>; | ||
mosi-pin = <45>; | ||
cs-gpios = <&arduino_header 16 GPIO_ACTIVE_LOW>; /* D10 */ | ||
}; | ||
|
||
&flash0 { | ||
|
||
partitions { | ||
compatible = "fixed-partitions"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
|
||
boot_partition: partition@0 { | ||
label = "mcuboot"; | ||
reg = <0x000000000 0x0000C000>; | ||
}; | ||
slot0_partition: partition@c000 { | ||
label = "image-0"; | ||
reg = <0x0000C000 0x00067000>; | ||
}; | ||
slot1_partition: partition@73000 { | ||
label = "image-1"; | ||
reg = <0x00073000 0x00067000>; | ||
}; | ||
scratch_partition: partition@da000 { | ||
label = "image-scratch"; | ||
reg = <0x000da000 0x0001e000>; | ||
}; | ||
|
||
/* | ||
* The flash starting at 0x000f8000 and ending at | ||
* 0x000fffff is reserved for use by the application. | ||
*/ | ||
|
||
/* | ||
* Storage partition will be used by FCB/LittleFS/NVS | ||
* if enabled. | ||
*/ | ||
storage_partition: partition@f8000 { | ||
label = "storage"; | ||
reg = <0x000f8000 0x00008000>; | ||
}; | ||
}; | ||
}; | ||
|
||
&usbd { | ||
compatible = "nordic,nrf-usbd"; | ||
status = "okay"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
identifier: bmd_345_eval | ||
name: Bmd-345-Eval | ||
type: mcu | ||
arch: arm | ||
ram: 256 | ||
flash: 1024 | ||
toolchain: | ||
- zephyr | ||
- gnuarmemb | ||
- xtools | ||
supported: | ||
- adc | ||
- ble | ||
- counter | ||
- gpio | ||
- i2c | ||
- pwm | ||
- spi | ||
- usb_cdc | ||
- usb_device | ||
- watchdog |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
CONFIG_SOC_SERIES_NRF52X=y | ||
CONFIG_SOC_NRF52840_QIAA=y | ||
CONFIG_BOARD_BMD_345_EVAL=y | ||
|
||
# Enable MPU | ||
CONFIG_ARM_MPU=y | ||
|
||
# Enable hardware stack protection | ||
CONFIG_HW_STACK_PROTECTION=y | ||
|
||
# Enable RTT | ||
CONFIG_USE_SEGGER_RTT=y | ||
|
||
# enable GPIO | ||
CONFIG_GPIO=y | ||
|
||
# enable uart driver | ||
CONFIG_SERIAL=y | ||
|
||
# enable console | ||
CONFIG_CONSOLE=y | ||
CONFIG_UART_CONSOLE=y | ||
|
||
# additional board options | ||
CONFIG_GPIO_AS_PINRESET=y | ||
|
||
# PA GPIO Pin | ||
CONFIG_BT_CTLR_GPIO_PA=y | ||
CONFIG_BT_CTLR_GPIO_PA_PIN=37 | ||
|
||
# LNA GPIO Pin | ||
CONFIG_BT_CTLR_GPIO_LNA=y | ||
CONFIG_BT_CTLR_GPIO_LNA_PIN=38 |
Oops, something went wrong.