Joel Sherrill
8467c315e2
atsamv-testsuite.tcfg: new file]
2016-03-10 18:07:29 -06:00
Joel Sherrill
4e059db8cc
arm/lpc24xx (lpc17xx variants): Add per-section compilation and linking support.
...
updates #2577 .
For the lpc17xx_ea_ram BSP variant:
The size of the sample executables without this option were:
text data bss dec hex filename
63646 1724 33554592 33619962 200fffa ticker.exe
21634 1088 33597216 33619938 200ffe2 minimum.exe
549386 2004 33068544 33619934 200ffde cxx_iostream.exe
392562 5800 33221600 33619962 200fffa fileio.exe
299662 12616 33307680 33619958 200fff6 pppd.exe
133838 2360 33483744 33619942 200ffe6 capture.exe
75020 1812 33543104 33619936 200ffe0 nsecs.exe
125706 2100 33492160 33619966 200fffe paranoia.exe
127758 1748 33490432 33619938 200ffe2 cdtest.exe
61686 1724 33556544 33619954 200fff2 base_sp.exe
63370 1748 33554848 33619966 200fffe unlimited.exe
71414 1692 33546848 33619954 200fff2 hello.exe
180698 6500 33432768 33619966 200fffe loopback.exe
The size of the sample executables with this option enabled were:
text data bss dec hex filename
58982 1712 33559264 33619958 200fff6 ticker.exe
13818 280 33605856 33619954 200fff2 minimum.exe
336134 1960 33281856 33619950 200ffee cxx_iostream.exe
380810 5788 33233344 33619942 200ffe6 fileio.exe
277010 12464 33330464 33619938 200ffe2 pppd.exe
127358 2340 33490240 33619938 200ffe2 capture.exe
70672 1800 33547488 33619960 200fff8 nsecs.exe
120746 2088 33497120 33619954 200fff2 paranoia.exe
121282 1736 33496928 33619946 200ffea cdtest.exe
56902 1712 33561344 33619958 200fff6 base_sp.exe
57346 1712 33560896 33619954 200fff2 unlimited.exe
65078 1640 33553216 33619934 200ffde hello.exe
166730 6400 33446816 33619946 200ffea loopback.exe
For the lpc17xx_ea_rom_int BSP variant:
The size of the sample executables without this option enabled were:
text data bss dec hex filename
63814 1724 33557096 33622634 2010a6a ticker.exe
21802 1088 33557704 33580594 2006632 minimum.exe
392734 5800 33553064 33951598 2060f6e fileio.exe
299830 12616 33546504 33858950 204a586 pppd.exe
134006 2360 33556488 33692854 2021cb6 capture.exe
75188 1812 33557000 33634000 20136d0 nsecs.exe
125874 2100 33556712 33684686 201fcce paranoia.exe
127926 1748 33557096 33686770 20204f2 cdtest.exe
61854 1724 33557096 33620674 20102c2 base_sp.exe
63538 1748 33557064 33622350 201094e unlimited.exe
71582 1692 33557128 33630402 20128c2 hello.exe
180866 6500 33552616 33739982 202d4ce loopback.exe
The size of the sample executables with this option enabled were:
text data bss dec hex filename
59150 1712 33557096 33617958 200f826 ticker.exe
13986 280 33558504 33572770 20047a2 minimum.exe
336302 1960 33556904 33895166 20532fe cxx_iostream.exe
380982 5788 33553064 33939834 205e17a fileio.exe
277178 12464 33546632 33836274 2044cf2 pppd.exe
127526 2340 33556488 33686354 2020352 capture.exe
70840 1800 33557000 33629640 20125c8 nsecs.exe
120914 2088 33556712 33679714 201e962 paranoia.exe
121450 1736 33557096 33680282 201eb9a cdtest.exe
57070 1712 33557096 33615878 200f006 base_sp.exe
57514 1712 33557096 33616322 200f1c2 unlimited.exe
65246 1640 33557160 33624046 2010fee hello.exe
166898 6400 33552712 33726010 2029e3a loopback.exe
For the lpc17xx_plx800_ram BSP variant:
The size of the sample executables without this option enabled were:
text data bss dec hex filename
63802 1820 33554336 33619958 200fff6 ticker.exe
21630 1088 33597216 33619934 200ffde minimum.exe
549534 2100 33068320 33619954 200fff2 cxx_iostream.exe
392722 5896 33221344 33619962 200fffa fileio.exe
299802 12712 33307424 33619938 200ffe2 pppd.exe
134002 2456 33483488 33619946 200ffea capture.exe
75176 1908 33542848 33619932 200ffdc nsecs.exe
125862 2196 33491904 33619962 200fffa paranoia.exe
127922 1844 33490176 33619942 200ffe6 cdtest.exe
61850 1820 33556288 33619958 200fff6 base_sp.exe
63518 1844 33554592 33619954 200fff2 unlimited.exe
71562 1788 33546592 33619942 200ffe6 hello.exe
180854 6596 33432512 33619962 200fffa loopback.exe
The size of the sample executables with this option enabled were:
text data bss dec hex filename
59274 1808 33558848 33619930 200ffda ticker.exe
13814 280 33605856 33619950 200ffee minimum.exe
336418 2056 33281472 33619946 200ffea cxx_iostream.exe
381106 5884 33232960 33619950 200ffee fileio.exe
277294 12560 33330080 33619934 200ffde pppd.exe
127642 2436 33489856 33619934 200ffde capture.exe
70964 1896 33547072 33619932 200ffdc nsecs.exe
121038 2184 33496736 33619958 200fff6 paranoia.exe
121566 1832 33496544 33619942 200ffe6 cdtest.exe
57194 1808 33560928 33619930 200ffda base_sp.exe
57622 1808 33560512 33619942 200ffe6 unlimited.exe
65362 1736 33552832 33619930 200ffda hello.exe
167022 6496 33446432 33619950 200ffee loopback.exe
For the lpc17xx_plx800_rom_int BSP variant:
The size of the sample executables without this option enabled were:
text data bss dec hex filename
64010 1820 33618208 33684038 201fa46 ticker.exe
21838 1088 33618912 33641838 201556e minimum.exe
392934 5896 33614176 34013006 206ff4e fileio.exe
300010 12712 33607616 33920338 2059552 pppd.exe
134210 2456 33617600 33754266 2030c9a capture.exe
75384 1908 33618112 33695404 20226ac nsecs.exe
126070 2196 33617824 33746090 202ecaa paranoia.exe
128130 1844 33618208 33748182 202f4d6 cdtest.exe
62058 1820 33618208 33682086 201f2a6 base_sp.exe
63726 1844 33618176 33683746 201f922 unlimited.exe
71770 1788 33618240 33691798 2021896 hello.exe
181062 6596 33613728 33801386 203c4aa loopback.exe
The size of the sample executables with this option enabled were:
text data bss dec hex filename
59482 1808 33618208 33679498 201e88a ticker.exe
14022 280 33619712 33634014 20136de minimum.exe
336626 2056 33618016 33956698 206235a cxx_iostream.exe
381318 5884 33614176 34001378 206d1e2 fileio.exe
277502 12560 33607744 33897806 2053d4e pppd.exe
127850 2436 33617600 33747886 202f3ae capture.exe
71172 1896 33618112 33691180 202162c nsecs.exe
121246 2184 33617824 33741254 202d9c6 paranoia.exe
121774 1832 33618208 33741814 202dbf6 cdtest.exe
57402 1808 33618208 33677418 201e06a base_sp.exe
57830 1808 33618208 33677846 201e216 unlimited.exe
65570 1736 33618272 33685578 202004a hello.exe
167230 6496 33613824 33787550 2038e9e loopback.exe
2016-03-10 18:06:54 -06:00
Joel Sherrill
94300521d9
powerpc/mvme5500: Use shared pci_find_device()
2016-03-10 10:38:52 -06:00
Joel Sherrill
81df701ab4
mips/malta: Use shared pci_find_device() and removed unused pci_list_devices()
...
Also includes .h file cleanup.
2016-03-10 10:38:49 -06:00
Joel Sherrill
22bbb9f165
pc386: Add --disable-com1-com4 boot argument
2016-03-10 10:38:46 -06:00
Joel Sherrill
efbf6c910a
libbsp/shared/console.c: Clean up memory allocation for per device data
2016-03-10 10:34:27 -06:00
Joel Sherrill
6db5ea03c3
pc386/startup/bsp_fatal_halt.c: Fix noreturn does return warning
2016-03-10 10:34:25 -06:00
Joel Sherrill
2e516dd46f
pc386/startup/bspstart.c: Reformat and cleanup file header
2016-03-10 10:34:24 -06:00
Joel Sherrill
356b2c23f5
pc386: Add PCI UART support
2016-03-10 10:34:15 -06:00
Joel Sherrill
0ac1538db8
console_private.h: Improve comment for vt_ioctl()
2016-03-10 10:34:13 -06:00
Joel Sherrill
3662738787
console_private.h: Remove prototypes for non-existent methods bsp_com_inch() and bsp_com_outch()
2016-03-10 10:34:10 -06:00
Joel Sherrill
c3c57b1ba3
pc386: Improve boot command arguments for console/printk device selection
...
This patch adds the "--printk=" boot command line argument to specify
the printk() device. It also enhances the "--console=" boot command
line argument to match any device configured in the console device
table. The arguments are parsed as early as possible so they take
effect early. Currently, this is immediately after PCI initialization.
2016-03-10 10:33:27 -06:00
Joel Sherrill
f770fcb368
Add shared PCI support and enhance pc386 to support non-legacy PCI configuration space
...
This patch fundamentally results from enhancements to the pc386 BSP
to support systems which do **NOT** have the legacy PCI BIOS. The
patch adds support for detecting when legacy PCI BIOS is not
present and then using IO space to access to PCI Configuration Space.
This resulted in dynamically selected between two implementations
of PCI and refactoring out the shared methods.
This patch adds shared implementations of pci_bus_count() and
pci_find_device(). Subsequent patches will remove implementations
of these methods in other BSPs where possible.
2016-03-10 10:30:25 -06:00
Joel Sherrill
367176450c
pc386/configure.ac: Delete incorrect and unused AM_CONDITIONAL
2016-03-10 10:26:53 -06:00
Joel Sherrill
3b6972327e
i386/shared/pci/pcibios.c: Remove unused pcib_find_by_class()
2016-03-10 10:26:52 -06:00
Joel Sherrill
8ce16a4766
i386/shared/pci/pcibios.c: Remove unused pcib_special_cycle()
2016-03-10 10:26:49 -06:00
Joel Sherrill
12c9dc8ff5
pc386: Eliminate pcibios.h and begin removal obsolete PCI BIOS API uses
...
This first step eliminates the following as public APIs for the pc386
BSP:
+ pcib_conf_read8
+ pcib_conf_read16
+ pcib_conf_read32
+ pcib_conf_write8
+ pcib_conf_write16
+ pcib_conf_write32
The if_fxp.c driver uses these enough where I provided local macros
to allow the code to be mostly unmodified. On other architectures
these names have been used privately. It will take multiple patches
to completely eliminate these symbols from the RTEMS source tree.
The focus of the first effort is just to eliminate these as a public
pc386 API so support can be added for systems without legacy PCI BIOS.
2016-03-10 10:26:48 -06:00
Sebastian Huber
354064b92a
libtests/syscall01: Explicitly request close
...
This makes the test more reliable in case an interrupt driven console
driver is used.
2016-03-07 15:24:19 +01:00
Sebastian Huber
9f5754b5c2
bsps: Avoid Giant lock in simulator clock driver
...
Update #2555 .
2016-03-04 15:15:57 +01:00
Sebastian Huber
0a5aa2da60
i386: Define _CPU_SMP_Prepare_start_multitasking()
...
Define _CPU_SMP_Prepare_start_multitasking() as empty macro to prevent a
link-time error on SMP configurations.
2016-03-04 14:49:48 +01:00
Sebastian Huber
03b900d3ed
score: Replace watchdog handler implementation
...
Use a red-black tree instead of delta chains.
Close #2344 .
Update #2554 .
Update #2555 .
Close #2606 .
2016-03-04 13:36:10 +01:00
Sebastian Huber
90d8567d34
score: Distribute clock tick to all online CPUs
...
Update #2554 .
2016-03-04 13:36:10 +01:00
Sebastian Huber
5b0d2c1965
score: Add _SMP_Before_multitasking_action()
...
The use case for this is the Cortex-A9 MPCore which has per-processor
registers (only accessible by a particular processor) for the global
timer used by the clock driver. This might be useful for other drivers
as well.
Update #2554 .
2016-03-04 13:36:09 +01:00
Sebastian Huber
3c103ba306
score: Add _Per_CPU_Is_boot_processor()
2016-03-04 13:36:09 +01:00
Sebastian Huber
b3a4c48ebd
score: Add _SMP_Online_processors
2016-03-04 13:36:09 +01:00
Sebastian Huber
c284a16000
score: Rename Per_CPU_Control::started
...
Rename Per_CPU_Control::started into Per_CPU_Control::online to match
standard nomenclature.
2016-03-04 13:36:09 +01:00
Sebastian Huber
a38d1fe412
score: Add Processor_mask, etc.
2016-03-04 13:36:09 +01:00
Sebastian Huber
decff899ec
score: Add CPU_MAXIMUM_PROCESSORS
...
Maximum number of processors of all systems supported by this CPU port.
2016-03-04 13:36:08 +01:00
Gedare Bloom
daa303da3e
pc386: adjust assembly in bsp_fatal_halt
2016-03-03 16:40:17 -05:00
Joel Sherrill
328bd350aa
i386: refactor libcpu/cpu.h into rtems/score/i386.h
...
Fixes #2515 .
2016-03-03 16:36:30 -05:00
Joel Sherrill
dda25b19df
i386 ..score/cpu.h: Fix spacing
2016-03-03 16:36:30 -05:00
Gedare Bloom
3267f9580f
i386: prepare for paravirtualized interrupts
2016-03-03 16:36:30 -05:00
Gedare Bloom
505dc617c8
i386: relocate fatal halt to bsp layer
2016-03-03 16:36:30 -05:00
Gedare Bloom
6a4efc55dc
i386: remove redundant CPP defines
2016-03-03 16:36:30 -05:00
Gedare Bloom
fd05a055e6
i386: move idle thread into BSP layer
2016-03-03 16:36:29 -05:00
Joel Sherrill
e56266cb3e
version.c: Add space so printing is neater
2016-03-03 16:36:29 -05:00
Joel Sherrill
3f5e0961b4
smdk2410: Resurrect missing gp32 files
...
When the gp32 BSP was obsoleted and removed, files were deleted that
were actually used by the gp32.
This was actually a violation of the expected directory structure
and why it wasn't caught. Another example of why continuous integration
testing -- even just building is important.
2016-03-03 08:12:53 -06:00
Sebastian Huber
cc1add7b44
bsps: Delete empty Clock_driver_support_at_tick()
2016-03-03 09:49:15 +01:00
Sebastian Huber
eead8f7cf9
smptests/smpmrsp01: Fix test context
2016-03-03 09:10:14 +01:00
Sebastian Huber
73de9393e3
bsp/qoriq: Do not touch MMU config for SMP start
...
Assume that the boot page is visible in the currently unused heap area.
2016-03-03 09:10:13 +01:00
Sebastian Huber
e468ba5532
U-Boot: Flush data cache after bdinfo copy
2016-03-03 09:10:13 +01:00
Sebastian Huber
f831eff738
tmtests/tmtimer01: New test
...
Test run performed on T4240 running at 1667MHz in uni-processor
configuration.
Update #2554 .
2016-03-02 08:51:55 +01:00
Sebastian Huber
1db95677de
sptests/spsysinit01: Fix for RTEMS_DEBUG
...
Update #2408 .
2016-03-01 15:01:24 +01:00
Sebastian Huber
d297c81dd9
score: Delete Thread_CPU_usage_t
...
This type is superfluous since all operations with it are done via the
_Timestamp_*() functions.
2016-03-01 07:40:33 +01:00
Sebastian Huber
75518fb782
malloc: Fix function definition
...
Close #2617 .
2016-03-01 07:34:56 +01:00
Martin Galvan
8c5c53f478
am335x irq handling improvement
...
This patch makes the following changes to the Beaglebone IRQ handling code:
- Disable support for nested interrupts.
- Detect spurious IRQs using the SPURIOUSIRQ field of the INTC_SIR_IRQ register.
- Acknowledge spurious IRQs by setting the NewIRQAgr bit of the INTC_CONTROL
register. This cleans the SPURIOUSIRQ field and allows new interrupts
to be generated.
- Improve the get_mir_reg function a bit.
Closes #2580 .
2016-02-28 00:23:02 +01:00
Sebastian Huber
67de5082a2
rtems: Avoid __RTEMS_USE_TICKS_FOR_STATISTICS__
...
Option was removed by e6b31b27fb .
2016-02-25 13:08:45 +01:00
Sebastian Huber
9d1f394345
malloc: Add _Malloc_System_state()
...
Replace malloc_is_system_state_OK() with _Malloc_System_state() to allow
early allocations, e.g. in bsp_start(). Here the _Thread_Executing is
NULL, thus an _API_Mutex_Lock() would lead to a NULL pointer access.
Move malloc() support code to general case
rtems_heap_allocate_aligned_with_boundary(). Use
rtems_heap_allocate_aligned_with_boundary() to avoid duplicated code.
2016-02-25 11:35:54 +01:00
Sebastian Huber
839d0a74e5
malloc: Use dedicated lock for deferred frees
2016-02-25 09:10:53 +01:00
Sebastian Huber
287a70f935
malloc: Clean up "malloc_p.h" header file
2016-02-25 09:06:07 +01:00