Skip to content

Commit 9f817a3

Browse files
committed
Add new Device_Id package body for F7x, which uses a different address
1 parent 8663ba9 commit 9f817a3

13 files changed

Lines changed: 80 additions & 2 deletions

File tree

File renamed without changes.
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
------------------------------------------------------------------------------
2+
-- --
3+
-- Copyright (C) 2015-2026, AdaCore --
4+
-- --
5+
-- Redistribution and use in source and binary forms, with or without --
6+
-- modification, are permitted provided that the following conditions are --
7+
-- met: --
8+
-- 1. Redistributions of source code must retain the above copyright --
9+
-- notice, this list of conditions and the following disclaimer. --
10+
-- 2. Redistributions in binary form must reproduce the above copyright --
11+
-- notice, this list of conditions and the following disclaimer in --
12+
-- the documentation and/or other materials provided with the --
13+
-- distribution. --
14+
-- 3. Neither the name of the copyright holder nor the names of its --
15+
-- contributors may be used to endorse or promote products derived --
16+
-- from this software without specific prior written permission. --
17+
-- --
18+
-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS --
19+
-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT --
20+
-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR --
21+
-- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT --
22+
-- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, --
23+
-- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT --
24+
-- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, --
25+
-- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY --
26+
-- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT --
27+
-- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE --
28+
-- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --
29+
-- --
30+
------------------------------------------------------------------------------
31+
32+
with System;
33+
34+
package body STM32.Device_Id is
35+
36+
ID_Address : constant System.Address := System'To_Address (16#1FF0_F420#);
37+
-- per RM0385 for F74xxx and F75xxx, and RM0410 for F76xxx and F77xxx
38+
39+
---------------
40+
-- Unique_Id --
41+
---------------
42+
43+
function Unique_Id return Device_Id_Image is
44+
Result : Device_Id_Image;
45+
for Result'Address use ID_Address;
46+
pragma Import (Ada, Result);
47+
begin
48+
return Result;
49+
end Unique_Id;
50+
51+
---------------
52+
-- Unique_Id --
53+
---------------
54+
55+
function Unique_Id return Device_Id_Tuple is
56+
Result : Device_Id_Tuple;
57+
for Result'Address use ID_Address;
58+
begin
59+
return Result;
60+
end Unique_Id;
61+
62+
end STM32.Device_Id;

boards/stm32f407_discovery/stm32f407_discovery_full.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ library project STM32F407_Discovery_Full is
109109
Src_Dirs_Root & "/arch/ARM/STM32/drivers/i2c_stm32f4", -- From MCU definition
110110
Src_Dirs_Root & "/arch/ARM/STM32/drivers/power_control_stm32f4", -- From MCU definition
111111
Src_Dirs_Root & "/arch/ARM/STM32/drivers/uart_stm32f4/", -- From MCU definition
112+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f4/", -- added manually
112113
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition
113114
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/sdio/", -- From MCU definition
114115
Src_Dirs_Root & "/middleware/src/filesystem", -- From middleware config

boards/stm32f407_discovery/stm32f407_discovery_sfp.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ library project STM32F407_Discovery_SFP is
109109
Src_Dirs_Root & "/arch/ARM/STM32/drivers/i2c_stm32f4", -- From MCU definition
110110
Src_Dirs_Root & "/arch/ARM/STM32/drivers/power_control_stm32f4", -- From MCU definition
111111
Src_Dirs_Root & "/arch/ARM/STM32/drivers/uart_stm32f4/", -- From MCU definition
112+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f4/", -- added manually
112113
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition
113114
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/sdio/", -- From MCU definition
114115
Src_Dirs_Root & "/middleware/src/filesystem", -- From middleware config

boards/stm32f429_discovery/stm32f429_discovery_full.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ library project STM32F429_Discovery_Full is
113113
Src_Dirs_Root & "/arch/ARM/STM32/drivers/i2c_stm32f4", -- From MCU definition
114114
Src_Dirs_Root & "/arch/ARM/STM32/drivers/power_control_stm32f4", -- From MCU definition
115115
Src_Dirs_Root & "/arch/ARM/STM32/drivers/uart_stm32f4/", -- From MCU definition
116+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f4/", -- added manually
116117
Src_Dirs_Root & "/arch/ARM/STM32/drivers/ltdc/", -- From MCU definition
117118
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition
118119
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/sdio/", -- From MCU definition

boards/stm32f429_discovery/stm32f429_discovery_sfp.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ library project STM32F429_Discovery_SFP is
113113
Src_Dirs_Root & "/arch/ARM/STM32/drivers/i2c_stm32f4", -- From MCU definition
114114
Src_Dirs_Root & "/arch/ARM/STM32/drivers/power_control_stm32f4", -- From MCU definition
115115
Src_Dirs_Root & "/arch/ARM/STM32/drivers/uart_stm32f4/", -- From MCU definition
116+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f4/", -- added manually
116117
Src_Dirs_Root & "/arch/ARM/STM32/drivers/ltdc/", -- From MCU definition
117118
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition
118119
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/sdio/", -- From MCU definition

boards/stm32f469_discovery/stm32f469_discovery_full.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ library project STM32F469_Discovery_Full is
115115
Src_Dirs_Root & "/arch/ARM/STM32/drivers/i2c_stm32f4", -- From MCU definition
116116
Src_Dirs_Root & "/arch/ARM/STM32/drivers/power_control_stm32f4", -- From MCU definition
117117
Src_Dirs_Root & "/arch/ARM/STM32/drivers/uart_stm32f4/", -- From MCU definition
118+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f4/", -- added manually
118119
Src_Dirs_Root & "/arch/ARM/STM32/drivers/ltdc/", -- From MCU definition
119120
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sai/", -- From MCU definition
120121
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition

boards/stm32f469_discovery/stm32f469_discovery_sfp.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ library project STM32F469_Discovery_SFP is
115115
Src_Dirs_Root & "/arch/ARM/STM32/drivers/i2c_stm32f4", -- From MCU definition
116116
Src_Dirs_Root & "/arch/ARM/STM32/drivers/power_control_stm32f4", -- From MCU definition
117117
Src_Dirs_Root & "/arch/ARM/STM32/drivers/uart_stm32f4/", -- From MCU definition
118+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f4/", -- added manually
118119
Src_Dirs_Root & "/arch/ARM/STM32/drivers/ltdc/", -- From MCU definition
119120
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sai/", -- From MCU definition
120121
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition

boards/stm32f746_discovery/stm32f746_discovery_full.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ library project STM32F746_Discovery_Full is
115115
Src_Dirs_Root & "/arch/ARM/STM32/drivers/ltdc/", -- From MCU definition
116116
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sai/", -- From MCU definition
117117
Src_Dirs_Root & "/arch/ARM/STM32/drivers/crc_stm32f7/", -- manually added
118+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f7/", -- manually added
118119
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition
119120
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/sdmmc/", -- From MCU definition
120121
Src_Dirs_Root & "/middleware/src/filesystem", -- From middleware config

boards/stm32f746_discovery/stm32f746_discovery_sfp.gpr

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ library project STM32F746_Discovery_SFP is
115115
Src_Dirs_Root & "/arch/ARM/STM32/drivers/ltdc/", -- From MCU definition
116116
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sai/", -- From MCU definition
117117
Src_Dirs_Root & "/arch/ARM/STM32/drivers/crc_stm32f7/", -- manually added
118+
Src_Dirs_Root & "/arch/ARM/STM32/drivers/devid_stm32f7/", -- manually added
118119
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/", -- From MCU definition
119120
Src_Dirs_Root & "/arch/ARM/STM32/drivers/sd/sdmmc/", -- From MCU definition
120121
Src_Dirs_Root & "/middleware/src/filesystem", -- From middleware config

0 commit comments

Comments
 (0)