Commit Graph

23831 Commits

Author SHA1 Message Date
Daniel Hellstrom
605b4b649d LEON3: debugputs removed pointless isinit code, invoked only once
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-19 12:34:21 -04:00
Daniel Hellstrom
5903484a29 LEON3: debugputs added printk mem buffer when no UART present
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-19 12:34:21 -04:00
Daniel Hellstrom
62694fd68f LEON3: add console interrupt mode support
The comment in configure.ac is probably inherited from the LEON2
BSP. The LEON3 console driver implements a "flush" mechanism on
console_close() in order to solve the problem described with
sis/LEON2.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-19 12:34:21 -04:00
Daniel Hellstrom
07557c86fd LEON3: add console attributes such as parity and baudrate
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-19 12:34:20 -04:00
Daniel Hellstrom
6845f8005c LEON3: console, lower bus utilization waiting for UART TX ready
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-19 12:34:20 -04:00
Sebastian Huber
5c51ba1333 rbheap: API changes and documentation 2012-04-18 12:18:11 +02:00
Daniel Hellstrom
7a01a888a7 LEON: updated drivers to use new AMBAPP Layer
The drivers are updated to use the new AMBA layer, however the
backwards-compatibility interface (ambapp_old) is used.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-17 22:01:47 -04:00
Daniel Hellstrom
fc6f872d3f LEON3: Network initialization code updated to new AMBAPP layer
Updated SMC91111, GRETH and open_eth driver registration
code to use new AMBAPP Layer.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-17 22:01:47 -04:00
Daniel Hellstrom
ddf0d60758 LEON3: updated console driver for new AMBAPP layer
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-17 22:01:47 -04:00
Daniel Hellstrom
1f7cfbe351 LEON2: clock driver use new AMBAPP layer
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-17 22:01:46 -04:00
Daniel Hellstrom
9ea65119f4 LEON: updated AMBA PnP API
The old layer had some limitations/problems for multiple AHB
buses since the data structure containing all AMBA devices
were allocated before scanning.

The new layer create devices as they are found and memory is
allocated using malloc() or bsp_early_malloc() during booting.

The old 8 functions for finding a specific AHB-Slave or
APB-Slave device has been replaced with one function,
ambapp_for_each(), which iterates over all devices matching
the specified search options and calls a user provided
function. The new way lowers the footprint and makes searching
more flexible.

The frequency information is now supported, if the frequency
of one device is reported by the user.

More AHB-to-AHB bridges are supported.

The API has been split into several parts in order to lower the
footprint.

The API also introduces the AMBAPP CORE concept, where one
ambapp_core can be created from one AHB Master, AHB Slave
and one APB Slave, at least one device is required for creating
a core.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-17 22:01:46 -04:00
Gedare Bloom
e99dbaa7cd no_cpu: replace no_cpu_isr with rtems_isr 2012-04-16 19:39:22 -04:00
Gedare Bloom
b37d0a90f7 libqos: generate preinstall.am 2012-04-16 13:14:53 -04:00
Gedare Bloom
a114011d70 lm32: use shared setvec.c 2012-04-16 13:11:20 -04:00
Gedare Bloom
06d34af96f m68k: use shared setvec.c 2012-04-16 13:11:20 -04:00
Gedare Bloom
416f1efbd2 lm32: replace lm32_isr with rtems_isr 2012-04-16 13:11:20 -04:00
Gedare Bloom
1fec9e0357 m68k: replace m68k_isr with rtems_isr 2012-04-16 13:11:20 -04:00
Sebastian Huber
08b9d53460 libblock: PR2040: Fix recycle destination update
Check the availablity of a recycle destination segment only when it is
necessary to avoid missing resycle source segment erasures.
2012-04-16 11:06:45 +02:00
Sebastian Huber
ac50df2304 libblock: PR2040: Add starvation threshold
Do not use the unavailable block count as the erased blocks starvation
threshold.  Use instead the block count of the largest segment.  This
improves the starvation resolution gain of available blocks.
2012-04-16 11:06:45 +02:00
Petr Benes
1c2b94a61c PR1908: QoS library for CBS scheduler
Add the lipqos and sptest.
2012-04-15 23:12:08 -04:00
Petr Benes
c050143273 PR1908: QoS library for CBS scheduler
Since the CBS scheduler is inspired by AQuoSA project for Linux, additional API
(qreslib) compliant with Linux has been created.

Sptest for qreslib included.
2012-04-15 23:06:34 -04:00
Sebastian Huber
7be19f849c bsp/stm32f4: API changes 2012-04-15 21:47:43 +02:00
Petr Benes
bce41f49f0 PR 1912: Add Scheduler Documentation
Add new file for CBS documentation.
2012-04-15 13:54:10 -04:00
Petr Benes
7cc2199ee1 PR 1912: Add Scheduler Documentation
Adds documentation on the scheduler options and scheduler selection
to the User's Manual to reflect changes made in the development of
pluggable scheduling with EDF and CBS schedulers.
2012-04-15 13:50:11 -04:00
Sebastian Huber
8c6608bd1b rbtree: PR2046: Replace rtems_rbtree_unique 2012-04-13 09:14:18 +02:00
Sebastian Huber
228ece9127 bsp/stm32f4: Add IO and RCC 2012-04-12 22:48:56 +02:00
Sebastian Huber
b467782b53 libblock: Add rtems_bdbuf_set_block_size()
The new function rtems_bdbuf_set_block_size() must be used to set the
block size of a disk device.  It will check if the block size is valid
and set the new fields block_to_media_block_shift and bds_per_group of
the rtems_disk_device structure.  This helps to avoid complex arithmetic
operations in the block device buffer get and read path.
2012-04-12 10:42:43 +02:00
Sebastian Huber
3d60c1b22a libblock: Change error status to fatal error
Calling the bdbuf API functions in the not configured state is now a
fatal error.
2012-04-12 10:42:43 +02:00
Sebastian Huber
462ee70f9b libblock: Use unprotected chain operations
The transfer chain is accessed by at most one thread at a time.
2012-04-12 10:42:43 +02:00
Sebastian Huber
89a84c0fa3 libblock: Use unprotected chain operations
The chains are protected by the bdbuf cache lock.
2012-04-12 10:42:42 +02:00
Sebastian Huber
ced0816218 doc: Document new macros 2012-04-11 16:30:13 +02:00
Sebastian Huber
5eb434e67e score: New macros and functions
New macros
  o _Objects_Maximum_per_allocation(),
  o rtems_resource_is_unlimited(), and
  o rtems_resource_maximum_per_allocation().

New function
  o _Objects_Is_unlimited().
2012-04-11 15:24:39 +02:00
Sebastian Huber
8eb559d316 nios2: New functions
Add
  o _Nios2_MPU_Get_region_descriptor(), and
  o _Nios2_MPU_Set_region_registers().
2012-04-11 11:24:41 +02:00
Sebastian Huber
2d0ca00003 nios2: API change 2012-04-11 11:24:41 +02:00
Sebastian Huber
e75263083e rbheap: New files
In the Red-Black Tree Heap the administration data structures are not
contained in the managed memory area.  This can be used for example in a
task stack allocator which protects the task stacks from access by other
tasks.
2012-04-11 11:24:19 +02:00
Sebastian Huber
112396dee1 rbtree: New function _RBTree_Iterate_unprotected() 2012-04-11 11:24:18 +02:00
Sebastian Huber
dc62a48cc5 rbtree: PR1995: API change
New functions
  o _RBTree_Next_unprotected(),
  o _RBTree_Next(),
  o _RBTree_Successor_unprotected(),
  o _RBTree_Predecessor_unprotected(),
  o rtems_rbtree_successor_unprotected(), and
  o rtems_rbtree_predecessor_unprotected().

Change prototype of
  o _RBTree_Successor(),
  o _RBTree_Predecessor(),
  o rtems_rbtree_successor(), and
  o rtems_rbtree_predecessor().
2012-04-11 11:24:18 +02:00
Daniel Hellstrom
7afcb2619b PR2052: LEON3: fix open_eth interrupt initialization bug
Fixed a bug where the vector number is used to clean and unmask
the IRQ at the IRQ controller, the irq number must be used.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-10 15:12:23 -04:00
Sebastian Huber
e230fb44a6 bsp/stm32f4: New BSP 2012-04-07 19:08:53 +02:00
Sebastian Huber
d8f05c837d bsps/arm: Add BSP_ARMV7M_SYSTICK_PRIORITY 2012-04-07 19:08:52 +02:00
Sebastian Huber
5ea637ed2e bsps/arm: Add BSP_ARMV7M_IRQ_PRIORITY_DEFAULT 2012-04-07 19:08:52 +02:00
Sebastian Huber
1aebb706b1 bsps: Update due to API changes 2012-04-07 19:08:51 +02:00
Sebastian Huber
f0d66b1ba9 arm: New function
Add and use function _ARMV7M_Set_exception_priority_and_handler().  Use
ARMV7M_EXCEPTION_PRIORITY_LOWEST define.
2012-04-07 18:31:06 +02:00
Daniel Hellstrom
7499b84f41 GRETH: use shared-irq service instead of BSP specific set_vec()
The ISR code is updated to use argument instead of global greth
structure, now that the greth private is available in the ISR.

The shared-irq routines will unmask the IRQ, so the forced LEON3
BSP unmask/clear IRQ is removed.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-06 11:38:31 -05:00
Daniel Hellstrom
0f04edd9cc SMC91111: updated to use shared IRQ service
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-06 11:38:25 -05:00
Joel Sherrill
c500cbc384 LEON3 - Fix spacing 2012-04-06 09:09:35 -05:00
Daniel Hellstrom
3722ff5a73 LEON3: added IRQAMP support 2012-04-06 09:03:40 -05:00
Daniel Hellstrom
684b54a986 LEON3: halt boot if IRQ controller not found
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-06 09:03:35 -05:00
Daniel Hellstrom
95518e59bd SPARC BSPs: implemented shared-irq using libbsp/shared layer
The implementation use IRQ number instead of vector number since
some IRQs does not have a unique vector, for example the extended
interrupts all enter the same trap vector entry.

Added support for the LEON3 extended interrupt controller when using
the shared IRQ layer.

ERC32 patches untested.

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>

Regenerate
2012-04-06 08:17:58 -05:00
Daniel Hellstrom
e60e862c64 LEON3: console use register pointers instead of UART indexes
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-04-05 14:47:41 -05:00