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: Simon Glass <sjg@chromium.org>
Acked-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Simon Glass
2016-03-06 19:28:17 -07:00
committed by Bin Meng
parent d6d50db8a3
commit e28fcb2279
2 changed files with 26 additions and 0 deletions

17
scripts/coreboot.sed Normal file
View File

@ -0,0 +1,17 @@
#
# 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)/