zephyr/kernel/microkernel
Andrew Boie 583126adf9 microkernel: remove task_irq_free() API
This is being removed for a few reasons:

- AFAICT this is the only API in Zephyr that follows an allocate/free
model.

- There are no public APIs in the interrupt subsystem for releasing
or reconfiguring an interrupt. This code was relying on arch-specific
private APIs. If we really want to keep this capability we should
make these APIs public and consistent across arches.

- The use-case for this API is not clear, as Zephyr is not intended
for hot-pluggable peripherals. Built-in hardware tends to need its
interrupt for its entire life cycle.

- The current implementation of dynamic interrupts on x86 does not
support freeing a dynamic IRQ that was reserved with
irq_connect_dynamic(), causing this code not to work. To add this
would require reimplementing _get_dynamic_stub() to use a bitfield
or set of bitfields to track unused stubs rather than the simple
counter it uses now.

Change-Id: I7a03c134fb3498b91a1816318a88b293e26b846c
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2016-02-05 20:25:21 -05:00
..
include microkernel: fix build issue when CONFIG_TASK_MONITOR=y 2016-02-05 20:25:12 -05:00
Kconfig idle: add infrastructure for tickless support in nanokernels 2016-02-05 20:25:13 -05:00
Makefile Rename microkernel's global.c to k_init.c 2016-02-05 20:14:25 -05:00
k_command_packet.c kernel: Eliminate the need for command packet sets 2016-02-05 20:24:42 -05:00
k_event.c events: Simplify task_event_recv() API family 2016-02-05 20:25:05 -05:00
k_fifo.c fifo: Simplify task_fifo_get() API family 2016-02-05 20:25:06 -05:00
k_idle.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
k_init.c init: Move SECONDARY init level to the idle task. 2016-02-05 20:25:10 -05:00
k_irq.c microkernel: remove task_irq_free() API 2016-02-05 20:25:21 -05:00
k_mailbox.c mem_pool: Simplify task_mem_pool_alloc() API family 2016-02-05 20:25:05 -05:00
k_memory_map.c mem_map: Simplify task_mem_map_alloc() API family 2016-02-05 20:25:05 -05:00
k_memory_pool.c mem_pool: Simplify task_mem_pool_alloc() API family 2016-02-05 20:25:05 -05:00
k_move_data.c checkpatch: warning - block_comment_style 2016-02-05 20:24:33 -05:00
k_mutex.c mutex: Simplify task_mutex_lock() API family 2016-02-05 20:25:05 -05:00
k_nop.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
k_offload.c Change BSD-3 licenses to Apache 2 2016-02-05 20:24:29 -05:00
k_pipe.c pipes: Simplify task_pipe_get() API family 2016-02-05 20:25:05 -05:00
k_pipe_buffer.c pipe, cosmetic: Put constant in comparisons on the right 2016-02-05 20:25:05 -05:00
k_pipe_get.c pipe, cosmetic: Put constant in comparisons on the right 2016-02-05 20:25:05 -05:00
k_pipe_put.c pipe, cosmetic: Put constant in comparisons on the right 2016-02-05 20:25:05 -05:00
k_pipe_util.c pipe, cosmetic: Put constant in comparisons on the right 2016-02-05 20:25:05 -05:00
k_pipe_xfer.c pipe, cosmetic: Put constant in comparisons on the right 2016-02-05 20:25:05 -05:00
k_semaphore.c semgroup: Simplify task_sem_group_take() API family 2016-02-05 20:25:05 -05:00
k_server.c nano_stack: Simplify nano_xxx_stack_pop() API family 2016-02-05 20:25:14 -05:00
k_task.c checkpatch: warning - long_line 2016-02-05 20:24:33 -05:00
k_task_monitor.c microkernel: fix build issue when CONFIG_TASK_MONITOR=y 2016-02-05 20:25:12 -05:00
k_ticker.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
k_timer.c checkpatch: error - global_initialisers 2016-02-05 20:24:33 -05:00