Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
adb7ee37
Commit
adb7ee37
authored
Jun 23, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/home/rmk/linux-2.6-arm
parents
f46f6b20
691027b9
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
167 additions
and
27 deletions
+167
-27
arch/arm/configs/s3c2410_defconfig
arch/arm/configs/s3c2410_defconfig
+18
-9
arch/arm/mach-s3c2410/mach-bast.c
arch/arm/mach-s3c2410/mach-bast.c
+44
-5
arch/arm/mach-s3c2410/mach-vr1000.c
arch/arm/mach-s3c2410/mach-vr1000.c
+73
-4
arch/arm/nwfpe/softfloat-macros
arch/arm/nwfpe/softfloat-macros
+18
-4
arch/arm/nwfpe/softfloat.c
arch/arm/nwfpe/softfloat.c
+10
-2
drivers/serial/s3c2410.c
drivers/serial/s3c2410.c
+2
-2
drivers/video/pxafb.c
drivers/video/pxafb.c
+2
-1
No files found.
arch/arm/configs/s3c2410_defconfig
View file @
adb7ee37
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.12-
rc1-bk2
#
Sun Mar 27 17:47:45
2005
# Linux kernel version: 2.6.12-
git4
#
Wed Jun 22 15:56:42
2005
#
CONFIG_ARM=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_IOMAP=y
#
# Code maturity level options
...
...
@@ -17,6 +16,7 @@ CONFIG_EXPERIMENTAL=y
# CONFIG_CLEAN_COMPILE is not set
CONFIG_BROKEN=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_INIT_ENV_ARG_LIMIT=32
#
# General setup
...
...
@@ -35,6 +35,8 @@ CONFIG_KOBJECT_UEVENT=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
...
...
@@ -81,6 +83,7 @@ CONFIG_ARCH_S3C2410=y
# CONFIG_ARCH_VERSATILE is not set
# CONFIG_ARCH_IMX is not set
# CONFIG_ARCH_H720X is not set
# CONFIG_ARCH_AAEC2000 is not set
#
# S3C24XX Implementations
...
...
@@ -134,6 +137,7 @@ CONFIG_CPU_TLB_V4WBI=y
#
# Bus support
#
CONFIG_ISA_DMA_API=y
#
# PCCARD (PCMCIA/CardBus) support
...
...
@@ -143,7 +147,9 @@ CONFIG_CPU_TLB_V4WBI=y
#
# Kernel Features
#
# CONFIG_SMP is not set
# CONFIG_PREEMPT is not set
# CONFIG_DISCONTIGMEM is not set
CONFIG_ALIGNMENT_TRAP=y
#
...
...
@@ -297,7 +303,6 @@ CONFIG_PARPORT_1284=y
#
# Block devices
#
# CONFIG_BLK_DEV_FD is not set
# CONFIG_PARIDE is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=y
...
...
@@ -359,6 +364,7 @@ CONFIG_BLK_DEV_IDE_BAST=y
#
# Fusion MPT device support
#
# CONFIG_FUSION is not set
#
# IEEE 1394 (FireWire) support
...
...
@@ -378,10 +384,11 @@ CONFIG_NET=y
# Networking options
#
# CONFIG_PACKET is not set
# CONFIG_NETLINK_DEV is not set
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_FIB_TRIE is not set
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_PNP=y
...
...
@@ -443,8 +450,9 @@ CONFIG_NETDEVICES=y
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
# CONFIG_MII is not set
CONFIG_MII=m
# CONFIG_SMC91X is not set
CONFIG_DM9000=m
#
# Ethernet (1000 Mbit)
...
...
@@ -521,7 +529,6 @@ CONFIG_SERIO_SERPORT=y
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
#
# Character devices
...
...
@@ -605,7 +612,6 @@ CONFIG_S3C2410_RTC=y
#
# TPM devices
#
# CONFIG_TCG_TPM is not set
#
# I2C support
...
...
@@ -654,6 +660,7 @@ CONFIG_SENSORS_LM78=m
CONFIG_SENSORS_LM85=m
# CONFIG_SENSORS_LM87 is not set
# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_MAX1619 is not set
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_SMSC47B397 is not set
...
...
@@ -665,6 +672,7 @@ CONFIG_SENSORS_LM85=m
#
# Other I2C Chip support
#
# CONFIG_SENSORS_DS1337 is not set
CONFIG_SENSORS_EEPROM=m
# CONFIG_SENSORS_PCF8574 is not set
# CONFIG_SENSORS_PCF8591 is not set
...
...
@@ -696,8 +704,10 @@ CONFIG_FB=y
# CONFIG_FB_CFB_COPYAREA is not set
# CONFIG_FB_CFB_IMAGEBLIT is not set
# CONFIG_FB_SOFT_CURSOR is not set
# CONFIG_FB_MACMODES is not set
CONFIG_FB_MODE_HELPERS=y
# CONFIG_FB_TILEBLITTING is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_VIRTUAL is not set
#
...
...
@@ -782,7 +792,6 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
#
CONFIG_PROC_FS=y
CONFIG_SYSFS=y
# CONFIG_DEVFS_FS is not set
# CONFIG_DEVPTS_FS_XATTR is not set
# CONFIG_TMPFS is not set
# CONFIG_HUGETLBFS is not set
...
...
arch/arm/mach-s3c2410/mach-bast.c
View file @
adb7ee37
...
...
@@ -26,6 +26,7 @@
* 03-Mar-2005 BJD Ensured that bast-cpld.h is included
* 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA
* 14-Mar-2006 BJD Updated for __iomem changes
* 22-Jun-2006 BJD Added DM9000 platform information
*/
#include <linux/kernel.h>
...
...
@@ -35,6 +36,7 @@
#include <linux/timer.h>
#include <linux/init.h>
#include <linux/device.h>
#include <linux/dm9000.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
...
...
@@ -53,6 +55,7 @@
#include <asm/arch/regs-serial.h>
#include <asm/arch/regs-gpio.h>
#include <asm/arch/regs-mem.h>
#include <asm/arch/regs-lcd.h>
#include <asm/arch/nand.h>
#include <linux/mtd/mtd.h>
...
...
@@ -112,7 +115,6 @@ static struct map_desc bast_iodesc[] __initdata = {
{
VA_C2
(
BAST_VA_ISAMEM
),
PA_CS2
(
BAST_PA_ISAMEM
),
SZ_16M
,
MT_DEVICE
},
{
VA_C2
(
BAST_VA_ASIXNET
),
PA_CS3
(
BAST_PA_ASIXNET
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
BAST_VA_SUPERIO
),
PA_CS2
(
BAST_PA_SUPERIO
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
BAST_VA_DM9000
),
PA_CS2
(
BAST_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
BAST_VA_IDEPRI
),
PA_CS3
(
BAST_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
BAST_VA_IDESEC
),
PA_CS3
(
BAST_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
BAST_VA_IDEPRIAUX
),
PA_CS3
(
BAST_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
...
...
@@ -123,7 +125,6 @@ static struct map_desc bast_iodesc[] __initdata = {
{
VA_C3
(
BAST_VA_ISAMEM
),
PA_CS3
(
BAST_PA_ISAMEM
),
SZ_16M
,
MT_DEVICE
},
{
VA_C3
(
BAST_VA_ASIXNET
),
PA_CS3
(
BAST_PA_ASIXNET
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
BAST_VA_SUPERIO
),
PA_CS3
(
BAST_PA_SUPERIO
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
BAST_VA_DM9000
),
PA_CS3
(
BAST_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
BAST_VA_IDEPRI
),
PA_CS3
(
BAST_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
BAST_VA_IDESEC
),
PA_CS3
(
BAST_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
BAST_VA_IDEPRIAUX
),
PA_CS3
(
BAST_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
...
...
@@ -134,7 +135,6 @@ static struct map_desc bast_iodesc[] __initdata = {
{
VA_C4
(
BAST_VA_ISAMEM
),
PA_CS4
(
BAST_PA_ISAMEM
),
SZ_16M
,
MT_DEVICE
},
{
VA_C4
(
BAST_VA_ASIXNET
),
PA_CS5
(
BAST_PA_ASIXNET
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
BAST_VA_SUPERIO
),
PA_CS4
(
BAST_PA_SUPERIO
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
BAST_VA_DM9000
),
PA_CS4
(
BAST_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
BAST_VA_IDEPRI
),
PA_CS5
(
BAST_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
BAST_VA_IDESEC
),
PA_CS5
(
BAST_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
BAST_VA_IDEPRIAUX
),
PA_CS5
(
BAST_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
...
...
@@ -145,7 +145,6 @@ static struct map_desc bast_iodesc[] __initdata = {
{
VA_C5
(
BAST_VA_ISAMEM
),
PA_CS5
(
BAST_PA_ISAMEM
),
SZ_16M
,
MT_DEVICE
},
{
VA_C5
(
BAST_VA_ASIXNET
),
PA_CS5
(
BAST_PA_ASIXNET
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
BAST_VA_SUPERIO
),
PA_CS5
(
BAST_PA_SUPERIO
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
BAST_VA_DM9000
),
PA_CS5
(
BAST_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
BAST_VA_IDEPRI
),
PA_CS5
(
BAST_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
BAST_VA_IDESEC
),
PA_CS5
(
BAST_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
BAST_VA_IDEPRIAUX
),
PA_CS5
(
BAST_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
...
...
@@ -313,6 +312,45 @@ static struct s3c2410_platform_nand bast_nand_info = {
.
select_chip
=
bast_nand_select
,
};
/* DM9000 */
static
struct
resource
bast_dm9k_resource
[]
=
{
[
0
]
=
{
.
start
=
S3C2410_CS5
+
BAST_PA_DM9000
,
.
end
=
S3C2410_CS5
+
BAST_PA_DM9000
+
3
,
.
flags
=
IORESOURCE_MEM
},
[
1
]
=
{
.
start
=
S3C2410_CS5
+
BAST_PA_DM9000
+
0x40
,
.
end
=
S3C2410_CS5
+
BAST_PA_DM9000
+
0x40
+
0x3f
,
.
flags
=
IORESOURCE_MEM
},
[
2
]
=
{
.
start
=
IRQ_DM9000
,
.
end
=
IRQ_DM9000
,
.
flags
=
IORESOURCE_IRQ
}
};
/* for the moment we limit ourselves to 16bit IO until some
* better IO routines can be written and tested
*/
struct
dm9000_plat_data
bast_dm9k_platdata
=
{
.
flags
=
DM9000_PLATF_16BITONLY
};
static
struct
platform_device
bast_device_dm9k
=
{
.
name
=
"dm9000"
,
.
id
=
0
,
.
num_resources
=
ARRAY_SIZE
(
bast_dm9k_resource
),
.
resource
=
bast_dm9k_resource
,
.
dev
=
{
.
platform_data
=
&
bast_dm9k_platdata
,
}
};
/* Standard BAST devices */
...
...
@@ -324,7 +362,8 @@ static struct platform_device *bast_devices[] __initdata = {
&
s3c_device_iis
,
&
s3c_device_rtc
,
&
s3c_device_nand
,
&
bast_device_nor
&
bast_device_nor
,
&
bast_device_dm9k
,
};
static
struct
clk
*
bast_clocks
[]
=
{
...
...
arch/arm/mach-s3c2410/mach-vr1000.c
View file @
adb7ee37
...
...
@@ -27,6 +27,7 @@
* 10-Feb-2005 BJD Added power-off capability
* 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA
* 14-Mar-2006 BJD void __iomem fixes
* 22-Jun-2006 BJD Added DM9000 platform information
*/
#include <linux/kernel.h>
...
...
@@ -35,6 +36,7 @@
#include <linux/list.h>
#include <linux/timer.h>
#include <linux/init.h>
#include <linux/dm9000.h>
#include <linux/serial.h>
#include <linux/tty.h>
...
...
@@ -98,28 +100,24 @@ static struct map_desc vr1000_iodesc[] __initdata = {
* are only 8bit */
/* slow, byte */
{
VA_C2
(
VR1000_VA_DM9000
),
PA_CS2
(
VR1000_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
VR1000_VA_IDEPRI
),
PA_CS3
(
VR1000_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
VR1000_VA_IDESEC
),
PA_CS3
(
VR1000_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
VR1000_VA_IDEPRIAUX
),
PA_CS3
(
VR1000_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
{
VA_C2
(
VR1000_VA_IDESECAUX
),
PA_CS3
(
VR1000_PA_IDESECAUX
),
SZ_1M
,
MT_DEVICE
},
/* slow, word */
{
VA_C3
(
VR1000_VA_DM9000
),
PA_CS3
(
VR1000_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
VR1000_VA_IDEPRI
),
PA_CS3
(
VR1000_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
VR1000_VA_IDESEC
),
PA_CS3
(
VR1000_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
VR1000_VA_IDEPRIAUX
),
PA_CS3
(
VR1000_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
{
VA_C3
(
VR1000_VA_IDESECAUX
),
PA_CS3
(
VR1000_PA_IDESECAUX
),
SZ_1M
,
MT_DEVICE
},
/* fast, byte */
{
VA_C4
(
VR1000_VA_DM9000
),
PA_CS4
(
VR1000_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
VR1000_VA_IDEPRI
),
PA_CS5
(
VR1000_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
VR1000_VA_IDESEC
),
PA_CS5
(
VR1000_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
VR1000_VA_IDEPRIAUX
),
PA_CS5
(
VR1000_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
{
VA_C4
(
VR1000_VA_IDESECAUX
),
PA_CS5
(
VR1000_PA_IDESECAUX
),
SZ_1M
,
MT_DEVICE
},
/* fast, word */
{
VA_C5
(
VR1000_VA_DM9000
),
PA_CS5
(
VR1000_PA_DM9000
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
VR1000_VA_IDEPRI
),
PA_CS5
(
VR1000_PA_IDEPRI
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
VR1000_VA_IDESEC
),
PA_CS5
(
VR1000_PA_IDESEC
),
SZ_1M
,
MT_DEVICE
},
{
VA_C5
(
VR1000_VA_IDEPRIAUX
),
PA_CS5
(
VR1000_PA_IDEPRIAUX
),
SZ_1M
,
MT_DEVICE
},
...
...
@@ -246,6 +244,74 @@ static struct platform_device vr1000_nor = {
.
resource
=
vr1000_nor_resource
,
};
/* DM9000 ethernet devices */
static
struct
resource
vr1000_dm9k0_resource
[]
=
{
[
0
]
=
{
.
start
=
S3C2410_CS5
+
VR1000_PA_DM9000
,
.
end
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
3
,
.
flags
=
IORESOURCE_MEM
},
[
1
]
=
{
.
start
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
0x40
,
.
end
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
0x7f
,
.
flags
=
IORESOURCE_MEM
},
[
2
]
=
{
.
start
=
IRQ_VR1000_DM9000A
,
.
end
=
IRQ_VR1000_DM9000A
,
.
flags
=
IORESOURCE_IRQ
}
};
static
struct
resource
vr1000_dm9k1_resource
[]
=
{
[
0
]
=
{
.
start
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
0x80
,
.
end
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
0x83
,
.
flags
=
IORESOURCE_MEM
},
[
1
]
=
{
.
start
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
0xC0
,
.
end
=
S3C2410_CS5
+
VR1000_PA_DM9000
+
0xFF
,
.
flags
=
IORESOURCE_MEM
},
[
2
]
=
{
.
start
=
IRQ_VR1000_DM9000N
,
.
end
=
IRQ_VR1000_DM9000N
,
.
flags
=
IORESOURCE_IRQ
}
};
/* for the moment we limit ourselves to 16bit IO until some
* better IO routines can be written and tested
*/
struct
dm9000_plat_data
vr1000_dm9k_platdata
=
{
.
flags
=
DM9000_PLATF_16BITONLY
,
};
static
struct
platform_device
vr1000_dm9k0
=
{
.
name
=
"dm9000"
,
.
id
=
0
,
.
num_resources
=
ARRAY_SIZE
(
vr1000_dm9k0_resource
),
.
resource
=
vr1000_dm9k0_resource
,
.
dev
=
{
.
platform_data
=
&
vr1000_dm9k_platdata
,
}
};
static
struct
platform_device
vr1000_dm9k1
=
{
.
name
=
"dm9000"
,
.
id
=
1
,
.
num_resources
=
ARRAY_SIZE
(
vr1000_dm9k1_resource
),
.
resource
=
vr1000_dm9k1_resource
,
.
dev
=
{
.
platform_data
=
&
vr1000_dm9k_platdata
,
}
};
/* devices for this board */
static
struct
platform_device
*
vr1000_devices
[]
__initdata
=
{
&
s3c_device_usb
,
...
...
@@ -253,8 +319,11 @@ static struct platform_device *vr1000_devices[] __initdata = {
&
s3c_device_wdt
,
&
s3c_device_i2c
,
&
s3c_device_iis
,
&
s3c_device_adc
,
&
serial_device
,
&
vr1000_nor
,
&
vr1000_dm9k0
,
&
vr1000_dm9k1
};
static
struct
clk
*
vr1000_clocks
[]
=
{
...
...
arch/arm/nwfpe/softfloat-macros
View file @
adb7ee37
...
...
@@ -563,8 +563,14 @@ static bits64 estimateDiv128To64( bits64 a0, bits64 a1, bits64 b )
bits64 rem0, rem1, term0, term1;
bits64 z;
if ( b <= a0 ) return LIT64( 0xFFFFFFFFFFFFFFFF );
b0 = b>>32;
z = ( b0<<32 <= a0 ) ? LIT64( 0xFFFFFFFF00000000 ) : ( a0 / b0 )<<32;
b0 = b>>32; /* hence b0 is 32 bits wide now */
if ( b0<<32 <= a0 ) {
z = LIT64( 0xFFFFFFFF00000000 );
} else {
z = a0;
do_div( z, b0 );
z <<= 32;
}
mul64To128( b, z, &term0, &term1 );
sub128( a0, a1, term0, term1, &rem0, &rem1 );
while ( ( (sbits64) rem0 ) < 0 ) {
...
...
@@ -573,7 +579,12 @@ static bits64 estimateDiv128To64( bits64 a0, bits64 a1, bits64 b )
add128( rem0, rem1, b0, b1, &rem0, &rem1 );
}
rem0 = ( rem0<<32 ) | ( rem1>>32 );
z |= ( b0<<32 <= rem0 ) ? 0xFFFFFFFF : rem0 / b0;
if ( b0<<32 <= rem0 ) {
z |= 0xFFFFFFFF;
} else {
do_div( rem0, b0 );
z |= rem0;
}
return z;
}
...
...
@@ -601,6 +612,7 @@ static bits32 estimateSqrt32( int16 aExp, bits32 a )
};
int8 index;
bits32 z;
bits64 A;
index = ( a>>27 ) & 15;
if ( aExp & 1 ) {
...
...
@@ -614,7 +626,9 @@ static bits32 estimateSqrt32( int16 aExp, bits32 a )
z = ( 0x20000 <= z ) ? 0xFFFF8000 : ( z<<15 );
if ( z <= a ) return (bits32) ( ( (sbits32) a )>>1 );
}
return ( (bits32) ( ( ( (bits64) a )<<31 ) / z ) ) + ( z>>1 );
A = ( (bits64) a )<<31;
do_div( A, z );
return ( (bits32) A ) + ( z>>1 );
}
...
...
arch/arm/nwfpe/softfloat.c
View file @
adb7ee37
...
...
@@ -28,6 +28,8 @@ this code that are retained.
===============================================================================
*/
#include <asm/div64.h>
#include "fpa11.h"
//#include "milieu.h"
//#include "softfloat.h"
...
...
@@ -1331,7 +1333,11 @@ float32 float32_div( float32 a, float32 b )
aSig
>>=
1
;
++
zExp
;
}
zSig
=
(
(
(
bits64
)
aSig
)
<<
32
)
/
bSig
;
{
bits64
tmp
=
(
(
bits64
)
aSig
)
<<
32
;
do_div
(
tmp
,
bSig
);
zSig
=
tmp
;
}
if
(
(
zSig
&
0x3F
)
==
0
)
{
zSig
|=
(
(
(
bits64
)
bSig
)
*
zSig
!=
(
(
bits64
)
aSig
)
<<
32
);
}
...
...
@@ -1397,7 +1403,9 @@ float32 float32_rem( float32 a, float32 b )
q
=
(
bSig
<=
aSig
);
if
(
q
)
aSig
-=
bSig
;
if
(
0
<
expDiff
)
{
q
=
(
(
(
bits64
)
aSig
)
<<
32
)
/
bSig
;
bits64
tmp
=
(
(
bits64
)
aSig
)
<<
32
;
do_div
(
tmp
,
bSig
);
q
=
tmp
;
q
>>=
32
-
expDiff
;
bSig
>>=
2
;
aSig
=
(
(
aSig
>>
1
)
<<
(
expDiff
-
1
)
)
-
bSig
*
q
;
...
...
drivers/serial/s3c2410.c
View file @
adb7ee37
...
...
@@ -198,7 +198,7 @@ static inline struct s3c24xx_uart_port *to_ourport(struct uart_port *port)
/* translate a port to the device name */
static
inline
char
*
s3c24xx_serial_portname
(
struct
uart_port
*
port
)
static
inline
c
onst
c
har
*
s3c24xx_serial_portname
(
struct
uart_port
*
port
)
{
return
to_platform_device
(
port
->
dev
)
->
name
;
}
...
...
@@ -903,7 +903,7 @@ static void s3c24xx_serial_release_port(struct uart_port *port)
static
int
s3c24xx_serial_request_port
(
struct
uart_port
*
port
)
{
char
*
name
=
s3c24xx_serial_portname
(
port
);
c
onst
c
har
*
name
=
s3c24xx_serial_portname
(
port
);
return
request_mem_region
(
port
->
mapbase
,
MAP_SIZE
,
name
)
?
0
:
-
EBUSY
;
}
...
...
drivers/video/pxafb.c
View file @
adb7ee37
...
...
@@ -43,6 +43,7 @@
#include <asm/io.h>
#include <asm/irq.h>
#include <asm/uaccess.h>
#include <asm/div64.h>
#include <asm/arch/pxa-regs.h>
#include <asm/arch/bitfield.h>
#include <asm/arch/pxafb.h>
...
...
@@ -460,7 +461,7 @@ static inline unsigned int get_pcd(unsigned int pixclock)
* speeds */
pcd
=
(
unsigned
long
long
)
get_lcdclk_frequency_10khz
()
*
pixclock
;
pcd
/=
100000000
*
2
;
do_div
(
pcd
,
100000000
*
2
)
;
/* no need for this, since we should subtract 1 anyway. they cancel */
/* pcd += 1; */
/* make up for integer math truncations */
return
(
unsigned
int
)
pcd
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment