Commit 8b93924a authored by Paul Mackerras's avatar Paul Mackerras

Merge bk://68.0.152.218/linux-2.5-misc

into samba.org:/home/paulus/kernel/for-linus-ppc
parents be5828b4 c06078f7
...@@ -1060,13 +1060,7 @@ config HIGHMEM_START_BOOL ...@@ -1060,13 +1060,7 @@ config HIGHMEM_START_BOOL
Say N here unless you know what you are doing. Say N here unless you know what you are doing.
config HIGHMEM_START config HIGHMEM_START
hex "Virtual start address of high memory pool" hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
depends on HIGHMEM_START_BOOL
default "0xfe000000"
config HIGHMEM_START
hex
depends on !HIGHMEM_START_BOOL
default "0xfe000000" default "0xfe000000"
config LOWMEM_SIZE_BOOL config LOWMEM_SIZE_BOOL
...@@ -1082,13 +1076,7 @@ config LOWMEM_SIZE_BOOL ...@@ -1082,13 +1076,7 @@ config LOWMEM_SIZE_BOOL
Say N here unless you know what you are doing. Say N here unless you know what you are doing.
config LOWMEM_SIZE config LOWMEM_SIZE
hex "Maximum low memory size (in bytes)" hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
depends on LOWMEM_SIZE_BOOL
default "0x20000000"
config LOWMEM_SIZE
hex
depends on !LOWMEM_SIZE_BOOL
default "0x20000000" default "0x20000000"
config KERNEL_START_BOOL config KERNEL_START_BOOL
...@@ -1103,13 +1091,7 @@ config KERNEL_START_BOOL ...@@ -1103,13 +1091,7 @@ config KERNEL_START_BOOL
Say N here unless you know what you are doing. Say N here unless you know what you are doing.
config KERNEL_START config KERNEL_START
hex "Virtual address of kernel base" hex "Virtual address of kernel base" if KERNEL_START_BOOL
depends on KERNEL_START_BOOL
default "0xc0000000"
config KERNEL_START
hex
depends on !KERNEL_START_BOOL
default "0xc0000000" default "0xc0000000"
config TASK_SIZE_BOOL config TASK_SIZE_BOOL
...@@ -1123,13 +1105,7 @@ config TASK_SIZE_BOOL ...@@ -1123,13 +1105,7 @@ config TASK_SIZE_BOOL
Say N here unless you know what you are doing. Say N here unless you know what you are doing.
config TASK_SIZE config TASK_SIZE
hex "Size of user task space" hex "Size of user task space" if TASK_SIZE_BOOL
depends on TASK_SIZE_BOOL
default "0x80000000"
config TASK_SIZE
hex
depends on !TASK_SIZE_BOOL
default "0x80000000" default "0x80000000"
config BOOT_LOAD_BOOL config BOOT_LOAD_BOOL
...@@ -1143,19 +1119,8 @@ config BOOT_LOAD_BOOL ...@@ -1143,19 +1119,8 @@ config BOOT_LOAD_BOOL
Say N here unless you know what you are doing. Say N here unless you know what you are doing.
config BOOT_LOAD config BOOT_LOAD
hex "Link/load address for booting" hex "Link/load address for booting" if BOOT_LOAD_BOOL
depends on BOOT_LOAD_BOOL default "0x00400000" if 40x || 8xx || 8260
default "0x00400000"
# If we don't have a custom load, we define one here depending.
config BOOT_LOAD
hex
depends on !BOOT_LOAD_BOOL && (40x || 8xx || 8260)
default "0x00400000"
config BOOT_LOAD
hex
depends on !BOOT_LOAD_BOOL
default "0x00800000" default "0x00800000"
config PIN_TLB config PIN_TLB
......
...@@ -316,10 +316,32 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum, ...@@ -316,10 +316,32 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum,
{ {
struct bi_record *rec; struct bi_record *rec;
unsigned long initrd_loc;
rec = (struct bi_record *)_ALIGN((unsigned long)(zimage_size) + unsigned long rec_loc = _ALIGN((unsigned long)(zimage_size) +
(1 << 20) - 1, (1 << 20)); (1 << 20) - 1, (1 << 20));
rec = (struct bi_record *)rec_loc;
/* We need to make sure that the initrd and bi_recs do not
* overlap. */
if ( initrd_size ) {
initrd_loc = (unsigned long)(&__ramdisk_begin);
/* If the bi_recs are in the middle of the current
* initrd, move the initrd to the next MB
* boundary. */
if ((rec_loc > initrd_loc) &&
((initrd_loc + initrd_size)
> rec_loc)) {
initrd_loc = _ALIGN((unsigned long)(zimage_size)
+ (2 << 20) - 1, (2 << 20));
memmove((void *)initrd_loc, &__ramdisk_begin,
initrd_size);
puts("initrd moved: "); puthex(initrd_loc);
puts(" "); puthex(initrd_loc + initrd_size);
puts("\n");
}
}
rec->tag = BI_FIRST; rec->tag = BI_FIRST;
rec->size = sizeof(struct bi_record); rec->size = sizeof(struct bi_record);
rec = (struct bi_record *)((unsigned long)rec + rec->size); rec = (struct bi_record *)((unsigned long)rec + rec->size);
...@@ -348,7 +370,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum, ...@@ -348,7 +370,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum,
if ( initrd_size ) { if ( initrd_size ) {
rec->tag = BI_INITRD; rec->tag = BI_INITRD;
rec->data[0] = (unsigned long)(&__ramdisk_begin); rec->data[0] = initrd_loc;
rec->data[1] = initrd_size; rec->data[1] = initrd_size;
rec->size = sizeof(struct bi_record) + 2 * rec->size = sizeof(struct bi_record) + 2 *
sizeof(unsigned long); sizeof(unsigned long);
......
...@@ -209,9 +209,30 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum, b ...@@ -209,9 +209,30 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum, b
puts("done.\n"); puts("done.\n");
{ {
struct bi_record *rec; struct bi_record *rec;
unsigned long initrd_loc;
unsigned long rec_loc = _ALIGN((unsigned long)(zimage_size) +
(1 << 20) - 1, (1 << 20));
rec = (struct bi_record *)rec_loc;
rec = (struct bi_record *)_ALIGN((unsigned long)zimage_size + /* We need to make sure that the initrd and bi_recs do not
(1 << 20) - 1,(1 << 20)); * overlap. */
if ( initrd_size ) {
initrd_loc = (unsigned long)(&__ramdisk_begin);
/* If the bi_recs are in the middle of the current
* initrd, move the initrd to the next MB
* boundary. */
if ((rec_loc > initrd_loc) &&
((initrd_loc + initrd_size)
> rec_loc)) {
initrd_loc = _ALIGN((unsigned long)(zimage_size)
+ (2 << 20) - 1, (2 << 20));
memmove((void *)initrd_loc, &__ramdisk_begin,
initrd_size);
puts("initrd moved: "); puthex(initrd_loc);
puts(" "); puthex(initrd_loc + initrd_size);
puts("\n");
}
}
rec->tag = BI_FIRST; rec->tag = BI_FIRST;
rec->size = sizeof(struct bi_record); rec->size = sizeof(struct bi_record);
...@@ -224,7 +245,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum, b ...@@ -224,7 +245,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum, b
if ( initrd_size ) { if ( initrd_size ) {
rec->tag = BI_INITRD; rec->tag = BI_INITRD;
rec->data[0] = (unsigned long)(&__ramdisk_begin); rec->data[0] = initrd_loc;
rec->data[1] = initrd_size; rec->data[1] = initrd_size;
rec->size = sizeof(struct bi_record) + 2 * rec->size = sizeof(struct bi_record) + 2 *
sizeof(unsigned long); sizeof(unsigned long);
......
...@@ -396,9 +396,30 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) ...@@ -396,9 +396,30 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
{ {
struct bi_record *rec; struct bi_record *rec;
unsigned long initrd_loc;
unsigned long rec_loc = _ALIGN((unsigned long)(zimage_size) +
(1 << 20) - 1, (1 << 20));
rec = (struct bi_record *)rec_loc;
rec = (struct bi_record *)_ALIGN((ulong)zimage_size + /* We need to make sure that the initrd and bi_recs do not
(1<<20)-1,(1<<20)); * overlap. */
if ( initrd_size ) {
initrd_loc = (unsigned long)(&__ramdisk_begin);
/* If the bi_recs are in the middle of the current
* initrd, move the initrd to the next MB
* boundary. */
if ((rec_loc > initrd_loc) &&
((initrd_loc + initrd_size)
> rec_loc)) {
initrd_loc = _ALIGN((unsigned long)(zimage_size)
+ (2 << 20) - 1, (2 << 20));
memmove((void *)initrd_loc, &__ramdisk_begin,
initrd_size);
puts("initrd moved: "); puthex(initrd_loc);
puts(" "); puthex(initrd_loc + initrd_size);
puts("\n");
}
}
rec->tag = BI_FIRST; rec->tag = BI_FIRST;
rec->size = sizeof(struct bi_record); rec->size = sizeof(struct bi_record);
...@@ -421,7 +442,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) ...@@ -421,7 +442,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
if ( initrd_size ) { if ( initrd_size ) {
rec->tag = BI_INITRD; rec->tag = BI_INITRD;
rec->data[0] = (unsigned long)(&__ramdisk_begin); rec->data[0] = initrd_loc;
rec->data[1] = initrd_size; rec->data[1] = initrd_size;
rec->size = sizeof(struct bi_record) + 2 * rec->size = sizeof(struct bi_record) + 2 *
sizeof(unsigned long); sizeof(unsigned long);
......
...@@ -76,8 +76,8 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) ...@@ -76,8 +76,8 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
{ {
int timer = 0; int timer = 0;
char *cp, ch; char *cp, ch;
struct bi_record *rec, *birecs; struct bi_record *rec;
unsigned long TotalMemory = 0; unsigned long TotalMemory = 0, rec_loc, initrd_loc;
serial_fixups(); serial_fixups();
com_port = serial_init(0, NULL); com_port = serial_init(0, NULL);
...@@ -197,9 +197,28 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) ...@@ -197,9 +197,28 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
/* /*
* Create bi_recs for cmd_line and initrds * Create bi_recs for cmd_line and initrds
*/ */
rec = (struct bi_record *)_ALIGN((unsigned long)(zimage_size) + rec_loc = _ALIGN((unsigned long)(zimage_size) +
(1 << 20) - 1, (1 << 20)); (1 << 20) - 1, (1 << 20));
birecs = rec; rec = (struct bi_record *)rec_loc;
/* We need to make sure that the initrd and bi_recs do not
* overlap. */
if ( initrd_size ) {
initrd_loc = (unsigned long)(&__ramdisk_begin);
/* If the bi_recs are in the middle of the current
* initrd, move the initrd to the next MB
* boundary. */
if ((rec_loc > initrd_loc) &&
((initrd_loc + initrd_size) > rec_loc)) {
initrd_loc = _ALIGN((unsigned long)(zimage_size)
+ (2 << 20) - 1, (2 << 20));
memmove((void *)initrd_loc, &__ramdisk_begin,
initrd_size);
puts("initrd moved: "); puthex(initrd_loc);
puts(" "); puthex(initrd_loc + initrd_size);
puts("\n");
}
}
rec->tag = BI_FIRST; rec->tag = BI_FIRST;
rec->size = sizeof(struct bi_record); rec->size = sizeof(struct bi_record);
...@@ -219,7 +238,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) ...@@ -219,7 +238,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
if ( initrd_size ) { if ( initrd_size ) {
rec->tag = BI_INITRD; rec->tag = BI_INITRD;
rec->data[0] = (unsigned long)(&__ramdisk_begin); rec->data[0] = initrd_loc;
rec->data[1] = initrd_size; rec->data[1] = initrd_size;
rec->size = sizeof(struct bi_record) + 2 * rec->size = sizeof(struct bi_record) + 2 *
sizeof(unsigned long); sizeof(unsigned long);
...@@ -233,5 +252,5 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) ...@@ -233,5 +252,5 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
puts("Now booting the kernel\n"); puts("Now booting the kernel\n");
serial_close(com_port); serial_close(com_port);
return birecs; return (struct bi_record *)rec_loc;
} }
...@@ -286,13 +286,11 @@ void do_settimeofday(struct timeval *tv) ...@@ -286,13 +286,11 @@ void do_settimeofday(struct timeval *tv)
write_unlock_irqrestore(&xtime_lock, flags); write_unlock_irqrestore(&xtime_lock, flags);
} }
/* This function is only called on the boot processor */
void __init time_init(void) void __init time_init(void)
{ {
time_t sec, old_sec; time_t sec, old_sec;
unsigned old_stamp, stamp, elapsed; unsigned old_stamp, stamp, elapsed;
/* This function is only called on the boot processor */
unsigned long flags;
if (ppc_md.time_init != NULL) if (ppc_md.time_init != NULL)
time_offset = ppc_md.time_init(); time_offset = ppc_md.time_init();
...@@ -309,31 +307,31 @@ void __init time_init(void) ...@@ -309,31 +307,31 @@ void __init time_init(void)
/* Now that the decrementer is calibrated, it can be used in case the /* Now that the decrementer is calibrated, it can be used in case the
* clock is stuck, but the fact that we have to handle the 601 * clock is stuck, but the fact that we have to handle the 601
* makes things more complex. Repeatedly read the RTC until the * makes things more complex. Repeatedly read the RTC until the
* next second boundary to try to achieve some precision... * next second boundary to try to achieve some precision. If there
* is no RTC, we still need to set tb_last_stamp and
* last_jiffy_stamp(cpu 0) to the current stamp.
*/ */
if (ppc_md.get_rtc_time) {
stamp = get_native_tbl(); stamp = get_native_tbl();
if (ppc_md.get_rtc_time) {
sec = ppc_md.get_rtc_time(); sec = ppc_md.get_rtc_time();
elapsed = 0; elapsed = 0;
do { do {
old_stamp = stamp; old_stamp = stamp;
old_sec = sec; old_sec = sec;
stamp = get_native_tbl(); stamp = get_native_tbl();
if (__USE_RTC() && stamp < old_stamp) old_stamp -= 1000000000; if (__USE_RTC() && stamp < old_stamp)
old_stamp -= 1000000000;
elapsed += stamp - old_stamp; elapsed += stamp - old_stamp;
sec = ppc_md.get_rtc_time(); sec = ppc_md.get_rtc_time();
} while ( sec == old_sec && elapsed < 2*HZ*tb_ticks_per_jiffy); } while ( sec == old_sec && elapsed < 2*HZ*tb_ticks_per_jiffy);
if (sec==old_sec) { if (sec==old_sec)
printk("Warning: real time clock seems stuck!\n"); printk("Warning: real time clock seems stuck!\n");
}
write_lock_irqsave(&xtime_lock, flags);
xtime.tv_sec = sec; xtime.tv_sec = sec;
last_jiffy_stamp(0) = tb_last_stamp = stamp;
xtime.tv_nsec = 0; xtime.tv_nsec = 0;
/* No update now, we just read the time from the RTC ! */ /* No update now, we just read the time from the RTC ! */
last_rtc_update = xtime.tv_sec; last_rtc_update = xtime.tv_sec;
write_unlock_irqrestore(&xtime_lock, flags);
} }
last_jiffy_stamp(0) = tb_last_stamp = stamp;
/* Not exact, but the timer interrupt takes care of this */ /* Not exact, but the timer interrupt takes care of this */
set_dec(tb_ticks_per_jiffy); set_dec(tb_ticks_per_jiffy);
......
...@@ -57,6 +57,7 @@ ...@@ -57,6 +57,7 @@
#include <asm/mpc10x.h> #include <asm/mpc10x.h>
#include <asm/i8259.h> #include <asm/i8259.h>
#include <asm/open_pic.h> #include <asm/open_pic.h>
#include <asm/pci-bridge.h>
unsigned char ucSystemType; unsigned char ucSystemType;
unsigned char ucBoardRev; unsigned char ucBoardRev;
...@@ -991,11 +992,23 @@ static void __init ...@@ -991,11 +992,23 @@ static void __init
prep_init_IRQ(void) prep_init_IRQ(void)
{ {
int i; int i;
unsigned int pci_viddid, pci_did;
if (OpenPIC_Addr != NULL) if (OpenPIC_Addr != NULL)
openpic_init(NUM_8259_INTERRUPTS); openpic_init(NUM_8259_INTERRUPTS);
for ( i = 0 ; i < NUM_8259_INTERRUPTS ; i++ ) for ( i = 0 ; i < NUM_8259_INTERRUPTS ; i++ )
irq_desc[i].handler = &i8259_pic; irq_desc[i].handler = &i8259_pic;
/* If we have a Raven PCI bridge or a Hawk PCI bridge / Memory
* controller, we poll (as they have a different int-ack address). */
early_read_config_dword(0, 0, 0, PCI_VENDOR_ID, &pci_viddid);
pci_did = (pci_viddid & 0xffff0000) >> 16;
if (((pci_viddid & 0xffff) == PCI_VENDOR_ID_MOTOROLA)
&& ((pci_did == PCI_DEVICE_ID_MOTOROLA_RAVEN)
|| (pci_did == PCI_DEVICE_ID_MOTOROLA_HAWK)))
i8259_init(0);
else
/* PCI interrupt ack address given in section 6.1.8 of the
* PReP specification. */
i8259_init(MPC10X_MAPA_PCI_INTACK_ADDR); i8259_init(MPC10X_MAPA_PCI_INTACK_ADDR);
} }
......
...@@ -236,8 +236,6 @@ static __inline__ int ffz(unsigned long x) ...@@ -236,8 +236,6 @@ static __inline__ int ffz(unsigned long x)
return __ilog2(x & -x); return __ilog2(x & -x);
} }
#ifdef __KERNEL__
static inline int __ffs(unsigned long x) static inline int __ffs(unsigned long x)
{ {
return __ilog2(x & -x); return __ilog2(x & -x);
...@@ -274,8 +272,6 @@ static __inline__ int fls(unsigned int x) ...@@ -274,8 +272,6 @@ static __inline__ int fls(unsigned int x)
#define hweight16(x) generic_hweight16(x) #define hweight16(x) generic_hweight16(x)
#define hweight8(x) generic_hweight8(x) #define hweight8(x) generic_hweight8(x)
#endif /* __KERNEL__ */
/* /*
* Find the first bit set in a 140-bit bitmap. * Find the first bit set in a 140-bit bitmap.
* The first 100 bits are unlikely to be set. * The first 100 bits are unlikely to be set.
...@@ -395,8 +391,6 @@ static __inline__ unsigned long find_next_zero_bit(unsigned long * addr, ...@@ -395,8 +391,6 @@ static __inline__ unsigned long find_next_zero_bit(unsigned long * addr,
} }
#ifdef __KERNEL__
#define ext2_set_bit(nr, addr) __test_and_set_bit((nr) ^ 0x18, (unsigned long *)(addr)) #define ext2_set_bit(nr, addr) __test_and_set_bit((nr) ^ 0x18, (unsigned long *)(addr))
#define ext2_clear_bit(nr, addr) __test_and_clear_bit((nr) ^ 0x18, (unsigned long *)(addr)) #define ext2_clear_bit(nr, addr) __test_and_clear_bit((nr) ^ 0x18, (unsigned long *)(addr))
...@@ -460,7 +454,5 @@ static __inline__ unsigned long ext2_find_next_zero_bit(void *addr, ...@@ -460,7 +454,5 @@ static __inline__ unsigned long ext2_find_next_zero_bit(void *addr,
#define minix_test_bit(nr,addr) ext2_test_bit(nr,addr) #define minix_test_bit(nr,addr) ext2_test_bit(nr,addr)
#define minix_find_first_zero_bit(addr,size) ext2_find_first_zero_bit(addr,size) #define minix_find_first_zero_bit(addr,size) ext2_find_first_zero_bit(addr,size)
#endif /* __KERNEL__ */
#endif /* _PPC_BITOPS_H */ #endif /* _PPC_BITOPS_H */
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
...@@ -39,12 +39,11 @@ ...@@ -39,12 +39,11 @@
__section__(".data.cacheline_aligned"))) __section__(".data.cacheline_aligned")))
#endif #endif
#if defined(__KERNEL__) && !defined(__ASSEMBLY__) #ifndef __ASSEMBLY__
extern void clean_dcache_range(unsigned long start, unsigned long stop); extern void clean_dcache_range(unsigned long start, unsigned long stop);
extern void flush_dcache_range(unsigned long start, unsigned long stop); extern void flush_dcache_range(unsigned long start, unsigned long stop);
extern void invalidate_dcache_range(unsigned long start, unsigned long stop); extern void invalidate_dcache_range(unsigned long start, unsigned long stop);
extern void flush_dcache_all(void); extern void flush_dcache_all(void);
#endif /* __ASSEMBLY__ */ #endif /* __ASSEMBLY__ */
/* prep registers for L2 */ /* prep registers for L2 */
......
...@@ -193,7 +193,6 @@ extern void _outsl_ns(volatile u32 *port, const void *buf, int nl); ...@@ -193,7 +193,6 @@ extern void _outsl_ns(volatile u32 *port, const void *buf, int nl);
#define memcpy_fromio(a,b,c) memcpy((a),(void *)(b),(c)) #define memcpy_fromio(a,b,c) memcpy((a),(void *)(b),(c))
#define memcpy_toio(a,b,c) memcpy((void *)(a),(b),(c)) #define memcpy_toio(a,b,c) memcpy((void *)(a),(b),(c))
#ifdef __KERNEL__
/* /*
* Map in an area of physical address space, for accessing * Map in an area of physical address space, for accessing
* I/O devices etc. * I/O devices etc.
...@@ -265,8 +264,6 @@ extern inline void * phys_to_virt(unsigned long address) ...@@ -265,8 +264,6 @@ extern inline void * phys_to_virt(unsigned long address)
#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT) #define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT)
#define page_to_bus(page) (page_to_phys(page) + PCI_DRAM_OFFSET) #define page_to_bus(page) (page_to_phys(page) + PCI_DRAM_OFFSET)
#endif /* __KERNEL__ */
/* /*
* Enforce In-order Execution of I/O: * Enforce In-order Execution of I/O:
* Acts as a barrier to ensure all previous I/O accesses have * Acts as a barrier to ensure all previous I/O accesses have
......
...@@ -31,8 +31,6 @@ enum { ...@@ -31,8 +31,6 @@ enum {
pmac_nvram_NR /* MacOS Name Registry partition */ pmac_nvram_NR /* MacOS Name Registry partition */
}; };
#ifdef __KERNEL__
/* Return partition offset in nvram */ /* Return partition offset in nvram */
extern int pmac_get_partition(int partition); extern int pmac_get_partition(int partition);
...@@ -40,8 +38,6 @@ extern int pmac_get_partition(int partition); ...@@ -40,8 +38,6 @@ extern int pmac_get_partition(int partition);
extern u8 pmac_xpram_read(int xpaddr); extern u8 pmac_xpram_read(int xpaddr);
extern void pmac_xpram_write(int xpaddr, u8 data); extern void pmac_xpram_write(int xpaddr, u8 data);
#endif /* __KERNEL__ */
/* Some offsets in XPRAM */ /* Some offsets in XPRAM */
#define PMAC_XPRAM_MACHINE_LOC 0xe4 #define PMAC_XPRAM_MACHINE_LOC 0xe4
#define PMAC_XPRAM_SOUND_VOLUME 0x08 #define PMAC_XPRAM_SOUND_VOLUME 0x08
......
...@@ -62,7 +62,7 @@ typedef unsigned long pgprot_t; ...@@ -62,7 +62,7 @@ typedef unsigned long pgprot_t;
/* align addr on a size boundry - adjust address up if needed -- Cort */ /* align addr on a size boundry - adjust address up if needed -- Cort */
#define _ALIGN(addr,size) (((addr)+size-1)&(~(size-1))) #define _ALIGN(addr,size) (((addr)+(size)-1)&(~((size)-1)))
/* to align the pointer to the (next) page boundary */ /* to align the pointer to the (next) page boundary */
#define PAGE_ALIGN(addr) (((addr)+PAGE_SIZE-1)&PAGE_MASK) #define PAGE_ALIGN(addr) (((addr)+PAGE_SIZE-1)&PAGE_MASK)
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#define HZ 100 /* internal timer frequency */ #define HZ 100 /* internal timer frequency */
#define USER_HZ 100 /* for user interfaces in "ticks" */ #define USER_HZ 100 /* for user interfaces in "ticks" */
#define CLOCKS_PER_SEC (USER_HZ) /* frequency at which times() counts */ #define CLOCKS_PER_SEC (USER_HZ) /* frequency at which times() counts */
#endif #endif /* __KERNEL__ */
#define EXEC_PAGESIZE 4096 #define EXEC_PAGESIZE 4096
......
...@@ -111,7 +111,7 @@ typedef struct { ...@@ -111,7 +111,7 @@ typedef struct {
#define SA_PROBE SA_ONESHOT #define SA_PROBE SA_ONESHOT
#define SA_SAMPLE_RANDOM SA_RESTART #define SA_SAMPLE_RANDOM SA_RESTART
#define SA_SHIRQ 0x04000000 #define SA_SHIRQ 0x04000000
#endif #endif /* __KERNEL__ */
#define SIG_BLOCK 0 /* for blocking signals */ #define SIG_BLOCK 0 /* for blocking signals */
#define SIG_UNBLOCK 1 /* for unblocking signals */ #define SIG_UNBLOCK 1 /* for unblocking signals */
...@@ -150,7 +150,6 @@ typedef struct sigaltstack { ...@@ -150,7 +150,6 @@ typedef struct sigaltstack {
#ifdef __KERNEL__ #ifdef __KERNEL__
#include <asm/sigcontext.h> #include <asm/sigcontext.h>
#endif /* __KERNEL__ */
#endif
#endif #endif
...@@ -65,6 +65,6 @@ ...@@ -65,6 +65,6 @@
/* other similar things on the */ /* other similar things on the */
/* user level. */ /* user level. */
#define SOCK_MAX (SOCK_PACKET+1) #define SOCK_MAX (SOCK_PACKET+1)
#endif #endif /* __KERNEL__ */
#endif /* _ASM_SOCKET_H */ #endif /* _ASM_SOCKET_H */
...@@ -153,7 +153,7 @@ struct termio { ...@@ -153,7 +153,7 @@ struct termio {
#ifdef __KERNEL__ #ifdef __KERNEL__
/* ^C ^\ del ^U ^D 1 0 0 0 0 ^W ^R ^Z ^Q ^S ^V ^U */ /* ^C ^\ del ^U ^D 1 0 0 0 0 ^W ^R ^Z ^Q ^S ^V ^U */
#define INIT_C_CC "\003\034\177\025\004\001\000\000\000\000\027\022\032\021\023\026\025" #define INIT_C_CC "\003\034\177\025\004\001\000\000\000\000\027\022\032\021\023\026\025"
#endif #endif /* __KERNEL__ */
/* modem lines */ /* modem lines */
#define TIOCM_LE 0x001 #define TIOCM_LE 0x001
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment