diff options
author | Rayhan Faizel <rayhan.faizel@gmail.com> | 2024-05-19 15:11:06 +0530 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2024-07-01 12:48:55 +0100 |
commit | 5d5f1b60916aa6bbebe192d74acb762414377430 (patch) | |
tree | c09cacc1d41c94ab658f4efb92a1b5a9883e6e50 /hw/arm/bcm2835_peripherals.c | |
parent | 6bf7993921827817eb313f44509bf4ba7ebf88bb (diff) | |
download | qemu-5d5f1b60916aa6bbebe192d74acb762414377430.zip qemu-5d5f1b60916aa6bbebe192d74acb762414377430.tar.gz qemu-5d5f1b60916aa6bbebe192d74acb762414377430.tar.bz2 |
hw/misc: Implement mailbox properties for customer OTP and device specific private keys
Four mailbox properties are implemented as follows:
1. Customer OTP: GET_CUSTOMER_OTP and SET_CUSTOMER_OTP
2. Device-specific private key: GET_PRIVATE_KEY and
SET_PRIVATE_KEY.
The customer OTP is located in the rows 36-43. The device-specific private key
is located in the rows 56-63.
The customer OTP can be locked with the magic numbers 0xffffffff 0xaffe0000
when running the SET_CUSTOMER_OTP mailbox command. Bit 6 of row 32 indicates
this lock, which is undocumented. The lock also applies to the device-specific
private key.
Signed-off-by: Rayhan Faizel <rayhan.faizel@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/arm/bcm2835_peripherals.c')
-rw-r--r-- | hw/arm/bcm2835_peripherals.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/arm/bcm2835_peripherals.c b/hw/arm/bcm2835_peripherals.c index 7d735bb..ac153a9 100644 --- a/hw/arm/bcm2835_peripherals.c +++ b/hw/arm/bcm2835_peripherals.c @@ -132,6 +132,8 @@ static void raspi_peripherals_base_init(Object *obj) OBJECT(&s->fb)); object_property_add_const_link(OBJECT(&s->property), "dma-mr", OBJECT(&s->gpu_bus_mr)); + object_property_add_const_link(OBJECT(&s->property), "otp", + OBJECT(&s->otp)); /* Extended Mass Media Controller */ object_initialize_child(obj, "sdhci", &s->sdhci, TYPE_SYSBUS_SDHCI); |