mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 10:39:08 +00:00
dm: core: Create a new header file for 'compat' features
At present dm/device.h includes the linux-compatible features. This requires including linux/compat.h which in turn includes a lot of headers. One of these is malloc.h which we thus end up including in every file in U-Boot. Apart from the inefficiency of this, it is problematic for sandbox which needs to use the system malloc() in some files. Move the compatibility features into a separate header file. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
61b29b8268
commit
336d4615f8
460 changed files with 593 additions and 77 deletions
86
include/dm/device_compat.h
Normal file
86
include/dm/device_compat.h
Normal file
|
@ -0,0 +1,86 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Copyright (c) 2013 Google, Inc
|
||||
*
|
||||
* (C) Copyright 2012
|
||||
* Pavel Herrmann <morpheus.ibis@gmail.com>
|
||||
* Marek Vasut <marex@denx.de>
|
||||
*/
|
||||
|
||||
#ifndef _DM_DEVICE_COMPAT_H
|
||||
#define _DM_DEVICE_COMPAT_H
|
||||
|
||||
#include <linux/compat.h>
|
||||
|
||||
/*
|
||||
* REVISIT:
|
||||
* remove the following after resolving conflicts with <linux/compat.h>
|
||||
*/
|
||||
#ifdef dev_dbg
|
||||
#undef dev_dbg
|
||||
#endif
|
||||
#ifdef dev_vdbg
|
||||
#undef dev_vdbg
|
||||
#endif
|
||||
#ifdef dev_info
|
||||
#undef dev_info
|
||||
#endif
|
||||
#ifdef dev_err
|
||||
#undef dev_err
|
||||
#endif
|
||||
#ifdef dev_warn
|
||||
#undef dev_warn
|
||||
#endif
|
||||
|
||||
/*
|
||||
* REVISIT:
|
||||
* print device name like Linux
|
||||
*/
|
||||
#define dev_printk(dev, fmt, ...) \
|
||||
({ \
|
||||
printk(fmt, ##__VA_ARGS__); \
|
||||
})
|
||||
|
||||
#define __dev_printk(level, dev, fmt, ...) \
|
||||
({ \
|
||||
if (level < CONFIG_VAL(LOGLEVEL)) \
|
||||
dev_printk(dev, fmt, ##__VA_ARGS__); \
|
||||
})
|
||||
|
||||
#define dev_emerg(dev, fmt, ...) \
|
||||
__dev_printk(0, dev, fmt, ##__VA_ARGS__)
|
||||
#define dev_alert(dev, fmt, ...) \
|
||||
__dev_printk(1, dev, fmt, ##__VA_ARGS__)
|
||||
#define dev_crit(dev, fmt, ...) \
|
||||
__dev_printk(2, dev, fmt, ##__VA_ARGS__)
|
||||
#define dev_err(dev, fmt, ...) \
|
||||
__dev_printk(3, dev, fmt, ##__VA_ARGS__)
|
||||
#define dev_warn(dev, fmt, ...) \
|
||||
__dev_printk(4, dev, fmt, ##__VA_ARGS__)
|
||||
#define dev_notice(dev, fmt, ...) \
|
||||
__dev_printk(5, dev, fmt, ##__VA_ARGS__)
|
||||
#define dev_info(dev, fmt, ...) \
|
||||
__dev_printk(6, dev, fmt, ##__VA_ARGS__)
|
||||
|
||||
#ifdef DEBUG
|
||||
#define dev_dbg(dev, fmt, ...) \
|
||||
__dev_printk(7, dev, fmt, ##__VA_ARGS__)
|
||||
#else
|
||||
#define dev_dbg(dev, fmt, ...) \
|
||||
({ \
|
||||
if (0) \
|
||||
__dev_printk(7, dev, fmt, ##__VA_ARGS__); \
|
||||
})
|
||||
#endif
|
||||
|
||||
#ifdef VERBOSE_DEBUG
|
||||
#define dev_vdbg dev_dbg
|
||||
#else
|
||||
#define dev_vdbg(dev, fmt, ...) \
|
||||
({ \
|
||||
if (0) \
|
||||
__dev_printk(7, dev, fmt, ##__VA_ARGS__); \
|
||||
})
|
||||
#endif
|
||||
|
||||
#endif
|
Loading…
Add table
Add a link
Reference in a new issue