diff options
| author | Ben Warren <biggerbadderben@gmail.com> | 2008-06-08 22:04:22 -0700 |
|---|---|---|
| committer | Ben Warren <biggerbadderben@gmail.com> | 2008-06-08 22:04:22 -0700 |
| commit | e44f3ea4e801d37ef293284cb57b9637382f211a (patch) | |
| tree | 09e6e9e68764e65ef7115db18319ec7e57c90b41 /include/common.h | |
| parent | 0e38c938ed4bcadb4f4fc1419a541431e94fc202 (diff) | |
| parent | 8155efbd7ae9c65564ca98affe94631d612ae088 (diff) | |
| download | olio-uboot-2014.01-e44f3ea4e801d37ef293284cb57b9637382f211a.tar.xz olio-uboot-2014.01-e44f3ea4e801d37ef293284cb57b9637382f211a.zip | |
Merge branch 'master' of git://git.denx.de/u-boot
Diffstat (limited to 'include/common.h')
| -rw-r--r-- | include/common.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/common.h b/include/common.h index d0f57040e..26e1b469a 100644 --- a/include/common.h +++ b/include/common.h @@ -176,6 +176,17 @@ typedef void (interrupt_handler_t)(void *); (__x > __y) ? __x : __y; }) +/** + * container_of - cast a member of a structure out to the containing structure + * @ptr: the pointer to the member. + * @type: the type of the container struct this is embedded in. + * @member: the name of the member within the struct. + * + */ +#define container_of(ptr, type, member) ({ \ + const typeof( ((type *)0)->member ) *__mptr = (ptr); \ + (type *)( (char *)__mptr - offsetof(type,member) );}) + /* * Function Prototypes */ |