tests/boot-serial-test: Add STM32VLDISCOVERY board testcase
New mini-kernel test for STM32VLDISCOVERY USART1. Signed-off-by: Alexandre Iooss <erdnaxe@crans.org> Acked-by: Thomas Huth <thuth@redhat.com> Acked-by: Alistair Francis <alistair.francis@wdc.com> Message-id: 20210617165647.2575955-5-erdnaxe@crans.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
1af060e574
commit
7cb4097f2d
|
@ -94,6 +94,41 @@ static const uint8_t kernel_nrf51[] = {
|
||||||
0x1c, 0x25, 0x00, 0x40 /* 0x4000251c = UART TXD */
|
0x1c, 0x25, 0x00, 0x40 /* 0x4000251c = UART TXD */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static const uint8_t kernel_stm32vldiscovery[] = {
|
||||||
|
0x00, 0x00, 0x00, 0x00, /* Stack top address */
|
||||||
|
0x1d, 0x00, 0x00, 0x00, /* Reset handler address */
|
||||||
|
0x00, 0x00, 0x00, 0x00, /* NMI */
|
||||||
|
0x00, 0x00, 0x00, 0x00, /* Hard fault */
|
||||||
|
0x00, 0x00, 0x00, 0x00, /* Memory management fault */
|
||||||
|
0x00, 0x00, 0x00, 0x00, /* Bus fault */
|
||||||
|
0x00, 0x00, 0x00, 0x00, /* Usage fault */
|
||||||
|
0x0b, 0x4b, /* ldr r3, [pc, #44] Get RCC */
|
||||||
|
0x44, 0xf2, 0x04, 0x02, /* movw r2, #16388 */
|
||||||
|
0x1a, 0x60, /* str r2, [r3] */
|
||||||
|
0x0a, 0x4b, /* ldr r3, [pc, #40] Get GPIOA */
|
||||||
|
0x1a, 0x68, /* ldr r2, [r3] */
|
||||||
|
0x22, 0xf0, 0xf0, 0x02, /* bic r2, r2, #240 */
|
||||||
|
0x1a, 0x60, /* str r2, [r3] */
|
||||||
|
0x1a, 0x68, /* ldr r2, [r3] */
|
||||||
|
0x42, 0xf0, 0xb0, 0x02, /* orr r2, r2, #176 */
|
||||||
|
0x1a, 0x60, /* str r2, [r3] */
|
||||||
|
0x07, 0x4b, /* ldr r3, [pc, #26] Get BAUD */
|
||||||
|
0x45, 0x22, /* movs r2, #69 */
|
||||||
|
0x1a, 0x60, /* str r2, [r3] */
|
||||||
|
0x06, 0x4b, /* ldr r3, [pc, #24] Get ENABLE */
|
||||||
|
0x42, 0xf2, 0x08, 0x02, /* movw r2, #8200 */
|
||||||
|
0x1a, 0x60, /* str r2, [r3] */
|
||||||
|
0x05, 0x4b, /* ldr r3, [pc, #20] Get TXD */
|
||||||
|
0x54, 0x22, /* movs r2, 'T' */
|
||||||
|
0x1a, 0x60, /* str r2, [r3] */
|
||||||
|
0xfe, 0xe7, /* b . */
|
||||||
|
0x18, 0x10, 0x02, 0x40, /* 0x40021018 = RCC */
|
||||||
|
0x04, 0x08, 0x01, 0x40, /* 0x40010804 = GPIOA */
|
||||||
|
0x08, 0x38, 0x01, 0x40, /* 0x40013808 = USART1 BAUD */
|
||||||
|
0x0c, 0x38, 0x01, 0x40, /* 0x4001380c = USART1 ENABLE */
|
||||||
|
0x04, 0x38, 0x01, 0x40 /* 0x40013804 = USART1 TXD */
|
||||||
|
};
|
||||||
|
|
||||||
typedef struct testdef {
|
typedef struct testdef {
|
||||||
const char *arch; /* Target architecture */
|
const char *arch; /* Target architecture */
|
||||||
const char *machine; /* Name of the machine */
|
const char *machine; /* Name of the machine */
|
||||||
|
@ -144,6 +179,8 @@ static testdef_t tests[] = {
|
||||||
{ "aarch64", "virt", "-cpu max", "TT", sizeof(kernel_aarch64),
|
{ "aarch64", "virt", "-cpu max", "TT", sizeof(kernel_aarch64),
|
||||||
kernel_aarch64 },
|
kernel_aarch64 },
|
||||||
{ "arm", "microbit", "", "T", sizeof(kernel_nrf51), kernel_nrf51 },
|
{ "arm", "microbit", "", "T", sizeof(kernel_nrf51), kernel_nrf51 },
|
||||||
|
{ "arm", "stm32vldiscovery", "", "T",
|
||||||
|
sizeof(kernel_stm32vldiscovery), kernel_stm32vldiscovery },
|
||||||
|
|
||||||
{ NULL }
|
{ NULL }
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue