1212# GPIO flags defined here: include/zephyr/dt-bindings/gpio/gpio.h
1313GPIO_ACTIVE_LOW = 1 << 0
1414
15+ MINIMUM_RAM_SIZE = 1024
16+
1517MANUAL_COMPAT_TO_DRIVER = {
1618 "renesas_ra_nv_flash" : "flash" ,
1719 "nordic_nrf_uarte" : "serial" ,
@@ -266,10 +268,15 @@ def zephyr_dts_to_cp_board(portdir, builddir, zephyrbuilddir): # noqa: C901
266268 if "compatible" in node .props :
267269 compatible = node .props ["compatible" ].to_strings ()
268270 logger .debug (f"{ node .name } : { status } " )
271+ logger .debug (f"compatible: { compatible } " )
269272 chosen = None
270273 if node in path2chosen :
271274 chosen = path2chosen [node ]
272275 logger .debug (f" chosen: { chosen } " )
276+ if not compatible and chosen == "zephyr,sram" :
277+ # The designated sram region may not have any compatible properties,
278+ # so we assume it is compatible with mmio
279+ compatible .append ("mmio" )
273280 for c in compatible :
274281 underscored = c .replace ("," , "_" ).replace ("-" , "_" )
275282 driver = COMPAT_TO_DRIVER .get (underscored , None )
@@ -296,7 +303,8 @@ def zephyr_dts_to_cp_board(portdir, builddir, zephyrbuilddir): # noqa: C901
296303 info = (node .labels [0 ], start , end , size , node .path )
297304 if chosen == "zephyr,sram" :
298305 rams .insert (0 , info )
299- elif status == "okay" :
306+ elif status == "okay" and size > MINIMUM_RAM_SIZE :
307+ logger .debug (f"Adding RAM info: { info } " )
300308 rams .append (info )
301309 if not driver :
302310 driver = MANUAL_COMPAT_TO_DRIVER .get (underscored , None )
0 commit comments