diff options
Diffstat (limited to 'arch/blackfin/kernel')
26 files changed, 99 insertions, 511 deletions
diff --git a/arch/blackfin/kernel/asm-offsets.c b/arch/blackfin/kernel/asm-offsets.c index f05d1b99b0ef..bd32c09b9349 100644 --- a/arch/blackfin/kernel/asm-offsets.c +++ b/arch/blackfin/kernel/asm-offsets.c | |||
@@ -1,30 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/asm-offsets.c | 2 | * generate definitions needed by assembly language modules |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Copyright 2004-2009 Analog Devices Inc. |
7 | * Description: generate definitions needed by assembly language modules. | ||
8 | * | 5 | * |
9 | * Modified: | 6 | * Licensed under the GPL-2 or later |
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 7 | */ |
29 | 8 | ||
30 | #include <linux/stddef.h> | 9 | #include <linux/stddef.h> |
diff --git a/arch/blackfin/kernel/bfin_dma_5xx.c b/arch/blackfin/kernel/bfin_dma_5xx.c index 384868dedac3..3946aff4f414 100644 --- a/arch/blackfin/kernel/bfin_dma_5xx.c +++ b/arch/blackfin/kernel/bfin_dma_5xx.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * bfin_dma_5xx.c - Blackfin DMA implementation | 2 | * bfin_dma_5xx.c - Blackfin DMA implementation |
3 | * | 3 | * |
4 | * Copyright 2004-2008 Analog Devices Inc. | 4 | * Copyright 2004-2008 Analog Devices Inc. |
5 | * | ||
5 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
6 | */ | 7 | */ |
7 | 8 | ||
@@ -224,8 +225,13 @@ int blackfin_dma_suspend(void) | |||
224 | void blackfin_dma_resume(void) | 225 | void blackfin_dma_resume(void) |
225 | { | 226 | { |
226 | int i; | 227 | int i; |
227 | for (i = 0; i < MAX_DMA_SUSPEND_CHANNELS; ++i) | 228 | |
228 | dma_ch[i].regs->peripheral_map = dma_ch[i].saved_peripheral_map; | 229 | for (i = 0; i < MAX_DMA_CHANNELS; ++i) { |
230 | dma_ch[i].regs->cfg = 0; | ||
231 | |||
232 | if (i < MAX_DMA_SUSPEND_CHANNELS) | ||
233 | dma_ch[i].regs->peripheral_map = dma_ch[i].saved_peripheral_map; | ||
234 | } | ||
229 | } | 235 | } |
230 | #endif | 236 | #endif |
231 | 237 | ||
diff --git a/arch/blackfin/kernel/bfin_gpio.c b/arch/blackfin/kernel/bfin_gpio.c index fc4681c0170e..22705eeff34f 100644 --- a/arch/blackfin/kernel/bfin_gpio.c +++ b/arch/blackfin/kernel/bfin_gpio.c | |||
@@ -1,30 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/bfin_gpio.c | 2 | * GPIO Abstraction Layer |
3 | * Based on: | ||
4 | * Author: Michael Hennerich (hennerich@blackfin.uclinux.org) | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Copyright 2006-2009 Analog Devices Inc. |
7 | * Description: GPIO Abstraction Layer | ||
8 | * | 5 | * |
9 | * Modified: | 6 | * Licensed under the GPL-2 or later |
10 | * Copyright 2008 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 7 | */ |
29 | 8 | ||
30 | #include <linux/delay.h> | 9 | #include <linux/delay.h> |
diff --git a/arch/blackfin/kernel/cplb-mpu/cplbinit.c b/arch/blackfin/kernel/cplb-mpu/cplbinit.c index 36193eed9a1f..b52c1f8c4bc0 100644 --- a/arch/blackfin/kernel/cplb-mpu/cplbinit.c +++ b/arch/blackfin/kernel/cplb-mpu/cplbinit.c | |||
@@ -1,25 +1,11 @@ | |||
1 | /* | 1 | /* |
2 | * Blackfin CPLB initialization | 2 | * Blackfin CPLB initialization |
3 | * | 3 | * |
4 | * Copyright 2004-2007 Analog Devices Inc. | 4 | * Copyright 2008-2009 Analog Devices Inc. |
5 | * | 5 | * |
6 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 6 | * Licensed under the GPL-2 or later. |
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License as published by | ||
10 | * the Free Software Foundation; either version 2 of the License, or | ||
11 | * (at your option) any later version. | ||
12 | * | ||
13 | * This program is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License | ||
19 | * along with this program; if not, see the file COPYING, or write | ||
20 | * to the Free Software Foundation, Inc., | ||
21 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | */ | 7 | */ |
8 | |||
23 | #include <linux/module.h> | 9 | #include <linux/module.h> |
24 | 10 | ||
25 | #include <asm/blackfin.h> | 11 | #include <asm/blackfin.h> |
@@ -52,7 +38,7 @@ void __init generate_cplb_tables_cpu(unsigned int cpu) | |||
52 | 38 | ||
53 | #ifdef CONFIG_BFIN_EXTMEM_DCACHEABLE | 39 | #ifdef CONFIG_BFIN_EXTMEM_DCACHEABLE |
54 | d_cache = CPLB_L1_CHBL; | 40 | d_cache = CPLB_L1_CHBL; |
55 | #ifdef CONFIG_BFIN_EXTMEM_WRITETROUGH | 41 | #ifdef CONFIG_BFIN_EXTMEM_WRITETHROUGH |
56 | d_cache |= CPLB_L1_AOW | CPLB_WT; | 42 | d_cache |= CPLB_L1_AOW | CPLB_WT; |
57 | #endif | 43 | #endif |
58 | #endif | 44 | #endif |
diff --git a/arch/blackfin/kernel/cplb-mpu/cplbmgr.c b/arch/blackfin/kernel/cplb-mpu/cplbmgr.c index 8e1e9e9e9632..69e0e530d70f 100644 --- a/arch/blackfin/kernel/cplb-mpu/cplbmgr.c +++ b/arch/blackfin/kernel/cplb-mpu/cplbmgr.c | |||
@@ -1,22 +1,11 @@ | |||
1 | /* | 1 | /* |
2 | * Blackfin CPLB exception handling. | 2 | * Blackfin CPLB exception handling for when MPU in on |
3 | * Copyright 2004-2007 Analog Devices Inc. | ||
4 | * | 3 | * |
5 | * This program is free software; you can redistribute it and/or modify | 4 | * Copyright 2008-2009 Analog Devices Inc. |
6 | * it under the terms of the GNU General Public License as published by | ||
7 | * the Free Software Foundation; either version 2 of the License, or | ||
8 | * (at your option) any later version. | ||
9 | * | 5 | * |
10 | * This program is distributed in the hope that it will be useful, | 6 | * Licensed under the GPL-2 or later. |
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, see the file COPYING, or write | ||
17 | * to the Free Software Foundation, Inc., | ||
18 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | 7 | */ |
8 | |||
20 | #include <linux/module.h> | 9 | #include <linux/module.h> |
21 | #include <linux/mm.h> | 10 | #include <linux/mm.h> |
22 | 11 | ||
diff --git a/arch/blackfin/kernel/cplb-nompu/cplbinit.c b/arch/blackfin/kernel/cplb-nompu/cplbinit.c index 5d8ad503f82a..fd9a2f31e686 100644 --- a/arch/blackfin/kernel/cplb-nompu/cplbinit.c +++ b/arch/blackfin/kernel/cplb-nompu/cplbinit.c | |||
@@ -1,24 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * Blackfin CPLB initialization | 2 | * Blackfin CPLB initialization |
3 | * | 3 | * |
4 | * Copyright 2004-2007 Analog Devices Inc. | 4 | * Copyright 2007-2009 Analog Devices Inc. |
5 | * | 5 | * |
6 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 6 | * Licensed under the GPL-2 or later. |
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License as published by | ||
10 | * the Free Software Foundation; either version 2 of the License, or | ||
11 | * (at your option) any later version. | ||
12 | * | ||
13 | * This program is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * You should have received a copy of the GNU General Public License | ||
19 | * along with this program; if not, see the file COPYING, or write | ||
20 | * to the Free Software Foundation, Inc., | ||
21 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
22 | */ | 7 | */ |
23 | 8 | ||
24 | #include <linux/module.h> | 9 | #include <linux/module.h> |
diff --git a/arch/blackfin/kernel/cplb-nompu/cplbmgr.c b/arch/blackfin/kernel/cplb-nompu/cplbmgr.c index d9ea46c6e41a..5b88861d6183 100644 --- a/arch/blackfin/kernel/cplb-nompu/cplbmgr.c +++ b/arch/blackfin/kernel/cplb-nompu/cplbmgr.c | |||
@@ -1,26 +1,14 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/cplb-nompu-c/cplbmgr.c | ||
3 | * Based on: arch/blackfin/kernel/cplb-mpu/cplbmgr.c | 2 | * Based on: arch/blackfin/kernel/cplb-mpu/cplbmgr.c |
4 | * Author: Michael McTernan <mmcternan@airvana.com> | 3 | * Author: Michael McTernan <mmcternan@airvana.com> |
5 | * | 4 | * |
6 | * Created: 01Nov2008 | ||
7 | * Description: CPLB miss handler. | 5 | * Description: CPLB miss handler. |
8 | * | 6 | * |
9 | * Modified: | 7 | * Modified: |
10 | * Copyright 2008 Airvana Inc. | 8 | * Copyright 2008 Airvana Inc. |
11 | * Copyright 2004-2007 Analog Devices Inc. | 9 | * Copyright 2008-2009 Analog Devices Inc. |
12 | * | 10 | * |
13 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | 11 | * Licensed under the GPL-2 or later |
14 | * | ||
15 | * This program is free software; you can redistribute it and/or modify | ||
16 | * it under the terms of the GNU General Public License as published by | ||
17 | * the Free Software Foundation; either version 2 of the License, or | ||
18 | * (at your option) any later version. | ||
19 | * | ||
20 | * This program is distributed in the hope that it will be useful, | ||
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
23 | * GNU General Public License for more details. | ||
24 | */ | 12 | */ |
25 | 13 | ||
26 | #include <linux/kernel.h> | 14 | #include <linux/kernel.h> |
diff --git a/arch/blackfin/kernel/cplbinfo.c b/arch/blackfin/kernel/cplbinfo.c index 64d78300dd08..0bdaa517a501 100644 --- a/arch/blackfin/kernel/cplbinfo.c +++ b/arch/blackfin/kernel/cplbinfo.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * arch/blackfin/kernel/cplbinfo.c - display CPLB status | 2 | * arch/blackfin/kernel/cplbinfo.c - display CPLB status |
3 | * | 3 | * |
4 | * Copyright 2004-2008 Analog Devices Inc. | 4 | * Copyright 2004-2008 Analog Devices Inc. |
5 | * | ||
5 | * Licensed under the GPL-2 or later. | 6 | * Licensed under the GPL-2 or later. |
6 | */ | 7 | */ |
7 | 8 | ||
@@ -111,24 +112,21 @@ static const struct seq_operations cplbinfo_sops = { | |||
111 | .show = cplbinfo_show, | 112 | .show = cplbinfo_show, |
112 | }; | 113 | }; |
113 | 114 | ||
115 | #define CPLBINFO_DCPLB_FLAG 0x80000000 | ||
116 | |||
114 | static int cplbinfo_open(struct inode *inode, struct file *file) | 117 | static int cplbinfo_open(struct inode *inode, struct file *file) |
115 | { | 118 | { |
116 | char buf[256], *path, *p; | 119 | struct proc_dir_entry *pde = PDE(file->f_path.dentry->d_inode); |
120 | char cplb_type; | ||
117 | unsigned int cpu; | 121 | unsigned int cpu; |
118 | char *s_cpu, *s_cplb; | ||
119 | int ret; | 122 | int ret; |
120 | struct seq_file *m; | 123 | struct seq_file *m; |
121 | struct cplbinfo_data *cdata; | 124 | struct cplbinfo_data *cdata; |
122 | 125 | ||
123 | path = d_path(&file->f_path, buf, sizeof(buf)); | 126 | cpu = (unsigned int)pde->data; |
124 | if (IS_ERR(path)) | 127 | cplb_type = cpu & CPLBINFO_DCPLB_FLAG ? 'D' : 'I'; |
125 | return PTR_ERR(path); | 128 | cpu &= ~CPLBINFO_DCPLB_FLAG; |
126 | s_cpu = strstr(path, "/cpu"); | ||
127 | s_cplb = strrchr(path, '/'); | ||
128 | if (!s_cpu || !s_cplb) | ||
129 | return -EINVAL; | ||
130 | 129 | ||
131 | cpu = simple_strtoul(s_cpu + 4, &p, 10); | ||
132 | if (!cpu_online(cpu)) | 130 | if (!cpu_online(cpu)) |
133 | return -ENODEV; | 131 | return -ENODEV; |
134 | 132 | ||
@@ -139,7 +137,7 @@ static int cplbinfo_open(struct inode *inode, struct file *file) | |||
139 | cdata = m->private; | 137 | cdata = m->private; |
140 | 138 | ||
141 | cdata->pos = 0; | 139 | cdata->pos = 0; |
142 | cdata->cplb_type = toupper(s_cplb[1]); | 140 | cdata->cplb_type = cplb_type; |
143 | cplbinfo_seq_init(cdata, cpu); | 141 | cplbinfo_seq_init(cdata, cpu); |
144 | 142 | ||
145 | return 0; | 143 | return 0; |
@@ -168,8 +166,10 @@ static int __init cplbinfo_init(void) | |||
168 | if (!cpu_dir) | 166 | if (!cpu_dir) |
169 | return -ENOMEM; | 167 | return -ENOMEM; |
170 | 168 | ||
171 | proc_create("icplb", S_IRUGO, cpu_dir, &cplbinfo_fops); | 169 | proc_create_data("icplb", S_IRUGO, cpu_dir, &cplbinfo_fops, |
172 | proc_create("dcplb", S_IRUGO, cpu_dir, &cplbinfo_fops); | 170 | (void *)cpu); |
171 | proc_create_data("dcplb", S_IRUGO, cpu_dir, &cplbinfo_fops, | ||
172 | (void *)(cpu | CPLBINFO_DCPLB_FLAG)); | ||
173 | } | 173 | } |
174 | 174 | ||
175 | return 0; | 175 | return 0; |
diff --git a/arch/blackfin/kernel/dma-mapping.c b/arch/blackfin/kernel/dma-mapping.c index 2f62a9f4058a..e74e74d7733f 100644 --- a/arch/blackfin/kernel/dma-mapping.c +++ b/arch/blackfin/kernel/dma-mapping.c | |||
@@ -1,30 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/dma-mapping.c | 2 | * Dynamic DMA mapping support |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Copyright 2005-2009 Analog Devices Inc. |
7 | * Description: Dynamic DMA mapping support. | ||
8 | * | 5 | * |
9 | * Modified: | 6 | * Licensed under the GPL-2 or later |
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 7 | */ |
29 | 8 | ||
30 | #include <linux/types.h> | 9 | #include <linux/types.h> |
diff --git a/arch/blackfin/kernel/early_printk.c b/arch/blackfin/kernel/early_printk.c index 931c78b5ea1f..84ed8375113c 100644 --- a/arch/blackfin/kernel/early_printk.c +++ b/arch/blackfin/kernel/early_printk.c | |||
@@ -1,25 +1,10 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/early_printk.c | 2 | * allow a console to be used for early printk |
3 | * Based on: arch/x86_64/kernel/early_printk.c | 3 | * derived from arch/x86/kernel/early_printk.c |
4 | * Author: Robin Getz <rgetz@blackfin.uclinux.org | ||
5 | * | 4 | * |
6 | * Created: 14Aug2007 | 5 | * Copyright 2007-2009 Analog Devices Inc. |
7 | * Description: allow a console to be used for early printk | ||
8 | * | 6 | * |
9 | * Modified: | 7 | * Licensed under the GPL-2 |
10 | * Copyright 2004-2007 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | */ | 8 | */ |
24 | 9 | ||
25 | #include <linux/kernel.h> | 10 | #include <linux/kernel.h> |
diff --git a/arch/blackfin/kernel/entry.S b/arch/blackfin/kernel/entry.S index 3f8769b7db54..f27dc2292e1b 100644 --- a/arch/blackfin/kernel/entry.S +++ b/arch/blackfin/kernel/entry.S | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/entry.S | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Licensed under the GPL-2 or later |
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #include <linux/linkage.h> | 7 | #include <linux/linkage.h> |
diff --git a/arch/blackfin/kernel/fixed_code.S b/arch/blackfin/kernel/fixed_code.S index 0d2d9e0968c8..0565917f23ba 100644 --- a/arch/blackfin/kernel/fixed_code.S +++ b/arch/blackfin/kernel/fixed_code.S | |||
@@ -6,7 +6,12 @@ | |||
6 | * These are aligned to 16 bytes, so that we have some space to replace | 6 | * These are aligned to 16 bytes, so that we have some space to replace |
7 | * these sequences with something else (e.g. kernel traps if we ever do | 7 | * these sequences with something else (e.g. kernel traps if we ever do |
8 | * BF561 SMP). | 8 | * BF561 SMP). |
9 | * | ||
10 | * Copyright 2007-2008 Analog Devices Inc. | ||
11 | * | ||
12 | * Licensed under the GPL-2 or later. | ||
9 | */ | 13 | */ |
14 | |||
10 | #include <linux/linkage.h> | 15 | #include <linux/linkage.h> |
11 | #include <linux/init.h> | 16 | #include <linux/init.h> |
12 | #include <linux/unistd.h> | 17 | #include <linux/unistd.h> |
diff --git a/arch/blackfin/kernel/flat.c b/arch/blackfin/kernel/flat.c index d188b2430536..a88daddbf074 100644 --- a/arch/blackfin/kernel/flat.c +++ b/arch/blackfin/kernel/flat.c | |||
@@ -1,21 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * arch/blackfin/kernel/flat.c | 2 | * Copyright 2007 Analog Devices Inc. |
3 | * | 3 | * |
4 | * Copyright (C) 2007 Analog Devices, Inc. | 4 | * Licensed under the GPL-2. |
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | 5 | */ |
20 | 6 | ||
21 | #include <linux/module.h> | 7 | #include <linux/module.h> |
diff --git a/arch/blackfin/kernel/init_task.c b/arch/blackfin/kernel/init_task.c index c26c34de9f3c..118c5b9dedac 100644 --- a/arch/blackfin/kernel/init_task.c +++ b/arch/blackfin/kernel/init_task.c | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/init_task.c | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Licensed under the GPL-2 or later |
7 | * Description: This file contains the simple DMA Implementation for Blackfin | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #include <linux/mm.h> | 7 | #include <linux/mm.h> |
diff --git a/arch/blackfin/kernel/irqchip.c b/arch/blackfin/kernel/irqchip.c index 4b5fd36187d9..db9f9c91f11f 100644 --- a/arch/blackfin/kernel/irqchip.c +++ b/arch/blackfin/kernel/irqchip.c | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/irqchip.c | 2 | * Copyright 2005-2009 Analog Devices Inc. |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Licensed under the GPL-2 or later |
7 | * Description: This file contains the simple DMA Implementation for Blackfin | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #include <linux/kernel_stat.h> | 7 | #include <linux/kernel_stat.h> |
diff --git a/arch/blackfin/kernel/module.c b/arch/blackfin/kernel/module.c index 67fc7a56c865..a6dfa6b71e63 100644 --- a/arch/blackfin/kernel/module.c +++ b/arch/blackfin/kernel/module.c | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/module.c | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Licensed under the GPL-2 or later |
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #define pr_fmt(fmt) "module %s: " fmt | 7 | #define pr_fmt(fmt) "module %s: " fmt |
diff --git a/arch/blackfin/kernel/process.c b/arch/blackfin/kernel/process.c index f5b286189647..5cc7e2e9e415 100644 --- a/arch/blackfin/kernel/process.c +++ b/arch/blackfin/kernel/process.c | |||
@@ -1,30 +1,9 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/process.c | 2 | * Blackfin architecture-dependent process handling |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Copyright 2004-2009 Analog Devices Inc. |
7 | * Description: Blackfin architecture-dependent process handling. | ||
8 | * | 5 | * |
9 | * Modified: | 6 | * Licensed under the GPL-2 or later |
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 7 | */ |
29 | 8 | ||
30 | #include <linux/module.h> | 9 | #include <linux/module.h> |
@@ -172,7 +151,7 @@ void start_thread(struct pt_regs *regs, unsigned long new_ip, unsigned long new_ | |||
172 | regs->pc = new_ip; | 151 | regs->pc = new_ip; |
173 | if (current->mm) | 152 | if (current->mm) |
174 | regs->p5 = current->mm->start_data; | 153 | regs->p5 = current->mm->start_data; |
175 | #ifdef CONFIG_SMP | 154 | #ifndef CONFIG_SMP |
176 | task_thread_info(current)->l1_task_info.stack_start = | 155 | task_thread_info(current)->l1_task_info.stack_start = |
177 | (void *)current->mm->context.stack_start; | 156 | (void *)current->mm->context.stack_start; |
178 | task_thread_info(current)->l1_task_info.lowest_sp = (void *)new_sp; | 157 | task_thread_info(current)->l1_task_info.lowest_sp = (void *)new_sp; |
diff --git a/arch/blackfin/kernel/ptrace.c b/arch/blackfin/kernel/ptrace.c index 30f4828277ad..56b0ba12175f 100644 --- a/arch/blackfin/kernel/ptrace.c +++ b/arch/blackfin/kernel/ptrace.c | |||
@@ -1,30 +1,8 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/ptrace.c | 2 | * linux/kernel/ptrace.c is by Ross Biro 1/23/92, edited by Linus Torvalds |
3 | * Based on: Taken from linux/kernel/ptrace.c | 3 | * these modifications are Copyright 2004-2009 Analog Devices Inc. |
4 | * Author: linux/kernel/ptrace.c is by Ross Biro 1/23/92, edited by Linus Torvalds | ||
5 | * | 4 | * |
6 | * Created: 1/23/92 | 5 | * Licensed under the GPL-2 |
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 6 | */ |
29 | 7 | ||
30 | #include <linux/kernel.h> | 8 | #include <linux/kernel.h> |
@@ -337,7 +315,7 @@ long arch_ptrace(struct task_struct *child, long request, long addr, long data) | |||
337 | case BFIN_MEM_ACCESS_CORE: | 315 | case BFIN_MEM_ACCESS_CORE: |
338 | case BFIN_MEM_ACCESS_CORE_ONLY: | 316 | case BFIN_MEM_ACCESS_CORE_ONLY: |
339 | copied = access_process_vm(child, addr, &data, | 317 | copied = access_process_vm(child, addr, &data, |
340 | to_copy, 0); | 318 | to_copy, 1); |
341 | if (copied) | 319 | if (copied) |
342 | break; | 320 | break; |
343 | 321 | ||
diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c index 369535b61ed1..c202a44d1416 100644 --- a/arch/blackfin/kernel/setup.c +++ b/arch/blackfin/kernel/setup.c | |||
@@ -1,9 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * arch/blackfin/kernel/setup.c | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * | ||
4 | * Copyright 2004-2006 Analog Devices Inc. | ||
5 | * | ||
6 | * Enter bugs at http://blackfin.uclinux.org/ | ||
7 | * | 3 | * |
8 | * Licensed under the GPL-2 or later. | 4 | * Licensed under the GPL-2 or later. |
9 | */ | 5 | */ |
diff --git a/arch/blackfin/kernel/shadow_console.c b/arch/blackfin/kernel/shadow_console.c index 8b8c7107a162..557e9fef406a 100644 --- a/arch/blackfin/kernel/shadow_console.c +++ b/arch/blackfin/kernel/shadow_console.c | |||
@@ -4,8 +4,6 @@ | |||
4 | * | 4 | * |
5 | * Copyright 2009 Analog Devices Inc. | 5 | * Copyright 2009 Analog Devices Inc. |
6 | * | 6 | * |
7 | * Enter bugs at http://blackfin.uclinux.org/ | ||
8 | * | ||
9 | * Licensed under the GPL-2 or later. | 7 | * Licensed under the GPL-2 or later. |
10 | */ | 8 | */ |
11 | 9 | ||
diff --git a/arch/blackfin/kernel/signal.c b/arch/blackfin/kernel/signal.c index dbc3bbf846be..9d90c18fab23 100644 --- a/arch/blackfin/kernel/signal.c +++ b/arch/blackfin/kernel/signal.c | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/signal.c | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * Based on: | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Licensed under the GPL-2 or later |
7 | * Description: | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #include <linux/signal.h> | 7 | #include <linux/signal.h> |
diff --git a/arch/blackfin/kernel/sys_bfin.c b/arch/blackfin/kernel/sys_bfin.c index 3da60fb13ce4..afcef129d4e8 100644 --- a/arch/blackfin/kernel/sys_bfin.c +++ b/arch/blackfin/kernel/sys_bfin.c | |||
@@ -1,32 +1,10 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/sys_bfin.c | 2 | * contains various random system calls that have a non-standard |
3 | * Based on: | 3 | * calling sequence on the Linux/Blackfin platform. |
4 | * Author: | ||
5 | * | 4 | * |
6 | * Created: | 5 | * Copyright 2004-2009 Analog Devices Inc. |
7 | * Description: This file contains various random system calls that | ||
8 | * have a non-standard calling sequence on the Linux/bfin | ||
9 | * platform. | ||
10 | * | 6 | * |
11 | * Modified: | 7 | * Licensed under the GPL-2 or later |
12 | * Copyright 2004-2006 Analog Devices Inc. | ||
13 | * | ||
14 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
15 | * | ||
16 | * This program is free software; you can redistribute it and/or modify | ||
17 | * it under the terms of the GNU General Public License as published by | ||
18 | * the Free Software Foundation; either version 2 of the License, or | ||
19 | * (at your option) any later version. | ||
20 | * | ||
21 | * This program is distributed in the hope that it will be useful, | ||
22 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
23 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
24 | * GNU General Public License for more details. | ||
25 | * | ||
26 | * You should have received a copy of the GNU General Public License | ||
27 | * along with this program; if not, see the file COPYING, or write | ||
28 | * to the Free Software Foundation, Inc., | ||
29 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
30 | */ | 8 | */ |
31 | 9 | ||
32 | #include <linux/spinlock.h> | 10 | #include <linux/spinlock.h> |
@@ -91,3 +69,14 @@ asmlinkage void *sys_dma_memcpy(void *dest, const void *src, size_t len) | |||
91 | { | 69 | { |
92 | return safe_dma_memcpy(dest, src, len); | 70 | return safe_dma_memcpy(dest, src, len); |
93 | } | 71 | } |
72 | |||
73 | #if defined(CONFIG_FB) || defined(CONFIG_FB_MODULE) | ||
74 | #include <linux/fb.h> | ||
75 | unsigned long get_fb_unmapped_area(struct file *filp, unsigned long orig_addr, | ||
76 | unsigned long len, unsigned long pgoff, unsigned long flags) | ||
77 | { | ||
78 | struct fb_info *info = filp->private_data; | ||
79 | return (unsigned long)info->screen_base; | ||
80 | } | ||
81 | EXPORT_SYMBOL(get_fb_unmapped_area); | ||
82 | #endif | ||
diff --git a/arch/blackfin/kernel/time-ts.c b/arch/blackfin/kernel/time-ts.c index f9715764383e..359cfb1815ca 100644 --- a/arch/blackfin/kernel/time-ts.c +++ b/arch/blackfin/kernel/time-ts.c | |||
@@ -1,13 +1,13 @@ | |||
1 | /* | 1 | /* |
2 | * linux/arch/kernel/time-ts.c | ||
3 | * | ||
4 | * Based on arm clockevents implementation and old bfin time tick. | 2 | * Based on arm clockevents implementation and old bfin time tick. |
5 | * | 3 | * |
6 | * Copyright(C) 2008, GeoTechnologies, Vitja Makarov | 4 | * Copyright 2008-2009 Analog Devics Inc. |
5 | * 2008 GeoTechnologies | ||
6 | * Vitja Makarov | ||
7 | * | 7 | * |
8 | * This code is licenced under the GPL version 2. For details see | 8 | * Licensed under the GPL-2 |
9 | * kernel-base/COPYING. | ||
10 | */ | 9 | */ |
10 | |||
11 | #include <linux/module.h> | 11 | #include <linux/module.h> |
12 | #include <linux/profile.h> | 12 | #include <linux/profile.h> |
13 | #include <linux/interrupt.h> | 13 | #include <linux/interrupt.h> |
diff --git a/arch/blackfin/kernel/time.c b/arch/blackfin/kernel/time.c index adb54aa7d7c8..bd3b53da295e 100644 --- a/arch/blackfin/kernel/time.c +++ b/arch/blackfin/kernel/time.c | |||
@@ -14,6 +14,7 @@ | |||
14 | #include <linux/time.h> | 14 | #include <linux/time.h> |
15 | #include <linux/irq.h> | 15 | #include <linux/irq.h> |
16 | #include <linux/delay.h> | 16 | #include <linux/delay.h> |
17 | #include <linux/sched.h> | ||
17 | 18 | ||
18 | #include <asm/blackfin.h> | 19 | #include <asm/blackfin.h> |
19 | #include <asm/time.h> | 20 | #include <asm/time.h> |
@@ -81,11 +82,11 @@ time_sched_init(irqreturn_t(*timer_routine) (int, void *)) | |||
81 | #endif | 82 | #endif |
82 | } | 83 | } |
83 | 84 | ||
85 | #ifdef CONFIG_ARCH_USES_GETTIMEOFFSET | ||
84 | /* | 86 | /* |
85 | * Should return useconds since last timer tick | 87 | * Should return useconds since last timer tick |
86 | */ | 88 | */ |
87 | #ifndef CONFIG_GENERIC_TIME | 89 | u32 arch_gettimeoffset(void) |
88 | static unsigned long gettimeoffset(void) | ||
89 | { | 90 | { |
90 | unsigned long offset; | 91 | unsigned long offset; |
91 | unsigned long clocks_per_jiffy; | 92 | unsigned long clocks_per_jiffy; |
@@ -184,65 +185,6 @@ void __init time_init(void) | |||
184 | time_sched_init(timer_interrupt); | 185 | time_sched_init(timer_interrupt); |
185 | } | 186 | } |
186 | 187 | ||
187 | #ifndef CONFIG_GENERIC_TIME | ||
188 | void do_gettimeofday(struct timeval *tv) | ||
189 | { | ||
190 | unsigned long flags; | ||
191 | unsigned long seq; | ||
192 | unsigned long usec, sec; | ||
193 | |||
194 | do { | ||
195 | seq = read_seqbegin_irqsave(&xtime_lock, flags); | ||
196 | usec = gettimeoffset(); | ||
197 | sec = xtime.tv_sec; | ||
198 | usec += (xtime.tv_nsec / NSEC_PER_USEC); | ||
199 | } | ||
200 | while (read_seqretry_irqrestore(&xtime_lock, seq, flags)); | ||
201 | |||
202 | while (usec >= USEC_PER_SEC) { | ||
203 | usec -= USEC_PER_SEC; | ||
204 | sec++; | ||
205 | } | ||
206 | |||
207 | tv->tv_sec = sec; | ||
208 | tv->tv_usec = usec; | ||
209 | } | ||
210 | EXPORT_SYMBOL(do_gettimeofday); | ||
211 | |||
212 | int do_settimeofday(struct timespec *tv) | ||
213 | { | ||
214 | time_t wtm_sec, sec = tv->tv_sec; | ||
215 | long wtm_nsec, nsec = tv->tv_nsec; | ||
216 | |||
217 | if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC) | ||
218 | return -EINVAL; | ||
219 | |||
220 | write_seqlock_irq(&xtime_lock); | ||
221 | /* | ||
222 | * This is revolting. We need to set the xtime.tv_usec | ||
223 | * correctly. However, the value in this location is | ||
224 | * is value at the last tick. | ||
225 | * Discover what correction gettimeofday | ||
226 | * would have done, and then undo it! | ||
227 | */ | ||
228 | nsec -= (gettimeoffset() * NSEC_PER_USEC); | ||
229 | |||
230 | wtm_sec = wall_to_monotonic.tv_sec + (xtime.tv_sec - sec); | ||
231 | wtm_nsec = wall_to_monotonic.tv_nsec + (xtime.tv_nsec - nsec); | ||
232 | |||
233 | set_normalized_timespec(&xtime, sec, nsec); | ||
234 | set_normalized_timespec(&wall_to_monotonic, wtm_sec, wtm_nsec); | ||
235 | |||
236 | ntp_clear(); | ||
237 | |||
238 | write_sequnlock_irq(&xtime_lock); | ||
239 | clock_was_set(); | ||
240 | |||
241 | return 0; | ||
242 | } | ||
243 | EXPORT_SYMBOL(do_settimeofday); | ||
244 | #endif /* !CONFIG_GENERIC_TIME */ | ||
245 | |||
246 | /* | 188 | /* |
247 | * Scheduler clock - returns current time in nanosec units. | 189 | * Scheduler clock - returns current time in nanosec units. |
248 | */ | 190 | */ |
diff --git a/arch/blackfin/kernel/traps.c b/arch/blackfin/kernel/traps.c index 56464cb8edf3..6b7325d634af 100644 --- a/arch/blackfin/kernel/traps.c +++ b/arch/blackfin/kernel/traps.c | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/traps.c | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * Based on: | ||
4 | * Author: Hamish Macdonald | ||
5 | * | 3 | * |
6 | * Created: | 4 | * Licensed under the GPL-2 or later |
7 | * Description: uses S/W interrupt 15 for the system calls | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2006 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #include <linux/bug.h> | 7 | #include <linux/bug.h> |
diff --git a/arch/blackfin/kernel/vmlinux.lds.S b/arch/blackfin/kernel/vmlinux.lds.S index ffd90fbbc8f9..10e12539000e 100644 --- a/arch/blackfin/kernel/vmlinux.lds.S +++ b/arch/blackfin/kernel/vmlinux.lds.S | |||
@@ -1,30 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * File: arch/blackfin/kernel/vmlinux.lds.S | 2 | * Copyright 2004-2009 Analog Devices Inc. |
3 | * Based on: none - original work | ||
4 | * Author: | ||
5 | * | 3 | * |
6 | * Created: Tue Sep 21 2004 | 4 | * Licensed under the GPL-2 or later |
7 | * Description: Master linker script for blackfin architecture | ||
8 | * | ||
9 | * Modified: | ||
10 | * Copyright 2004-2007 Analog Devices Inc. | ||
11 | * | ||
12 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
13 | * | ||
14 | * This program is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation; either version 2 of the License, or | ||
17 | * (at your option) any later version. | ||
18 | * | ||
19 | * This program is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this program; if not, see the file COPYING, or write | ||
26 | * to the Free Software Foundation, Inc., | ||
27 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
28 | */ | 5 | */ |
29 | 6 | ||
30 | #define VMLINUX_SYMBOL(_sym_) _##_sym_ | 7 | #define VMLINUX_SYMBOL(_sym_) _##_sym_ |