qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emulation of solo key


From: Alistair Francis
Subject: Re: Emulation of solo key
Date: Tue, 9 Nov 2021 08:36:51 +1000

On Mon, Nov 8, 2021 at 5:52 PM Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
>
> Hi Niraj,
>
> On 11/6/21 11:17, Niraj Sorathiya wrote:
> > Hello Team,
> >
> > I really need your suggestions on how I should proceed to build a
> > Solo key emulator ?  Since I am new to QEMU  , I would like to know how
> > I should do planing before getting into technical of QEMU
> >
> > Please find all information about solo key below:
> >
> > Docs: https://docs.solokeys.io/solo/building/
> > <https://docs.solokeys.io/solo/building/>
> > Firmware: https://github.com/solokeys/solo/
> > <https://github.com/solokeys/solo/>
> > Hardware: https://github.com/solokeys/solo-hw
> > <https://github.com/solokeys/solo-hw>
>
> Solo is based on the STM32L432 microcontroller.
>
> Currently QEMU only models the STM32F family:
> https://qemu-project.gitlab.io/qemu/system/arm/stm32.html
>
> Presumably some core components could be reused for the
> STM32L family.

Generally STM32 parts share a lot of standard functionality. So I
suspect it would be pretty straightforward to get a STM32L432 up and
running using the existing QEMU devices.

STM32L4: 
https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus/stm32-ultra-low-power-mcus/stm32l4-series.html
STM32F4: 
https://www.st.com/en/microcontrollers-microprocessors/stm32f4-series.html

That should give you CPU, interrupts, UART (USART), SPI, timers and
probably ADC and sysconfig (I haven't checked the docs to double
check). That would at least be enough to run the firmware and see
signs of life.

It looks like the STM32L432 doesn't have the cyrpto/hash functions, so
that's one less thing to work on.

For full functionality you would probably need to model the USB SoC
(I'm assuming connected via I2C or SPI). You probably want GPIO for
the button as well, I have out of tree support for that as a starting
point (https://github.com/alistair23/qemu/tree/netduinoplus2.dev).
Then any other external ICs, I would assume there is a TRNG involved
somewhere.

Alistair

>
> Regards,
>
> Phil.
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]