Merge branch 'unicore32' of git://github.com/gxt/linux
* 'unicore32' of git://github.com/gxt/linux: unicore32, exec: remove redundant set_fs(USER_DS) unicore32: Fix typo 'PUV3_I2C' unicore32: drop unused Kconfig symbols rtc: rtc-puv3: Add __devinit and __devexit markers for probe and remove arch/unicore32: do not use EXTRA_AFLAGS or EXTRA_CFLAGS unicore32: fix build error for find bitops
This commit is contained in:
commit
9545eb61e5
|
@ -237,13 +237,13 @@ menu "PKUnity NetBook-0916 Features"
|
||||||
|
|
||||||
config I2C_BATTERY_BQ27200
|
config I2C_BATTERY_BQ27200
|
||||||
tristate "I2C Battery BQ27200 Support"
|
tristate "I2C Battery BQ27200 Support"
|
||||||
select PUV3_I2C
|
select I2C_PUV3
|
||||||
select POWER_SUPPLY
|
select POWER_SUPPLY
|
||||||
select BATTERY_BQ27x00
|
select BATTERY_BQ27x00
|
||||||
|
|
||||||
config I2C_EEPROM_AT24
|
config I2C_EEPROM_AT24
|
||||||
tristate "I2C EEPROMs AT24 support"
|
tristate "I2C EEPROMs AT24 support"
|
||||||
select PUV3_I2C
|
select I2C_PUV3
|
||||||
select MISC_DEVICES
|
select MISC_DEVICES
|
||||||
select EEPROM_AT24
|
select EEPROM_AT24
|
||||||
|
|
||||||
|
|
|
@ -44,18 +44,4 @@ config DEBUG_OCD
|
||||||
Say Y here if you want the debug print routines to direct their
|
Say Y here if you want the debug print routines to direct their
|
||||||
output to the UniCore On-Chip-Debugger channel using CP #1.
|
output to the UniCore On-Chip-Debugger channel using CP #1.
|
||||||
|
|
||||||
config DEBUG_OCD_BREAKPOINT
|
|
||||||
bool "Breakpoint support via On-Chip-Debugger"
|
|
||||||
depends on DEBUG_OCD
|
|
||||||
|
|
||||||
config DEBUG_UART
|
|
||||||
int "Kernel low-level debugging messages via serial port"
|
|
||||||
depends on DEBUG_LL
|
|
||||||
range 0 1
|
|
||||||
default "0"
|
|
||||||
help
|
|
||||||
Choice for UART for kernel low-level using PKUnity UARTS,
|
|
||||||
should be between zero and one. The port must have been
|
|
||||||
initialised by the boot-loader before use.
|
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
|
@ -10,8 +10,8 @@
|
||||||
# Copyright (C) 2001~2010 GUAN Xue-tao
|
# Copyright (C) 2001~2010 GUAN Xue-tao
|
||||||
#
|
#
|
||||||
|
|
||||||
EXTRA_CFLAGS := -fpic -fno-builtin
|
ccflags-y := -fpic -fno-builtin
|
||||||
EXTRA_AFLAGS := -Wa,-march=all
|
asflags-y := -Wa,-march=all
|
||||||
|
|
||||||
OBJS := misc.o
|
OBJS := misc.o
|
||||||
|
|
||||||
|
|
|
@ -13,12 +13,6 @@
|
||||||
#ifndef __UNICORE_BITOPS_H__
|
#ifndef __UNICORE_BITOPS_H__
|
||||||
#define __UNICORE_BITOPS_H__
|
#define __UNICORE_BITOPS_H__
|
||||||
|
|
||||||
#define find_next_bit __uc32_find_next_bit
|
|
||||||
#define find_next_zero_bit __uc32_find_next_zero_bit
|
|
||||||
|
|
||||||
#define find_first_bit __uc32_find_first_bit
|
|
||||||
#define find_first_zero_bit __uc32_find_first_zero_bit
|
|
||||||
|
|
||||||
#define _ASM_GENERIC_BITOPS_FLS_H_
|
#define _ASM_GENERIC_BITOPS_FLS_H_
|
||||||
#define _ASM_GENERIC_BITOPS___FLS_H_
|
#define _ASM_GENERIC_BITOPS___FLS_H_
|
||||||
#define _ASM_GENERIC_BITOPS_FFS_H_
|
#define _ASM_GENERIC_BITOPS_FFS_H_
|
||||||
|
@ -44,4 +38,10 @@ static inline int fls(int x)
|
||||||
|
|
||||||
#include <asm-generic/bitops.h>
|
#include <asm-generic/bitops.h>
|
||||||
|
|
||||||
|
/* following definitions: to avoid using codes in lib/find_*.c */
|
||||||
|
#define find_next_bit find_next_bit
|
||||||
|
#define find_next_zero_bit find_next_zero_bit
|
||||||
|
#define find_first_bit find_first_bit
|
||||||
|
#define find_first_zero_bit find_first_zero_bit
|
||||||
|
|
||||||
#endif /* __UNICORE_BITOPS_H__ */
|
#endif /* __UNICORE_BITOPS_H__ */
|
||||||
|
|
|
@ -53,7 +53,6 @@ struct thread_struct {
|
||||||
#define start_thread(regs, pc, sp) \
|
#define start_thread(regs, pc, sp) \
|
||||||
({ \
|
({ \
|
||||||
unsigned long *stack = (unsigned long *)sp; \
|
unsigned long *stack = (unsigned long *)sp; \
|
||||||
set_fs(USER_DS); \
|
|
||||||
memset(regs->uregs, 0, sizeof(regs->uregs)); \
|
memset(regs->uregs, 0, sizeof(regs->uregs)); \
|
||||||
regs->UCreg_asr = USER_MODE; \
|
regs->UCreg_asr = USER_MODE; \
|
||||||
regs->UCreg_pc = pc & ~1; /* pc */ \
|
regs->UCreg_pc = pc & ~1; /* pc */ \
|
||||||
|
|
|
@ -24,8 +24,8 @@
|
||||||
|
|
||||||
#include "ksyms.h"
|
#include "ksyms.h"
|
||||||
|
|
||||||
EXPORT_SYMBOL(__uc32_find_next_zero_bit);
|
EXPORT_SYMBOL(find_next_zero_bit);
|
||||||
EXPORT_SYMBOL(__uc32_find_next_bit);
|
EXPORT_SYMBOL(find_next_bit);
|
||||||
|
|
||||||
EXPORT_SYMBOL(__backtrace);
|
EXPORT_SYMBOL(__backtrace);
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
* Purpose : Find a 'zero' bit
|
* Purpose : Find a 'zero' bit
|
||||||
* Prototype: int find_first_zero_bit(void *addr, unsigned int maxbit);
|
* Prototype: int find_first_zero_bit(void *addr, unsigned int maxbit);
|
||||||
*/
|
*/
|
||||||
__uc32_find_first_zero_bit:
|
ENTRY(find_first_zero_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3f
|
beq 3f
|
||||||
mov r2, #0
|
mov r2, #0
|
||||||
|
@ -29,13 +29,14 @@ __uc32_find_first_zero_bit:
|
||||||
bub 1b
|
bub 1b
|
||||||
3: mov r0, r1 @ no free bits
|
3: mov r0, r1 @ no free bits
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
ENDPROC(find_first_zero_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Purpose : Find next 'zero' bit
|
* Purpose : Find next 'zero' bit
|
||||||
* Prototype: int find_next_zero_bit
|
* Prototype: int find_next_zero_bit
|
||||||
* (void *addr, unsigned int maxbit, int offset)
|
* (void *addr, unsigned int maxbit, int offset)
|
||||||
*/
|
*/
|
||||||
ENTRY(__uc32_find_next_zero_bit)
|
ENTRY(find_next_zero_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3b
|
beq 3b
|
||||||
and.a ip, r2, #7
|
and.a ip, r2, #7
|
||||||
|
@ -47,14 +48,14 @@ ENTRY(__uc32_find_next_zero_bit)
|
||||||
or r2, r2, #7 @ if zero, then no bits here
|
or r2, r2, #7 @ if zero, then no bits here
|
||||||
add r2, r2, #1 @ align bit pointer
|
add r2, r2, #1 @ align bit pointer
|
||||||
b 2b @ loop for next bit
|
b 2b @ loop for next bit
|
||||||
ENDPROC(__uc32_find_next_zero_bit)
|
ENDPROC(find_next_zero_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Purpose : Find a 'one' bit
|
* Purpose : Find a 'one' bit
|
||||||
* Prototype: int find_first_bit
|
* Prototype: int find_first_bit
|
||||||
* (const unsigned long *addr, unsigned int maxbit);
|
* (const unsigned long *addr, unsigned int maxbit);
|
||||||
*/
|
*/
|
||||||
__uc32_find_first_bit:
|
ENTRY(find_first_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3f
|
beq 3f
|
||||||
mov r2, #0
|
mov r2, #0
|
||||||
|
@ -66,13 +67,14 @@ __uc32_find_first_bit:
|
||||||
bub 1b
|
bub 1b
|
||||||
3: mov r0, r1 @ no free bits
|
3: mov r0, r1 @ no free bits
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
ENDPROC(find_first_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Purpose : Find next 'one' bit
|
* Purpose : Find next 'one' bit
|
||||||
* Prototype: int find_next_zero_bit
|
* Prototype: int find_next_zero_bit
|
||||||
* (void *addr, unsigned int maxbit, int offset)
|
* (void *addr, unsigned int maxbit, int offset)
|
||||||
*/
|
*/
|
||||||
ENTRY(__uc32_find_next_bit)
|
ENTRY(find_next_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3b
|
beq 3b
|
||||||
and.a ip, r2, #7
|
and.a ip, r2, #7
|
||||||
|
@ -83,7 +85,7 @@ ENTRY(__uc32_find_next_bit)
|
||||||
or r2, r2, #7 @ if zero, then no bits here
|
or r2, r2, #7 @ if zero, then no bits here
|
||||||
add r2, r2, #1 @ align bit pointer
|
add r2, r2, #1 @ align bit pointer
|
||||||
b 2b @ loop for next bit
|
b 2b @ loop for next bit
|
||||||
ENDPROC(__uc32_find_next_bit)
|
ENDPROC(find_next_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* One or more bits in the LSB of r3 are assumed to be set.
|
* One or more bits in the LSB of r3 are assumed to be set.
|
||||||
|
|
|
@ -220,7 +220,7 @@ static void puv3_rtc_enable(struct platform_device *pdev, int en)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int puv3_rtc_remove(struct platform_device *dev)
|
static int __devexit puv3_rtc_remove(struct platform_device *dev)
|
||||||
{
|
{
|
||||||
struct rtc_device *rtc = platform_get_drvdata(dev);
|
struct rtc_device *rtc = platform_get_drvdata(dev);
|
||||||
|
|
||||||
|
@ -236,7 +236,7 @@ static int puv3_rtc_remove(struct platform_device *dev)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int puv3_rtc_probe(struct platform_device *pdev)
|
static int __devinit puv3_rtc_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct rtc_device *rtc;
|
struct rtc_device *rtc;
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
|
|
Reference in New Issue