STM32F411 support

ChibiOS public support forum for topics related to the STMicroelectronics STM32 family of micro-controllers.

Moderator: RoccoMarco

User avatar
Giovanni
Site Admin
Posts: 14892
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: STM32F411 support

Post by Giovanni »

Hi,

The changes will go in version 3.0, I think you should use that branch if you want to use newer STM32s. In 3.0 the registry is a separate file: stm32_registry.h

Giovanni
User avatar
lilvinz
Posts: 130
Joined: Sat Dec 21, 2013 2:56 pm
Has thanked: 1 time
Been thanked: 6 times

Re: STM32F411 support

Post by lilvinz »

Hi,

please note that some changes are still to be made in the hal.
I have to enable all hal drivers and see where some more #ifdefs are required e.g. the ext driver will probably need some.
I understand that maintaining two separate versions is not desirable but isn't the 2.6 branch still the one for production use?
If you say 2.6. will not get newer chip support, i will redo the changes in the 3.0 branch if that helps.

Cheers,

Vincent
User avatar
Giovanni
Site Admin
Posts: 14892
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: STM32F411 support

Post by Giovanni »

Lets do this first for 3.0 then I will consider if doing the same in 2.6, the HAL is structured differently so the port is not immediate.

Giovanni
User avatar
lilvinz
Posts: 130
Joined: Sat Dec 21, 2013 2:56 pm
Has thanked: 1 time
Been thanked: 6 times

Re: STM32F411 support

Post by lilvinz »

I started working on the v3 branch.
There are a couple of bug fixes for stm32f401 support.
You can grab them from here: https://github.com/lilvinz/ChibiOS-RT/c ... 411?page=1

Cheers,

Vinz
User avatar
Giovanni
Site Admin
Posts: 14892
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: STM32F411 support

Post by Giovanni »

Thanks, I will merge the fixes.

Giovanni
User avatar
lilvinz
Posts: 130
Joined: Sat Dec 21, 2013 2:56 pm
Has thanked: 1 time
Been thanked: 6 times

Re: STM32F411 support

Post by lilvinz »

After having looked at the v3 sources some time i have two questions:

- There is some half way support for stm32f2xx. No CMSIS headers but remainings? in ports/STM32/STM32F4xx e.g. hal_lld.h.
What is the state of this? Do you want to separate F2 from F4? If so, the remainings should be removed. If not, support should be restored.
I am asking this because it is a blocker for some of my projects to move from 2.6 to 3.0 and i am willing to push f2 support.

- What is your favorite solution regarding the once again changed constants in the ST headers?
Do you prefer to switch over everything to the new constants or do you prefer a preprocessor based solution e.g. in hal_lld.h?
I am asking to prevent redundant work on this one.

Cheers,

Vinz
User avatar
Giovanni
Site Admin
Posts: 14892
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: STM32F411 support

Post by Giovanni »

The idea is to keep F2 and F4 in the same HAL, those are too similar for duplicating all the code.

Tomorrow I will give that code a look and will have a more clear idea about it.

Giovanni
User avatar
Giovanni
Site Admin
Posts: 14892
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 996 times

Re: STM32F411 support

Post by Giovanni »

Hi,

Sorry for the delay... busy week.

I merged the new header for the F4 from the STM32F4Cube software, I used a trick to keep drivers compatible with previous definitions, apparently everything is fine.

There are two things to add in hal_lld.h and the fixes in stm32_registry.h in order to support the F411, do you mind giving it a try? I don't have HW right now.

I plan updating also the other families in the same way.

Giovanni
User avatar
lilvinz
Posts: 130
Joined: Sat Dec 21, 2013 2:56 pm
Has thanked: 1 time
Been thanked: 6 times

Re: STM32F411 support

Post by lilvinz »

Hi,

i will give it a try and report back.

Cheers,

Vinz
User avatar
lilvinz
Posts: 130
Joined: Sat Dec 21, 2013 2:56 pm
Has thanked: 1 time
Been thanked: 6 times

Re: STM32F411 support

Post by lilvinz »

A couple of things to fix:
* F401 doesn't have EXTI 19 and EXTI 20 but has EXTI 21 - this has to be fixed at ext_lld_isr.c and ext_ldd_isr.h
* F411 has the same EXTI limitations as F401
* F411 registry is missing (https://github.com/lilvinz/ChibiOS-RT/c ... ba71308027)
* F411 hal_lld.h flash waitstate and VOS configration is missing (https://github.com/lilvinz/ChibiOS-RT/c ... f8045e0b12)
* F411 linker scripts are missing

Besides that, i can't link using gcc and lto as gcc crashes. I will probably report that to https://bugs.launchpad.net/gcc-arm-embedded .

Cheers

Vinz
Post Reply