Commit Graph

42116 Commits

Author SHA1 Message Date
Yuichi Nakamura
9b8e81ebc1 arm/rp2040: Fix warnings when UART console is not used 2021-06-14 09:05:19 -03:00
Yuichi Nakamura
8d722709cd usbmsc: Add USBMSC_NOT_STALL_BULKEP for RP2040 workaround
The new configuration CONFIG_USBMSC_NOT_STALL_BULKEP avoids to go into
stall state when :
- Receiving SCSI_CMD_INQUIRY with flags or pagecode != 0
- Receiving SCSI_CMD_MODESENSE6 and return the result data shorter than
  the requested data size.
Instead of stall, it just ignores the error condition.

Originally the usb driver goes into the stall under the conditions
mentioned above to inform to the USB host that the requested SCSI feature
is not supported, or the result data is shorter than the requested data
size.
But, at this moment, RP2040 USB device driver cannot handle entering and
leaving stall state of the bulk endpoints well.  Once stalls, the host -
device communication stops and cannot be resumed.

I have investigated to solve the issue and found that the existing
RP2040 USB device driver implementation, TinyUSB
(https://github.com/hathach/tinyusb) mass-storage class driver doesn't
enter the stall state like the treatment of this patch.

So, I introduce this new configuration as the RP2040 workaround.
In the future, when the RP2040 USB device driver is fixed and can handle
the bulk endpoint stall correctly, this patch should be reverted.
2021-06-14 09:05:19 -03:00
Yuichi Nakamura
e00546335d boards/raspberrypi-pico: Add board support for USB device 2021-06-14 09:05:19 -03:00
Yuichi Nakamura
b860e3c4ad arm/rp2040:USB device controller support
Summary:
- Add Raspberry Pi Pico (RP2040) USB device controller support.
- Confirmed that CDC/ACM, MSC and these composite device are working.
- The current implementation have an unresolved issue and some workaround
  for USB MSC SCSI driver is required.
  See the comment in the patch "usbmsc: Add USBMSC_NOT_STALL_BULKEP for RP2040 workaround".

Impact:
- RP2040 only

Testing:
- Tested with Windows 10 and Ubuntu-18.04/20.04 as the USB host.
- Tested configurations:
  - raspberrypi-pico:usbnsh
  - raspberrypi-pico:usbmsc
  - raspberrypi-pico:composite
2021-06-14 09:05:19 -03:00
YAMAMOTO Takashi
0347cd3f09 tcp_should_send_recvwindow: Add a few ninfo() 2021-06-13 21:20:24 -05:00
YAMAMOTO Takashi
14ec75e7fc tcp: window update improvements
* Fixes the case where the window was small but not zero.

* tcp_recvfrom: Remove tcp_ackhandler. Instead, simply schedule TX for
  a possible window update and make tcp_appsend decide.

* Replace rcv_wnd (the last advertized window size value) with
  rcv_adv. (the window edge sequence number advertized to the peer)
  rcv_wnd was complicated to deal with because its base (rcvseq) is
  also moving.

* tcp_appsend: Send a window update even if there are no other reasons
  to send an ack.
  Namely, send an update if it increases the window by
    * 2 * mss
    * or the half of the max possible window size
2021-06-13 21:20:24 -05:00
YAMAMOTO Takashi
1f6fdf04b7 tcp: Extract MSS calculation from tcp_synack
I plan to use it for recv window update decision logic.
2021-06-13 21:20:24 -05:00
chao.an
50f415d529 net/telnet: fix a potential busyloop if rxbuffer writes faster than read
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-13 05:06:54 -05:00
Sara Souza
7300bc8f1c xtensa/esp32: Adds I2C polled support. 2021-06-13 05:04:51 -05:00
Masayuki Ishikawa
bafac8b560 arch: k210: Fix stack coloring for the idle thread stack
Summary:
- I noticed that stack coloring for the idle thread stacks does
  not work due to the recent changes
- This commit fixes this issue

Impact:
- k210 only

Testing:
- Tested with both maix-bit (dev board) and QEMU

Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
2021-06-12 05:54:08 -05:00
Alexander Lunev
fd46d7a74f boards: added support for EMW3162 Wi-Fi board 2021-06-11 21:05:24 -05:00
Eero Nurkkala
1bce864ef7 mpfs: add i2c driver
This adds mpfs i2c driver.

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2021-06-11 21:03:42 -05:00
Daniel P. Carvalho
361703a881 Added basic support for nucleo-g431kb board. 2021-06-11 20:51:56 -05:00
Xiang Xiao
7ff6aac43a serial/pty: Initialize the terminal setting as a console
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ie80a22b7a074d048435524d86f0ca7fc7a20e756
2021-06-12 09:52:05 +09:00
Gustavo Henrique Nihei
817d81d38f tools/ci: Revert workaround for issue with avr-binutils
avr-binutils homebrew recipe has been fixed upstream:
https://github.com/osx-cross/homebrew-avr/issues/243

This reverts commit 37e30ccc54.
2021-06-12 07:16:23 +09:00
Xiang Xiao
e788b2643a boards/sim: Remove the hardcode stack size
Many device driver will call the host API to finish the simulation
which require the big stack in the most case, so let's utilize the
new DEFAULT_TASK_STACKSIZE(64KB on sim) option instead.

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-06-12 06:57:02 +09:00
Jukka Laitinen
cdb1b00f34 crypto/random_pool.c: Correct indexing on void pointer
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-06-11 10:58:06 -05:00
Xiang Xiao
4e038c1724 serial/pty: Don't return -NOSYS if pollfd::events equals 0
since the caller is free not to monitor any event

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Ib957be1b1b5a686faea0196bc9069e0908a492eb
2021-06-11 08:22:41 -07:00
Eero Nurkkala
fad34e04c4 mpfs: add spi driver
This adds the SPI driver for the MPFS Icicle board.

Signed-off-by: Eero Nurkkala <eero.nurkkala@offcode.fi>
2021-06-11 09:10:03 -05:00
Abdelatif Guettouche
96bcf7678b risc-v/esp32c3_wifi_adapter.c: Remove a config that's only used in
Xtensa chips.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-06-11 10:49:52 -03:00
Alexander Vasiljev
6545b95088 boards/sim/sim/sim: correct LDLINKFLAGS after migrating from ld to gcc 2021-06-11 19:32:20 +09:00
chao.an
b6bf9cf44b net/accept: alloc the accept fd after accept success
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-11 05:00:21 -05:00
chao.an
0d8e5b66fd net/sock: move the psock calloc out of sockfd_allocate
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-11 05:00:21 -05:00
Alin Jerpelea
762ae456b3 Author: Michal Lyszczek: update licenses to Apache
Gregory Nutt is has submitted the SGA

Michal Lyszczek has submitted the ICLA

as a result we can migrate the licenses to Apache.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2021-06-11 04:57:25 -05:00
chao.an
f3a5aee7d7 libs/libc/netdb: add dns clear interface
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-11 04:54:30 -05:00
Jiuzhu Dong
2fd25d7ea7 arch/armv7-a: Colorize the idle thread stack for other cpu(SMP)
Keep previous modification.

Signed-off-by: Jiuzhu Dong <dongjiuzhu1@xiaomi.com>
2021-06-11 01:26:50 -05:00
YAMAMOTO Takashi
7d82e7a7c4 tcp_input: fix a confusing variable name and a comment
It looks like a copy-and-paste mistake.
2021-06-10 22:47:04 -05:00
YAMAMOTO Takashi
eb00e00e48 tcp: Use the tcp seq macros in some obvious places 2021-06-10 22:47:04 -05:00
YAMAMOTO Takashi
433a2b27d9 tcp: add macros to deal with sequence number wraparound 2021-06-10 22:47:04 -05:00
Gustavo Henrique Nihei
bf1d587063 Documentation: Update kconfig-frontends install instructions
It still assumed kconfig-frontends as part of the core NuttX
repository.
2021-06-10 18:27:41 -04:00
Nathan Hartman
7259601baa ReleaseNotes: Fix missing Compatibility Concerns for NuttX-9.1
* ReleaseNotes:

      Discovered that the entire Compatibility Concerns section was
      missing.

      Copied this information from the CWIKI ReleaseNotes [1] and
      reformatted to fit the textual format of this file.

      [1] https://cwiki.apache.org/confluence/display/NUTTX/NuttX+9.1#NuttX9.1-CompatibilityConcerns
2021-06-10 18:33:07 +01:00
raiden00pl
f6e6bc65ce boards/b-g431b-esc1: add support for FOC configurations 2021-06-10 13:58:33 -03:00
raiden00pl
d76f8ea04a arch/arm/src/stm32/stm32_foc.c: add workaround for an issue found in STM32G4 family
From G4 erratas: "ADC channel 0 converted instead of the required ADC channel"
2021-06-10 13:58:33 -03:00
raiden00pl
7c47f32a19 arch/arm/src/stm32/hardware/stm32g4xxc_pinmap.h: rename OPAMP pins to match the manual 2021-06-10 13:58:33 -03:00
raiden00pl
76824ba2a9 stm32g4xxxx_memorymap.h: remove invalid OPAMP1-6 definitions 2021-06-10 13:58:33 -03:00
raiden00pl
af0f2b4f37 stm32g4: add OPAMP defs 2021-06-10 13:58:33 -03:00
raiden00pl
0ee42f38b3 boards/b-g431b-esc1: add button support 2021-06-10 13:58:33 -03:00
raiden00pl
7a2aa8aa69 b-g431b-esc1: refactor bringup logic for consistency with other boards 2021-06-10 13:58:33 -03:00
chao.an
805d3a2061 net/local: add local_nextconn() helper
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-10 13:57:32 -03:00
Alexander Vasiljev
9d0da9818c arch/arm/src/stm32h7: qspi use indirect write instead indirect read without data. 2021-06-10 10:46:34 -05:00
chao.an
2c51c29768 mm/iob: add an interface to support dequeue an iob from the queue
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-10 10:45:30 -05:00
chao.an
e73883aba5 Documentation/iob: update the function prototype
Signed-off-by: chao.an <anchao@xiaomi.com>
2021-06-10 10:45:30 -05:00
Virus.V
7c20199a61 riscv/bl602:replace syslog to debugging log macros 2021-06-10 08:59:16 -05:00
Fotis Panagiotopoulos
2ef90786c8 setjmp.h: Added missing include. 2021-06-10 08:58:52 -05:00
Xiang Xiao
c0fdddc5d7 arch: Remove all go_nx_start from chip specifc source
since the idle stack color is done in the common code now

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-06-10 06:50:41 -07:00
Xiang Xiao
fa0d123f87 arch: Colorize the idle thread stack in an unified way
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
Change-Id: Idae8da53e5a4799a8edc0e882f17fd515b70cb14
2021-06-10 06:50:41 -07:00
Chen Wen
dbf9c87a42 risc-v/esp32c3: Support ESP32-C3 RTC driver 2021-06-10 09:33:04 -03:00
Alexander Vasiljev
45672c269d Make: use gcc as LD 2021-06-10 03:43:18 -07:00
Virus.V
317bd40fec net/dns:fix unaligned access in dns query 2021-06-10 02:03:31 -05:00
Peter van der Perk
3b94669b7f FlexCAN Fix TX abort process 2021-06-09 13:34:13 -05:00