Skip to content
Snippets Groups Projects
Commit e28fcb22 authored by Simon Glass's avatar Simon Glass Committed by Bin Meng
Browse files

x86: Add a script to aid code conversion from coreboot


It is useful to automate the process of converting code from coreboot a
little. Add a sed script which performs some common transformations.

Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
Acked-by: default avatarBin Meng <bmeng.cn@gmail.com>
parent d6d50db8
No related branches found
No related tags found
No related merge requests found
...@@ -864,6 +864,15 @@ PCIe root port's configuration registers will cause system hang while it is ...@@ -864,6 +864,15 @@ PCIe root port's configuration registers will cause system hang while it is
held in reset. For more details, check how they are implemented by the Intel held in reset. For more details, check how they are implemented by the Intel
Galileo board support codes in board/intel/galileo/galileo.c. Galileo board support codes in board/intel/galileo/galileo.c.
coreboot:
See scripts/coreboot.sed which can assist with porting coreboot code into
U-Boot drivers. It will not resolve all build errors, but will perform common
transformations. Remember to add attribution to coreboot for new files added
to U-Boot. This should go at the top of each file and list the coreboot
filename where the code originated.
TODO List TODO List
--------- ---------
- Audio - Audio
......
#
# Copyright (c) 2016 Google, Inc
#
# SPDX-License-Identifier: GPL-2.0+
#
# Script to convert coreboot code to something similar to what U-Boot uses
# sed -f coreboot.sed <coreboot_file.c>
# Remember to add attribution to coreboot for new files added to U-Boot.
s/REG_RES_WRITE32(\(.*\), \(.*\), \(.*\)),/writel(\3, base + \2);/
s/REG_RES_POLL32(\(.*\), \(.*\), \(.*\), \(.*\), \(.*\)),/ret = poll32(base + \2, \3, \4, \5);/
s/REG_RES_OR32(\(.*\), \(.*\), \(.*\)),/setbits_le32(base + \2, \3);/
s/REG_RES_RMW32(\(.*\), \(.*\), \(.*\), \(.*\)),/clrsetbits_le32(base + \2, ~\3, \4);/
/REG_SCRIPT_END/d
s/read32/readl/
s/write32(\(.*\), \(.*\))/writel(\2, \1)/
s/conf->/plat->/
s/static const struct reg_script \(.*\)_script\[\] = {/static int \1(struct udevice *dev)/
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment