1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _PPC_BOOT_PLANETCORE_H_ 3 #define _PPC_BOOT_PLANETCORE_H_ 4 5 #include "types.h" 6 7 #define PLANETCORE_KEY_BOARD_TYPE "BO" 8 #define PLANETCORE_KEY_BOARD_REV "BR" 9 #define PLANETCORE_KEY_MB_RAM "D1" 10 #define PLANETCORE_KEY_MAC_ADDR "EA" 11 #define PLANETCORE_KEY_FLASH_SPEED "FS" 12 #define PLANETCORE_KEY_IP_ADDR "IP" 13 #define PLANETCORE_KEY_KB_NVRAM "NV" 14 #define PLANETCORE_KEY_PROCESSOR "PR" 15 #define PLANETCORE_KEY_PROC_VARIANT "PV" 16 #define PLANETCORE_KEY_SERIAL_BAUD "SB" 17 #define PLANETCORE_KEY_SERIAL_PORT "SP" 18 #define PLANETCORE_KEY_SWITCH "SW" 19 #define PLANETCORE_KEY_TEMP_OFFSET "TC" 20 #define PLANETCORE_KEY_TARGET_IP "TIP" 21 #define PLANETCORE_KEY_CRYSTAL_HZ "XT" 22 23 /* Prepare the table for processing, by turning all newlines 24 * into NULL bytes. 25 */ 26 void planetcore_prepare_table(char *table); 27 28 /* Return the value associated with a given key in text, 29 * decimal, or hex format. 30 * 31 * Returns zero/NULL on failure, non-zero on success. 32 */ 33 const char *planetcore_get_key(const char *table, const char *key); 34 int planetcore_get_decimal(const char *table, const char *key, u64 *val); 35 int planetcore_get_hex(const char *table, const char *key, u64 *val); 36 37 /* Updates the device tree local-mac-address properties based 38 * on the EA tag. 39 */ 40 void planetcore_set_mac_addrs(const char *table); 41 42 /* Sets the linux,stdout-path in the /chosen node. This requires the 43 * linux,planetcore-label property in each serial node. 44 */ 45 void planetcore_set_stdout_path(const char *table); 46 47 #endif 48