blob: 248d8bfff1888106a1dda0d2126846773a7aaac1 [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001# SPDX-License-Identifier: GPL-2.0+
Simon Glassfc3fe1c2013-04-03 11:07:16 +00002# Copyright (c) 2012 The Chromium OS Authors.
Simon Glassfc3fe1c2013-04-03 11:07:16 +00003
Stephen Warren8426d8b2013-10-10 10:00:20 -06004
Simon Glassc52bd222022-07-11 19:04:03 -06005"""A single board which can be selected and built"""
Simon Glass6131bea2014-08-09 15:33:08 -06006
Simon Glassfc3fe1c2013-04-03 11:07:16 +00007class Board:
8 """A particular board that we can build"""
Simon Glass256126c2022-07-11 19:04:06 -06009 def __init__(self, status, arch, cpu, soc, vendor, board_name, target, cfg_name):
Simon Glassfc3fe1c2013-04-03 11:07:16 +000010 """Create a new board type.
11
12 Args:
Andreas Bießmann03c1bb22013-09-19 10:08:45 +020013 status: define whether the board is 'Active' or 'Orphaned'
Simon Glassfc3fe1c2013-04-03 11:07:16 +000014 arch: Architecture name (e.g. arm)
15 cpu: Cpu name (e.g. arm1136)
Simon Glassfc3fe1c2013-04-03 11:07:16 +000016 soc: Name of SOC, or '' if none (e.g. mx31)
Andreas Bießmann03c1bb22013-09-19 10:08:45 +020017 vendor: Name of vendor (e.g. armltd)
18 board_name: Name of board (e.g. integrator)
Masahiro Yamada73f30b92014-07-30 14:08:22 +090019 target: Target name (use make <target>_defconfig to configure)
Simon Glass5df95cf2023-07-19 17:48:17 -060020 cfg_name: Config-file name (in includes/configs/)
Simon Glassfc3fe1c2013-04-03 11:07:16 +000021 """
22 self.target = target
23 self.arch = arch
24 self.cpu = cpu
Simon Glassfc3fe1c2013-04-03 11:07:16 +000025 self.soc = soc
Simon Glass5df95cf2023-07-19 17:48:17 -060026 self.vendor = vendor
27 self.board_name = board_name
Simon Glass256126c2022-07-11 19:04:06 -060028 self.cfg_name = cfg_name
Tom Rinie0f24062016-11-04 22:59:45 -040029 self.props = [self.target, self.arch, self.cpu, self.board_name,
Simon Glass256126c2022-07-11 19:04:06 -060030 self.vendor, self.soc, self.cfg_name]
Simon Glassfc3fe1c2013-04-03 11:07:16 +000031 self.build_it = False