Commit Graph
189 Commits
Author SHA1 Message Date
Sebastian Huber 3fee662093 bsps/irq: Use BSP_INTERRUPT_VECTOR_COUNT
Use BSP_INTERRUPT_VECTOR_COUNT instead of BSP_INTERRUPT_VECTOR_MAX.

Update #3269.
2021-06-24 11:36:25 +02:00
Sebastian Huber 049e2b64e1 bsps/irq: Remove BSP_INTERRUPT_VECTOR_NUMBER
Replace it with BSP_INTERRUPT_VECTOR_COUNT.

Update #3269.
2021-06-24 11:35:49 +02:00
Sebastian Huber af73b7b64b bsps/irq: Remove BSP_INTERRUPT_VECTOR_MIN
Remove BSP_INTERRUPT_VECTOR_MIN and unconditionally let interrupt vector
numbers start with zero.

The BSP_INTERRUPT_VECTOR_MIN == 0 invariant was tested by the previous commit
and building all BSPs.

Update #3269.
2021-06-24 11:35:49 +02:00
Sebastian Huber 61d0be7214 bsps/irq: Remove BSP_INTERRUPT_NO_HEAP_USAGE
Remove the support for BSP_INTERRUPT_NO_HEAP_USAGE.  This was only used
by one BSP and provides no real benefit.

Update #3269.
2021-06-24 08:27:21 +02:00
Sebastian Huber 499a89b11d grlib: Register system console as /dev/console
Close #4461.
2021-06-24 08:27:21 +02:00
Vijay Kumar Banerjee 8416e7c322 bsps/powerpc, bsps/shared: Move remaining legacy networking header files 2021-06-23 13:20:38 -06:00
Sebastian Huber 3ee19b7ac3 bsps/irq: Change license to BSD-2-Clause
Change license to BSD-2-Clause according to file history and
re-licensing agreement.

Update #3053.
2021-06-17 17:24:32 +02:00
Sebastian Huber 11cf6ae3e2 grlib: Simplify apbuart_inbyte_nonblocking() 2021-06-17 12:58:33 +02:00
Sebastian Huber 3af1e5e735 grlib: Fix apbuart_outbyte_polled() prototype
Callers usually want to output a character.
2021-06-17 12:58:33 +02:00
Sebastian Huber af69a8693b grlib: Add apbuart_outbyte_wait() 2021-06-17 12:58:33 +02:00
Sebastian Huber 85febe7b10 grlib: Remove NL -> CR in apbuart_outbyte_polled()
This is already done in rtems_putc().
2021-06-17 12:58:33 +02:00
Sebastian Huber 2c07f24af2 grlib: Add ambapp_plb()
Replace the global variable ambapp_plb with a function to allow an automatic on
demand initialization.
2021-06-17 12:58:33 +02:00
Sebastian Huber c4c8d3fd50 grlib: Customizable allocation in ambapp_scan()
Make the memory allocations in ambapp_scan() customizable via the new struct
ambapp_context parameter which generalizes the memory copy handler.
2021-06-17 12:58:33 +02:00
Sebastian Huber 523867de9d rtems: Constify rtems_task_wake_when()
Add a parameter to _TOD_Validate() to disable the validation of the
ticks member.

There are two reasons for this change.  Firstly, in
rtems_task_wake_when() was a double check for time_buffer == NULL (one
in rtems_task_wake_when() and one in _TOD_Validate()).  Secondly, the
ticks member is ignored by rtems_task_wake_when().  This was done with a
write of zero to the ticks member and thus a modification of the
user-provided structure.  Now the structure is no longer modified.
Using a mask parameter is quite efficient. You just have to load an
immediate value and there are no additional branches in _TOD_Validate().

Close #4406.
2021-05-12 21:25:37 +02:00
Frank Kühndel 3af2dc7802 _TOD_Validate(): Fix incorrect return code
This patch fixes bug #4403. Directives

* rtems_timer_fire_when()
* rtems_timer_server_fire_when()
* rtems_task_wake_when()

are documented to return RTEMS_INVALID_ADDRESS when their time-of-day
argument is NULL. But actually they return RTEMS_INVALID_CLOCK. To fix
the issue this patch changes _TOD_Validate() to return a
status code instead of just true/false.

Close #4403
2021-05-12 06:41:10 +02:00
G S Niteesh Babu b391affc36 bsps/shared/ofw: Fix coverity defects
This patch adds asserts to fix coverity defects
1) CID 1474437 (Out-of-bounds access)
2) CID 1474436 (Out-of-bounds access)

From manual inspection, out of bounds access cannot occur due to
bounds checking but coverity fails to detect the checks.
We are adding asserts as a secondary check.
2021-05-06 16:44:38 -06:00
Vijay Kumar Banerjee e29d5cd01d Makefile.am: Remove legacy networking files 2021-04-26 07:59:08 -06:00
Kinsey Moore 3ea43bc9e7 bsps/xilinx-zynqmp: Avoid constant UART reinit
Constantly reinitializing the Cadence UART on every character output
causes data corruption/loss on some ZynqMP hardware. Only initialize
the UART once for early output and give it a kick on startup.
2021-04-19 10:51:02 -05:00
Moyano, Gabriel 5728e8e356 grlib/genirq: Taking into account that it could be more than one ISR enabled/disabled 2021-04-16 08:46:17 +02:00
Ryan Long 3cd58bdf2c disp_hcms29xx.c: Unused value (CID #1399752)
CID 1399752: Unused value in disp_hcms29xx_update_task().

Closes #4342
2021-04-08 17:58:19 -05:00
Vijay Kumar Banerjee c90fa83041 bsps: Remove networking drivers
Update #3850
2021-04-07 16:15:38 -06:00
Jan Sommer 70667b5527 bsps/xilinx_zynq: Add SPI driver for xilinx-axi-spi
Updates #4321
2021-03-30 17:01:36 +02:00
G S Niteesh Babu 56074644a7 bsp/beagle: Ported Beagle pinmux driver to RTEMS
The following files have been ported
1) ti_pinmux.c
2) ti_pinmux.h
3) am335x_scm_padconf.c
4) am335x_scm_padconf.h

Update #3784
2021-03-21 12:30:48 +01:00
G S Niteesh Babu 5c656ead88 bsp/beagle: Import Beagle pinmux from FreeBSD
This patch imports the beagle pinmux driver from FreeBSD into
RTEMS. Previously this driver was placed in RTEMS-libBSD but
this caused double initialization of few pins once during RTEMS
initialization and second time during libBSD initialization.
The following patches port the driver from FreeBSD to RTEMS and
will remove the driver from RTEMS-libBSD.

RTEMS Ticket Update: #3784

FreeBSD head: ca12b7e9534b10af022fed60c043984dbaf4003d

The following files have been imported from FreeBSD:
1) freebsd/sys/arm/ti/am335x/am335x_scm_padconf.h
2) freebsd/sys/arm/ti/am335x/am335x_scm_padconf.c
3) freebsd/sys/arm/ti/ti_pinmux.h
4) freebsd/sys/arm/ti/ti_pinmux.c
2021-03-21 12:30:48 +01:00
G S Niteesh Babu fc7129067d bsps/shared/ofw: Add rtems_ofw_is_node_compatible
This patch extends the RTEMS OFW API by adding
rtems_ofw_find_device_by_compat

This function checks if a node has the expected compatible
property.
2021-03-21 12:30:47 +01:00
Martin Aberg 4e0735c650 leon, l2cache: prevent unused diagnostic access 2021-03-11 17:35:28 +01:00
Martin Aberg 51564f6383 leon, ahbstat: register definitions for AHBSTAT version 1 2021-03-11 17:35:27 +01:00
Martin Aberg 8660602ae2 leon, grspw_router: added router_port_link_div()
Allows user to set SpaceWire run clock divisor for an individual port.
2021-03-11 17:35:27 +01:00
Daniel Hellstrom 9c00cc1301 leon,ckinit: avoid assuming 1MHz timer pre-scaler clock 2021-03-11 17:35:27 +01:00
Daniel Hellstrom 053b17ce8e leon,greth: added support for variable sized descriptor table sizes
The descriptor table size is equal to its alignment and set when
configuring the HW IP through VHDL generics. This SW patch simply
probes the HW how large the RX/TX descriptor tables are and adjusts
accordingly.

The number of descriptors actual used are controlled by other
settings (rxDescs and txDescs) controlled by the user.
2021-03-11 17:34:57 +01:00
Daniel Hellstrom 9bf8a9d147 leon,grcan: split out GRCAN non-FD specific support in separate file
Close #4324.
2021-03-11 17:31:21 +01:00
Daniel Hellstrom 9c76ca0c0c leon,grcanfd: split out GRCANFD specific support in separate file
Update #4324.
2021-03-11 17:31:21 +01:00
Daniel Hellstrom 43c903a1dc leon,grcan: added support for GRCANFD
The new GRCAN_FD IP supports CAN FD standard and is mostly backwards
compatible with GRCAN SW interface. The GRCAN driver have been extended
to support the GRCANFD IP using the same driver.

Additional functions have been added that uses a new CAN FD frame
format and read/write/baud-rate functions that supports both GRCANFD
and GRCAN. To keep the SW API fully backwards compatible with GRCAN,
the old functions remain.

Update #4324.
2021-03-11 17:31:21 +01:00
Daniel Hellstrom 65237ba01d leon,occan: use common CAN baud-rate calculation routine
Close #4323.
2021-03-11 17:31:21 +01:00
Daniel Hellstrom 4d19220742 leon,grcan: use common CAN baud-rate calculation routine
Update #4323.
2021-03-11 17:31:21 +01:00
Daniel Hellstrom cff99cf1fa leon,can: introduce common CAN baud-rate calculation function
Reimplemented the baud-rate algorithm from scratch to cope with
GRCAN, GRCANFD and OC_CAN devices.

Update #4323.
2021-03-11 17:31:21 +01:00
Daniel Hellstrom 68c882ef45 grlib,ambapp: added new IP core IDs 2021-03-11 17:31:21 +01:00
Daniel Hellstrom e227ae53ab leon,grspw: fix for SET_PACKET_SIZE
When the DMA table has been allocated dynamically, the IOCTL_SET_PACKETSIZE
will trigger an issue where pDev->rx and pDev->tx are not updated with
the new DMA tables base address. Instead the old pointers are used.

There is no point in reallocting the DMA tables because there is no
configuration option to it. Therefore the DMA tables allocation is
moved to a separate function never called from SET_PACKETSIZE.
2021-03-11 17:31:21 +01:00
Arvid Bjorkengren 50db7f2d6b leon,gr1553b: Only align allocated memory. Verify alignment of memory. 2021-03-11 17:31:21 +01:00
Arvid Bjorkengren 70f87f9e87 leon,gr1553b: set codec version
This is enables the updated codec for GR740 and is backwards compatible
with all other versions of the IP.
2021-03-11 17:31:21 +01:00
Arvid Bjorkengren 3344d0299f leon,gr1553rt: Fixed spinlock unlock 2021-03-11 17:31:21 +01:00
Arvid Bjorkengren f798a75cd5 leon,gr1553rt: Fixed memory leak 2021-03-11 17:31:21 +01:00
Jan Sommer cc825d0322 bsps/xilinx_zynq: Add SPI driver for cadence-spi
Updates #4320
2021-03-10 20:12:08 +01:00
Ryan Long f762b7c272 grcan.c: Fix Unused value (CID #1437613)
CID 1437613: Unused value in grcan_set_filter().
This fix was recommended by Daniel Hellstrom (daniel@gaisler.com).

Closes #4301
2021-03-05 14:00:07 -06:00
Ryan Long c57079a814 b1553brm.c: Fix Unsigned compared against 0 (CID #1399773)
CID 1399773: Unsigned compared against 0 in brm_write().

Closes #4295
2021-03-05 14:00:07 -06:00
Ryan Long 1f29ee4528 satcan.c: Fix Unsigned compared against 0 (CID #1399768)
CID 1399768: Unsigned compared against 0 in satcan_ioctl().

Closes #4294
2021-03-05 14:00:07 -06:00
Ryan Long 5f0a7ceb81 gr_tmtc_1553.c: Unchecked return value from library (CID #1399785)
CID 1399785: Unchecked return value from library in gr_tmtc_1553_init1().

Closes #4289
2021-03-05 14:00:07 -06:00
Ryan Long 4c0d9c5a57 gr_701.c: Unchecked return value from library (CID #1399783)
CID 1399783: Unchecked return value from library in gr701_init1().

Closes #4288
2021-03-05 14:00:06 -06:00
Ryan Long 91e38f8a8f gr_rasta_adcdac.c: Fix Unchecked return value from library (CID #1399780)
CID 1399780: Unchecked return value from library in gr_rasta_adcdac_init1().

Closes #4287
2021-03-05 14:00:06 -06:00
Ryan Long 17d525b584 gr_rasta_tmtc.c: Fix Unchecked return value from library (CID #1399771)
CID 1399771: Unchecked return value from library in gr_rasta_tmtc_init1().

Closes #4286
2021-03-05 14:00:06 -06:00