diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-frv/mmu.h | 1 | ||||
-rw-r--r-- | include/asm-m32r/mmu.h | 1 | ||||
-rw-r--r-- | include/linux/backlight.h | 16 | ||||
-rw-r--r-- | include/linux/leds-pca9532.h | 2 | ||||
-rw-r--r-- | include/linux/leds.h | 5 | ||||
-rw-r--r-- | include/linux/mISDNhw.h | 26 | ||||
-rw-r--r-- | include/linux/mISDNif.h | 89 | ||||
-rw-r--r-- | include/linux/mfd/wm8350/pmic.h | 36 | ||||
-rw-r--r-- | include/linux/mm.h | 18 | ||||
-rw-r--r-- | include/linux/mm_types.h | 19 | ||||
-rw-r--r-- | include/linux/spi/tdo24m.h | 13 |
11 files changed, 184 insertions, 42 deletions
diff --git a/include/asm-frv/mmu.h b/include/asm-frv/mmu.h index 22c03714fb14..86ca0e86e7d2 100644 --- a/include/asm-frv/mmu.h +++ b/include/asm-frv/mmu.h | |||
@@ -22,7 +22,6 @@ typedef struct { | |||
22 | unsigned long dtlb_ptd_mapping; /* [DAMR5] PTD mapping for dtlb cached PGE */ | 22 | unsigned long dtlb_ptd_mapping; /* [DAMR5] PTD mapping for dtlb cached PGE */ |
23 | 23 | ||
24 | #else | 24 | #else |
25 | struct vm_list_struct *vmlist; | ||
26 | unsigned long end_brk; | 25 | unsigned long end_brk; |
27 | 26 | ||
28 | #endif | 27 | #endif |
diff --git a/include/asm-m32r/mmu.h b/include/asm-m32r/mmu.h index d9bd724479cf..150cb92bb666 100644 --- a/include/asm-m32r/mmu.h +++ b/include/asm-m32r/mmu.h | |||
@@ -4,7 +4,6 @@ | |||
4 | #if !defined(CONFIG_MMU) | 4 | #if !defined(CONFIG_MMU) |
5 | 5 | ||
6 | typedef struct { | 6 | typedef struct { |
7 | struct vm_list_struct *vmlist; | ||
8 | unsigned long end_brk; | 7 | unsigned long end_brk; |
9 | } mm_context_t; | 8 | } mm_context_t; |
10 | 9 | ||
diff --git a/include/linux/backlight.h b/include/linux/backlight.h index 1ee9488ca2e4..79ca2da81c87 100644 --- a/include/linux/backlight.h +++ b/include/linux/backlight.h | |||
@@ -31,6 +31,10 @@ struct backlight_device; | |||
31 | struct fb_info; | 31 | struct fb_info; |
32 | 32 | ||
33 | struct backlight_ops { | 33 | struct backlight_ops { |
34 | unsigned int options; | ||
35 | |||
36 | #define BL_CORE_SUSPENDRESUME (1 << 0) | ||
37 | |||
34 | /* Notify the backlight driver some property has changed */ | 38 | /* Notify the backlight driver some property has changed */ |
35 | int (*update_status)(struct backlight_device *); | 39 | int (*update_status)(struct backlight_device *); |
36 | /* Return the current backlight brightness (accounting for power, | 40 | /* Return the current backlight brightness (accounting for power, |
@@ -51,7 +55,19 @@ struct backlight_properties { | |||
51 | modes; 4: full off), see FB_BLANK_XXX */ | 55 | modes; 4: full off), see FB_BLANK_XXX */ |
52 | int power; | 56 | int power; |
53 | /* FB Blanking active? (values as for power) */ | 57 | /* FB Blanking active? (values as for power) */ |
58 | /* Due to be removed, please use (state & BL_CORE_FBBLANK) */ | ||
54 | int fb_blank; | 59 | int fb_blank; |
60 | /* Flags used to signal drivers of state changes */ | ||
61 | /* Upper 4 bits are reserved for driver internal use */ | ||
62 | unsigned int state; | ||
63 | |||
64 | #define BL_CORE_SUSPENDED (1 << 0) /* backlight is suspended */ | ||
65 | #define BL_CORE_FBBLANK (1 << 1) /* backlight is under an fb blank event */ | ||
66 | #define BL_CORE_DRIVER4 (1 << 28) /* reserved for driver specific use */ | ||
67 | #define BL_CORE_DRIVER3 (1 << 29) /* reserved for driver specific use */ | ||
68 | #define BL_CORE_DRIVER2 (1 << 30) /* reserved for driver specific use */ | ||
69 | #define BL_CORE_DRIVER1 (1 << 31) /* reserved for driver specific use */ | ||
70 | |||
55 | }; | 71 | }; |
56 | 72 | ||
57 | struct backlight_device { | 73 | struct backlight_device { |
diff --git a/include/linux/leds-pca9532.h b/include/linux/leds-pca9532.h index 81b4207deb95..96eea90f01a8 100644 --- a/include/linux/leds-pca9532.h +++ b/include/linux/leds-pca9532.h | |||
@@ -15,6 +15,7 @@ | |||
15 | #define __LINUX_PCA9532_H | 15 | #define __LINUX_PCA9532_H |
16 | 16 | ||
17 | #include <linux/leds.h> | 17 | #include <linux/leds.h> |
18 | #include <linux/workqueue.h> | ||
18 | 19 | ||
19 | enum pca9532_state { | 20 | enum pca9532_state { |
20 | PCA9532_OFF = 0x0, | 21 | PCA9532_OFF = 0x0, |
@@ -31,6 +32,7 @@ struct pca9532_led { | |||
31 | struct i2c_client *client; | 32 | struct i2c_client *client; |
32 | char *name; | 33 | char *name; |
33 | struct led_classdev ldev; | 34 | struct led_classdev ldev; |
35 | struct work_struct work; | ||
34 | enum pca9532_type type; | 36 | enum pca9532_type type; |
35 | enum pca9532_state state; | 37 | enum pca9532_state state; |
36 | }; | 38 | }; |
diff --git a/include/linux/leds.h b/include/linux/leds.h index d3a73f5a48c3..24489da701e3 100644 --- a/include/linux/leds.h +++ b/include/linux/leds.h | |||
@@ -32,7 +32,10 @@ struct led_classdev { | |||
32 | int brightness; | 32 | int brightness; |
33 | int flags; | 33 | int flags; |
34 | 34 | ||
35 | /* Lower 16 bits reflect status */ | ||
35 | #define LED_SUSPENDED (1 << 0) | 36 | #define LED_SUSPENDED (1 << 0) |
37 | /* Upper 16 bits reflect control information */ | ||
38 | #define LED_CORE_SUSPENDRESUME (1 << 16) | ||
36 | 39 | ||
37 | /* Set LED brightness level */ | 40 | /* Set LED brightness level */ |
38 | /* Must not sleep, use a workqueue if needed */ | 41 | /* Must not sleep, use a workqueue if needed */ |
@@ -62,7 +65,7 @@ struct led_classdev { | |||
62 | 65 | ||
63 | extern int led_classdev_register(struct device *parent, | 66 | extern int led_classdev_register(struct device *parent, |
64 | struct led_classdev *led_cdev); | 67 | struct led_classdev *led_cdev); |
65 | extern void led_classdev_unregister(struct led_classdev *lcd); | 68 | extern void led_classdev_unregister(struct led_classdev *led_cdev); |
66 | extern void led_classdev_suspend(struct led_classdev *led_cdev); | 69 | extern void led_classdev_suspend(struct led_classdev *led_cdev); |
67 | extern void led_classdev_resume(struct led_classdev *led_cdev); | 70 | extern void led_classdev_resume(struct led_classdev *led_cdev); |
68 | 71 | ||
diff --git a/include/linux/mISDNhw.h b/include/linux/mISDNhw.h index e794dfb87504..97ffdc1d3442 100644 --- a/include/linux/mISDNhw.h +++ b/include/linux/mISDNhw.h | |||
@@ -57,20 +57,21 @@ | |||
57 | #define FLG_L2DATA 14 /* channel use L2 DATA primitivs */ | 57 | #define FLG_L2DATA 14 /* channel use L2 DATA primitivs */ |
58 | #define FLG_ORIGIN 15 /* channel is on origin site */ | 58 | #define FLG_ORIGIN 15 /* channel is on origin site */ |
59 | /* channel specific stuff */ | 59 | /* channel specific stuff */ |
60 | #define FLG_FILLEMPTY 16 /* fill fifo on first frame (empty) */ | ||
60 | /* arcofi specific */ | 61 | /* arcofi specific */ |
61 | #define FLG_ARCOFI_TIMER 16 | 62 | #define FLG_ARCOFI_TIMER 17 |
62 | #define FLG_ARCOFI_ERROR 17 | 63 | #define FLG_ARCOFI_ERROR 18 |
63 | /* isar specific */ | 64 | /* isar specific */ |
64 | #define FLG_INITIALIZED 16 | 65 | #define FLG_INITIALIZED 17 |
65 | #define FLG_DLEETX 17 | 66 | #define FLG_DLEETX 18 |
66 | #define FLG_LASTDLE 18 | 67 | #define FLG_LASTDLE 19 |
67 | #define FLG_FIRST 19 | 68 | #define FLG_FIRST 20 |
68 | #define FLG_LASTDATA 20 | 69 | #define FLG_LASTDATA 21 |
69 | #define FLG_NMD_DATA 21 | 70 | #define FLG_NMD_DATA 22 |
70 | #define FLG_FTI_RUN 22 | 71 | #define FLG_FTI_RUN 23 |
71 | #define FLG_LL_OK 23 | 72 | #define FLG_LL_OK 24 |
72 | #define FLG_LL_CONN 24 | 73 | #define FLG_LL_CONN 25 |
73 | #define FLG_DTMFSEND 25 | 74 | #define FLG_DTMFSEND 26 |
74 | 75 | ||
75 | /* workq events */ | 76 | /* workq events */ |
76 | #define FLG_RECVQUEUE 30 | 77 | #define FLG_RECVQUEUE 30 |
@@ -183,6 +184,7 @@ extern void queue_ch_frame(struct mISDNchannel *, u_int, | |||
183 | extern int dchannel_senddata(struct dchannel *, struct sk_buff *); | 184 | extern int dchannel_senddata(struct dchannel *, struct sk_buff *); |
184 | extern int bchannel_senddata(struct bchannel *, struct sk_buff *); | 185 | extern int bchannel_senddata(struct bchannel *, struct sk_buff *); |
185 | extern void recv_Dchannel(struct dchannel *); | 186 | extern void recv_Dchannel(struct dchannel *); |
187 | extern void recv_Echannel(struct dchannel *, struct dchannel *); | ||
186 | extern void recv_Bchannel(struct bchannel *); | 188 | extern void recv_Bchannel(struct bchannel *); |
187 | extern void recv_Dchannel_skb(struct dchannel *, struct sk_buff *); | 189 | extern void recv_Dchannel_skb(struct dchannel *, struct sk_buff *); |
188 | extern void recv_Bchannel_skb(struct bchannel *, struct sk_buff *); | 190 | extern void recv_Bchannel_skb(struct bchannel *, struct sk_buff *); |
diff --git a/include/linux/mISDNif.h b/include/linux/mISDNif.h index 8f2d60da04e7..557477ac3d5b 100644 --- a/include/linux/mISDNif.h +++ b/include/linux/mISDNif.h | |||
@@ -36,8 +36,8 @@ | |||
36 | * - should be incremented on every checkin | 36 | * - should be incremented on every checkin |
37 | */ | 37 | */ |
38 | #define MISDN_MAJOR_VERSION 1 | 38 | #define MISDN_MAJOR_VERSION 1 |
39 | #define MISDN_MINOR_VERSION 0 | 39 | #define MISDN_MINOR_VERSION 1 |
40 | #define MISDN_RELEASE 19 | 40 | #define MISDN_RELEASE 20 |
41 | 41 | ||
42 | /* primitives for information exchange | 42 | /* primitives for information exchange |
43 | * generell format | 43 | * generell format |
@@ -80,6 +80,7 @@ | |||
80 | #define PH_DEACTIVATE_IND 0x0202 | 80 | #define PH_DEACTIVATE_IND 0x0202 |
81 | #define PH_DEACTIVATE_CNF 0x4202 | 81 | #define PH_DEACTIVATE_CNF 0x4202 |
82 | #define PH_DATA_IND 0x2002 | 82 | #define PH_DATA_IND 0x2002 |
83 | #define PH_DATA_E_IND 0x3002 | ||
83 | #define MPH_ACTIVATE_IND 0x0502 | 84 | #define MPH_ACTIVATE_IND 0x0502 |
84 | #define MPH_DEACTIVATE_IND 0x0602 | 85 | #define MPH_DEACTIVATE_IND 0x0602 |
85 | #define MPH_INFORMATION_IND 0x0702 | 86 | #define MPH_INFORMATION_IND 0x0702 |
@@ -199,6 +200,18 @@ | |||
199 | #define ISDN_P_NT_S0 0x02 | 200 | #define ISDN_P_NT_S0 0x02 |
200 | #define ISDN_P_TE_E1 0x03 | 201 | #define ISDN_P_TE_E1 0x03 |
201 | #define ISDN_P_NT_E1 0x04 | 202 | #define ISDN_P_NT_E1 0x04 |
203 | #define ISDN_P_TE_UP0 0x05 | ||
204 | #define ISDN_P_NT_UP0 0x06 | ||
205 | |||
206 | #define IS_ISDN_P_TE(p) ((p == ISDN_P_TE_S0) || (p == ISDN_P_TE_E1) || \ | ||
207 | (p == ISDN_P_TE_UP0) || (p == ISDN_P_LAPD_TE)) | ||
208 | #define IS_ISDN_P_NT(p) ((p == ISDN_P_NT_S0) || (p == ISDN_P_NT_E1) || \ | ||
209 | (p == ISDN_P_NT_UP0) || (p == ISDN_P_LAPD_NT)) | ||
210 | #define IS_ISDN_P_S0(p) ((p == ISDN_P_TE_S0) || (p == ISDN_P_NT_S0)) | ||
211 | #define IS_ISDN_P_E1(p) ((p == ISDN_P_TE_E1) || (p == ISDN_P_NT_E1)) | ||
212 | #define IS_ISDN_P_UP0(p) ((p == ISDN_P_TE_UP0) || (p == ISDN_P_NT_UP0)) | ||
213 | |||
214 | |||
202 | #define ISDN_P_LAPD_TE 0x10 | 215 | #define ISDN_P_LAPD_TE 0x10 |
203 | #define ISDN_P_LAPD_NT 0x11 | 216 | #define ISDN_P_LAPD_NT 0x11 |
204 | 217 | ||
@@ -255,16 +268,6 @@ struct sockaddr_mISDN { | |||
255 | unsigned char tei; | 268 | unsigned char tei; |
256 | }; | 269 | }; |
257 | 270 | ||
258 | /* timer device ioctl */ | ||
259 | #define IMADDTIMER _IOR('I', 64, int) | ||
260 | #define IMDELTIMER _IOR('I', 65, int) | ||
261 | /* socket ioctls */ | ||
262 | #define IMGETVERSION _IOR('I', 66, int) | ||
263 | #define IMGETCOUNT _IOR('I', 67, int) | ||
264 | #define IMGETDEVINFO _IOR('I', 68, int) | ||
265 | #define IMCTRLREQ _IOR('I', 69, int) | ||
266 | #define IMCLEAR_L2 _IOR('I', 70, int) | ||
267 | |||
268 | struct mISDNversion { | 271 | struct mISDNversion { |
269 | unsigned char major; | 272 | unsigned char major; |
270 | unsigned char minor; | 273 | unsigned char minor; |
@@ -281,6 +284,40 @@ struct mISDN_devinfo { | |||
281 | char name[MISDN_MAX_IDLEN]; | 284 | char name[MISDN_MAX_IDLEN]; |
282 | }; | 285 | }; |
283 | 286 | ||
287 | struct mISDN_devrename { | ||
288 | u_int id; | ||
289 | char name[MISDN_MAX_IDLEN]; /* new name */ | ||
290 | }; | ||
291 | |||
292 | /* MPH_INFORMATION_REQ payload */ | ||
293 | struct ph_info_ch { | ||
294 | __u32 protocol; | ||
295 | __u64 Flags; | ||
296 | }; | ||
297 | |||
298 | struct ph_info_dch { | ||
299 | struct ph_info_ch ch; | ||
300 | __u16 state; | ||
301 | __u16 num_bch; | ||
302 | }; | ||
303 | |||
304 | struct ph_info { | ||
305 | struct ph_info_dch dch; | ||
306 | struct ph_info_ch bch[]; | ||
307 | }; | ||
308 | |||
309 | /* timer device ioctl */ | ||
310 | #define IMADDTIMER _IOR('I', 64, int) | ||
311 | #define IMDELTIMER _IOR('I', 65, int) | ||
312 | |||
313 | /* socket ioctls */ | ||
314 | #define IMGETVERSION _IOR('I', 66, int) | ||
315 | #define IMGETCOUNT _IOR('I', 67, int) | ||
316 | #define IMGETDEVINFO _IOR('I', 68, int) | ||
317 | #define IMCTRLREQ _IOR('I', 69, int) | ||
318 | #define IMCLEAR_L2 _IOR('I', 70, int) | ||
319 | #define IMSETDEVNAME _IOR('I', 71, struct mISDN_devrename) | ||
320 | |||
284 | static inline int | 321 | static inline int |
285 | test_channelmap(u_int nr, u_char *map) | 322 | test_channelmap(u_int nr, u_char *map) |
286 | { | 323 | { |
@@ -312,6 +349,8 @@ clear_channelmap(u_int nr, u_char *map) | |||
312 | #define MISDN_CTRL_SETPEER 0x0040 | 349 | #define MISDN_CTRL_SETPEER 0x0040 |
313 | #define MISDN_CTRL_UNSETPEER 0x0080 | 350 | #define MISDN_CTRL_UNSETPEER 0x0080 |
314 | #define MISDN_CTRL_RX_OFF 0x0100 | 351 | #define MISDN_CTRL_RX_OFF 0x0100 |
352 | #define MISDN_CTRL_FILL_EMPTY 0x0200 | ||
353 | #define MISDN_CTRL_GETPEER 0x0400 | ||
315 | #define MISDN_CTRL_HW_FEATURES_OP 0x2000 | 354 | #define MISDN_CTRL_HW_FEATURES_OP 0x2000 |
316 | #define MISDN_CTRL_HW_FEATURES 0x2001 | 355 | #define MISDN_CTRL_HW_FEATURES 0x2001 |
317 | #define MISDN_CTRL_HFC_OP 0x4000 | 356 | #define MISDN_CTRL_HFC_OP 0x4000 |
@@ -362,6 +401,7 @@ struct mISDN_ctrl_req { | |||
362 | #define DEBUG_L2_TEI 0x00100000 | 401 | #define DEBUG_L2_TEI 0x00100000 |
363 | #define DEBUG_L2_TEIFSM 0x00200000 | 402 | #define DEBUG_L2_TEIFSM 0x00200000 |
364 | #define DEBUG_TIMER 0x01000000 | 403 | #define DEBUG_TIMER 0x01000000 |
404 | #define DEBUG_CLOCK 0x02000000 | ||
365 | 405 | ||
366 | #define mISDN_HEAD_P(s) ((struct mISDNhead *)&s->cb[0]) | 406 | #define mISDN_HEAD_P(s) ((struct mISDNhead *)&s->cb[0]) |
367 | #define mISDN_HEAD_PRIM(s) (((struct mISDNhead *)&s->cb[0])->prim) | 407 | #define mISDN_HEAD_PRIM(s) (((struct mISDNhead *)&s->cb[0])->prim) |
@@ -375,6 +415,7 @@ struct mISDN_ctrl_req { | |||
375 | struct mISDNchannel; | 415 | struct mISDNchannel; |
376 | struct mISDNdevice; | 416 | struct mISDNdevice; |
377 | struct mISDNstack; | 417 | struct mISDNstack; |
418 | struct mISDNclock; | ||
378 | 419 | ||
379 | struct channel_req { | 420 | struct channel_req { |
380 | u_int protocol; | 421 | u_int protocol; |
@@ -423,7 +464,6 @@ struct mISDN_sock { | |||
423 | struct mISDNdevice { | 464 | struct mISDNdevice { |
424 | struct mISDNchannel D; | 465 | struct mISDNchannel D; |
425 | u_int id; | 466 | u_int id; |
426 | char name[MISDN_MAX_IDLEN]; | ||
427 | u_int Dprotocols; | 467 | u_int Dprotocols; |
428 | u_int Bprotocols; | 468 | u_int Bprotocols; |
429 | u_int nrbchan; | 469 | u_int nrbchan; |
@@ -452,6 +492,16 @@ struct mISDNstack { | |||
452 | #endif | 492 | #endif |
453 | }; | 493 | }; |
454 | 494 | ||
495 | typedef int (clockctl_func_t)(void *, int); | ||
496 | |||
497 | struct mISDNclock { | ||
498 | struct list_head list; | ||
499 | char name[64]; | ||
500 | int pri; | ||
501 | clockctl_func_t *ctl; | ||
502 | void *priv; | ||
503 | }; | ||
504 | |||
455 | /* global alloc/queue functions */ | 505 | /* global alloc/queue functions */ |
456 | 506 | ||
457 | static inline struct sk_buff * | 507 | static inline struct sk_buff * |
@@ -498,12 +548,23 @@ _queue_data(struct mISDNchannel *ch, u_int prim, | |||
498 | 548 | ||
499 | /* global register/unregister functions */ | 549 | /* global register/unregister functions */ |
500 | 550 | ||
501 | extern int mISDN_register_device(struct mISDNdevice *, char *name); | 551 | extern int mISDN_register_device(struct mISDNdevice *, |
552 | struct device *parent, char *name); | ||
502 | extern void mISDN_unregister_device(struct mISDNdevice *); | 553 | extern void mISDN_unregister_device(struct mISDNdevice *); |
503 | extern int mISDN_register_Bprotocol(struct Bprotocol *); | 554 | extern int mISDN_register_Bprotocol(struct Bprotocol *); |
504 | extern void mISDN_unregister_Bprotocol(struct Bprotocol *); | 555 | extern void mISDN_unregister_Bprotocol(struct Bprotocol *); |
556 | extern struct mISDNclock *mISDN_register_clock(char *, int, clockctl_func_t *, | ||
557 | void *); | ||
558 | extern void mISDN_unregister_clock(struct mISDNclock *); | ||
559 | |||
560 | static inline struct mISDNdevice *dev_to_mISDN(struct device *dev) | ||
561 | { | ||
562 | return dev_get_drvdata(dev); | ||
563 | } | ||
505 | 564 | ||
506 | extern void set_channel_address(struct mISDNchannel *, u_int, u_int); | 565 | extern void set_channel_address(struct mISDNchannel *, u_int, u_int); |
566 | extern void mISDN_clock_update(struct mISDNclock *, int, struct timeval *); | ||
567 | extern unsigned short mISDN_clock_get(void); | ||
507 | 568 | ||
508 | #endif /* __KERNEL__ */ | 569 | #endif /* __KERNEL__ */ |
509 | #endif /* mISDNIF_H */ | 570 | #endif /* mISDNIF_H */ |
diff --git a/include/linux/mfd/wm8350/pmic.h b/include/linux/mfd/wm8350/pmic.h index 96acbfc8aa12..be3264e286e0 100644 --- a/include/linux/mfd/wm8350/pmic.h +++ b/include/linux/mfd/wm8350/pmic.h | |||
@@ -13,6 +13,10 @@ | |||
13 | #ifndef __LINUX_MFD_WM8350_PMIC_H | 13 | #ifndef __LINUX_MFD_WM8350_PMIC_H |
14 | #define __LINUX_MFD_WM8350_PMIC_H | 14 | #define __LINUX_MFD_WM8350_PMIC_H |
15 | 15 | ||
16 | #include <linux/platform_device.h> | ||
17 | #include <linux/leds.h> | ||
18 | #include <linux/regulator/machine.h> | ||
19 | |||
16 | /* | 20 | /* |
17 | * Register values. | 21 | * Register values. |
18 | */ | 22 | */ |
@@ -700,6 +704,33 @@ struct wm8350; | |||
700 | struct platform_device; | 704 | struct platform_device; |
701 | struct regulator_init_data; | 705 | struct regulator_init_data; |
702 | 706 | ||
707 | /* | ||
708 | * WM8350 LED platform data | ||
709 | */ | ||
710 | struct wm8350_led_platform_data { | ||
711 | const char *name; | ||
712 | const char *default_trigger; | ||
713 | int max_uA; | ||
714 | }; | ||
715 | |||
716 | struct wm8350_led { | ||
717 | struct platform_device *pdev; | ||
718 | struct mutex mutex; | ||
719 | struct work_struct work; | ||
720 | spinlock_t value_lock; | ||
721 | enum led_brightness value; | ||
722 | struct led_classdev cdev; | ||
723 | int max_uA_index; | ||
724 | int enabled; | ||
725 | |||
726 | struct regulator *isink; | ||
727 | struct regulator_consumer_supply isink_consumer; | ||
728 | struct regulator_init_data isink_init; | ||
729 | struct regulator *dcdc; | ||
730 | struct regulator_consumer_supply dcdc_consumer; | ||
731 | struct regulator_init_data dcdc_init; | ||
732 | }; | ||
733 | |||
703 | struct wm8350_pmic { | 734 | struct wm8350_pmic { |
704 | /* Number of regulators of each type on this device */ | 735 | /* Number of regulators of each type on this device */ |
705 | int max_dcdc; | 736 | int max_dcdc; |
@@ -717,10 +748,15 @@ struct wm8350_pmic { | |||
717 | 748 | ||
718 | /* regulator devices */ | 749 | /* regulator devices */ |
719 | struct platform_device *pdev[NUM_WM8350_REGULATORS]; | 750 | struct platform_device *pdev[NUM_WM8350_REGULATORS]; |
751 | |||
752 | /* LED devices */ | ||
753 | struct wm8350_led led[2]; | ||
720 | }; | 754 | }; |
721 | 755 | ||
722 | int wm8350_register_regulator(struct wm8350 *wm8350, int reg, | 756 | int wm8350_register_regulator(struct wm8350 *wm8350, int reg, |
723 | struct regulator_init_data *initdata); | 757 | struct regulator_init_data *initdata); |
758 | int wm8350_register_led(struct wm8350 *wm8350, int lednum, int dcdc, int isink, | ||
759 | struct wm8350_led_platform_data *pdata); | ||
724 | 760 | ||
725 | /* | 761 | /* |
726 | * Additional DCDC control not supported via regulator API | 762 | * Additional DCDC control not supported via regulator API |
diff --git a/include/linux/mm.h b/include/linux/mm.h index 4a3d28c86443..b91a73fd1bcc 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
@@ -56,19 +56,9 @@ extern unsigned long mmap_min_addr; | |||
56 | 56 | ||
57 | extern struct kmem_cache *vm_area_cachep; | 57 | extern struct kmem_cache *vm_area_cachep; |
58 | 58 | ||
59 | /* | ||
60 | * This struct defines the per-mm list of VMAs for uClinux. If CONFIG_MMU is | ||
61 | * disabled, then there's a single shared list of VMAs maintained by the | ||
62 | * system, and mm's subscribe to these individually | ||
63 | */ | ||
64 | struct vm_list_struct { | ||
65 | struct vm_list_struct *next; | ||
66 | struct vm_area_struct *vma; | ||
67 | }; | ||
68 | |||
69 | #ifndef CONFIG_MMU | 59 | #ifndef CONFIG_MMU |
70 | extern struct rb_root nommu_vma_tree; | 60 | extern struct rb_root nommu_region_tree; |
71 | extern struct rw_semaphore nommu_vma_sem; | 61 | extern struct rw_semaphore nommu_region_sem; |
72 | 62 | ||
73 | extern unsigned int kobjsize(const void *objp); | 63 | extern unsigned int kobjsize(const void *objp); |
74 | #endif | 64 | #endif |
@@ -1061,6 +1051,7 @@ extern void memmap_init_zone(unsigned long, int, unsigned long, | |||
1061 | unsigned long, enum memmap_context); | 1051 | unsigned long, enum memmap_context); |
1062 | extern void setup_per_zone_pages_min(void); | 1052 | extern void setup_per_zone_pages_min(void); |
1063 | extern void mem_init(void); | 1053 | extern void mem_init(void); |
1054 | extern void __init mmap_init(void); | ||
1064 | extern void show_mem(void); | 1055 | extern void show_mem(void); |
1065 | extern void si_meminfo(struct sysinfo * val); | 1056 | extern void si_meminfo(struct sysinfo * val); |
1066 | extern void si_meminfo_node(struct sysinfo *val, int nid); | 1057 | extern void si_meminfo_node(struct sysinfo *val, int nid); |
@@ -1072,6 +1063,9 @@ extern void setup_per_cpu_pageset(void); | |||
1072 | static inline void setup_per_cpu_pageset(void) {} | 1063 | static inline void setup_per_cpu_pageset(void) {} |
1073 | #endif | 1064 | #endif |
1074 | 1065 | ||
1066 | /* nommu.c */ | ||
1067 | extern atomic_t mmap_pages_allocated; | ||
1068 | |||
1075 | /* prio_tree.c */ | 1069 | /* prio_tree.c */ |
1076 | void vma_prio_tree_add(struct vm_area_struct *, struct vm_area_struct *old); | 1070 | void vma_prio_tree_add(struct vm_area_struct *, struct vm_area_struct *old); |
1077 | void vma_prio_tree_insert(struct vm_area_struct *, struct prio_tree_root *); | 1071 | void vma_prio_tree_insert(struct vm_area_struct *, struct prio_tree_root *); |
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index 9cfc9b627fdd..92915e81443f 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h | |||
@@ -97,6 +97,23 @@ struct page { | |||
97 | }; | 97 | }; |
98 | 98 | ||
99 | /* | 99 | /* |
100 | * A region containing a mapping of a non-memory backed file under NOMMU | ||
101 | * conditions. These are held in a global tree and are pinned by the VMAs that | ||
102 | * map parts of them. | ||
103 | */ | ||
104 | struct vm_region { | ||
105 | struct rb_node vm_rb; /* link in global region tree */ | ||
106 | unsigned long vm_flags; /* VMA vm_flags */ | ||
107 | unsigned long vm_start; /* start address of region */ | ||
108 | unsigned long vm_end; /* region initialised to here */ | ||
109 | unsigned long vm_top; /* region allocated to here */ | ||
110 | unsigned long vm_pgoff; /* the offset in vm_file corresponding to vm_start */ | ||
111 | struct file *vm_file; /* the backing file or NULL */ | ||
112 | |||
113 | atomic_t vm_usage; /* region usage count */ | ||
114 | }; | ||
115 | |||
116 | /* | ||
100 | * This struct defines a memory VMM memory area. There is one of these | 117 | * This struct defines a memory VMM memory area. There is one of these |
101 | * per VM-area/task. A VM area is any part of the process virtual memory | 118 | * per VM-area/task. A VM area is any part of the process virtual memory |
102 | * space that has a special rule for the page-fault handlers (ie a shared | 119 | * space that has a special rule for the page-fault handlers (ie a shared |
@@ -152,7 +169,7 @@ struct vm_area_struct { | |||
152 | unsigned long vm_truncate_count;/* truncate_count or restart_addr */ | 169 | unsigned long vm_truncate_count;/* truncate_count or restart_addr */ |
153 | 170 | ||
154 | #ifndef CONFIG_MMU | 171 | #ifndef CONFIG_MMU |
155 | atomic_t vm_usage; /* refcount (VMAs shared if !MMU) */ | 172 | struct vm_region *vm_region; /* NOMMU mapping region */ |
156 | #endif | 173 | #endif |
157 | #ifdef CONFIG_NUMA | 174 | #ifdef CONFIG_NUMA |
158 | struct mempolicy *vm_policy; /* NUMA policy for the VMA */ | 175 | struct mempolicy *vm_policy; /* NUMA policy for the VMA */ |
diff --git a/include/linux/spi/tdo24m.h b/include/linux/spi/tdo24m.h new file mode 100644 index 000000000000..7572d4e1fe76 --- /dev/null +++ b/include/linux/spi/tdo24m.h | |||
@@ -0,0 +1,13 @@ | |||
1 | #ifndef __TDO24M_H__ | ||
2 | #define __TDO24M_H__ | ||
3 | |||
4 | enum tdo24m_model { | ||
5 | TDO24M, | ||
6 | TDO35S, | ||
7 | }; | ||
8 | |||
9 | struct tdo24m_platform_data { | ||
10 | enum tdo24m_model model; | ||
11 | }; | ||
12 | |||
13 | #endif /* __TDO24M_H__ */ | ||