Commit graph

41120 commits

Author SHA1 Message Date
Flavio Santes
9aa5919dbf samples/net: Update DNS logging info
Remove a blank space.

Change-Id: Ia4028cc26ea0f4fc742ae6232f46a5eb242faeb9
Signed-off-by: Flavio Santes <flavio.santes@intel.com>
2017-01-13 10:28:59 +01:00
Flavio Santes
bb542d6b11 samples/net: Remove legacy reference in Makefile
Remove the reference to CONFIG_NET_UIP in src/Makefile.

Change-Id: I960413c17496c4b70b9c171a54ccfca4951b858b
Signed-off-by: Flavio Santes <flavio.santes@intel.com>
2017-01-13 10:28:59 +01:00
jing wang
9dcd848faa tests: add timer test case with unified kernel
the commit verify basic timer apis, including
K_TIMER_DEFINE
k_timer_init()
k_timer_start()
k_timer_stop()
k_timer_status_get()
k_timer_status_sync()
k_timer_remaining_get()

Change-Id: I15e25e00b46fcfefe0a7b68a0a4befa96f657ead
Signed-off-by: jing wang <jing.j.wang@intel.com>
2017-01-13 02:46:24 +00:00
Benjamin Walsh
3c39e55ab1 arc: fix unaligned variables resulting in unaligned k_cpu_sleep_mode
Force-align all variables defined via asm .word to ensure 4-byte
alignment.

The straddled_tick_on_idle_enter variable was a bool, which resolved in
an one-byte quantity. Changing it to a 32-bit integer. It would have
occupied 4 bytes anyway with alignment.

Fixes ZEP-1549.

Change-Id: If5e0aa1a75dbc73d896b44616f059d221fe191c6
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2017-01-13 01:36:08 +00:00
Bogdan Davidoaia
edf981d44c MAINTAINERS: update sensor drivers section
Change-Id: Iabccab8b6ef4827c7ebef14fd02ae8c00b0d6fa3
Signed-off-by: Bogdan Davidoaia <bogdan.davidoaia@linaro.org>
2017-01-13 01:59:21 +02:00
Anas Nashif
a1ae7f565b Merge "Merge arm branch into master" 2017-01-12 18:23:39 +00:00
David Brown
016e7b2de6 samples: task_profiler: Be explicit about python
Update these scripts to explicitly call out python version 2.  Some
distributions have started making /usr/bin/python version 3, and other
distros have expressed a desire to do the same.

Also use the

  #!/usr/bin/env python2

construct instead of an explicit path so that the user can more easily
use their own python install by just placing it earlier in the path

Jira: ZEP-1548
Change-Id: I36dccc652353ba8bd58c483dba3ce61d3643de00
Signed-off-by: David Brown <david.brown@linaro.org>
2017-01-12 10:28:17 -07:00
David Brown
8405ce13a1 scripts: Explicitly call out python2
At least one Linux distribution (Arch) has made python 3 the default
interpreter, and Debian and Ubuntu have expressed a desire to eventually
make this the case.  As such, invoking 'python' or '/usr/bin/python'
will possibly run python 3 instead of version 2.

Distributions have included a 'python2' link for quite some time now,
and given that we have some scripts that require python 3, we should be
explicit about those that require python 2.

In addition, be more consistent about how python is invoked, preferring
the:

  #!/usr/bin/env python2

construct rather than a hardcoded path to python.  This allows the user
to have an alternative python in their path that will be used in
preference to the system provided version.

Jira: ZEP-1548
Change-Id: I125c2af808dc268f74277bc97a092df3acad23c0
Signed-off-by: David Brown <david.brown@linaro.org>
2017-01-12 10:28:02 -07:00
jing wang
ae2cf51591 tests: Add PWM driver api test
The commit verify below PWM apis
    pwm_pin_set_cycles()
    pwm_pin_set_usec

test PWM apis under always-on, half-on and alway-off modes

Change-Id: I2251be23ad9c443703dac44e138651a63d2d7211
Signed-off-by: jing wang <jing.j.wang@intel.com>
2017-01-12 15:54:16 +00:00
Kumar Gala
78b00d70e6 Merge arm branch into master
Main changes:

- New GPIO driver for Kinetis MCUs
- Rename of KSDK to MCUX for Kinetis/LPC MCUs
- Rework Cortex M defines to unify on arch versions rather than cores
- Added support for STM32F107 SoC & STM3210C-EVAL board
- Minor additions for STM & TI boards

----------------------------------------------------------------
Adam Podogrocki (3):
      soc/stm32f1: Add the new type of SoC STM32F107
      clock/stm32: add STM32F107 reset and clock control
      boards: add initial support for STM3210C-EVAL board with SoC STM32F107VC

Erwan Gouriou (2):
      boards: nucleo: provide button and led for basic samples
      stm32f4: Update flash to support higher sysclock frequencies

Gil Pitney (1):
      cc3200: Use peripheral driver library functions from ROM

Marcus Shawcroft (6):
      arm: Fix assembler layout.
      arm: cortex-m memory map is CPU specific
      arm: Restructure ARM cpu related preprocessor conditionals.
      arm: Replace CONFIG_CPU_CORTEX_M0_M0PLUS with CONFIG_ARMV6_M
      arm: Replace CONFIG_CPU_CORTEX_M3_M4 with CONFIG_ARMV7_M
      arm: Adjust cortex-m7 support to reflect its ARMv7-M architecture.

Maureen Helm (27):
      hexiwear_k64: Disable unused pinmux ports by default
      frdm_k64f: Disable unused pinmux ports by default
      pinmux: Merge ksdk pinmux dev into regular ksdk pinmux driver
      pinmux: Remove stale ksdk pinmux dev references
      samples: net: Remove unnecessary eth_ksdk project settings
      ksdk: mcux: Rename ksdk to mcux
      ethernet: Rename ksdk to mcux
      i2c: Rename ksdk to mcux
      random: Rename ksdk to mcux
      flash: Rename ksdk to mcux
      pinmux: Rename ksdk to mcux
      ksdk: mcux: Remove config HAS_KSDK
      MAINTAINERS: Rename ksdk to mcux
      pinmux: Init mcux pinmux driver in PRE_KERNEL_1
      k64: Move uart console pins to board pinmux tables
      hexiwear_k64: Fix i2c pinmux settings
      frdm_k64f: hexiwear_k64: Fix accel interrupt pinmux settings
      gpio: Introduce new mcux gpio driver
      frdm_k64f: hexiwear_k64: Add defaults for the mcux gpio driver
      samples: net: Add support for the mcux gpio driver
      k64: Change the default gpio driver to the mcux one
      samples: net: Remove support for the k64 gpio driver
      frdm_k64f: hexiwear_k64: Remove defaults for the k64 gpio driver
      samples: net: Use mcux pinmux driver for frdm_k64f_cc2520 projects
      gpio: Remove the k64 gpio driver
      pinmux: Remove the k64 pinmux driver
      k64: Remove port clock enables from the soc init

 MAINTAINERS                                        |  10 +-
 arch/arm/core/cortex_m/Kconfig                     |  23 +-
 arch/arm/core/cortex_m/reset.S                     |   8 +-
 arch/arm/core/cortex_m/scb.c                       |   7 +-
 arch/arm/core/cortex_m/vector_table.S              |   8 +-
 arch/arm/core/cortex_m/vector_table.h              |   7 +-
 arch/arm/core/cpu_idle.S                           |  96 ++---
 arch/arm/core/fault.c                              |  36 +-
 arch/arm/core/fault_s.S                            |  82 ++--
 arch/arm/core/isr_wrapper.S                        |  26 +-
 arch/arm/core/swap.S                               |  46 ++-
 arch/arm/include/cortex_m/exc.h                    |   8 +-
 arch/arm/include/kernel_arch_func.h                |   8 +-
 .../soc/nxp_kinetis/k6x/Kconfig.defconfig.mk64f12  |  19 +-
 arch/arm/soc/nxp_kinetis/k6x/Kconfig.soc           |   2 +-
 arch/arm/soc/nxp_kinetis/k6x/soc.c                 |   7 +-
 arch/arm/soc/nxp_kinetis/k6x/soc.h                 |  48 ---
 arch/arm/soc/nxp_kinetis/k6x/soc_config.c          |  41 --
 .../st_stm32/stm32f1/Kconfig.defconfig.stm32f107xc |  34 ++
 arch/arm/soc/st_stm32/stm32f1/Kconfig.soc          |  24 ++
 arch/arm/soc/st_stm32/stm32f1/rcc_registers.h      |  61 +++
 arch/arm/soc/st_stm32/stm32f4/flash_registers.h    |  18 +-
 .../ti_simplelink/cc32xx/Kconfig.defconfig.cc3200  |   3 -
 .../arm/cc3200_launchxl/cc3200_launchxl_defconfig  |   2 +-
 boards/arm/frdm_k64f/Kconfig.defconfig             |  34 +-
 boards/arm/frdm_k64f/Makefile                      |   2 +-
 boards/arm/frdm_k64f/board.h                       |  10 +-
 boards/arm/frdm_k64f/pinmux.c                      |  94 +++--
 boards/arm/hexiwear_k64/Kconfig.defconfig          |  40 +-
 boards/arm/hexiwear_k64/Makefile                   |   2 +-
 boards/arm/hexiwear_k64/board.h                    |   6 +-
 boards/arm/hexiwear_k64/pinmux.c                   |  51 ++-
 boards/arm/nucleo_f103rb/board.h                   |  18 +-
 boards/arm/nucleo_f401re/board.h                   |  14 +
 boards/arm/nucleo_f411re/board.h                   |  15 +
 boards/arm/nucleo_l476rg/board.h                   |  15 +
 boards/arm/stm3210c_eval/Kconfig.board             |  20 +
 boards/arm/stm3210c_eval/Kconfig.defconfig         |  23 ++
 boards/arm/stm3210c_eval/Makefile                  |   2 +
 boards/arm/stm3210c_eval/Makefile.board            |   6 +
 boards/arm/stm3210c_eval/board.h                   |  42 ++
 boards/arm/stm3210c_eval/stm3210c_eval_defconfig   |  61 +++
 boards/arm/stm3210c_eval/support/openocd.cfg       |  12 +
 doc/LICENSING.rst                                  |  12 +-
 drivers/clock_control/Kconfig                      |   6 +-
 drivers/clock_control/Kconfig.stm32f107xx          | 157 ++++++++
 drivers/clock_control/Kconfig.stm32f10x            |   4 +-
 drivers/clock_control/Makefile                     |   3 +-
 drivers/clock_control/stm32f107xx_clock.c          | 426 +++++++++++++++++++++
 drivers/ethernet/Kconfig                           |   2 +-
 drivers/ethernet/{Kconfig.ksdk => Kconfig.mcux}    |  52 +--
 drivers/ethernet/Makefile                          |   2 +-
 drivers/ethernet/{eth_ksdk.c => eth_mcux.c}        |  66 ++--
 drivers/flash/Kconfig                              |  16 +-
 drivers/flash/Makefile                             |   2 +-
 .../flash/{soc_flash_ksdk.c => soc_flash_mcux.c}   |  30 +-
 drivers/gpio/Kconfig                               |   2 +-
 drivers/gpio/Kconfig.k64                           | 133 -------
 drivers/gpio/Kconfig.mcux                          | 113 ++++++
 drivers/gpio/Makefile                              |   2 +-
 drivers/gpio/gpio_k64.c                            | 415 --------------------
 drivers/gpio/gpio_k64.h                            |  51 ---
 drivers/gpio/gpio_mcux.c                           | 373 ++++++++++++++++++
 drivers/i2c/Kconfig                                |   8 +-
 drivers/i2c/Makefile                               |   2 +-
 drivers/i2c/{i2c_ksdk.c => i2c_mcux.c}             |  80 ++--
 drivers/pinmux/Kconfig                             |   9 +-
 drivers/pinmux/{Kconfig.ksdk => Kconfig.mcux}      |  49 ++-
 drivers/pinmux/Makefile                            |   7 +-
 drivers/pinmux/dev/Kconfig                         |   2 -
 drivers/pinmux/dev/Kconfig.ksdk                    |  52 ---
 drivers/pinmux/dev/Makefile                        |   1 -
 drivers/pinmux/dev/pinmux_dev_ksdk.c               | 122 ------
 drivers/pinmux/k64/pinmux.c                        | 163 --------
 drivers/pinmux/k64/pinmux.h                        | 290 --------------
 drivers/pinmux/k64/pinmux_board_frdm_k64f.c        | 126 ------
 drivers/pinmux/k64/pinmux_board_hexiwear.c         |  69 ----
 drivers/pinmux/pinmux_ksdk.c                       |  39 --
 drivers/pinmux/pinmux_ksdk.h                       |  37 --
 drivers/pinmux/pinmux_mcux.c                       | 137 +++++++
 drivers/random/Kconfig                             |   2 +-
 drivers/random/{Kconfig.ksdk => Kconfig.mcux}      |   8 +-
 drivers/random/Makefile                            |   2 +-
 drivers/random/{random_ksdk.c => random_mcux.c}    |  22 +-
 ext/hal/Kbuild                                     |   4 +-
 ext/hal/Kconfig                                    |   4 +-
 ext/hal/Makefile                                   |   4 +-
 ext/hal/README                                     |   6 +-
 ext/hal/ksdk/README                                |   8 -
 ext/hal/{ksdk => nxp/mcux}/Kconfig                 |   5 +-
 ext/hal/{ksdk => nxp/mcux}/Makefile                |  32 +-
 ext/hal/nxp/mcux/README                            |  11 +
 ext/hal/{ksdk => nxp/mcux}/components/Makefile     |   4 +-
 .../mcux}/components/phyksz8081/fsl_phy.c          |   0
 .../mcux}/components/phyksz8081/fsl_phy.h          |   0
 .../{ksdk => nxp/mcux}/devices/MK64F12/MK64F12.h   |   0
 .../{ksdk => nxp/mcux}/devices/MK64F12/MK64F12.svd |   0
 .../mcux}/devices/MK64F12/MK64F12_features.h       |   0
 .../mcux}/devices/MK64F12/clock_config.c           |   0
 .../mcux}/devices/MK64F12/clock_config.h           |   0
 .../{ksdk => nxp/mcux}/devices/MK64F12/fsl_clock.c |   0
 .../{ksdk => nxp/mcux}/devices/MK64F12/fsl_clock.h |   0
 .../mcux}/devices/MK64F12/fsl_device_registers.h   |   0
 .../mcux}/devices/MK64F12/system_MK64F12.c         |   0
 .../mcux}/devices/MK64F12/system_MK64F12.h         |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/Makefile        |  10 +-
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_adc16.c     |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_adc16.h     |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmp.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmp.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmt.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmt.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_common.c    |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_common.h    |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_crc.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_crc.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dac.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dac.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dmamux.c    |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dmamux.h    |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi_edma.c |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi_edma.h |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_edma.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_edma.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_enet.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_enet.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ewm.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ewm.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flash.c     |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flash.h     |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexbus.c   |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexbus.h   |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexcan.c   |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexcan.h   |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ftm.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ftm.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_gpio.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_gpio.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c_edma.c  |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c_edma.h  |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_llwu.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_llwu.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_lptmr.c     |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_lptmr.h     |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_mpu.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_mpu.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pdb.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pdb.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pit.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pit.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pmc.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pmc.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_port.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rcm.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rcm.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rnga.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rnga.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rtc.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rtc.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai_edma.c  |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai_edma.h  |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sdhc.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sdhc.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sim.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sim.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_smc.c       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_smc.h       |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart_edma.c |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart_edma.h |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_vref.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_vref.h      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_wdog.c      |   0
 ext/hal/{ksdk => nxp/mcux}/drivers/fsl_wdog.h      |   0
 ext/hal/ti/cc3200sdk/Kbuild                        |  17 +-
 ext/hal/ti/cc3200sdk/Kconfig                       |  19 +-
 ext/hal/ti/cc3200sdk/Makefile                      |  14 +-
 ext/hal/ti/cc3200sdk/README                        |  28 +-
 include/arch/arm/cortex_m/asm_inline_gcc.h         |  16 +-
 include/arch/arm/cortex_m/memory_map.h             |   8 +-
 include/arch/arm/cortex_m/nvic.h                   |  23 +-
 include/arch/arm/cortex_m/scb.h                    |  23 +-
 include/arch/arm/cortex_m/scs.h                    |  86 +++--
 .../drivers/clock_control/stm32_clock_control.h    |   4 +-
 samples/net/common/cc2520_frdm_k64f.c              |  26 +-
 samples/net/echo_client/prj_frdm_k64f_cc2520.conf  |   1 -
 samples/net/echo_server/prj_frdm_k64f.conf         |   9 -
 samples/net/echo_server/prj_frdm_k64f_cc2520.conf  |   1 -
 samples/net/zperf/prj_frdm_k64f.conf               |   9 -
 samples/net/zperf/prj_frdm_k64f_prof.conf          |   9 -
 scripts/sanity_chk/arches/arm.ini                  |   1 +
 tests/drivers/pinmux/prj_frdm_k64f.conf            |   1 -
 tests/drivers/pinmux/testcase.ini                  |   2 +-
 tests/kernel/arm_irq_vector_table/testcase.ini     |   3 +-
 .../kernel/test_arm_irq_vector_table/testcase.ini  |   3 +-
 202 files changed, 2340 insertions(+), 2236 deletions(-)
 create mode 100644 arch/arm/soc/st_stm32/stm32f1/Kconfig.defconfig.stm32f107xc
 create mode 100644 boards/arm/stm3210c_eval/Kconfig.board
 create mode 100644 boards/arm/stm3210c_eval/Kconfig.defconfig
 create mode 100644 boards/arm/stm3210c_eval/Makefile
 create mode 100644 boards/arm/stm3210c_eval/Makefile.board
 create mode 100644 boards/arm/stm3210c_eval/board.h
 create mode 100644 boards/arm/stm3210c_eval/stm3210c_eval_defconfig
 create mode 100644 boards/arm/stm3210c_eval/support/openocd.cfg
 create mode 100644 drivers/clock_control/Kconfig.stm32f107xx
 create mode 100644 drivers/clock_control/stm32f107xx_clock.c
 rename drivers/ethernet/{Kconfig.ksdk => Kconfig.mcux} (60%)
 rename drivers/ethernet/{eth_ksdk.c => eth_mcux.c} (86%)
 rename drivers/flash/{soc_flash_ksdk.c => soc_flash_mcux.c} (74%)
 delete mode 100644 drivers/gpio/Kconfig.k64
 create mode 100644 drivers/gpio/Kconfig.mcux
 delete mode 100644 drivers/gpio/gpio_k64.c
 delete mode 100644 drivers/gpio/gpio_k64.h
 create mode 100644 drivers/gpio/gpio_mcux.c
 rename drivers/i2c/{i2c_ksdk.c => i2c_mcux.c} (69%)
 rename drivers/pinmux/{Kconfig.ksdk => Kconfig.mcux} (50%)
 delete mode 100644 drivers/pinmux/dev/Kconfig.ksdk
 delete mode 100644 drivers/pinmux/dev/pinmux_dev_ksdk.c
 delete mode 100644 drivers/pinmux/k64/pinmux.c
 delete mode 100644 drivers/pinmux/k64/pinmux.h
 delete mode 100644 drivers/pinmux/k64/pinmux_board_frdm_k64f.c
 delete mode 100644 drivers/pinmux/k64/pinmux_board_hexiwear.c
 delete mode 100644 drivers/pinmux/pinmux_ksdk.c
 delete mode 100644 drivers/pinmux/pinmux_ksdk.h
 create mode 100644 drivers/pinmux/pinmux_mcux.c
 rename drivers/random/{Kconfig.ksdk => Kconfig.mcux} (82%)
 rename drivers/random/{random_ksdk.c => random_mcux.c} (79%)
 delete mode 100644 ext/hal/ksdk/README
 rename ext/hal/{ksdk => nxp/mcux}/Kconfig (93%)
 rename ext/hal/{ksdk => nxp/mcux}/Makefile (53%)
 create mode 100644 ext/hal/nxp/mcux/README
 rename ext/hal/{ksdk => nxp/mcux}/components/Makefile (88%)
 rename ext/hal/{ksdk => nxp/mcux}/components/phyksz8081/fsl_phy.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/components/phyksz8081/fsl_phy.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/MK64F12.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/MK64F12.svd (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/MK64F12_features.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/clock_config.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/clock_config.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/fsl_clock.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/fsl_clock.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/fsl_device_registers.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/system_MK64F12.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/devices/MK64F12/system_MK64F12.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/Makefile (75%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_adc16.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_adc16.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmp.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmp.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmt.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_cmt.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_common.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_common.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_crc.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_crc.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dac.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dac.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dmamux.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dmamux.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi_edma.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_dspi_edma.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_edma.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_edma.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_enet.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_enet.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ewm.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ewm.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flash.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flash.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexbus.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexbus.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexcan.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_flexcan.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ftm.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_ftm.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_gpio.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_gpio.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c_edma.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_i2c_edma.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_llwu.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_llwu.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_lptmr.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_lptmr.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_mpu.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_mpu.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pdb.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pdb.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pit.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pit.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pmc.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_pmc.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_port.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rcm.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rcm.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rnga.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rnga.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rtc.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_rtc.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai_edma.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sai_edma.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sdhc.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sdhc.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sim.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_sim.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_smc.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_smc.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart_edma.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_uart_edma.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_vref.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_vref.h (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_wdog.c (100%)
 rename ext/hal/{ksdk => nxp/mcux}/drivers/fsl_wdog.h (100%)
 delete mode 100644 tests/drivers/pinmux/prj_frdm_k64f.conf
Change-Id: Ib09ec6fbe7292f4263978c5cf040d76e63ffd7a9
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-01-12 09:49:20 -06:00
Maureen Helm
eb0a2f8516 k64: Remove port clock enables from the soc init
The mcux pinmux driver enables the port clocks, so the soc init no
longer needs to enable them. Also removes some soc defines that were
used only by the legacy k64 pinmux driver.

Change-Id: I63174bef4024b5a09a73f941cea0aec691c759d3
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:28 -06:00
Maureen Helm
4973787c10 pinmux: Remove the k64 pinmux driver
The k64 pinmux driver was deprecated when the more generic mcux pinmux
driver was added, but it can actually just be removed because it is not
a public interface. Applications should be using the public pinmux API,
not the private k64 pinmux API. There was one case in the net samples
that used the private API which was cleaned up in a previous patch.

Change-Id: I49a6397baa57973930cb63bd2a9883b14f7ddafd
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:28 -06:00
Maureen Helm
7682a0d7ca gpio: Remove the k64 gpio driver
Now that we have a more generic mcux gpio driver that can be used across
multiple Kinetis SoCs, remove the specific k64 gpio driver.

Jira: ZEP-1394
Change-Id: I177f96a75e441b70c523e74e99f1b7a54eac6b0e
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
4f5c2702da samples: net: Use mcux pinmux driver for frdm_k64f_cc2520 projects
Sample projects that pair the frdm_k64f board with a cc2520 require
additional pinmux settings beyond the standard frdm_k64f pinmux. These
settings used the private k64 pinmux API rather than the public pinmux
API.

Because the mcux pinmux driver now always supports the public pinmux API
(vs. the k64 pinmux driver which only supported it in pinmux dev mode),
we can convert the frdm_k64f_cc2520 projects to use the public pinmux
API and the mcux pinmux driver.

Change-Id: Idfae8393171b007d8629e34bfae64255f55c6792
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
a758429b1e frdm_k64f: hexiwear_k64: Remove defaults for the k64 gpio driver
Jira: ZEP-1394
Change-Id: Ie0dd812ebca6306413300c6160f00ee764ebd4c2
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
362bdaabeb samples: net: Remove support for the k64 gpio driver
Jira: ZEP-1394
Change-Id: Ib9435109175540e3e2a3ece310e068667e398821
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
fc012feadb k64: Change the default gpio driver to the mcux one
Stop using the specific k64 gpio driver by default and start using the
more generic mcux gpio driver instead.

Jira: ZEP-1394
Change-Id: I54ec9b62cc8790b8973efc34fa36d17da523971e
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
1ca06fc9dc samples: net: Add support for the mcux gpio driver
Jira: ZEP-1394
Change-Id: Iff8fc2f10779131e361968ce16e82b248a9e3c17
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
bd40ca8741 frdm_k64f: hexiwear_k64: Add defaults for the mcux gpio driver
Jira: ZEP-1394
Change-Id: I1371e5a1a65dd85a8dd93b2c5d113d7520d5656f
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
d71f246855 gpio: Introduce new mcux gpio driver
Adds a new mcux gpio driver that can be used for k64 and other Kinetis
SoCs. This driver uses mcux CMSIS register accesses to the GPIO and PORT
modules. Some of the logic from the k64 gpio driver was reused and
refactored (mainly flag parsing and callback handling).

Jira: ZEP-1394
Change-Id: If5e9390861c181ec555dce6569b14debb729526a
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
c070aa74dd frdm_k64f: hexiwear_k64: Fix accel interrupt pinmux settings
The k64 gpio driver quietly initializes the pinmux to force the pin to
be a gpio, regardless of the setting defined by the board's pinmux
table, or even if the pin was not in the pinmux table.

This behavior caused the accelerometer interrupt pin to be incorrectly
defined in the frdm_k64f and hexiwear_k64 pinmux tables.

Change-Id: If46df0e051452fef291d5ad5cdff56463d5f465e
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
b4254444a8 hexiwear_k64: Fix i2c pinmux settings
The hexiwear_k64 i2c pinmux settings were copied over incorrectly when
the new mcux pinmux driver was created.

Change-Id: I72e5f8f7c06e2d9b08921109691edaf311f3811b
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
4184c7f82e k64: Move uart console pins to board pinmux tables
Moves the uart console pins from the k64 soc init to the frdm_k64f and
hexiwear_k64 board pinmux tables. Not having these pins in the board
pinmux tables led one to believe that no pins in PORTB were being used
on the hexiwear_k64 board, and thus the port was incorrectly disabled by
default.

Also fixes PORTB to be enabled by default if the uart console is used.

Change-Id: Ide6b7b34dfba8a75a02a8f2bf37cce843afb92f1
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
d2c9446163 pinmux: Init mcux pinmux driver in PRE_KERNEL_1
Changes the init level for the mcux pinmux driver from POST_KERNEL to
PRE_KERNEL_1. This will allow moving the uart console pins from the k64
soc init to the board pinmux tables.

Change-Id: I6d3377c9a689c12711c84387f74843ca9488df52
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Adam Podogrocki
7aeea1a124 boards: add initial support for STM3210C-EVAL board with SoC STM32F107VC
Change-Id: Ib120e0088b009d1e07a756470742fb29a606857e
Signed-off-by: Adam Podogrocki <adam.podogrocki@rndity.com>
2017-01-12 09:46:27 -06:00
Adam Podogrocki
72782f542c clock/stm32: add STM32F107 reset and clock control
Change-Id: If2280187c866c130212ea22c3d406501f37133b2
Signed-off-by: Adam Podogrocki <adam.podogrocki@rndity.com>
2017-01-12 09:46:27 -06:00
Adam Podogrocki
10b350d854 soc/stm32f1: Add the new type of SoC STM32F107
This patch provides initial support for the SoC STM32F107. This SoC
belongs to the Connectivity Line devices.

Connectivity line family incorporates up to 14 communication
interfaces such as: 2 x I2C, 5 x USART, 3 x SPI, 2 x CAN, USB 2.0,
10/100 Ethernet MAC.

Change-Id: I5cb2c458bce9ec1558b4168e87a7003ad9f606a5
Signed-off-by: Adam Podogrocki <adam.podogrocki@rndity.com>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-01-12 09:46:27 -06:00
Maureen Helm
6dbc818b3e MAINTAINERS: Rename ksdk to mcux
Change-Id: I4f1e592dfb48f7c14112341fc48b36091acc4414
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
2e6350bfe3 ksdk: mcux: Remove config HAS_KSDK
Now that all the ksdk/mcux shim drivers use the config HAS_MCUX, we can
remove the config HAS_KSDK.

Change-Id: I94b7db41efae10c9234681aeb57f94e67a33c262
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
4183dae89b pinmux: Rename ksdk to mcux
Renames the ksdk pinmux driver to mcux.

Change-Id: I7a519318b5b580c47b6f6652a2ae763067d85033
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:27 -06:00
Maureen Helm
e17adf377b flash: Rename ksdk to mcux
Renames the ksdk soc flash driver to mcux.

Change-Id: I835e36f25d8bc3e3aa6286718452528174378907
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:26 -06:00
Maureen Helm
aa995f8d2f random: Rename ksdk to mcux
Renames the ksdk random generator shim driver to mcux.

Change-Id: I8bc376937fed3024c809782139a0a72c7332f89a
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:26 -06:00
Maureen Helm
b22bc6e69b i2c: Rename ksdk to mcux
Renames the ksdk i2c shim driver to mcux.

Change-Id: I1bcae2fa30cb698af32d6abc609d77dee42c608d
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:26 -06:00
Maureen Helm
40f5de5a56 ethernet: Rename ksdk to mcux
Renames the ksdk ethernet shim driver to mcux.

Change-Id: Ief03eabe4ce39be0d0896543c1cb660ff380b439
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:26 -06:00
Maureen Helm
8765fbaa5a ksdk: mcux: Rename ksdk to mcux
Renames the Kinetis SDK (ksdk) to the MCUXpresso SDK (mcux) to reflect
the recent rebranding by NXP to include support for LPC and i.MX SoCs.

Temporarily leaves the config option HAS_KSDK to allow renaming each
shim driver in a separate commit.

Change-Id: I738f3687755fcd429a105e723fa25f1da815b519
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:26 -06:00
Maureen Helm
c294ff06f6 samples: net: Remove unnecessary eth_ksdk project settings
Removes unnecessary CONFIG_ETH_KSDK project settings from the net
samples. Some of the configs no longer exist (MAC0-2), some are not
valid (MAC3-5) due to RANDOM_MAC=y, and the rest are already enabled by
default by the SoC and board.

Change-Id: I27079b8bb142ebc507885f3b1de07e282c813506
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:26 -06:00
Maureen Helm
9f61bfce9a pinmux: Remove stale ksdk pinmux dev references
The ksdk pinmux dev driver was previously merged into the regular ksdk
pinmux driver, and the config PINMUX_DEV_KSDK was removed. Two
references were inadvertantly left behind, so remove them now.

Change-Id: I77394be5459d55a9f16e7bd2b3c9d688c4605b4f
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:25 -06:00
Erwan Gouriou
219a1e7f0b stm32f4: Update flash to support higher sysclock frequencies
stm32f411re SoC could run at system clock above 84MHz.
This was not taken into account in __setup_flash function which configure
flash latency depending on system clock. This is now corrected.
Assert added to ease error detection.


Change-Id: I49b92256d611ef464171fb1d8812a4c4d3c27ab8
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2017-01-12 09:46:25 -06:00
Erwan Gouriou
7d7158ccaf boards: nucleo: provide button and led for basic samples
Provide USER button and LD2 Led defines in order to get basic samples
"blinky" and "button" available on nucleo boards.
Defines have been named in order to match with board printing.
Aliases are provided to get compatibility with zephyr sample code.


Change-Id: Ie23a4f63c406def50b94a644d4e136d3bda1ceff
Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2017-01-12 09:46:25 -06:00
Gil Pitney
9bc293c827 cc3200: Use peripheral driver library functions from ROM
Previously, CC3200 drivers had two options to use the peripheral
driver library APIs:
1) Build driverlib SDK files in Zephyr, in ext/hal/ti/cc3200/*
2) Link directly with the driverlib.a, from an externally installed
   TI CC3200 SDK.

A new option is added to replace option 2), and is now the default:
3) Use the driverlib functions already provided in ROM.

This enables a savings in code size, which will depend on the
types of device drivers configured and the number of SDK
APIs actually used.

A rom_report build of the shell sample application showed
a savings of about 2kb in code space using this new config option.

Change-Id: Ie1ede6f7aacd23db20f5292e776f1dfeab5c7fe0
Signed-off-by: Gil Pitney <gil.pitney@linaro.org>
Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2017-01-12 09:46:25 -06:00
Marcus Shawcroft
84cb997c62 arm: Adjust cortex-m7 support to reflect its ARMv7-M architecture.
The cortex-m7 is an implementation of armv7-m.  Adjust the Kconfig
support for cortex-m7 to reflect this and drop the unnecessary,
explicit, conditional compilation.

Change-Id: I6ec20e69c8c83c5a80b1f714506f7f9e295b15d5
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2017-01-12 09:46:25 -06:00
Marcus Shawcroft
ef8200dfcd arm: Replace CONFIG_CPU_CORTEX_M3_M4 with CONFIG_ARMV7_M
Precursor patches have arranged that conditional compilation hanging
on CONFIG_CPU_CORTEX_M3_M4 provides support for ARMv7-M, rename the
config variable to reflect this.

Change-Id: Ifa56e3c1c04505d061b2af3aec9d8b9e55b5853d
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2017-01-12 09:46:25 -06:00
Marcus Shawcroft
727dc2c5d6 arm: Replace CONFIG_CPU_CORTEX_M0_M0PLUS with CONFIG_ARMV6_M
Precursor patches have arranged all conditional compilation hanging on
CONFIG_CPU_CORTEX_M0_M0PLUS such that it actually represents support
for ARM ARMv6-M, rename the config variable to reflect this.

Change-Id: I553fcf3e606b350a9e823df31bac96636be1504f
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2017-01-12 09:46:25 -06:00
Marcus Shawcroft
e2d3cc4b81 arm: Restructure ARM cpu related preprocessor conditionals.
The ARM code base provides for three mutually exclusive ARM
architecture related conditional compilation choices.  M0_M0PLUS,
M3_M4 and M7.  Throughout the code base we have conditional
compilation gated around these three choices.  Adjust the form of this
conditional compilation to adopt a uniform structure.  The uniform
structure always selects code based on the definition of an
appropriate config option rather the the absence of a definition.

Removing the extensive use of #else ensures that when support for
other ARM architecture versions is added we get hard compilation
failures rather than attempting to compile inappropriate code for the
added architecture with unexpected runtime consequences.

Adopting this uniform structure makes it straight forward to replace
the adhoc CPU_CORTEX_M3_M4 and CPU_CORTEX_M0_M0PLUS configuration
variables with ones that directly represent the actual underlying ARM
architectures we provide support for.  This change also paves the way
for folding adhoc conditional compilation related to CPU_CORTEX_M7
directly in support for ARMv7-M.

This change is mechanical in nature involving two transforms:

1)

  #if !defined(CONFIG_CPU_CORTEX_M0_M0PLUS)
  ...

is transformed to:

  #if defined(CONFIG_CPU_CORTEX_M0_M0PLUS)
  #elif defined(CONFIG_CPU_CORTEX_M3_M4) || defined(CONFIG_CPU_CORTEX_M7)
  ...

2)

  #if defined(CONFIG_CPU_CORTEX_M0_M0PLUS)
  ...
  #else
  ...
  #endif

is transformed to:

  #if defined(CONFIG_CPU_CORTEX_M0_M0PLUS)
  ...
  #elif defined(CONFIG_CPU_CORTEX_M3_M4) || defined(CONFIG_CPU_CORTEX_M7)
  ...
  #else
  #error Unknown ARM architecture
  #endif

Change-Id: I7229029b174da3a8b3c6fb2eec63d776f1d11e24
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2017-01-12 09:46:25 -06:00
Marcus Shawcroft
36ab9dd31d arm: cortex-m memory map is CPU specific
The cortex-m related memory map definitions in memory-map.h are all
CPU specific.  In preparation for replacing
CONFIG_CPU_CORTEX_M0_M0PLUS with CONFIG_ARMV6_M and
CONFIG_CPU_CORTEX_M4_M4 with CONFIG_ARMV7_M, adjust memory_map.h
conditional compilation to hang on CONFIG_* variables for specific
cortex CPUs.

Change-Id: I2af0b75eaa5b16f88836dbdae41446beacaeba71
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2017-01-12 09:46:25 -06:00
Marcus Shawcroft
3de84ae88e arm: Fix assembler layout.
Adjust the layout of various ARM assember files to conform to the norm
used in the majority of files.

Change-Id: Ia5007628be5ad36ef587946861c6ea90a8062585
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2017-01-12 09:46:25 -06:00
Maureen Helm
acca033468 pinmux: Merge ksdk pinmux dev into regular ksdk pinmux driver
Merges the ksdk pinmux dev driver into the regular ksdk pinmux driver,
which now exposes the public pinmux API. Removes the private ksdk pinmux
API and converts the frdm_k64f and hexiwear_k64 boards to use the public
pinmux API.

Jira: ZEP-958, ZEP-1432
Change-Id: Ie5f60b604133093050b9c596050cad776d7b7cb3
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:25 -06:00
Maureen Helm
fabc001ff3 frdm_k64f: Disable unused pinmux ports by default
Enable PORTD on the frdm_k64f only if SPI_0 is enabled. Otherwise, there
are no pins in the pinmux table for this port and it should be left
disabled.

Change-Id: I7f8a05552f6a320debfd11a780be1092da831101
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:25 -06:00
Maureen Helm
d072d2979e hexiwear_k64: Disable unused pinmux ports by default
Disable PORTA and PORTB by default on the hexiwear_k64 since there are
no pins in the pinmux table for these ports. Enable PORTE only if UART4
is enabled.

Change-Id: Ifdb01cacf0c475a9478454eb61474a930e22a628
Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2017-01-12 09:46:25 -06:00
Vincenzo Frascino
646ed9c56f boards: arm: v2m_beetle: Add documentation.
This patch adds the documentation page for the ARM V2M Beetle board into
the Zephyr tree.

Jira: ZEP-1300
Change-Id: I4f2fd9a4e496c0a674272f94bedcadf3c71d9971
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@linaro.org>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-01-11 21:40:40 -05:00