Move container_of() macro to stddef.h

It's not a SPI related macro, hence move it to stddef.h where
other similar macros live.

Change-Id: I1008894af7a272f1bc36d3ae6cee3881132b6ba9
Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Reviewed-on: http://review.coreboot.org/8109
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
This commit is contained in:
Stefan Reinauer 2015-01-05 11:09:11 -08:00 committed by Stefan Reinauer
parent 41759274fe
commit 4417deb76f
2 changed files with 11 additions and 11 deletions

View File

@ -28,17 +28,6 @@
#include <console/console.h> #include <console/console.h>
#include <spi-generic.h> #include <spi-generic.h>
/**
* container_of - cast a member of a structure out to the containing structure
* @param ptr: the pointer to the member.
* @param type: the type of the container struct this is embedded in.
* @param 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) );})
struct spi_flash { struct spi_flash {
struct spi_slave *spi; struct spi_slave *spi;

View File

@ -32,6 +32,17 @@ typedef unsigned int wint_t;
offsetof(struct structure, member) == offset, \ offsetof(struct structure, member) == offset, \
"`struct " #structure "` offset for `" #member "` is not " #offset ) "`struct " #structure "` offset for `" #member "` is not " #offset )
/**
* container_of - cast a member of a structure out to the containing structure
* @param ptr: the pointer to the member.
* @param type: the type of the container struct this is embedded in.
* @param 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) );})
#ifdef __PRE_RAM__ #ifdef __PRE_RAM__
#define ROMSTAGE_CONST const #define ROMSTAGE_CONST const
#else #else