| Commit message (Collapse) | Author | Files | Lines |
|
A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.
This has at least seven problems:
* The make preinstall step itself needs time and disk space.
* Errors in header files show up in the build tree copy. This makes it
hard for editors to open the right file to fix the error.
* There is no clear relationship between source and build tree header
files. This makes an audit of the build process difficult.
* The visibility of all header files in the build tree makes it
difficult to enforce API barriers. For example it is discouraged to
use BSP-specifics in the cpukit.
* An introduction of a new build system is difficult.
* Include paths specified by the -B option are system headers. This
may suppress warnings.
* The parallel build had sporadic failures on some hosts.
This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.
The new cpukit include directories are:
* cpukit/include
* cpukit/score/cpu/@RTEMS_CPU@/include
* cpukit/libnetworking
The new BSP include directories are:
* bsps/include
* bsps/@RTEMS_CPU@/include
* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include
There are build tree include directories for generated files.
The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.
The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.
Update #3254.
|
|
Drop superfluous <stdlib.h> include from <rtems/diskdevs.h> since this
leads to conflicts with the latest Newlib in case this header file is
used in the FreeBSD kernel space, e.g. for USB mass storage support.
|
|
This is the result of a sed script which converts all uses
of @{ into a consistent form.
|
|
|
|
|
|
|
|
Read-ahead requests were previously executed in the context of the
reading task. This blocks the reading task until the complete read
with read-ahead transfer is finished. A read-ahead task is introduced
to off-load the read-ahead transfer. This allows the reading task to
work with the requested block more quickly. The read-ahead is triggered
after two misses of ascending consecutive blocks or a read hit of a
block read by the most-recent read-ahead transfer. The read-ahead
feature is configurable and can be disabled.
|
|
Add block_count and media_blocks_per_block to rtems_disk_device. Add
and use rtems_disk_init_phys() and rtems_disk_init_log().
|
|
Script does what is expected and tries to do it as
smartly as possible.
+ remove occurrences of two blank comment lines
next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
contain CVS Ids
+ If the processing left a blank line at the top of
a file, it was removed.
|
|
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.
|
|
Add
o rtems_disk_get_block_size(),
o rtems_disk_get_block_begin(), and
o rtems_disk_get_block_count().
|
|
PR 1449/cpukit
* libblock/src/diskdevs.c: rtems_disk_next() will now implicitly
obtain the returned disk.
* libblock/include/rtems/diskdevs.h: Documentation.
|
|
|
|
|
|
rtems_disk_device.
* libblock/include/rtems/blkdev.h: New request code
RTEMS_BLKIO_DELETED.
* libblock/src/diskdevs.c: Major rewrite. Changed the way disks are
deleted. Disks will be now deleted if they are not in use or upon
last release. The IO control handler will be invoked if a physical
disk is deleted with the RTEMS_BLKIO_DELETED request code. Logical
disks increase now the usage count of the associated physical disk.
* libblock/include/rtems/ramdisk.h: Documentation.
* libblock/src/ramdisk-driver.c: Compile trace support conditionally.
|
|
control function. The IO control handler takes now the disk device as
first parameter instead of the physical device number.
* cpukit/libblock/include/rtems/blkdev.h, libblock/src/bdbuf.c,
libblock/src/blkdev.c, libblock/src/diskdevs.c, libblock/src/nvdisk.c,
libblock/src/flashdisk.c, libblock/src/ramdisk.c: Update for block
device API change.
|
|
* libmisc/dummy/dummy-networking.c: New.
* libmisc/dummy/dummy.c, libmisc/Makefile.am: Move
trhe networking configuration into a separate file so
configuration varations do not cause conflicts.
* score/inline/rtems/score/object.inl,
score/include/rtems/score/object.h: Remove warnings.
* score/inline/rtems/score/object.inl: Add _Chain_First,
_Chain_Last, _Chain_Mext, and _Chain_Previous.
* sapi/inline/rtems/chain.inl: Add rtems_chain_first,
rtems_chain_last, rtems_chain_mext, and rtems_chain_previous.
* libblock/include/rtems/diskdevs.h: Remove the bdbuf pool id and
block_size_log2. Add media_block_size.
* libblock/src/diskdevs.c: Remove size restrictions on block
size. Add media block size initialisation. Remove comment to clean
up the bdbuf cache.
* libblock/src/blkdev.c: Remove references to
block_size_log2. Allow any block size.
* libblock/include/rtems/bdbuf.h, libblock/src/bdbuf.c: Remove all
references to pools and make the cache handle demand driver
variable buffer size allocation. Added worker threads support the
swapout task.
* sapi/include/confdefs.h: Updated the bdbuf configutation.
|
|
* Doxygen.in: Fixed project name. Added project number. Enabled auto
brief. Disabled include graphs.
* include/rtems/irq-extension.h, libblock/include/rtems/bdpart.h,
libblock/include/rtems/bdbuf.h, libblock/include/rtems/bdpart.h,
libblock/include/rtems/blkdev.h, libblock/include/rtems/diskdevs.h,
libblock/include/rtems/ramdisk.h, libblock/src/bdbuf.c,
libblock/src/blkdev.c, libblock/src/diskdevs.c, libblock/src/ramdisk.c:
Documentation.
* libblock/src/bdpart.c: Documentation. Fixed NULL pointer access.
|
|
|
|
* sapi/include/confdefs.h, libblock/include/rtems/bdbuf.h: Changed
type of rtems_bdbuf_pool_configuration_size to size_t.
* libblock/include/rtems/bdbuf.h, libblock/include/rtems/blkdev.h,
libblock/include/rtems/diskdevs.h, libblock/src/bdbuf.c,
libblock/src/blkdev.c, libblock/src/diskdevs.c: Buffer pool
allocation is now cache aligned. The cache functions are
currently not available on all platforms so the cache line size is
fixed to 32 bytes for now. Changed various integer types which
refer to block sizes, numbers and indexes. Fixed logical block
indexes in buffer get and read function. It is now possible to
delete logical disks. Modified documentation
|
|
|
|
* libblock/include/rtems/bdbuf.h, libblock/include/rtems/diskdevs.h,
libblock/src/bdbuf.c, libblock/src/blkdev.c, libblock/src/diskdevs.c,
libblock/src/ramdisk.c: Eliminate sign mismatch warnings.
|
|
* libblock/Makefile.am: Removed src/show_bdbuf.c.
* libblock/src/show_bdbuf.c: Removed.
* libblock/include/rtems/bdbuf.h, cpukit/libblock/src/bdbuf.c:
Rewritten the bdbuf code. Remove pre-emption disable, score
access, fixed many bugs and increased performance.
* libblock/include/rtems/blkdev.h: Added
RTEMS_BLKDEV_CAPABILITIES block device request. Cleaned up
comments. Added block and user fields to the sg buffer
request. Move to rtems_* namespace.
* libblock/include/rtems/diskdevs.h,
cpukit/libblock/src/diskdevs.c: Move to rtems_* namespace. Add a
capabilities field for drivers. Change rtems_disk_lookup to
rtems_disk_obtain to match the release call. You do not lookup and
release a disk, you obtain and release a disk.
* libblock/include/rtems/ide_part_table.h,
libblock/include/rtems/ramdisk.h, libblock/src/ide_part_table.c:
Move to rtems_* namespace.
* libblock/include/rtems/nvdisk.h: Formatting change.
* libblock/src/blkdev.c: Move to rtems_* namespace. Change
rtems_disk_lookup to rtems_disk_obtain
* libblock/src/flashdisk.c: Move to rtems_* namespace. Use the new
support for the block number in the scatter/grather request
struct. This allows non-continuous buffer requests for those
drivers that can support increasing performance.
* libblock/src/nvdisk.c: Move to rtems_* namespace. Removed
warnings. Added better error checking. Fixed some comments.
* libblock/src/ramdisk.c: Move to rtems_* namespace. Added some
trace functions to help debugging upper layers. Use the new
support for the block number in the scatter/grather request
struct. This allows non-continuous buffer requests for those
drivers that can support increasing performance.
* libfs/src/dosfs/fat.c, libfs/src/dosfs/fat.h: Use new chains
API. Removed temporary hack and changed
set_errno_and_return_minus_one to
rtems_set_errno_and_return_minus_one. Move fat_buf_access from
header and stopped it being inlined. Updated to libblock changes.
* libfs/src/dosfs/fat_fat_operations.c,
libfs/src/dosfs/fat_file.c, libfs/src/dosfs/msdos_create.c,
libfs/src/dosfs/msdos_dir.c, libfs/src/dosfs/msdos_eval.c,
libfs/src/dosfs/msdos_file.c, libfs/src/dosfs/msdos_format.c,
libfs/src/dosfs/msdos_free.c, libfs/src/dosfs/msdos_initsupp.c,
libfs/src/dosfs/msdos_misc.c, libfs/src/dosfs/msdos_mknod.c: Use
new chains API. Removed temporary hack and changed
set_errno_and_return_minus_one to
rtems_set_errno_and_return_minus_one. Updated to libblock changes.
* libmisc/Makefile.am: Add new ls and rm command files.
* libmisc/shell/cmp-ls.c, libmisc/shell/extern-ls.h,
libmisc/shell/filemode.c, libmisc/shell/print-ls.c,
libmisc/shell/pwcache.c, libmisc/shell/utils-ls.c,
libmisc/shell/vis.c, shell/vis.h: New.
* libmisc/shell/extern-cp.h, libmisc/shell/main_cp.c,
libmisc/shell/utils-cp.c: Fixed the usage call bug.
* libmisc/shell/main_blksync.c: Updated to the new block IO ioctl
command.
* libmisc/shell/main_ls.c, libmisc/shell/main_rm.c: Updated to BSD
commands with more features.
* score/src/coremutex.c: Fix the strick order mutex code.
* libmisc/shell/shell.c: Change shell tasks mode to be timeslice
and no ASR.
* sapi/include/confdefs.h: Change ata_driver_task_priority to
rtems_ata_driver_task_priority. Add the new BD buf cache
parameters with defaults.
* score/src/interr.c: Do not return if the CPU halt call returns.
|
|
reduce size of data area.
IMFS: Fixed creation of symbolic links to avoid a compiler warning.
DOSFS: Use LibBlock instead of read() to read the boot record.
|
|
* libblock/include/rtems/diskdevs.h: Use uint32_t for ictrl req
argument (16bit target compliance).
|
|
|
|
* libblock/include/rtems/bdbuf.h,
libblock/include/rtems/blkdev.h,
libblock/include/rtems/diskdevs.h,
libblock/include/rtems/ide_part_table.h,
libblock/include/rtems/ramdisk.h:
Add doxygen preamble.
|
|
|
|
|
|
* Submitted by Victor V. Vengerov <vvv@oktet.ru> and merged
into the RTEMS source.
* ChangeLog, Makefile.am, README, configure.ac, include/Makefile.am,
include/rtems/bdbuf.h, include/rtems/blkdev.h, include/rtems/diskdevs.h,
include/rtems/ramdisk.h, include/rtems/.cvsignore, include/.cvsignore,
src/Makefile.am, src/bdbuf.c, src/blkdev.c, src/diskdevs.c,
src/ramdisk.c, src/.cvsignore, .cvsignore: New files.
|