X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-avr32%2Fprocessor.h;h=49a88f5a9d2feda1c7b033cfd19c71453c6dd6bf;hb=13c48c490208d9e70d8d66d56f96c5054db69af7;hp=a52576b25afe9a47af07c9d9b27d6cea4ae1e889;hpb=e17587b5b90da78f56c7a948e54dbac3dc791f31;p=linux-2.6 diff --git a/include/asm-avr32/processor.h b/include/asm-avr32/processor.h index a52576b25a..49a88f5a9d 100644 --- a/include/asm-avr32/processor.h +++ b/include/asm-avr32/processor.h @@ -13,6 +13,11 @@ #define TASK_SIZE 0x80000000 +#ifdef __KERNEL__ +#define STACK_TOP TASK_SIZE +#define STACK_TOP_MAX STACK_TOP +#endif + #ifndef __ASSEMBLY__ static inline void *current_text_addr(void) @@ -57,11 +62,25 @@ struct avr32_cpuinfo { unsigned short cpu_revision; enum tlb_config tlb_config; unsigned long features; + u32 device_id; struct cache_info icache; struct cache_info dcache; }; +static inline unsigned int avr32_get_manufacturer_id(struct avr32_cpuinfo *cpu) +{ + return (cpu->device_id >> 1) & 0x7f; +} +static inline unsigned int avr32_get_product_number(struct avr32_cpuinfo *cpu) +{ + return (cpu->device_id >> 12) & 0xffff; +} +static inline unsigned int avr32_get_chip_revision(struct avr32_cpuinfo *cpu) +{ + return (cpu->device_id >> 28) & 0x0f; +} + extern struct avr32_cpuinfo boot_cpu_data; #ifdef CONFIG_SMP