Commit Graph

264 Commits

Author SHA1 Message Date
Masayuki Ishikawa
9e8441e66e boards: spresense: Normalize rndis_smp and wifi_smp defconfigs
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-06-02 22:13:10 -05:00
Kazuya Hioki
ee0833c45d boards: cxd56xx: Apply CXD56_PHYSADDR to cxd56_imageproc.c and cxd56_audio_dma.c
Summary:
- This commit converts data to the physical address for DMA transfer.

Impact:
- cxd56_imageproc.c and cxd56_audio_dma.c

Testing:
- Not tested

Signed-off-by: Kazuya Hioki <Kazuya.Hioki@sony.com>
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-06-02 22:13:10 -05:00
Kazuya Hioki
d3ef61af31 boards: spresense: Introduce ramconfig-new.ld for the system bus
Summary:
- In order to support the atomic instructions by ldrex/strex instruction
  in NuttX SMP, the data or later sections are mapped to the system bus.

Impact:
- Bootloader for Spresense SDK 2.1.0 or later must be installed
- Loops per msec must be adjusted
- Physical address for DMA must be converted with CXD56_PHYSADDR

Testing:
- Will be tested with later commits

Signed-off-by: Kazuya Hioki <Kazuya.Hioki@sony.com>
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-06-02 22:13:10 -05:00
Nakamura, Yuuichi
85f9b893b2 Add new config nsh_trace for spresense 2021-06-01 00:48:59 -05:00
Masayuki Ishikawa
f14ceb43b7 boards: spresense: Remove CONFIG_LIBM from defconfigs
Summary:
- This commit removes CONFIG_LIBM from defconfigs to use libm for gcc

Impact:
- Applications which use the math library

Testing:
- Tested with spresense:wifi_smp

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-05-27 12:56:54 +02:00
SPRESENSE
0146231166 boards: cxd56xx: Fix bug that modem may miss the GPIO interrupt
If the GPIO falls within 300us after raising
(or GPIO raises within 300us after falling), the modem may miss the GPIO
interrupt. So add delay by 300us before changing the GPIO.
2021-05-23 20:42:54 +02:00
SPRESENSE
14c57b0774 boards: cxd56xx: Fix uninitialized variable
Fix uninitialized variable.
CodeSonar Warning 520074
2021-05-23 20:42:54 +02:00
SPRESENSE
21ed297adc boards: cxd56xx: Fix configuration to compile bmp280 sensor
Fix the configuration name to compile cxd56_bmp280_i2c.c.
2021-05-23 20:42:54 +02:00
SPRESENSE
6cc60f3bd9 boards: cxd56xx: Set the pin number to the argument of gpio handler
Make it easy to get the pin number on GPIO interrupt handler.
2021-05-23 20:42:54 +02:00
SPRESENSE
ca775beccb boards: spresense: Support board_reset on interrupt context
When CONFIG_BOARD_RESET_ON_ASSERT is enabled, board_reset() may be
called on interrupt context. This commit changes to be able to call the
function on interrupt context.
2021-05-23 20:42:54 +02:00
SPRESENSE
8b5425d661 boards: spresense: Add delay only for PMIC GPO setting
When RTC clock is still unstable, add a delay time only for PMIC GPO
setting to avoid a problem that the setting is not reflected.
2021-05-23 20:42:54 +02:00
SPRESENSE
8403fe6503 boards: spresense: Fix PMIC setting during boot-up
When RTC clock is still unstable, the continuous PMIC settings may not
be reflected. This commit adds a delay time to avoid such problem.
2021-05-23 20:42:54 +02:00
Masayuki Ishikawa
3af0ef70ff boards: spresense: Update rndis/rndis_smp/wifi/wifi_smp defconfigs
Summary:
- Add the following configs
  +CONFIG_NFS=y
  +CONFIG_USERMAIN_STACKSIZE=3072 (rndis/defconfig only)

Impact:
- None

Testing:
- Tested with NFS server on Ubuntu 18.04 (x86_64)

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-05-13 22:33:12 -03:00
Xiang Xiao
11ef8a3201 board: Enable CONFIG_BOARDCTL_ROMDISK
to fix build break by commit 3156aa7532

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-05-13 10:44:16 -05:00
Gregory Nutt
27e0725a4e Remove CONFIG_NET_UDP_BINDTODEVICE from DHCPC configurations
CONFIG_NET_UDP_BINDTODEVICE is now selected by default if DHCPC is enabled.

This change will not build without apps PR 696
2021-04-28 21:22:40 -05:00
Abdelatif Guettouche
f43f066018 boards: Update the iperf configs.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-04-21 13:44:18 -05:00
Masayuki Ishikawa
1a9e7efde5 smp: Remove CONFIG_SMP_IDLETHREAD_STACKSIZE
Summary:
- The CONFIG_SMP_IDLETHREAD_STACKSIZE was introduced to optimize
  the idle stack size for other than CPU0
- However, there are no big differences between the idle stacks.
- This commit removes the config to simplify the kernel code

Impact:
- All SMP configurations

Testing:
- Tested with ostest with the following configs
- spresense:smp, spresense:rndis_smp
- esp32-devkitc:smp (QEMU), maix-bit:smp (QEMU)
- sabre-6quad:smp (QEMU), sabre-6quad:netnsh_smp (QEMU)
- raspberrypi-pico:smp, sim:smp (x86_64)

Signed-off-by: Masayuki Ishikawa <asayuki.Ishikawa@jp.sony.com>
2021-04-19 21:46:39 -05:00
Xiang Xiao
2335b69120 arch: Allocate the space from the beginning in up_stack_frame
arch: Allocate the space from the beginning in up_stack_frame

and modify the affected portion:
1.Correct the stack dump and check
2.Allocate tls_info_s by up_stack_frame too
3.Move the stack fork allocation from arch to sched

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-16 12:41:41 +09:00
Xiang Xiao
8640d82ce0 arch: Rename g_intstackbase to g_intstacktop
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-16 12:41:41 +09:00
Barry Xu
099980efb5 Support different hardware version of Wi-Fi add-on board (iS110B)
Signed-off-by: Barry Xu <barry.xu@sony.com>
2021-04-14 16:10:51 +09:00
Masayuki Ishikawa
0d1d42ec5f boards: spresense: Update defconfigs for rndis and rndis_smp
Summary:
- Update spresense:rndis_smp
  - Remove CONFIG_MAX_TASKS=16
  - Enable CONFIG_RTC_ALARM and CONFIG_RTC_HIRES
- Update spresense:rndis
  - Follow rndis_smp configuration except for SMP

Impact:
- spresense:rndis and spresense:rndis_smp

Testing:
- Tested with nxplayer

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-04-12 23:19:30 -05:00
Xiang Xiao
3f67c67aaf arch: Fix the stack boundary calculation and check
All supported arch uses a push-down stack:
The stack grows toward lower addresses in memory. The stack pointer
register points to the lowest, valid working address (the "top" of
the stack). Items on the stack are referenced as positive(include zero)
word offsets from sp.
Which means that for stack in the [begin, begin + size):
1.The initial SP point to begin + size
2.push equals sub and then store
3.pop equals load and then add

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-04-10 08:39:54 -07:00
Masayuki Ishikawa
9cce09e58a boards: Remove SCHED_INSTRUMENTATION from all SMP related configs
Summary:
- This commit removes SCHED_INSTRUMENTATION which has been used
  to debug NuttX SMP kernel

Impact:
- None

Testing:
- Tested with ostest

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-03-22 19:47:56 -07:00
Alin Jerpelea
40cd67eee6 boards: arm: Author Gregory Nutt: update licenses to Apache
Gregory Nutt has submitted the SGA and we can migrate the licenses
 to Apache.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-03-18 22:58:27 -07:00
Jiuzhu Dong
59eb4fa8d6 fs: delete NFILE_DESCRIPTORS for allocating dynamically
Change-Id: Id06d215063796d222b9792d25ab2d6742167729f
Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-03-17 06:46:42 -07:00
Masayuki Ishikawa
c3ace7a999 boards: spresense: Add CONFIG_ARCH_LEDS_CPU_ACTIVITY=y to rndis_smp and wifi_smp
Summary:
- This commit adds CONFIG_ARCH_LEDS_CPU_ACTIVITY=y to rndis_smp and wifi_smp

Impact:
- spresense:rndis_smp and spresense:wifi_smp configurations

Testing:
- Tested with smp and ostest

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-03-11 15:30:38 +01:00
Masayuki Ishikawa
d4d996cc28 boards: spresense: Add CONFIG_ARCH_LEDS_CPU_ACTIVITY to board.h and cxd56_leds.c
Summary:
- This commit adds CPU activity LEDs feature to spresense

Impact:
- CONFIG_ARCH_LEDS_CPU_ACTIVITY=y only

Testing:
- Arch specific code and defconfigs will be commited later

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-03-11 15:30:38 +01:00
Masayuki Ishikawa
06a81db203 boards: spresense: Update rndis_smp/defconfig
Summary:
- This commit updates rndis_smp/defconfig
- Adjust stack size to avoid hardfault
- Remove CONFIG_NET_TCP_WRITE_BUFFERS temporarily to avoid
  unstable behaviors with nxplayer + telnet

Impact:
- spresense:rndis_smp only

Testing:
- Tested with nxplayer, telnet

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-03-10 14:14:52 +08:00
Gustavo Henrique Nihei
330eff36d7 sourcefiles: Fix relative path in file header 2021-03-09 23:18:28 +08:00
Gustavo Henrique Nihei
47cb41c92f makefiles: Fix relative path in file header 2021-03-09 23:18:28 +08:00
Masayuki Ishikawa
a11764525d boards: spresense: Update rndis_smp/defconfig
Summary:
- This commit adds following parameters to rndis_smp/defconfig
- CONFIG_LIB_SENDFILE_BUFSIZE=1024
- CONFIG_MEMCPY_VIK=y
- CONFIG_MEMSET_64BIT=y
- CONFIG_MEMSET_OPTSPEED=y
- CONFIG_MQ_MAXMSGSIZE=64

Impact:
- rndis_smp only

Testing:
- Tested with nxplayer

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-03-07 19:51:12 -08:00
Xiang Xiao
9473434587 Ensure the kernel component don't call userspace API
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-03-01 09:23:09 +09:00
Masayuki Ishikawa
ad2e85433a boards, include, sched: Remove CONFIG_SPINLOCK_IRQ
Summary:
- This commit removes CONFIG_SPINLOCK_IRQ to avoid complexity

Impact:
- None

Testing:
- Tested with the following configs
- spresense:wifi, spresense:smp
- esp32-devkitc:smp (QEMU), sabre-6quad:smp (QEMU)
- maix-bit:smp (QEMU), sim:smp
- stm32f4discovery:wifi
2021-02-05 22:50:04 -08:00
Masayuki Ishikawa
8706db6f48 boards: spresene: Add iperf to rndis and rndis_smp defcofigs
Summary:
- This commit adds iperf to rndis and rndis_smp defcofigs

Impact:
- rndis and rndis_smp

Testing:
- Tested with iperf

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-01-31 21:43:54 -08:00
baggio63446333
0261e58a8b boards: cxd56xx: Add I2C bitbang driver registration
Add board API to register i2c bitbang driver as i2c device.
2021-01-26 13:59:30 -03:00
Alin Jerpelea
e76f0f3de9 arch: arm: cxd56xx: replace licenses with Apache 2.0
This change is a license change to Apache 2.0 license.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-01-25 04:34:41 -08:00
Alin Jerpelea
0881e0e8db boards: arm: cxd56xx: drivers: update license to Apache 2.0
This is a license change to Apache 2.0 license.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-01-25 04:34:41 -08:00
Alin Jerpelea
94774f4d5b boards: arm: cxd56xx: common: update license to Apache 2.0
This is a license change to Apache 2.0 license.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-01-25 04:34:41 -08:00
Matias N
76cc5c36e4 bmp280: convert to common sensor interface 2021-01-18 21:08:34 -03:00
Xiang Xiao
0536953ded Kernel module should prefer functions with nx/kmm prefix
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-01-13 08:57:58 +01:00
Masayuki Ishikawa
96769b0722 boards: cxd56xx: Replace license header with Apache License 2.0
Summary:
- This commit replaces SHES related headers under cxd56xx

Impact:
- No impact

Testing:
- Build check only

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-12-28 08:43:35 +01:00
YAMAMOTO Takashi
4c67d9d66c boards/arm/cxd56xx/common/src/cxd56_ili9340.c: Fix syslog formats 2020-11-27 05:18:57 -06:00
YAMAMOTO Takashi
edee18be72 boards/arm/cxd56xx/common/src/cxd56_gs2200m.c: Fix syslog formats 2020-11-27 05:18:57 -06:00
chao.an
b88561299b make/expression: improving up asm/C/C++ compile times
In the current compilation environment, the recursive assignment(=) for compile
flags will be delayed until every file is actually need to be compile.

For example:
--------------------------------------------------------------------------------
arch/arm/src/Makefile:

INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)chip}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)common}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(ARCH_SRCDIR)$(DELIM)$(ARCH_SUBDIR)}
INCLUDES += ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)sched}

CPPFLAGS += $(INCLUDES) $(EXTRAFLAGS)
CFLAGS += $(INCLUDES) $(EXTRAFLAGS)
CXXFLAGS += $(INCLUDES) $(EXTRAFLAGS)
AFLAGS += $(INCLUDES) $(EXTRAFLAGS)
--------------------------------------------------------------------------------

All compilation options will be included recursively,
which will be delayed until the compilation options are actually used:

tools/Config.mk:

--------------------------------------------------------------------------------
define COMPILE
  @echo "CC: $1"
  $(Q) $(CC) -c $(CFLAGS) $($(strip $1)_CFLAGS) $1 -o $2
endef
--------------------------------------------------------------------------------

All compile flags to be reexecuted $(INCDIR) as long as one file needs to be compiled,
but in fact, the compilation options have not changed in the current directory.

So the we recommand to change the syntax of assignment
From
    Recursive (=)
To
    Simple    (:=)

In this way, we can ensure that all compilation options are expanded only once and reducing repeated works.

Signed-off-by: chao.an <anchao@xiaomi.com>
2020-11-02 07:53:53 -08:00
Xiang Xiao
cc869d891c boards/cxd56xx: Remove HOSTCC and HOSTCFLAGS from Make.defs
since all host toolchain definition is moved to the common place(tools/Config.mk)

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-11-02 09:11:37 +01:00
Alin Jerpelea
bc8ea75580 tools: cxd56: mkspk: automate mkspk build
the mkspk tool will automaticaly be built if CONFIG_CXD56_BINARY
is set.

Test:
nuttx.spk was succesfully generated

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2020-10-28 12:50:02 +01:00
Masayuki Ishikawa
7be1739b41 boards: spresense: Add graphics demos to wifi and wifi_smp
Summary:
- This commit enables LCD for spresense and adds graphics demos

Impact:
- Affects wifi and wifi_smp configurations

Testing:
- Tested with nx, nxdemo, nxhello and nxlines

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-10-12 09:37:29 +02:00
Masayuki Ishikawa
b592228cea boards: spresense: Add CONFIG_ARCH_INTERRUPTSTACK=2048 to wifi and wifi_smp
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-10-12 09:37:29 +02:00
Masayuki Ishikawa
cb6dd70082 boards: cxd56xx: Fix a deadlock in cxd56_gs2200m.c
Summary:
- During streaming test, I noticed a dealock when controlling IRQ
- Actually, it will send an IPI when the cpu index is not 0
- However, up_cpu_pause() also sends IPI with critical section
- So the IRQ control must follow the same rule

Impact:
- Affects SMP only

Testing:
- Tested with spresense:wifi_smp

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-10-08 09:02:17 +02:00
Masayuki Ishikawa
8d1dc11a36 boards: spresense: Add CONFIG_USERMAIN_STACKSIZE=3072 to wifi/defconfig
Summary:
- I noticed that stack for the init task was filled almost 100%
- This commit fixes this issue

Impact:
- Affects spresense:wifi configuration only

Testing:
- Tested with renew/mount/wget/nxplayer commands

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-10-01 08:45:48 +02:00
Masayuki Ishikawa
6696d72494 boards: spresense: Adjust parameters for wifi and wifi_smp
Summary:
- This commit adjusts parameters for audio streaming

Impact:
- Only affects spresense:wifi and spresense:wifi_smp

Testing:
- Tested with nxplayer

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-23 15:17:46 +02:00
Masayuki Ishikawa
b08eaf0fbb boards: spresense: Add rndis_smp/defconfig
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-23 10:45:29 +02:00
Masayuki Ishikawa
809b0aa02c boards: spresense: Add CONFIG_SYSTEM_NXRECORDER=y to rndis/defconfig
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-23 10:45:29 +02:00
Masayuki Ishikawa
3941e47259 boards: spresense: Update README.txt regarding gs2200m
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-17 09:24:39 +02:00
Xiang Xiao
bf7399a982 arch: Initialize idle thread stack information
and remove the special handling in the stack dump

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ia1ef9a427bd4c7f6cee9838d0445f29cfaca3998
2020-09-16 06:57:29 -07:00
Masayuki Ishikawa
5fec6191c3 boards: spresense: Update rndis/defconfig
Summary:
- This commit updates spresense:rndis defconfig
- Audio buffer has been changed from 4KBx16 to 2KBx32
- Also, increase PREALLOC_MQ_MSGS to 32
- Increase stack size for audio worker thread
- Add examples/tcpblaster
- Use default IOB settings
- Enable NET_TCP_WRITE_BUFFERS

Impact:
- Affects spresense:rndis only

Testing:
- Tested with nxplayer, tcpserver, tcpclient, webserver, telnetd.

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-16 13:57:42 +02:00
Matias N
c1878406b5 fix: normalize two board configs which were not updated for CONFIG_NFILE_STREAMS change 2020-09-12 14:18:51 -07:00
Xiang Xiao
b0797263ca libc/stdio: Allocate file_struct dynamically
1.Reduce the default size of task_group_s(~512B each task)
2.Scale better between simple and complex application

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ia872137504fddcf64d89c48d6f0593d76d582710
2020-09-11 17:58:17 +08:00
Masayuki Ishikawa
a712fbd0a0 boards: wifi_smp: Add CONFIG_CXD56_TESTSET=y to defconfig
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-10 08:52:22 +02:00
Masayuki Ishikawa
35b2e7c431 boards: spresense: Fix build error for wifi_smp
Summary:
- Fix build error introduced by PR1520

Impact:
- Affects spresense:wifi_smp only

Testing:
- Build check only

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-07 14:32:05 +08:00
Xiang Xiao
952af92690 sched/note: Move the circle buffer code to driver
so the format code can be shared by different transport

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-09-07 11:54:10 +08:00
Masayuki Ishikawa
5feab8057c boards: cxd56xx: Add wifi_smp configuration
Summary:
- This commit adds a wifi_smp configuration for spresense
- To avoid deadlock, gs2200m_irq_enable() and gs2200m_irq_disable()
  release global spinlock if they are not called on CPU0.

Impact:
- Only affects spresense:wifi_smp

Testing:
- Tested with ostest, renew, smp, telnetd.
- NOTE: tcpserver might be unstable

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-09-01 09:05:53 +02:00
Nathan Hartman
91b52c38f9 Fix wrong executable bit on two source files
boards/arm/cxd56xx/drivers/audio/cxd56_audio_bca_reg.h:

    * Remove erroneous executable bit.

fs/tmpfs/fs_tmpfs.c:

    * Remove erroneous executable bit.
2020-08-31 19:19:14 +01:00
Brennan Ashton
4cb193d530 Docs: Update links to old website and wiki
Signed-off-by: Brennan Ashton <bashton@brennanashton.com>
2020-08-30 19:16:30 -03:00
Masayuki Ishikawa
e3b3d21556 boards: cxd56xx: Refactor cxd56_gs2200m.c
Summary:
- This commit refactors cxd56_gs2200m.c
- gs2200m_irq_enable() and gs2200m_irq_disable() are now symmetric.

Impact:
- All use cases which use the gs2200m driver.

Testing:
- Tested with spresense:wifi

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-08-20 03:17:13 -05:00
Ouss4
ccf7154f05 drivers: Add the configuration option to select a board specific folder. 2020-08-13 03:48:17 -05:00
Xiang Xiao
a0ce81d659 sched/wdog: Don't dynamically allocate wdog_s
to save the preserved space(1KB) and also avoid the heap overhead

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I694073f68e1bd63960cedeea1ddec441437be025
2020-08-11 12:28:55 -06:00
Xiang Xiao
154852acb5 sched/mqueue: Reduce the initial memory consumption
Change the preallocated message and descriptor from 32/24 to 4.
The total size is reduce from 1892 to 532

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I79d199465daef678986868f773876289859f42fc
2020-08-10 08:07:50 +02:00
Masayuki Ishikawa
56181c0bdd boards: spresense: Update wifi/defconfig
Summary:
- Add CONFIG_EXAMPLES_TCPBLASTER_GROUPSIZE=500
- Remove CONFIG_EXAMPLES_TCPBLASTER_SERVER_PORTNO=10001
- Add CONFIG_EXAMPLES_TCPBLASTER_TARGET2=y

Impact:
- This commit affects spresense:wifi only

Testing:
- Tested tcpclient and tcpserver

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-08-09 07:39:43 -05:00
Masayuki Ishikawa
9a1391d36b boards: spresense: Enable CONFIG_RTC_HIRES in wifi/defconfig
Summary:
- This commit enable COFNIG_RTC_HIRES

Impact:
- This commit affects spresense:wifi configuration only

Testing:
- spresense:wifi with getprime

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-08-07 09:30:52 +01:00
Xiang Xiao
e1d3627bb1 sched/wdog: Change the default value of MAX_WDOGPARMS from 4 to 2
since the maximum number of argument pass to wd_start in the whole
code base is 2 and change CONFIG_MAX_WDOGPARMS in some defconfig
from 1 to 2 oherwise pthread_condclockwait will fail

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ib6cb28b8c0722058849e7be916e164513431d21c
2020-08-06 10:36:22 -06:00
David Sidrane
ed5d00edd8 board_crashdump:use consistent type from outer function for file name 2020-08-04 21:20:05 -05:00
Gregory Nutt
d09f6aaa72 Correct more improper use of malloc(), zalloc(), and free()
malloc() and free() should never be used within the OS. This will work in the FLAT build because there is only a single heap, but will cause problems in PROTECTED and KERNEL build modes where there are separate heaps for user and kernel memory.

Typically kmm_malloc(), kmm_zalloc(), and kmm_free() should be called within the kernel in those build modes to use the kernel heap.

Memory is never free.  Possible memory leak:

    ./boards/arm/cxd56xx/common/src/cxd56_crashdump.c:  pdump = malloc(sizeof(fullcontext_t));

Memory allocated with malloc(), but freed with kmm_free():

    ./drivers/usbhost/usbhost_composite.c:  cfgbuffer = (FAR uint8_t *)malloc(CUSTOM_CONFIG_BUFSIZE);

Memory is never freed in these cases.  It is allocated in the driver initialization logic, but there is no corresponding uninitialization logic; memory is not freed on error conditions:

    ./arch/arm/src/lc823450/lc823450_i2s.c:  priv = (struct lc823450_i2s_s *)zalloc(sizeof(struct lc823450_i2s_s));
    ./arch/arm/src/sam34/sam_spi.c:  spics = (struct sam_spics_s *)zalloc(sizeof(struct sam_spics_s));
    ./arch/arm/src/sama5/sam_spi.c:  spics = (struct sam_spics_s *)zalloc(sizeof(struct sam_spics_s));
    ./arch/arm/src/samv7/sam_spi.c:  spics = (struct sam_spics_s *)zalloc(sizeof(struct sam_spics_s));

Memory is allocated with zalloc() but freed on error conditions with kmm_free():

    ./arch/arm/src/sama5/sam_ssc.c:  priv = (struct sam_ssc_s *)zalloc(sizeof(struct sam_ssc_s));
    ./arch/arm/src/samv7/sam_ssc.c:  priv = (struct sam_ssc_s *)zalloc(sizeof(struct sam_ssc_s));
    ./arch/arm/src/stm32/stm32_i2s.c:  priv = (struct stm32_i2s_s *)zalloc(sizeof(struct stm32_i2s_s));

Memory is never freed:

    ./drivers/spi/spi_bitbang.c:  priv = (FAR struct spi_bitbang_s *)zalloc(sizeof(struct spi_bitbang_s));
2020-08-04 20:41:43 +01:00
SPRESENSE
3befe16f52 drivers/video: Support JPEG format in VIDEO_CAPTURE
Add support for the VIDEO stream with JPEG frames supported by ISX012.
2020-07-31 09:37:20 +02:00
SPRESENSE
45e9c2c8f5 drivers/video: Add 3A parameter control
Provide functions which get and set the 3A (Auto white balance/Auto
exposure/Auto
focus) parameters.
These are achieved by the ioctl request codes VIDIOC_G_EXT_CTRLS and
VIDIOC_S_EXT_CTRLS which have the following settings:

 1. ctrl_class = V4L2_CTRL_CLASS_CAMERA
 2. id         = V4L2_CID_3A_PARAMETER

Also, provide function which get the 3A adjustment status.
This is achieved by the ioctl request codes VIDIOC_G_EXT_CTRLS which has the
following settings:

 1. ctrl_class = V4L2_CTRL_CLASS_CAMERA
 2. id         = V4L2_CID_3A_STATUS
2020-07-31 09:37:20 +02:00
SPRESENSE
28ba7f4a1e boards: cxd56xx: Fix bugs about ON/OFF control of AWB and AE
Fix the following three bugs about ON/OFF control of auto white balance and auto
exposure:

 - The returned value of VIDIOC_G_CTRL with id = V4L2_CID_AUTO_WHITE_BALANCE is
different from V4L2 specification.
 - Auto exposure is locked if auto white balance lock is requested.
 - Auto exposure and auto white balance are locked if auto exposure lock is
requested.
2020-07-31 09:37:20 +02:00
SPRESENSE
f1f0378d0a boards: cxd56_imageproc.c: Add alpha blend API
Add imageproc_alpha_blend() to blend two images in a specified ratio.

The blended source image is selectable from the following two types:

 - Single color image
 - YUV422 image

The blend ratio is selectable from the following three types:

 - Blend ratio with single value
 - Blend ratio with 1bpp
 - Blend ratio with 8bpp
2020-07-31 09:37:20 +02:00
SPRESENSE
8fec8cccfc boards: cxd56_imageproc.c: Add RGB565 -> YUV422 converter
Enable to interconvert between YUV422 and RGB565.
2020-07-31 09:37:20 +02:00
SPRESENSE
d560ce65ff cxd56xx: spresense: Add some improvements and fix bugs for Spresense board
- Add new functions of GNSS
- Support the lower PWM frequency
- Add CONFIG_CPUFREQ_RELEASE_LOCK
- Add high speed ADC support
- Add HPADC input gain configuration
- Add eMMC device
- Frame buffer support
- Fix SD/GNSS/sensor drivers not worked
- Build errors
- Fix nxstyle issues
2020-07-28 09:13:05 +02:00
SPRESENSE
500ead8101 drivers/modem/altair: Update altair modem driver
- Add board specific logic to altair modem dirver
- Fix issue that SPI4 RX frequency violated AC Spec
- Remove dummy buffer in altair driver
- Fix priority of SPI transfer task is too low
- Remove unnecessary configuration
- Modify timeout value for RX ready
- Fix minor bugs
2020-07-28 09:09:18 +02:00
Xiang Xiao
b329e2377d boards: Move toolchain related variables to Toolchain.defs
1.It make sense to let Toolchain.defs give the default value
2.The board can still change if the default isn't suitable
3.Avoid the same definition spread more than 200 Make.defs

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ic2649f1c7689bcf59c105ca8db61cad45b6e0e64
2020-07-20 17:10:37 +01:00
Masayuki Ishikawa
4cf307584f boards: spresense: Remove CONFIG_SCHED_LPWORK=y from wifi/defconfig
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-07-19 21:11:46 -05:00
Xiang Xiao
f5311de6b4 boards: Remove the unused ARCHCCVERSION and ARCHCCMAJOR
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I22d546693139c59c8c899479887a5f04d65edbd6
2020-07-16 11:03:53 -07:00
Xiang Xiao
ee875b2a26 boards: Move HOSTCC/HOSTCFLAGS to tools/Config.mk
Make.defs under board folder can still overwrite the default as needed

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I1c300a8ace4b54d475ef8d398661ed65ca273a2e
2020-07-15 19:14:58 +01:00
Xiang Xiao
d32e9c38df boards: Move the C/C++ search path to the common place
so all boards support uClibc++/libc++ automatically

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ibe6fafbec57f7acb26ea6188a3e9923ea82295c5
2020-07-13 15:11:12 -03:00
Xiang Xiao
a62b45380b spresense:example_camera: Remove CONFIG_SYSTEM_NSH_CXXINITIALIZE
since it doesn't exist anymore

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-07-09 12:41:19 +09:00
Alin Jerpelea
5d0b93a0d9 boards: arm: cxd56xx: enable basic snapshot camera example
This camera example grabs a specified number of pictures
and saves them on the available storage

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2020-07-08 23:59:29 +01:00
Xiang Xiao
49020acfdc boards: Remove the unused CONFIG_xxx_CXXINITIALIZE=y
since cxx initialization is controlled by CONFIG_HAVE_CXXINITIALIZE now

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I39438dc3006d0a0b810052ecef50cd3c92f09d83
2020-07-01 10:41:37 -06:00
Alin Jerpelea
c6c0214f9a boards: arm: cxd56: initilize the video stream driver from the board
The video stream driver must be intialized from the board to comply with NuttX

NOTE:
Please remove the initalization from any camera example

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2020-06-15 08:10:49 +09:00
Masayuki Ishikawa
48dffbb2db boards: spresense: Add nxrecorder to wifi/defconfig
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-06-10 20:17:09 -07:00
Masayuki Ishikawa
8ae0a13b36 boards: spresense: Change audio buffer size and mq size for wifi
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2020-06-10 09:11:15 -03:00
Xiang Xiao
7a18ebe459 drivers/led: Extend userled_set_t from 8bits to 32bits
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I5701b42ff930998198b1d915316cc4f2d085d4eb
2020-06-07 19:28:10 +01:00
Xiang Xiao
76965474ac drivers/led: Let board_userled_initialize return the led number
so the lower half driver don't need include the specific board.h

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Icf6638a6865bac42150b5957376e55909f041d40
2020-06-07 19:28:10 +01:00
Xiang Xiao
1b47aa1cb2 drivers/button: Let board_button_initialize return the button number
so the lower half driver don't need include the specific board.h

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: I2ff5c30049a5c5e8ee90baea56e9f4cb1a8a4f87
2020-06-07 19:28:10 +01:00
Gregory Nutt
1414c55c45 boards/arm: Leverage PR 1150 to other ARM Make.defs 2020-05-30 20:09:02 +01:00
Xiang Xiao
e83c1400b6 build: Move BOARD_DIR definition to common place
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 20:20:12 +01:00
Xiang Xiao
7e5b0f81e9 build: Replace -I with INCDIR
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 20:20:12 +01:00
Xiang Xiao
23668a4b9b build: Remove the empty variable assignment
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 08:24:13 -06:00
Xiang Xiao
edb0ce2d5a build: Don't need use $(DELIM) in include statement
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-24 08:24:13 -06:00
Xiang Xiao
dd61d3d9f9 build: Remve the unnecessary .gitignore
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2020-05-23 18:00:40 +01:00