blob: db5bd6ba761fdffee550750973d79442bdd55419 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
# Copyright 2021 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
config PLATFORM_EC_RO_HEADER
bool "RO section includes a header"
default y
depends on CROS_EC_RO
depends on SOC_FAMILY_NPCX
help
The RO image residing on flash memory has a header section. The header
is used on some chips (such as the npcx) to load the image correctly
from flash. The values for offset and size are used by the linker
scripts to generate the header. See core/cortex-m/ec.lds.S for
reference.
config PLATFORM_EC_RO_HEADER_OFFSET
hex "Offset in memory for the location of the header"
default 0x0
help
The offset (in bytes) of the header relative to the start address of
the RO image.
config PLATFORM_EC_RO_HEADER_SIZE
hex "Size of the RO header"
default 0x40
help
The size of the RO header in bytes. This values should come from the
datasheet of the chip being used.
config PLATFORM_EC_RO_HEADER_ENABLE_HEADER_CRC
bool "Enable header crc check"
help
When enabled, the header will be verified at boot using a crc
checksum.
config PLATFORM_EC_RO_HEADER_ENABLE_FIRMWARE_CRC
bool "Enable firmware image crc check"
help
When enabled, the firmware image will be verified at boot using a
crc checksum.
choice "core clock to SPI flash clock ratio"
prompt "The clock ratio between the core clock and the SPI clock"
default PLATFORM_EC_RO_HEADER_CORE_CLOCK_SPI_CLOCK_RATIO_1
help
This sets the clock ratio (core clock / SPI clock)
config PLATFORM_EC_RO_HEADER_CORE_CLOCK_SPI_CLOCK_RATIO_1
bool "SPI flash will operate with normal reading mode"
help
The SPI flash clock has the same frequency as the core clock.
config PLATFORM_EC_RO_HEADER_CORE_CLOCK_SPI_CLOCK_RATIO_2
bool "SPI flash will operate with fast reading mode"
help
The core clock frequency is twice the flash clock frequency.
endchoice # core clock to SPI flash clock ratio
choice "SPI flash max clock rate"
prompt "Clock rate to use for SPI flash"
help
This selects the max clock rate (one of 20, 25, 33, 40, or 50 MHz)
that will be used for the SPI flash.
config PLATFORM_EC_RO_HEADER_SPI_MAX_CLOCK_20
bool "SPI flash max clock rate of 20 MHz"
config PLATFORM_EC_RO_HEADER_SPI_MAX_CLOCK_25
bool "SPI flash max clock rate of 25 MHz"
config PLATFORM_EC_RO_HEADER_SPI_MAX_CLOCK_33
bool "SPI flash max clock rate of 33 MHz"
config PLATFORM_EC_RO_HEADER_SPI_MAX_CLOCK_40
bool "SPI flash max clock rate of 40 MHz"
config PLATFORM_EC_RO_HEADER_SPI_MAX_CLOCK_50
bool "SPI flash max clock rate of 50 MHz"
endchoice # SPI flash max clock rate
choice "SPI flash reading mode"
prompt "Reading mode used by the SPI flash"
help
This will set the reading mode that can be used by the SPI flash.
Reading modes supported are normal, fast, dual, and quad.
config PLATFORM_EC_RO_HEADER_SPI_READ_MODE_NORMAL
bool "SPI flash will operate with normal reading mode"
config PLATFORM_EC_RO_HEADER_SPI_READ_MODE_FAST
bool "SPI flash will operate with fast reading mode"
config PLATFORM_EC_RO_HEADER_SPI_READ_MODE_DUAL
bool "SPI flash will operate with dual reading mode"
config PLATFORM_EC_RO_HEADER_SPI_READ_MODE_QUAD
bool "SPI flash will operate with quad reading mode"
endchoice # SPI flash reading mode
|