Massive refactor to accommodate RISC-V targets

- Refactored entire codebase (excluding the Insight component) to accommodate multiple target architectures (no longer specific to AVR)
- Deleted 'generate SVD' GDB monitor command - I will eventually move this functionality to the Bloom website
- Added unit size property to address spaces
- Many other changes which I couldn't be bothered to describe here
This commit is contained in:
Nav
2024-07-23 21:14:22 +01:00
parent 2986934485
commit 6cdbfbe950
331 changed files with 8815 additions and 8565 deletions

View File

@@ -323,6 +323,7 @@ class AtdfService
isset($attributes['id']) ? strtolower($attributes['id']) : null,
$this->stringService->tryStringToInt($attributes['start'] ?? null),
$this->stringService->tryStringToInt($attributes['size'] ?? null),
null,
$attributes['endianness'] ?? null,
);

View File

@@ -606,7 +606,7 @@ class ValidationService
if ($register->size === null) {
$failures[] = 'Missing size';
} elseif ($register->size < 1) {
} elseif ($register->size < 1 || $register->size > 8) {
$failures[] = 'Invalid size (' . $register->size . ')';
}

View File

@@ -116,6 +116,7 @@ class FromXmlService
$attributes['key'] ?? null,
$this->stringService->tryStringToInt($attributes['start'] ?? null),
$this->stringService->tryStringToInt($attributes['size'] ?? null),
$this->stringService->tryStringToInt($attributes['unit-size'] ?? null),
$attributes['endianness'] ?? null,
);

View File

@@ -70,6 +70,10 @@ class ToXmlService
$element->setAttribute('start', $this->stringService->tryIntToHex($addressSpace->startAddress, 8));
$element->setAttribute('size', $addressSpace->size);
if (!empty($addressSpace->unitSize)) {
$element->setAttribute('unit-size', $addressSpace->unitSize);
}
if (!empty($addressSpace->endianness)) {
$element->setAttribute('endianness', strtolower($addressSpace->endianness));
}