Commit Graph

36191 Commits

Author SHA1 Message Date
Kinsey Moore
c37fdedec2 cpukit/dosfs: Jump to correct error handler
When encountering an error during filesystem creation, fat_fd must be
cleaned up appropriately once the file is opened. There was an
opportunity for a resource leak due to jumping to the incorrect error
handling label.
2024-01-10 14:43:53 -06:00
Joel Sherrill
baec0608d6 Revert "Include Xilinx support files also for Zynq7000"
This reverts commit d1d3ceb502.

Per discussions on devel@ and Discord.
2024-01-09 16:35:19 -06:00
Bernd Moessner
9d07bf67a9 xparameters.h: fix typo in comment 2024-01-08 17:42:58 -06:00
Bernd Moessner
d1d3ceb502 Include Xilinx support files also for Zynq7000 2024-01-05 12:07:52 -06:00
Kinsey Moore
e6fce3cd3d cpukit/dosfs: Cast away ignored return
An error is already being reported. Checking the return value of this
function is not useful.
2024-01-05 08:29:25 -06:00
Kinsey Moore
981d24e22a testsuites/fstests: Add JFFS2 NAND support tests
This adds a second set of JFFS2 tests running on top of a simulated NAND
backend to ensure that interactions with delayed writes operate as
expected.
2023-12-22 19:51:52 -06:00
Kinsey Moore
efc36cb467 cpukit/jffs2: Revert to non-granular locking
Revert JFFS2 to non-granular locking. This makes the superblock
available to the delayed work that it owns so that delayed work
processing can ensure that shared resources are being exclusively
accessed. This change only affects NAND systems. Moving forward with
granular locking will require a significant investment of time in
producing a test harness that doesn't require hardware such that this
can get a reasonable amount of test coverage.
2023-12-22 19:51:52 -06:00
Sebastian Huber
36960f9d9b fstests/tftpfs: Use rtems_test_run() 2023-12-19 09:53:40 +01:00
Sebastian Huber
db2495a943 libtest: Change verbosity to normal
A verbose verbosity is not required for normal test suite runs.  It may
be used to debug test cases.
2023-12-19 09:53:40 +01:00
Sebastian Huber
a901ca3989 doxygen: CONFIGURE_JFFS2_DELAYED_WRITE_TASK_PRIORITY
Document CONFIGURE_JFFS2_DELAYED_WRITE_TASK_PRIORITY.

Update #4961.
2023-12-19 08:26:46 +01:00
Sebastian Huber
93f927de26 tm27: Add TM27_INTERRUPT_VECTOR_ALTERNATIVE
The TM27 support may define TM27_INTERRUPT_VECTOR_ALTERNATIVE to provide
an alternative software generated interrupt request which is raised by
_TM27_Raise_alternative() and cleared by _TM27_Clear_alternative().
Both functions shall return an RTEMS status code.  This interrupt vector
may be used to test the interrupt controller support on targets which do
not provide generic software generated interrupts.

Update #3716.
2023-12-19 08:26:46 +01:00
Sebastian Huber
2e71bd08ba tm27: Add optional TM27_INTERRUPT_VECTOR_DEFAULT
Let the BSP define TM27_INTERRUPT_VECTOR_DEFAULT to more efficiently and
reliably get the TM27 default interrupt vector.

Update #3716.
2023-12-19 08:22:37 +01:00
Sebastian Huber
d4b369814a ftpd: Fix set but not used warning 2023-12-19 08:03:42 +01:00
Kinsey Moore
3798c5735d bsps/xnandpsu: Allow manipulation of BBT
Expose functions to directly manipulate the bad block table (BBT). These
functions are necessary to correct possible BBT corruption caused by
bugs in the BBT management layer.
2023-12-14 13:40:03 -06:00
Kinsey Moore
437053282d bsps/xnandpsu: Constrain block erasure to device
The XNandPsu_EraseBlock function takes a target device and a block
offset for erasure. Ensure the block offset is within the size of the
target device.
2023-12-14 13:40:03 -06:00
Kinsey Moore
d77a873ddb bsps/xnandpsu: Mark correct reserved blocks
When marking the trailing blocks on a device as reserved for Bad Block
Table usage, ensure that the correct blocks are marked. This resolves an
off-by-one error that was marking one block too low and leaving the last
block in the device unmarked.
2023-12-14 13:40:03 -06:00
Kinsey Moore
f823dba027 bsps/xnandpsu: Write BBT to correct location
When writing out the Bad Block Table, write it to the targeted device
and ensure the block is appropriately mapped to the targeted device.
2023-12-14 13:40:03 -06:00
Kinsey Moore
757fbd6bc7 bsps/xnandpsu: Detect missing BBTs
Mark the BBT descriptor as invalid before scanning to ensure that
missing BBTs are detected and written correctly if necessary.
2023-12-14 13:40:03 -06:00
Kinsey Moore
d6b75cc248 bsps/xnandpsu: Read correct BBT size
The Bad Block Table is a per-device catalog of the dispositions of each
block in the device. Only read enough data to determine the dispositions
of blocks for the device being read.
2023-12-14 13:40:03 -06:00
Kinsey Moore
7946cff0bc bsps/xnandpsu: Fix BBT mapping functions
The xnandpsu driver includes functionality to map back and forth between
the flash-based BBT and the memory-based BBT with the values in each
being a bitwise inversion of each other. This resolves several bugs in
this process and simplifies the inversion from operating on the block
representation to operating on the entire BBT entry (4 blocks, 2 bits
per block, one byte total).

Bugs resolved in XNandPsu_ConvertBbt():
* The calculation of memory BBT entry offset was off by a factor of 4
* The entry offset into the flash BBT has been removed since each flash
  BBT directly describes the flash space it is contained within and has
  no reference to other devices in the chip

Bugs resolved in XNandPsu_WriteBbt():
* The BBT length calculated was reduced to NumTargetBlocks from
  NumBlocks since only the relevant portion of the in-memory BBT should
  be written to the flash-based BBT space
* An offset was applied to values retrieved from the in-memory BBT so
  that only the relevant portion was converted and written to the
  flash-based BBT
2023-12-14 13:40:03 -06:00
Kinsey Moore
a6aa6c6385 bsps/zynqmp/jffs2: Use BBT information directly
The XNandPsu_IsBlockBad() function is insufficient for JFFS2 to
determine whether a block is usable since the function does not report
reserved blocks. JFFS2 is also unable to use the last 4 blocks of each
target attached to the NAND controller since they are reserved for the
Bad Block Table (BBT), but not necessarily marked as such.
2023-12-14 13:40:03 -06:00
Jacob Killelea
0883f7ec58 bsps/arm/stm32f4: Enable USART RX interrupts
Hi all, this is my first email patch submission and my first contribution to RTEMS, so please give any
feedback you have!

This patch enables interrupt driven data reception on USART ports on
STM32F4 series chips. This feature is gated behind the config flag
BSP_CONSOLE_USE_INTERRUPTS. If this flag is not set to True, the older
polling implementation will be used. I tested this feature on STM32F401CE
(blackpill) and STM32 Nucleo F411RE boards, with both capable of keeping
up with a 115200 baud continous data stream. With the older polling
implementation, both would drop bytes at 9600 baud. In addition, I
updated the implementation of usart_set_attributes to support changing
the baud rate of the USART port based on the input speed.
2023-12-14 13:40:03 -06:00
Sebastian Huber
3fe4b72b06 libtest: Fix test printer in rtems_test_run()
Route the test output through T_vprintf() only while the test suite
runs.  Otherwise, the begin/end of test message may not show up.
2023-12-14 11:32:22 +01:00
Sebastian Huber
583b8ccae7 psxftw01: Simplify and use rtems_test_run() 2023-12-14 11:12:49 +01:00
Sebastian Huber
2a7df50a73 libtest: Set test printer in rtems_test_run()
Route the test output through T_vprintf().
2023-12-14 11:12:49 +01:00
Sebastian Huber
46b32dd662 ftpd: Make socket timeout optional
This feature is not supported by lwIP.
2023-12-14 11:12:49 +01:00
Chris Johns
a9905de7a4 rtems-fdt: Fix node property access on 64bit 2023-12-14 07:49:42 +11:00
Chris Johns
7260887fa9 libmisc/shell: Work around tmux bug in row and column
- Extend the timeout to 150 msec for long remote sessions

- Improve the performance of the detection

Closes #4975
Closes #4977
2023-12-13 18:13:16 +11:00
Sebastian Huber
cfaf2641ec build: Fix default value 2023-12-12 19:45:15 +01:00
Sebastian Huber
2286a2ec19 bsp/tms570: Do not use POM for internal flash 2023-12-06 17:04:46 +01:00
Sebastian Huber
05a4c70aa9 bsp/tms570: Improve POM handling
Place the vector table in the start section so that the overlay can be
avoided if we execute from internal flash.  The problem is that when the
POM is enabled, the ECC cannot be enabled for the internal flash.
2023-12-06 14:27:48 +01:00
Sebastian Huber
c374727c63 bsp/tms570: Adjust BSP_OSCILATOR_CLOCK 2023-12-06 13:35:40 +01:00
Sebastian Huber
c65466929f bsp/tms570: Fix debug console baud setting 2023-12-06 13:35:40 +01:00
Sebastian Huber
232180a502 bsp/tms570: Use internal RAM for fast data 2023-12-06 13:35:40 +01:00
Sebastian Huber
47c4093ad3 bsp/tms570: Add TMS570LC4357 support 2023-12-06 13:35:40 +01:00
Sebastian Huber
75b6d77680 bsp/tms570: Add TMS570_VARIANT 2023-12-06 13:35:40 +01:00
Sebastian Huber
e13b7340fe bsp/tms570: Use 0x for hex constants 2023-12-06 13:35:40 +01:00
Sebastian Huber
3a0dcd5ee9 bsp/tms570: Replace TMS570_MMR_SELECT_GMII_SEL
Replace TMS570_MMR_SELECT_GMII_SEL with TMS570_MMR_SELECT_MII_MODE and
TMS570_MMR_SELECT_RMII_MODE.
2023-12-06 13:35:40 +01:00
Sebastian Huber
da35b37f92 bsp/tms570: Add pin configuration variants
Rearrange pin function bit fields to allow the clearing of all function
bits through TMS570_PIN_AND_FNC().

Move implementation details to source file.
2023-12-06 13:35:40 +01:00
Sebastian Huber
4c6f562dc4 bsp/tms570: Enable cache manager implementation 2023-12-06 13:35:40 +01:00
Sebastian Huber
56fc9f1283 bsp/tms570: Export -mbe32 to pkg-config 2023-12-06 13:35:40 +01:00
Sebastian Huber
ba89aae89d bsps/arm: BSP_START_VECTOR_ADDRESS_TABLE_ALIGNMENT
Add the BSP option BSP_START_VECTOR_ADDRESS_TABLE_ALIGNMENT to
optionally define an alignment of the vector address table begin.
2023-12-06 13:35:37 +01:00
Sebastian Huber
d4d257a1c0 build: Add assert-in-set option action 2023-12-06 11:46:02 +01:00
Bernd Moessner
fe35c8d5ee ZYNQ7000: Add support PYNQ, PicoZed, MicroZed, ZYBO and ZYBO Z7
This patch adds basic support for the following boards:

xilinx_zynq_pynq - PYNQ Z1 / Z2
xilinx_zynq_microzed - MicroZed 7010 / 7020
xilinx_zynq_picozed - PicoZed 7010 / 7015 / 7020 / 7030
xilinx_zynq_zybo - ZYBO
xilinx_zynq_zybo_z7 - ZYBO Z7-10 / Z7-20

N.b. Arty Z7-20 is basically a PYNQ Z1 - different board
color and updated Eth PHY.
2023-11-28 12:51:34 -06:00
Bernd Moessner
b2dd594422 Fix zedboard clock settings 2023-11-28 12:51:34 -06:00
Bernd Moessner
8cb6e36e96 Fix add missing clock settings for zc706 2023-11-28 12:51:34 -06:00
Sebastian Huber
ac16e3b961 libtest: Add hash to gcov info dump
This helps to validate that the data was transferred correctly.
2023-11-28 14:30:46 +01:00
Sebastian Huber
528f0e1947 validation: Add nested test case remarks
Close #4971.
2023-11-28 14:30:46 +01:00
Sebastian Huber
d586b3c014 libtest: Add T_add_remark()
This can be used to report that nested test cases did run in a test
case.

Update #4971.
2023-11-28 14:30:46 +01:00
Christian Mauderer
ac0b4ae5c4 bsps/imxrt1166: Disable video_mux
The pinctrl-0 of the video_mux might overwrite pin settings done by
other peripherals. Disabling it by default prevents unexpected pin
settings.
2023-11-28 13:36:41 +01:00