blob: ff95a453fbf44a35c0fdf3670cdaf6acf1485c23 [file] [log] [blame]
Angel Pons4b429832020-04-02 23:48:50 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Aaron Durbin76c37002012-10-30 09:03:43 -05002
3#ifndef RAMINIT_H
4#define RAMINIT_H
5
Angel Ponsd37b7d82020-07-03 23:52:34 +02006#include <stdint.h>
Aaron Durbin76c37002012-10-30 09:03:43 -05007#include "pei_data.h"
8
Angel Pons90ae0892021-03-12 17:00:52 +01009#define SPD_MEMORY_DOWN 0xff
10
11struct spd_info {
12 uint8_t addresses[4];
13 unsigned int spd_index;
14};
15
Angel Pons33b59c92021-02-11 13:42:20 +010016/* Mainboard-specific USB configuration */
17extern const struct usb2_port_setting mainboard_usb2_ports[MAX_USB2_PORTS];
18extern const struct usb3_port_setting mainboard_usb3_ports[MAX_USB3_PORTS];
19
Angel Ponsd37b7d82020-07-03 23:52:34 +020020/* Mainboard callback to fill in the SPD addresses in MRC format */
Angel Pons90ae0892021-03-12 17:00:52 +010021void mb_get_spd_map(struct spd_info *spdi);
Angel Ponsd37b7d82020-07-03 23:52:34 +020022
Aaron Durbin76c37002012-10-30 09:03:43 -050023void sdram_initialize(struct pei_data *pei_data);
Matt DeVillier5aaa8ce2016-09-02 13:29:17 -050024void setup_sdram_meminfo(struct pei_data *pei_data);
Angel Ponsfb955552021-02-11 14:00:33 +010025
Aaron Durbin2ad1dba2013-02-07 00:51:18 -060026/* save_mrc_data() must be called after cbmem has been initialized. */
27void save_mrc_data(struct pei_data *pei_data);
Aaron Durbin76c37002012-10-30 09:03:43 -050028
29#endif /* RAMINIT_H */