2005-04-17 02:20:36 +04:00
/*
* This program is used to generate definitions needed by
* assembly language modules .
*
* We use the technique used in the OSF Mach kernel code :
* generate asm statements containing # defines ,
* compile this file to assembler , and then extract the
* # defines from the assembly - language output .
*/
# include <linux/stddef.h>
# include <linux/types.h>
# include <linux/mm.h>
2008-04-29 12:04:12 +04:00
# include <linux/kbuild.h>
2009-03-06 12:47:02 +03:00
# include <linux/suspend.h>
2005-04-17 02:20:36 +04:00
2008-04-29 12:04:12 +04:00
# include <asm/thread_info.h>
2009-03-06 12:47:02 +03:00
# include <asm/suspend.h>
2005-04-17 02:20:36 +04:00
int main ( void )
{
/* offsets into the thread_info struct */
DEFINE ( TI_TASK , offsetof ( struct thread_info , task ) ) ;
DEFINE ( TI_EXEC_DOMAIN , offsetof ( struct thread_info , exec_domain ) ) ;
DEFINE ( TI_FLAGS , offsetof ( struct thread_info , flags ) ) ;
DEFINE ( TI_CPU , offsetof ( struct thread_info , cpu ) ) ;
DEFINE ( TI_PRE_COUNT , offsetof ( struct thread_info , preempt_count ) ) ;
DEFINE ( TI_RESTART_BLOCK , offsetof ( struct thread_info , restart_block ) ) ;
2009-07-11 05:00:23 +04:00
DEFINE ( TI_SIZE , sizeof ( struct thread_info ) ) ;
2005-04-17 02:20:36 +04:00
2009-03-06 12:47:02 +03:00
# ifdef CONFIG_HIBERNATION
DEFINE ( PBE_ADDRESS , offsetof ( struct pbe , address ) ) ;
DEFINE ( PBE_ORIG_ADDRESS , offsetof ( struct pbe , orig_address ) ) ;
DEFINE ( PBE_NEXT , offsetof ( struct pbe , next ) ) ;
DEFINE ( SWSUSP_ARCH_REGS_SIZE , sizeof ( struct swsusp_arch_regs ) ) ;
# endif
2009-10-30 07:24:07 +03:00
DEFINE ( SH_SLEEP_MODE , offsetof ( struct sh_sleep_data , mode ) ) ;
DEFINE ( SH_SLEEP_SF_PRE , offsetof ( struct sh_sleep_data , sf_pre ) ) ;
DEFINE ( SH_SLEEP_SF_POST , offsetof ( struct sh_sleep_data , sf_post ) ) ;
DEFINE ( SH_SLEEP_VBR , offsetof ( struct sh_sleep_data , vbr ) ) ;
DEFINE ( SH_SLEEP_SPC , offsetof ( struct sh_sleep_data , spc ) ) ;
DEFINE ( SH_SLEEP_SR , offsetof ( struct sh_sleep_data , sr ) ) ;
DEFINE ( SH_SLEEP_BASE_ADDR , offsetof ( struct sh_sleep_data , addr ) ) ;
DEFINE ( SH_SLEEP_BASE_DATA , offsetof ( struct sh_sleep_data , data ) ) ;
DEFINE ( SH_SLEEP_REG_STBCR , offsetof ( struct sh_sleep_regs , stbcr ) ) ;
2005-04-17 02:20:36 +04:00
return 0 ;
}