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
50165d8b
Commit
50165d8b
authored
Oct 04, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge master.kernel.org:/home/rmk/linux-2.6-arm
parents
944d2647
c2f48086
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
54 additions
and
29 deletions
+54
-29
arch/arm/kernel/sys_arm.c
arch/arm/kernel/sys_arm.c
+1
-1
arch/arm/kernel/traps.c
arch/arm/kernel/traps.c
+1
-1
arch/arm/mach-imx/generic.c
arch/arm/mach-imx/generic.c
+12
-11
arch/arm/mach-imx/mx1ads.c
arch/arm/mach-imx/mx1ads.c
+1
-1
include/asm-arm/arch-h720x/system.h
include/asm-arm/arch-h720x/system.h
+5
-3
include/asm-arm/arch-imx/imx-regs.h
include/asm-arm/arch-imx/imx-regs.h
+34
-12
No files found.
arch/arm/kernel/sys_arm.c
View file @
50165d8b
...
...
@@ -305,7 +305,7 @@ long execve(const char *filename, char **argv, char **envp)
"Ir"
(
THREAD_START_SP
-
sizeof
(
regs
)),
"r"
(
&
regs
),
"Ir"
(
sizeof
(
regs
))
:
"r0"
,
"r1"
,
"r2"
,
"r3"
,
"ip"
,
"memory"
);
:
"r0"
,
"r1"
,
"r2"
,
"r3"
,
"ip"
,
"
lr"
,
"
memory"
);
out:
return
ret
;
...
...
arch/arm/kernel/traps.c
View file @
50165d8b
...
...
@@ -504,7 +504,7 @@ asmlinkage int arm_syscall(int no, struct pt_regs *regs)
bad_access:
spin_unlock
(
&
mm
->
page_table_lock
);
/* simulate a
read
access fault */
/* simulate a
write
access fault */
do_DataAbort
(
addr
,
15
+
(
1
<<
11
),
regs
);
return
-
1
;
}
...
...
arch/arm/mach-imx/generic.c
View file @
50165d8b
...
...
@@ -28,14 +28,15 @@
#include <linux/module.h>
#include <asm/arch/imxfb.h>
#include <asm/hardware.h>
#include <asm/arch/imx-regs.h>
#include <asm/mach/map.h>
void
imx_gpio_mode
(
int
gpio_mode
)
{
unsigned
int
pin
=
gpio_mode
&
GPIO_PIN_MASK
;
unsigned
int
port
=
(
gpio_mode
&
GPIO_PORT_MASK
)
>>
5
;
unsigned
int
ocr
=
(
gpio_mode
&
GPIO_OCR_MASK
)
>>
10
;
unsigned
int
port
=
(
gpio_mode
&
GPIO_PORT_MASK
)
>>
GPIO_PORT_SHIFT
;
unsigned
int
ocr
=
(
gpio_mode
&
GPIO_OCR_MASK
)
>>
GPIO_OCR_SHIFT
;
unsigned
int
tmp
;
/* Pullup enable */
...
...
@@ -57,7 +58,7 @@ void imx_gpio_mode(int gpio_mode)
GPR
(
port
)
&=
~
(
1
<<
pin
);
/* use as gpio? */
if
(
ocr
==
3
)
if
(
gpio_mode
&
GPIO_GIUS
)
GIUS
(
port
)
|=
(
1
<<
pin
);
else
GIUS
(
port
)
&=
~
(
1
<<
pin
);
...
...
@@ -72,20 +73,20 @@ void imx_gpio_mode(int gpio_mode)
tmp
|=
(
ocr
<<
(
pin
*
2
));
OCR1
(
port
)
=
tmp
;
if
(
gpio_mode
&
GPIO_AOUT
)
ICONFA1
(
port
)
&=
~
(
3
<<
(
pin
*
2
)
);
if
(
gpio_mode
&
GPIO_BOUT
)
ICONFB1
(
port
)
&=
~
(
3
<<
(
pin
*
2
)
);
ICONFA1
(
port
)
&=
~
(
3
<<
(
pin
*
2
));
ICONFA1
(
port
)
|=
((
gpio_mode
>>
GPIO_AOUT_SHIFT
)
&
3
)
<<
(
pin
*
2
);
ICONFB1
(
port
)
&=
~
(
3
<<
(
pin
*
2
));
ICONFB1
(
port
)
|=
((
gpio_mode
>>
GPIO_BOUT_SHIFT
)
&
3
)
<<
(
pin
*
2
);
}
else
{
tmp
=
OCR2
(
port
);
tmp
&=
~
(
3
<<
((
pin
-
16
)
*
2
));
tmp
|=
(
ocr
<<
((
pin
-
16
)
*
2
));
OCR2
(
port
)
=
tmp
;
if
(
gpio_mode
&
GPIO_AOUT
)
ICONFA2
(
port
)
&=
~
(
3
<<
((
pin
-
16
)
*
2
)
);
if
(
gpio_mode
&
GPIO_BOUT
)
ICONFB2
(
port
)
&=
~
(
3
<<
((
pin
-
16
)
*
2
)
);
ICONFA2
(
port
)
&=
~
(
3
<<
((
pin
-
16
)
*
2
));
ICONFA2
(
port
)
|=
((
gpio_mode
>>
GPIO_AOUT_SHIFT
)
&
3
)
<<
((
pin
-
16
)
*
2
);
ICONFB2
(
port
)
&=
~
(
3
<<
((
pin
-
16
)
*
2
));
ICONFB2
(
port
)
|=
((
gpio_mode
>>
GPIO_BOUT_SHIFT
)
&
3
)
<<
((
pin
-
16
)
*
2
);
}
}
...
...
arch/arm/mach-imx/mx1ads.c
View file @
50165d8b
...
...
@@ -55,7 +55,7 @@ static void __init
mx1ads_init
(
void
)
{
#ifdef CONFIG_LEDS
imx_gpio_mode
(
GPIO_PORTA
|
GPIO_OUT
|
GPIO_GPIO
|
2
);
imx_gpio_mode
(
GPIO_PORTA
|
GPIO_OUT
|
2
);
#endif
platform_add_devices
(
devices
,
ARRAY_SIZE
(
devices
));
}
...
...
include/asm-arm/arch-h720x/system.h
View file @
50165d8b
...
...
@@ -17,9 +17,11 @@
static
void
arch_idle
(
void
)
{
CPU_REG
(
PMU_BASE
,
PMU_MODE
)
=
PMU_MODE_IDLE
;
__asm__
__volatile__
(
"mov r0, r0
\n\t
"
"mov r0, r0"
);
nop
();
nop
();
CPU_REG
(
PMU_BASE
,
PMU_MODE
)
=
PMU_MODE_RUN
;
nop
();
nop
();
}
...
...
include/asm-arm/arch-imx/imx-regs.h
View file @
50165d8b
...
...
@@ -76,6 +76,7 @@
#define GPIO_PIN_MASK 0x1f
#define GPIO_PORT_MASK (0x3 << 5)
#define GPIO_PORT_SHIFT 5
#define GPIO_PORTA (0<<5)
#define GPIO_PORTB (1<<5)
#define GPIO_PORTC (2<<5)
...
...
@@ -88,24 +89,37 @@
#define GPIO_PF (0<<9)
#define GPIO_AF (1<<9)
#define GPIO_OCR_SHIFT 10
#define GPIO_OCR_MASK (3<<10)
#define GPIO_AIN (0<<10)
#define GPIO_BIN (1<<10)
#define GPIO_CIN (2<<10)
#define GPIO_
GPIO
(3<<10)
#define GPIO_
DR
(3<<10)
#define GPIO_AOUT (1<<12)
#define GPIO_BOUT (1<<13)
#define GPIO_AOUT_SHIFT 12
#define GPIO_AOUT_MASK (3<<12)
#define GPIO_AOUT (0<<12)
#define GPIO_AOUT_ISR (1<<12)
#define GPIO_AOUT_0 (2<<12)
#define GPIO_AOUT_1 (3<<12)
#define GPIO_BOUT_SHIFT 14
#define GPIO_BOUT_MASK (3<<14)
#define GPIO_BOUT (0<<14)
#define GPIO_BOUT_ISR (1<<14)
#define GPIO_BOUT_0 (2<<14)
#define GPIO_BOUT_1 (3<<14)
#define GPIO_GIUS (1<<16)
/* assignements for GPIO alternate/primary functions */
/* FIXME: This list is not completed. The correct directions are
* missing on some (many) pins
*/
#define PA0_PF_A24 ( GPIO_PORTA | GPIO_PF | 0 )
#define PA0_AIN_SPI2_CLK ( GPIO_PORTA | GPIO_OUT | GPIO_AIN | 0 )
#define PA0_AIN_SPI2_CLK ( GPIO_GIUS | GPIO_PORTA | GPIO_OUT | 0 )
#define PA0_AF_ETMTRACESYNC ( GPIO_PORTA | GPIO_AF | 0 )
#define PA1_AOUT_SPI2_RXD ( GPIO_
PORTA | GPIO_IN | GPIO_AOUT
| 1 )
#define PA1_AOUT_SPI2_RXD ( GPIO_
GIUS | GPIO_PORTA | GPIO_IN
| 1 )
#define PA1_PF_TIN ( GPIO_PORTA | GPIO_PF | 1 )
#define PA2_PF_PWM0 ( GPIO_PORTA | GPIO_OUT | GPIO_PF | 2 )
#define PA3_PF_CSI_MCLK ( GPIO_PORTA | GPIO_PF | 3 )
...
...
@@ -123,7 +137,7 @@
#define PA15_PF_I2C_SDA ( GPIO_PORTA | GPIO_OUT | GPIO_PF | 15 )
#define PA16_PF_I2C_SCL ( GPIO_PORTA | GPIO_OUT | GPIO_PF | 16 )
#define PA17_AF_ETMTRACEPKT4 ( GPIO_PORTA | GPIO_AF | 17 )
#define PA17_AIN_SPI2_SS ( GPIO_
PORTA | GPIO_AIN
| 17 )
#define PA17_AIN_SPI2_SS ( GPIO_
GIUS | GPIO_PORTA | GPIO_OUT
| 17 )
#define PA18_AF_ETMTRACEPKT5 ( GPIO_PORTA | GPIO_AF | 18 )
#define PA19_AF_ETMTRACEPKT6 ( GPIO_PORTA | GPIO_AF | 19 )
#define PA20_AF_ETMTRACEPKT7 ( GPIO_PORTA | GPIO_AF | 20 )
...
...
@@ -191,19 +205,27 @@
#define PC15_PF_SPI1_SS ( GPIO_PORTC | GPIO_PF | 15 )
#define PC16_PF_SPI1_MISO ( GPIO_PORTC | GPIO_PF | 16 )
#define PC17_PF_SPI1_MOSI ( GPIO_PORTC | GPIO_PF | 17 )
#define PC24_BIN_UART3_RI ( GPIO_GIUS | GPIO_PORTC | GPIO_OUT | GPIO_BIN | 24 )
#define PC25_BIN_UART3_DSR ( GPIO_GIUS | GPIO_PORTC | GPIO_OUT | GPIO_BIN | 25 )
#define PC26_AOUT_UART3_DTR ( GPIO_GIUS | GPIO_PORTC | GPIO_IN | 26 )
#define PC27_BIN_UART3_DCD ( GPIO_GIUS | GPIO_PORTC | GPIO_OUT | GPIO_BIN | 27 )
#define PC28_BIN_UART3_CTS ( GPIO_GIUS | GPIO_PORTC | GPIO_OUT | GPIO_BIN | 28 )
#define PC29_AOUT_UART3_RTS ( GPIO_GIUS | GPIO_PORTC | GPIO_IN | 29 )
#define PC30_BIN_UART3_TX ( GPIO_GIUS | GPIO_PORTC | GPIO_BIN | 30 )
#define PC31_AOUT_UART3_RX ( GPIO_GIUS | GPIO_PORTC | GPIO_IN | 31)
#define PD6_PF_LSCLK ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 6 )
#define PD7_PF_REV ( GPIO_PORTD | GPIO_PF | 7 )
#define PD7_AF_UART2_DTR ( GPIO_PORTD | GPIO_IN | GPIO_AF | 7 )
#define PD7_AIN_SPI2_SCLK ( GPIO_PORTD | GPIO_AIN | 7 )
#define PD7_AIN_SPI2_SCLK ( GPIO_
GIUS | GPIO_
PORTD | GPIO_AIN | 7 )
#define PD8_PF_CLS ( GPIO_PORTD | GPIO_PF | 8 )
#define PD8_AF_UART2_DCD ( GPIO_PORTD | GPIO_OUT | GPIO_AF | 8 )
#define PD8_AIN_SPI2_SS ( GPIO_PORTD | GPIO_AIN | 8 )
#define PD8_AIN_SPI2_SS ( GPIO_
GIUS | GPIO_
PORTD | GPIO_AIN | 8 )
#define PD9_PF_PS ( GPIO_PORTD | GPIO_PF | 9 )
#define PD9_AF_UART2_RI ( GPIO_PORTD | GPIO_OUT | GPIO_AF | 9 )
#define PD9_AOUT_SPI2_RXD ( GPIO_
PORTD | GPIO_IN | GPIO_AOUT
| 9 )
#define PD9_AOUT_SPI2_RXD ( GPIO_
GIUS | GPIO_PORTD | GPIO_IN
| 9 )
#define PD10_PF_SPL_SPR ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 10 )
#define PD10_AF_UART2_DSR ( GPIO_PORTD | GPIO_OUT | GPIO_AF | 10 )
#define PD10_AIN_SPI2_TXD ( GPIO_
PORTD | GPIO_OUT | GPIO_AIN
| 10 )
#define PD10_AIN_SPI2_TXD ( GPIO_
GIUS | GPIO_PORTD | GPIO_OUT
| 10 )
#define PD11_PF_CONTRAST ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 11 )
#define PD12_PF_ACD_OE ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 12 )
#define PD13_PF_LP_HSYNC ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 13 )
...
...
@@ -225,7 +247,7 @@
#define PD29_PF_LD14 ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 29 )
#define PD30_PF_LD15 ( GPIO_PORTD | GPIO_OUT | GPIO_PF | 30 )
#define PD31_PF_TMR2OUT ( GPIO_PORTD | GPIO_PF | 31 )
#define PD31_BIN_SPI2_TXD ( GPIO_PORTD | GPIO_BIN | 31 )
#define PD31_BIN_SPI2_TXD ( GPIO_
GIUS | GPIO_
PORTD | GPIO_BIN | 31 )
/*
* PWM controller
...
...
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