- 04 Apr, 2018 1 commit
-
-
Jens Korinth authored
-
- 03 Apr, 2018 6 commits
-
-
Jens Korinth authored
* libplatform and libtapasco can be built in the same location now
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
* default implementations use ioctls, specialized implementations may choose a different route per platform * using deinit everywhere in userland code instead of exit * several other changes in build configs etc.
-
Jens Korinth authored
-
Jens Korinth authored
-
- 31 Mar, 2018 10 commits
-
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
* does not fix the issue, though: need a platform-specific function to get the status core base address
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
* new variables for all sorts of dirs, libs, build flags, etc.
-
Jens Korinth authored
* arch/include adn platform/include contain user facing headers * headers for arch/platform implementation are in common/include
-
Jens Korinth authored
* read and write implemented, as well as bulk commands * using new device-specific logging macros
-
Jens Korinth authored
* now very common pattern, devices should be distinguishable in syslog * unifies format for device-specific log entries
-
- 30 Mar, 2018 2 commits
-
-
Jens Korinth authored
* much of the basic initialization can now be generalized and re-used for all platforms * implemented libplatform support for querying, creating and destroying devices * added platform_ctx_t and platform_devctx_t distinction, to reflect the platform / device level * platform_ctx_t holds the refs to the static TLKM interfaces * platform_devctx_t contains access to dynamic files etc. available only after the device has been created * ported generic modules to new TLKM interfaces * will need some mechanism to patch-in the board-specific code * also, will need to implement more calls, e.g., read and write: if mmap is available, that is always the best solution; only use the TLKM interface, if mmap is not possible * most of the that code should be generic, too
-
Jens Korinth authored
* adds io-mapping code for GPx and status core * appears to work, tests require ported libplatform
-
- 29 Mar, 2018 7 commits
-
-
Jens Korinth authored
* interrupt access requires GPx mappings, still TODO * also need to implement the other ioctl
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
* problem: udev takes ~10ms to update permissions, can be fixed by waiting * so far only retrieving info is implemented, rest should be done in platform-specific code
-
Jens Korinth authored
-
- 28 Mar, 2018 5 commits
-
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
* wrote some documentation about the ideas for the new driver * started to implement it as described * single point of control: /dev/tlkm * implemented ioctls for this file to get version number, enumerate devices, create and destroy devices * implemented basic sharing model based on ref_cnts * access types exclusive, shared and monitor are implemented to track uses * exclusive is the default for applications * shared won't be implemented in 2018.1, but maybe at some later stage * monitors are always allowed (tapasco-debug) * device-specific files and interfaces are created after the device has been created in the LKM via ioctl, and removed after last use
-
Jens Korinth authored
-
Jens Korinth authored
-
- 27 Mar, 2018 2 commits
-
-
Jens Korinth authored
-
Jens Korinth authored
-
- 26 Mar, 2018 3 commits
-
-
Jens Korinth authored
-
Jens Korinth authored
-
Jens Korinth authored
-
- 25 Mar, 2018 2 commits
-
-
Jens Korinth authored
-
Jens Korinth authored
* amount of kernel code can be reduced by using a unified driver * will merge all platforms into TLKM - TaPaSCo Loadable Kernel Module * implemented a performance counter interface based on X-macros * makes adding new performance counters is very simple * can be read from a new miscdevice, which outputs all at once * ported async file code, everything else still missing * also missing: need code to detect the platform reliably
-
- 24 Mar, 2018 2 commits
-
-
Jens Korinth authored
* PCIe devices currently apply offsets to read/write addresses automatically, depending on whether or not this address falls into the Architecture range * will open an issue discussing whether that's useful * for now, platform::get_user_offset is subtracted from addresses in the status core to provide the "correct" addresses on PCIe devices
-
Jens Korinth authored
-