This list is closed, nobody may subscribe to it.
2004 |
Jan
(53) |
Feb
(78) |
Mar
(34) |
Apr
(26) |
May
(25) |
Jun
(34) |
Jul
(16) |
Aug
(16) |
Sep
(2) |
Oct
(58) |
Nov
(13) |
Dec
(32) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(62) |
Feb
(4) |
Mar
(40) |
Apr
(9) |
May
(13) |
Jun
(26) |
Jul
(32) |
Aug
(24) |
Sep
(18) |
Oct
(18) |
Nov
(14) |
Dec
|
2006 |
Jan
(15) |
Feb
(2) |
Mar
(23) |
Apr
(2) |
May
(2) |
Jun
(13) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2007 |
Jan
(1) |
Feb
(45) |
Mar
|
Apr
(13) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(31) |
Dec
(5) |
2008 |
Jan
(6) |
Feb
(34) |
Mar
(113) |
Apr
(40) |
May
(19) |
Jun
(5) |
Jul
(41) |
Aug
(13) |
Sep
(53) |
Oct
(4) |
Nov
(53) |
Dec
|
2009 |
Jan
(1) |
Feb
(29) |
Mar
(66) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(163) |
Nov
|
Dec
(91) |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/drivers/gpio In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/drivers/gpio Modified Files: gpiolib.c Log Message: Merge v2.6.32. Index: gpiolib.c =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/gpio/gpiolib.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** gpiolib.c 9 Dec 2009 18:40:09 -0000 1.9 --- gpiolib.c 9 Dec 2009 18:44:55 -0000 1.10 *************** *** 1249,1252 **** --- 1249,1270 ---- EXPORT_SYMBOL_GPL(gpio_direction_output); + /** + * gpio_direction_is_output - tell if a gpio is configured as an output + * @gpio: gpio in question + * + * Returns a negative errno if the given gpio is not valid. + * Returns a positive non-zero if the gpio is configured as an output. + * Returns zero otherwise. + */ + int gpio_direction_is_output(unsigned gpio) + { + struct gpio_desc *desc = &gpio_desc[gpio]; + + if (!gpio_is_valid(gpio)) + return -EINVAL; + + return test_bit(FLAG_IS_OUT, &desc->flags); + } + EXPORT_SYMBOL_GPL(gpio_direction_is_output); /* I/O calls are only valid after configuration completed; the relevant |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/drivers/rtc In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/drivers/rtc Modified Files: Kconfig Makefile Log Message: Merge v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/rtc/Makefile,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Makefile 9 Dec 2009 18:40:10 -0000 1.14 --- Makefile 9 Dec 2009 18:44:55 -0000 1.15 *************** *** 44,47 **** --- 44,48 ---- obj-$(CONFIG_RTC_DRV_FM3130) += rtc-fm3130.o obj-$(CONFIG_RTC_DRV_GENERIC) += rtc-generic.o + obj-$(CONFIG_RTC_DRV_GCN) += rtc-gcn.o obj-$(CONFIG_RTC_DRV_ISL1208) += rtc-isl1208.o obj-$(CONFIG_RTC_DRV_M41T80) += rtc-m41t80.o Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/rtc/Kconfig,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Kconfig 9 Dec 2009 18:40:10 -0000 1.14 --- Kconfig 9 Dec 2009 18:44:55 -0000 1.15 *************** *** 574,577 **** --- 574,586 ---- support. This chip contains a battery- and capacitor-backed RTC. + config RTC_DRV_GCN + bool "Nintendo GameCube/Wii Real Time Clock and SRAM" + depends on GAMECUBE_EXI + default y + help + If you say yes to this option, support will be included for the + Real Time Clock and SRAM of the Nintendo GameCube/Wii. + + If in doubt, say Y here. comment "on-CPU RTC drivers" |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/drivers/net In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/drivers/net Modified Files: Kconfig Makefile Log Message: Merge v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/net/Makefile,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** Makefile 9 Dec 2009 18:40:10 -0000 1.40 --- Makefile 9 Dec 2009 18:44:55 -0000 1.41 *************** *** 247,250 **** --- 247,251 ---- obj-$(CONFIG_ENC28J60) += enc28j60.o obj-$(CONFIG_ETHOC) += ethoc.o + obj-$(CONFIG_GAMECUBE_BBA) += gcn-bba.o obj-$(CONFIG_XTENSA_XT2000_SONIC) += xtsonic.o Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/net/Kconfig,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** Kconfig 9 Dec 2009 18:40:10 -0000 1.46 --- Kconfig 9 Dec 2009 18:44:55 -0000 1.47 *************** *** 271,274 **** --- 271,283 ---- will be called bmac. + config GAMECUBE_BBA + tristate "Nintendo GameCube ethernet BroadBand Adapter (BBA)" + depends on GAMECUBE_EXI && GAMECUBE + help + Say Y here to add ethernet support for the Broadband Adapter (BBA). + + To compile this driver as a module, choose M here: the module + will be called gcn-bba. + config ARIADNE tristate "Ariadne support" |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/drivers/video In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/drivers/video Modified Files: Kconfig Makefile Log Message: Merge v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/Makefile,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -d -r1.38 -r1.39 *** Makefile 9 Dec 2009 18:40:10 -0000 1.38 --- Makefile 9 Dec 2009 18:44:55 -0000 1.39 *************** *** 129,132 **** --- 129,133 ---- obj-$(CONFIG_FB_MB862XX) += mb862xx/ obj-$(CONFIG_FB_MSM) += msm/ + obj-$(CONFIG_FB_GAMECUBE) += gcnfb.o # Platform or fallback drivers go here Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/Kconfig,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** Kconfig 9 Dec 2009 18:40:10 -0000 1.42 --- Kconfig 9 Dec 2009 18:44:55 -0000 1.43 *************** *** 1651,1654 **** --- 1651,1673 ---- endchoice + config FB_GAMECUBE + bool "Nintendo GameCube/Wii frame buffer" + depends on FB && GAMECUBE_COMMON + select FB_CFB_FILLRECT + select FB_CFB_COPYAREA + select FB_CFB_IMAGEBLIT + help + This is the frame buffer device driver for the Nintendo GameCube. + + config WII_AVE_RVL + bool "Nintendo Wii audio/video encoder support" + depends on FB_GAMECUBE && WII + select I2C_GPIO + select I2C + default y + help + Say Y here to support the audio/video encoder found in the + Nintendo Wii video game console. + config FB_AU1100 bool "Au1100 LCD Driver" |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/kernel In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/kernel Modified Files: kexec.c Log Message: Merge v2.6.32. Index: kexec.c =================================================================== RCS file: /cvsroot/gc-linux/linux/kernel/kexec.c,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** kexec.c 9 Dec 2009 18:18:07 -0000 1.6 --- kexec.c 9 Dec 2009 18:44:55 -0000 1.7 *************** *** 581,590 **** ! static int kimage_add_page(struct kimage *image, unsigned long page) { int result; page &= PAGE_MASK; ! result = kimage_add_entry(image, page | IND_SOURCE); if (result == 0) image->destination += PAGE_SIZE; --- 581,591 ---- ! static inline int kimage_add_page_with_flags(struct kimage *image, ! unsigned long page, int flags) { int result; page &= PAGE_MASK; ! result = kimage_add_entry(image, page | (flags & ~PAGE_MASK)); if (result == 0) image->destination += PAGE_SIZE; *************** *** 593,596 **** --- 594,607 ---- } + static int kimage_add_page(struct kimage *image, unsigned long page) + { + return kimage_add_page_with_flags(image, page, IND_SOURCE); + } + + static int kimage_add_page_noalloc(struct kimage *image, unsigned long page) + { + return kimage_add_page_with_flags(image, page, IND_SOURCE|IND_NOALLOC); + } + static void kimage_free_extra_pages(struct kimage *image) *************** *** 611,614 **** --- 622,646 ---- } + int kimage_add_preserved_region(struct kimage *image, unsigned long to, + unsigned long from, int length) + { + int result = 0; + + if (length > 0) { + result = kimage_set_destination(image, to); + if (result < 0) + goto out; + while (length > 0) { + result = kimage_add_page_noalloc(image, from); + if (result < 0) + goto out; + from += PAGE_SIZE; + length -= PAGE_SIZE; + } + } + out: + return result; + } + #define for_each_kimage_entry(image, ptr, entry) \ for (ptr = &image->head; (entry = *ptr) && !(entry & IND_DONE); \ *************** *** 642,648 **** */ ind = entry; } - else if (entry & IND_SOURCE) - kimage_free_entry(entry); } /* Free the final indirection page */ --- 674,682 ---- */ ind = entry; + } else if (entry & IND_SOURCE) { + /* free only entries that we really allocated */ + if (!(entry & IND_NOALLOC)) + kimage_free_entry(entry); } } /* Free the final indirection page */ |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/arch/powerpc/mm In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/arch/powerpc/mm Modified Files: pgtable_32.c Log Message: Merge v2.6.32. Index: pgtable_32.c =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/mm/pgtable_32.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** pgtable_32.c 9 Dec 2009 18:40:09 -0000 1.10 --- pgtable_32.c 9 Dec 2009 18:44:54 -0000 1.11 *************** *** 193,199 **** */ if (mem_init_done && (p < virt_to_phys(high_memory))) { ! printk("__ioremap(): phys addr 0x%llx is RAM lr %p\n", ! (unsigned long long)p, __builtin_return_address(0)); ! return NULL; } #endif --- 193,209 ---- */ if (mem_init_done && (p < virt_to_phys(high_memory))) { ! /* ! * On some systems, though, we may want to remap normal RAM ! * that we have memreserve'd at the device tree. ! * But we can't do that safely if we are using BATs. ! * ! */ ! if (!__map_without_bats) { ! printk(KERN_WARNING ! "__ioremap(): phys addr 0x%llx is RAM lr %p\n", ! (unsigned long long)p, ! __builtin_return_address(0)); ! return NULL; ! } } #endif |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/drivers/mmc/host In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/drivers/mmc/host Modified Files: Kconfig Makefile Log Message: Merge v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/mmc/host/Makefile,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Makefile 9 Dec 2009 18:40:10 -0000 1.6 --- Makefile 9 Dec 2009 18:44:55 -0000 1.7 *************** *** 17,20 **** --- 17,21 ---- obj-$(CONFIG_MMC_SDHCI_PLTFM) += sdhci-pltfm.o obj-$(CONFIG_MMC_SDHCI_S3C) += sdhci-s3c.o + obj-$(CONFIG_MMC_SDHCI_HLWD) += sdhci-hlwd.o obj-$(CONFIG_MMC_WBSD) += wbsd.o obj-$(CONFIG_MMC_AU1X) += au1xmmc.o Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/mmc/host/Kconfig,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Kconfig 9 Dec 2009 18:40:09 -0000 1.6 --- Kconfig 9 Dec 2009 18:44:55 -0000 1.7 *************** *** 120,123 **** --- 120,133 ---- YMMV. + config MMC_SDHCI_HLWD + tristate "Nintendo Wii (Hollywood) SDHCI support" + depends on MMC_SDHCI && STARLET_MINI + select MMC_SDHCI_IO_ACCESSORS + help + This selects the Nintendo Wii Secure Digital Host Controller + Interface contained in the Hollywood chipset. + + If unsure, say N. + config MMC_OMAP tristate "TI OMAP Multimedia Card Interface support" |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/drivers/video/logo In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/drivers/video/logo Modified Files: Kconfig Makefile logo.c Log Message: Merge v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/logo/Makefile,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Makefile 9 Dec 2009 18:18:07 -0000 1.13 --- Makefile 9 Dec 2009 18:44:55 -0000 1.14 *************** *** 8,11 **** --- 8,12 ---- obj-$(CONFIG_LOGO_BLACKFIN_VGA16) += logo_blackfin_vga16.o obj-$(CONFIG_LOGO_DEC_CLUT224) += logo_dec_clut224.o + obj-$(CONFIG_LOGO_GAMECUBE_CLUT224) += logo_gcn_clut224.o obj-$(CONFIG_LOGO_MAC_CLUT224) += logo_mac_clut224.o obj-$(CONFIG_LOGO_PARISC_CLUT224) += logo_parisc_clut224.o Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/logo/Kconfig,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Kconfig 9 Dec 2009 18:18:07 -0000 1.13 --- Kconfig 9 Dec 2009 18:44:55 -0000 1.14 *************** *** 43,46 **** --- 43,51 ---- default y + config LOGO_GAMECUBE_CLUT224 + bool "224-color GameCube Linux logo" + depends on GAMECUBE + default y + config LOGO_MAC_CLUT224 bool "224-color Macintosh Linux logo" Index: logo.c =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/logo/logo.c,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** logo.c 9 Dec 2009 18:18:07 -0000 1.13 --- logo.c 9 Dec 2009 18:44:55 -0000 1.14 *************** *** 76,79 **** --- 76,83 ---- logo = &logo_dec_clut224; #endif + #ifdef CONFIG_LOGO_GAMECUBE_CLUT224 + /* GameCube Linux logo */ + logo = &logo_gcn_clut224; + #endif #ifdef CONFIG_LOGO_MAC_CLUT224 /* Macintosh Linux logo on m68k */ |
From: Albert H. <he...@us...> - 2009-12-09 18:45:03
|
Update of /cvsroot/gc-linux/linux/arch/powerpc/boot/dts In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/arch/powerpc/boot/dts Modified Files: gamecube.dts wii.dts Log Message: Merge v2.6.32. Index: gamecube.dts =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/boot/dts/gamecube.dts,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** gamecube.dts 1 Feb 2009 18:29:34 -0000 1.8 --- gamecube.dts 9 Dec 2009 18:44:54 -0000 1.9 *************** *** 13,16 **** --- 13,18 ---- */ + /dts-v1/; + / { model = "NintendoGameCube"; *************** *** 21,25 **** chosen { bootargs = "root=/dev/nfs nfsroot=192.168.001.253:/nfsroot/cube,nfsvers=3,udp ip=on video=gcn-vifb:tv=auto force_keyboard_port=4"; ! linux,stdout-path = "/exi@0c006800/usbgecko@0c006814"; }; --- 23,31 ---- chosen { bootargs = "root=/dev/nfs nfsroot=192.168.001.253:/nfsroot/cube,nfsvers=3,udp ip=on video=gcn-vifb:tv=auto force_keyboard_port=4"; ! linux,stdout-path = &USBGECKO0; ! }; ! ! aliases { ! ugecon = &USBGECKO0; }; *************** *** 27,31 **** device_type = "memory"; /* 24M minus framebuffer memory area (640*576*2*2) */ ! reg = <00000000 01698000>; }; --- 33,37 ---- device_type = "memory"; /* 24M minus framebuffer memory area (640*576*2*2) */ ! reg = <0x00000000 0x01698000>; }; *************** *** 37,71 **** device_type = "cpu"; reg = <0>; ! clock-frequency = <1cf7c580>; /* 486MHz */ ! bus-frequency = <9a7ec80>; /* 162MHz core-to-bus 3x */ ! timebase-frequency = <269fb20>; /* 162MHz / 4 */ /* Following required by dtc but not used */ ! i-cache-line-size = <20>; ! d-cache-line-size = <20>; ! i-cache-size = <8000>; ! d-cache-size = <8000>; ! }; ! }; ! ! pic: pic@0c003000 { ! #interrupt-cells = <1>; ! compatible = "nintendo,flipper-pic"; ! reg = <0c003000 8>; ! interrupt-controller; ! }; ! ! /* External Interface bus */ ! exi@0c006800 { ! #address-cells = <1>; ! #size-cells = <1>; ! compatible = "nintendo,flipper-exi"; ! reg = <0c006800 40>; ! interrupts = <04>; ! interrupt-parent = <&pic>; ! ! udbg_console: usbgecko@0c006814 { ! compatible = "usbgecko,usbgecko"; ! reg = <0c006814 14>; ! virtual-reg = <cc006814>; }; }; --- 43,54 ---- device_type = "cpu"; reg = <0>; ! clock-frequency = <486000000>; /* 486MHz */ ! bus-frequency = <162000000>; /* 162MHz core-to-bus 3x */ ! timebase-frequency = <40500000>; /* 162MHz / 4 */ /* Following required by dtc but not used */ ! i-cache-line-size = <32>; ! d-cache-line-size = <32>; ! i-cache-size = <32768>; ! d-cache-size = <32768>; }; }; *************** *** 78,97 **** model = "flipper"; compatible = "nintendo,flipper"; ! clock-frequency = <9a7ec80>; /* 162MHz */ ! ranges = <0c000000 0c000000 00010000>; video@0c002000 { compatible = "nintendo,flipper-video"; ! reg = <0c002000 100>; ! interrupts = <08>; interrupt-parent = <&pic>; ! xfb-start = <01698000>; /* end-of-ram - xfb-size */ ! xfb-size = <168000>; }; resetswitch@0c003000 { compatible = "nintendo,flipper-resetswitch"; ! reg = <0c003000 4>; ! interrupts = <01>; interrupt-parent = <&pic>; }; --- 61,87 ---- model = "flipper"; compatible = "nintendo,flipper"; ! clock-frequency = <162000000>; /* 162MHz */ ! ranges = <0x0c000000 0x0c000000 0x00010000>; video@0c002000 { compatible = "nintendo,flipper-video"; ! reg = <0x0c002000 0x100>; ! interrupts = <8>; interrupt-parent = <&pic>; ! xfb-start = <0x01698000>; /* end-of-ram - xfb-size */ ! xfb-size = <0x168000>; ! }; ! ! pic: pic@0c003000 { ! #interrupt-cells = <1>; ! compatible = "nintendo,flipper-pic"; ! reg = <0x0c003000 0x8>; ! interrupt-controller; }; resetswitch@0c003000 { compatible = "nintendo,flipper-resetswitch"; ! reg = <0x0c003000 0x4>; ! interrupts = <1>; interrupt-parent = <&pic>; }; *************** *** 99,104 **** auxram@0c005000 { compatible = "nintendo,flipper-auxram"; ! reg = <0c005000 200>; /* DSP */ ! interrupts = <06>; interrupt-parent = <&pic>; }; --- 89,94 ---- auxram@0c005000 { compatible = "nintendo,flipper-auxram"; ! reg = <0x0c005000 0x200>; /* DSP */ ! interrupts = <6>; interrupt-parent = <&pic>; }; *************** *** 106,112 **** audio@0c005000 { compatible = "nintendo,flipper-audio"; ! reg = <0c005000 200 /* DSP */ ! 0c006c00 20>; /* AI */ ! interrupts = <06>; interrupt-parent = <&pic>; }; --- 96,102 ---- audio@0c005000 { compatible = "nintendo,flipper-audio"; ! reg = <0x0c005000 0x200 /* DSP */ ! 0x0c006c00 0x20>; /* AI */ ! interrupts = <6>; interrupt-parent = <&pic>; }; *************** *** 114,119 **** disk@0c006000 { compatible = "nintendo,flipper-disk"; ! reg = <0c006000 40>; ! interrupts = <02>; interrupt-parent = <&pic>; }; --- 104,109 ---- disk@0c006000 { compatible = "nintendo,flipper-disk"; ! reg = <0x0c006000 0x40>; ! interrupts = <2>; interrupt-parent = <&pic>; }; *************** *** 121,127 **** serial@0c006400 { compatible = "nintendo,flipper-serial"; ! reg = <0c006400 100>; ! interrupts = <03>; interrupt-parent = <&pic>; }; }; --- 111,133 ---- serial@0c006400 { compatible = "nintendo,flipper-serial"; ! reg = <0x0c006400 0x100>; ! interrupts = <3>; ! interrupt-parent = <&pic>; ! }; ! ! /* External Interface bus */ ! exi@0c006800 { ! #address-cells = <1>; ! #size-cells = <1>; ! compatible = "nintendo,flipper-exi"; ! reg = <0x0c006800 0x40>; ! interrupts = <4>; interrupt-parent = <&pic>; + + USBGECKO0: usbgecko@0c006814 { + compatible = "usbgecko,usbgecko"; + reg = <0x0c006814 0x14>; + virtual-reg = <0xcc006814>; + }; }; }; Index: wii.dts =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/boot/dts/wii.dts,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** wii.dts 25 Oct 2009 18:50:26 -0000 1.14 --- wii.dts 9 Dec 2009 18:44:54 -0000 1.15 *************** *** 13,21 **** */ ! /memreserve/ 01694000-01697fff; /* lowmem stub save area */ ! /memreserve/ 01698000-017fffff; /* framebuffer, see video@0c002000 */ ! /memreserve/ 01800000-0fffffff; /* memory hole */ ! /memreserve/ 10000000-10003fff; /* DSP */ / { --- 13,22 ---- */ + /dts-v1/; ! /memreserve/ 0x01694000 0x0004000; /* lowmem stub save area */ ! /memreserve/ 0x01698000 0x0168000; /* framebuffer, see video@0c002000 */ ! /memreserve/ 0x01800000 0xe800000; /* memory hole */ ! /memreserve/ 0x10000000 0x0004000; /* DSP */ / { *************** *** 42,47 **** lowmem-stub { ! reg = <00000000 4000>; ! save-area = <01694000>; /* must be memreserve'd */ }; --- 43,48 ---- lowmem-stub { ! reg = <0x00000000 0x4000>; ! save-area = <0x01694000>; /* must be memreserve'd */ }; *************** *** 49,53 **** device_type = "memory"; /* mem1 + hole + mem2 - ioh */ ! reg = <00000000 133e0000>; }; --- 50,54 ---- device_type = "memory"; /* mem1 + hole + mem2 - ioh */ ! reg = <0x00000000 0x133e0000>; }; *************** *** 60,71 **** device_type = "cpu"; reg = <0>; ! clock-frequency = <2b73a840>; /* 729MHz */ ! bus-frequency = <e7be2c0>; /* 243MHz core-to-bus 3x */ ! timebase-frequency = <39ef8b0>; /* 243MHz / 4 */ /* Following required by dtc but not used */ ! i-cache-line-size = <20>; ! d-cache-line-size = <20>; ! i-cache-size = <8000>; ! d-cache-size = <8000>; }; }; --- 61,72 ---- device_type = "cpu"; reg = <0>; ! clock-frequency = <729000000>; /* 729MHz */ ! bus-frequency = <243000000>; /* 243MHz core-to-bus 3x */ ! timebase-frequency = <60750000>; /* 243MHz / 4 */ /* Following required by dtc but not used */ ! i-cache-line-size = <32>; ! d-cache-line-size = <32>; ! i-cache-size = <32768>; ! d-cache-size = <32768>; }; }; *************** *** 78,95 **** model = "hollywood"; compatible = "nintendo,hollywood"; ! clock-frequency = <e7be2c0>; /* 243MHz */ ! ranges = <0c000000 0c000000 00010000 ! 0d000000 0d000000 00010000 ! 0d040000 0d040000 00050000 ! 0d800000 0d800000 00001000 ! 133e0000 133e0000 00c20000>; video@0c002000 { compatible = "nintendo,hollywood-video"; ! reg = <0c002000 100>; ! interrupts = <08>; interrupt-parent = <&PIC0>; ! xfb-start = <01698000>; /* end-of-mem1 - xfb-size */ ! xfb-size = <168000>; /* 640x576x2 x 2 bytes */ }; --- 79,96 ---- model = "hollywood"; compatible = "nintendo,hollywood"; ! clock-frequency = <243000000>; /* 243MHz */ ! ranges = <0x0c000000 0x0c000000 0x00010000 ! 0x0d000000 0x0d000000 0x00010000 ! 0x0d040000 0x0d040000 0x00050000 ! 0x0d800000 0x0d800000 0x00007000 ! 0x133e0000 0x133e0000 0x00c20000>; video@0c002000 { compatible = "nintendo,hollywood-video"; ! reg = <0x0c002000 0x100>; ! interrupts = <8>; interrupt-parent = <&PIC0>; ! xfb-start = <0x01698000>; /* end-of-mem1 - xfb-size */ ! xfb-size = <0x168000>; /* 640x576x2 x 2 bytes */ }; *************** *** 97,101 **** #interrupt-cells = <1>; compatible = "nintendo,flipper-pic"; ! reg = <0c003000 8>; interrupt-controller; }; --- 98,102 ---- #interrupt-cells = <1>; compatible = "nintendo,flipper-pic"; ! reg = <0x0c003000 0x8>; interrupt-controller; }; *************** *** 103,108 **** resetswitch@0c003000 { compatible = "nintendo,hollywood-resetswitch"; ! reg = <0c003000 4>; ! interrupts = <01>; interrupt-parent = <&PIC0>; }; --- 104,109 ---- resetswitch@0c003000 { compatible = "nintendo,hollywood-resetswitch"; ! reg = <0x0c003000 0x4>; ! interrupts = <1>; interrupt-parent = <&PIC0>; }; *************** *** 110,116 **** audio@0c005000 { compatible = "nintendo,hollywood-audio"; ! reg = <0c005000 200 /* DSP */ ! 0d006c00 20>; /* AI */ ! interrupts = <06>; interrupt-parent = <&PIC0>; }; --- 111,117 ---- audio@0c005000 { compatible = "nintendo,hollywood-audio"; ! reg = <0x0c005000 0x200 /* DSP */ ! 0x0d006c00 0x20>; /* AI */ ! interrupts = <6>; interrupt-parent = <&PIC0>; }; *************** *** 118,123 **** serial@0d006400 { compatible = "nintendo,hollywood-serial"; ! reg = <0d006400 100>; ! interrupts = <03>; interrupt-parent = <&PIC0>; }; --- 119,124 ---- serial@0d006400 { compatible = "nintendo,hollywood-serial"; ! reg = <0x0d006400 0x100>; ! interrupts = <3>; interrupt-parent = <&PIC0>; }; *************** *** 128,139 **** #size-cells = <1>; compatible = "nintendo,hollywood-exi"; ! reg = <0d006800 40>; ! interrupts = <04>; interrupt-parent = <&PIC0>; USBGECKO0: usbgecko@0d006814 { compatible = "usbgecko,usbgecko"; ! reg = <0d006814 14>; ! virtual-reg = <cd006814>; }; }; --- 129,140 ---- #size-cells = <1>; compatible = "nintendo,hollywood-exi"; ! reg = <0x0d006800 0x40>; ! interrupts = <4>; interrupt-parent = <&PIC0>; USBGECKO0: usbgecko@0d006814 { compatible = "usbgecko,usbgecko"; ! reg = <0x0d006814 0x14>; ! virtual-reg = <0xcd006814>; }; }; *************** *** 144,150 **** ios@0d000000 { compatible = "nintendo,starlet-ios-ipc"; ! reg = <0d000000 40 /* IPC */ ! 133e0000 20000>; /* MEM2 ioh 128K */ ! interrupts = <0e>; interrupt-parent = <&PIC0>; --- 145,151 ---- ios@0d000000 { compatible = "nintendo,starlet-ios-ipc"; ! reg = <0x0d000000 0x40 /* IPC */ ! 0x133e0000 0x20000>; /* MEM2 ioh 128K */ ! interrupts = <14>; interrupt-parent = <&PIC0>; *************** *** 175,225 **** #interrupt-cells = <1>; compatible = "twiizers,starlet-mini-ipc"; ! reg = <0d000000 40 /* IPC */ ! 13fffffc 4>; /* mini header pointer */ ! ranges = <0d040000 0d040000 00050000 ! 0d800000 0d800000 00001000 ! 133e0000 133e0000 00c20000>; PIC1: pic1@0d800030 { #interrupt-cells = <1>; compatible = "nintendo,hollywood-pic"; ! reg = <0d800030 8>; interrupt-controller; ! interrupts = <0e>; interrupt-parent = <&PIC0>; }; ehci@0d040000 { compatible = "nintendo,hollywood-ehci"; ! reg = <0d040000 100 ! 133e0000 80000>; /* 512 KB */ ! interrupts = <04>; interrupt-parent = <&PIC1>; }; ohci0@0d050000 { compatible = "nintendo,hollywood-ohci"; ! reg = <0d050000 100 ! 13460000 80000>; /* 512 KB */ ! interrupts = <05>; interrupt-parent = <&PIC1>; }; ohci1@0d060000 { compatible = "nintendo,hollywood-ohci"; ! reg = <0d060000 100 ! 134e0000 80000>; /* 512 KB */ ! interrupts = <06>; interrupt-parent = <&PIC1>; }; sdhc0@0d070000 { compatible = "nintendo,hollywood-sdhci"; ! reg = <0d070000 200>; ! interrupts = <07>; interrupt-parent = <&PIC1>; }; }; ! gpio0: starlet-gpio@0d8000c0 { ! compatible = "nintendo,starlet-gpio"; ! reg = <0d8000c0 4>; gpio-controller; #gpio-cells = <2>; --- 176,238 ---- #interrupt-cells = <1>; compatible = "twiizers,starlet-mini-ipc"; ! reg = <0x0d000000 0x40 /* IPC */ ! 0x13fffffc 0x4>; /* mini header pointer */ ! ranges = <0x0d040000 0x0d040000 0x00050000 ! 0x0d800000 0x0d800000 0x00007000 ! 0x133e0000 0x133e0000 0x00c20000>; PIC1: pic1@0d800030 { #interrupt-cells = <1>; compatible = "nintendo,hollywood-pic"; ! reg = <0x0d800030 0x8>; interrupt-controller; ! interrupts = <14>; ! interrupt-parent = <&PIC0>; ! }; ! disk@0d806000 { ! compatible = "nintendo,hollywood-disk"; ! reg = <0x0d806000 0x40>; ! interrupts = <2>; interrupt-parent = <&PIC0>; }; ehci@0d040000 { compatible = "nintendo,hollywood-ehci"; ! reg = <0x0d040000 0x100 ! 0x133e0000 0x80000>; /* 512 KB */ ! interrupts = <4>; interrupt-parent = <&PIC1>; }; ohci0@0d050000 { compatible = "nintendo,hollywood-ohci"; ! reg = <0x0d050000 0x100 ! 0x13460000 0x80000>; /* 512 KB */ ! interrupts = <5>; interrupt-parent = <&PIC1>; }; ohci1@0d060000 { compatible = "nintendo,hollywood-ohci"; ! reg = <0x0d060000 0x100 ! 0x134e0000 0x80000>; /* 512 KB */ ! interrupts = <6>; interrupt-parent = <&PIC1>; }; sdhc0@0d070000 { compatible = "nintendo,hollywood-sdhci"; ! reg = <0x0d070000 0x200>; ! interrupts = <7>; ! interrupt-parent = <&PIC1>; ! }; ! sdhc1@0d080000 { ! compatible = "nintendo,hollywood-sdhci"; ! reg = <0x0d080000 0x200>; ! interrupts = <8>; interrupt-parent = <&PIC1>; }; }; ! gpio0: hollywood-gpio@0d8000c0 { ! compatible = "nintendo,hollywood-gpio"; ! reg = <0x0d8000c0 0x4>; gpio-controller; #gpio-cells = <2>; *************** *** 231,236 **** compatible = "virtual,i2c-gpio"; ! gpios = <&gpio0 10 0 /* 0x10 = 31 - 15 */ ! &gpio0 11 0 /* 0x11 = 31 - 14 */ >; sda-is-open-drain = <1>; --- 244,249 ---- compatible = "virtual,i2c-gpio"; ! gpios = <&gpio0 16 0 /* 31-15 */ ! &gpio0 17 0 /* 31-14 */ >; sda-is-open-drain = <1>; *************** *** 242,246 **** audio-video-encoder { compatible = "nintendo,wii-ave-rvl"; ! reg = <70>; }; }; --- 255,259 ---- audio-video-encoder { compatible = "nintendo,wii-ave-rvl"; ! reg = <0x70>; }; }; |
From: Albert H. <he...@us...> - 2009-12-09 18:45:02
|
Update of /cvsroot/gc-linux/linux/arch/powerpc/kernel In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/arch/powerpc/kernel Modified Files: cputable.c dma.c head_32.S udbg.c Log Message: Merge v2.6.32. Index: udbg.c =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/kernel/udbg.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** udbg.c 9 Dec 2009 18:18:06 -0000 1.10 --- udbg.c 9 Dec 2009 18:44:54 -0000 1.11 *************** *** 61,64 **** --- 61,66 ---- #elif defined(CONFIG_PPC_EARLY_DEBUG_CPM) udbg_init_cpm(); + #elif defined(CONFIG_PPC_EARLY_DEBUG_USBGECKO) + udbg_init_usbgecko(); #endif Index: dma.c =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/kernel/dma.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** dma.c 9 Dec 2009 18:40:09 -0000 1.7 --- dma.c 9 Dec 2009 18:44:54 -0000 1.8 *************** *** 28,31 **** --- 28,34 ---- void *ret; #ifdef CONFIG_NOT_COHERENT_CACHE + if (dma_alloc_from_coherent(dev, size, dma_handle, &ret)) + return ret; + ret = __dma_alloc_coherent(dev, size, dma_handle, flag); if (ret == NULL) *************** *** 55,58 **** --- 58,63 ---- { #ifdef CONFIG_NOT_COHERENT_CACHE + if (dma_release_from_coherent(dev, get_order(size), vaddr)) + return; __dma_free_coherent(size, vaddr); #else Index: head_32.S =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/kernel/head_32.S,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** head_32.S 9 Dec 2009 18:40:09 -0000 1.16 --- head_32.S 9 Dec 2009 18:44:54 -0000 1.17 *************** *** 165,168 **** --- 165,171 ---- bl setup_cpm_bat #endif + #ifdef CONFIG_PPC_EARLY_DEBUG_USBGECKO + bl setup_usbgecko_bat + #endif /* *************** *** 1204,1207 **** --- 1207,1228 ---- #endif + #ifdef CONFIG_PPC_EARLY_DEBUG_USBGECKO + setup_usbgecko_bat: + /* prepare a BAT for early io */ + lis r8, 0x0c00 + ori r8, r8, 0x002a /* uncached, guarded ,rw */ + lis r11, 0xcc00 + ori r11, r11, 0x3 /* 128K */ + #ifdef CONFIG_WII + oris r8, r8, 0x0100 + oris r11, r11, 0x0100 + #endif + mtspr SPRN_DBAT1L, r8 + mtspr SPRN_DBAT1U, r11 + sync + isync + blr + #endif + #ifdef CONFIG_8260 /* Jump into the system reset for the rom. Index: cputable.c =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/kernel/cputable.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** cputable.c 9 Dec 2009 18:40:09 -0000 1.15 --- cputable.c 9 Dec 2009 18:44:54 -0000 1.16 *************** *** 698,708 **** .platform = "ppc750", }, ! { /* 750CL */ ! .pvr_mask = 0xfffff0f0, ! .pvr_value = 0x00087010, ! .cpu_name = "750CL", ! .cpu_features = CPU_FTRS_750CL, .cpu_user_features = COMMON_USER | PPC_FEATURE_PPC_LE, ! .mmu_features = MMU_FTR_HPTE_TABLE | MMU_FTR_USE_HIGH_BATS, .icache_bsize = 32, .dcache_bsize = 32, --- 698,708 ---- .platform = "ppc750", }, ! { /* 745/755 */ ! .pvr_mask = 0xfffff000, ! .pvr_value = 0x00083000, ! .cpu_name = "745/755", ! .cpu_features = CPU_FTRS_750, .cpu_user_features = COMMON_USER | PPC_FEATURE_PPC_LE, ! .mmu_features = MMU_FTR_HPTE_TABLE, .icache_bsize = 32, .dcache_bsize = 32, *************** *** 712,725 **** .machine_check = machine_check_generic, .platform = "ppc750", - .oprofile_cpu_type = "ppc/750", - .oprofile_type = PPC_OPROFILE_G4, }, ! { /* 745/755 */ ! .pvr_mask = 0xfffff000, ! .pvr_value = 0x00083000, ! .cpu_name = "745/755", ! .cpu_features = CPU_FTRS_750, .cpu_user_features = COMMON_USER | PPC_FEATURE_PPC_LE, ! .mmu_features = MMU_FTR_HPTE_TABLE, .icache_bsize = 32, .dcache_bsize = 32, --- 712,723 ---- .machine_check = machine_check_generic, .platform = "ppc750", }, ! { /* 750CL (and "Broadway") */ ! .pvr_mask = 0xfffff0e0, ! .pvr_value = 0x00087000, ! .cpu_name = "750CL", ! .cpu_features = CPU_FTRS_750CL, .cpu_user_features = COMMON_USER | PPC_FEATURE_PPC_LE, ! .mmu_features = MMU_FTR_HPTE_TABLE | MMU_FTR_USE_HIGH_BATS, .icache_bsize = 32, .dcache_bsize = 32, *************** *** 729,732 **** --- 727,732 ---- .machine_check = machine_check_generic, .platform = "ppc750", + .oprofile_cpu_type = "ppc/750", + .oprofile_type = PPC_OPROFILE_G4, }, { /* 750FX rev 1.x */ |
From: Albert H. <he...@us...> - 2009-12-09 18:45:02
|
Update of /cvsroot/gc-linux/linux/arch/powerpc In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/arch/powerpc Modified Files: Kconfig Kconfig.debug Log Message: Merge v2.6.32. Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/Kconfig,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Kconfig 9 Dec 2009 18:40:08 -0000 1.15 --- Kconfig 9 Dec 2009 18:44:54 -0000 1.16 *************** *** 680,684 **** bool "PCI support" if PPC_PCI_CHOICE default y if !40x && !CPM2 && !8xx && !PPC_83xx \ ! && !PPC_85xx && !PPC_86xx default PCI_PERMEDIA if !4xx && !CPM2 && !8xx default PCI_QSPAN if !4xx && !CPM2 && 8xx --- 680,684 ---- bool "PCI support" if PPC_PCI_CHOICE default y if !40x && !CPM2 && !8xx && !PPC_83xx \ ! && !PPC_85xx && !PPC_86xx && !GAMECUBE_COMMON default PCI_PERMEDIA if !4xx && !CPM2 && !8xx default PCI_QSPAN if !4xx && !CPM2 && 8xx Index: Kconfig.debug =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/Kconfig.debug,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Kconfig.debug 9 Dec 2009 18:18:06 -0000 1.13 --- Kconfig.debug 9 Dec 2009 18:44:54 -0000 1.14 *************** *** 255,258 **** --- 255,266 ---- has run, and set up the CPM in a particular way. + config PPC_EARLY_DEBUG_USBGECKO + bool "Early debugging through the USB Gecko adapter" + depends on GAMECUBE_COMMON + select USBGECKO_UDBG + help + Select this to enable early debugging for Nintendo GameCube/Wii + consoles via an external USB Gecko adapter. + endchoice |
From: Albert H. <he...@us...> - 2009-12-09 18:45:02
|
Update of /cvsroot/gc-linux/linux/arch/powerpc/boot In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22540/arch/powerpc/boot Modified Files: Makefile wrapper Log Message: Merge v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/boot/Makefile,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Makefile 9 Dec 2009 18:40:09 -0000 1.15 --- Makefile 9 Dec 2009 18:44:54 -0000 1.16 *************** *** 67,71 **** 4xx.c ebony.c mv64x60.c mpsc.c mv64x60_i2c.c cuboot.c bamboo.c \ cpm-serial.c stdlib.c mpc52xx-psc.c planetcore.c uartlite.c \ ! fsl-soc.c mpc8xx.c pq2.c src-plat := of.c cuboot-52xx.c cuboot-824x.c cuboot-83xx.c cuboot-85xx.c holly.c \ cuboot-ebony.c cuboot-hotfoot.c treeboot-ebony.c prpmc2800.c \ --- 67,71 ---- 4xx.c ebony.c mv64x60.c mpsc.c mv64x60_i2c.c cuboot.c bamboo.c \ cpm-serial.c stdlib.c mpc52xx-psc.c planetcore.c uartlite.c \ ! fsl-soc.c mpc8xx.c pq2.c ugecon.c src-plat := of.c cuboot-52xx.c cuboot-824x.c cuboot-83xx.c cuboot-85xx.c holly.c \ cuboot-ebony.c cuboot-hotfoot.c treeboot-ebony.c prpmc2800.c \ *************** *** 77,81 **** cuboot-warp.c cuboot-85xx-cpm2.c cuboot-yosemite.c simpleboot.c \ virtex405-head.S virtex.c redboot-83xx.c cuboot-sam440ep.c \ ! cuboot-acadia.c cuboot-amigaone.c cuboot-kilauea.c src-boot := $(src-wlib) $(src-plat) empty.c --- 77,82 ---- cuboot-warp.c cuboot-85xx-cpm2.c cuboot-yosemite.c simpleboot.c \ virtex405-head.S virtex.c redboot-83xx.c cuboot-sam440ep.c \ ! cuboot-acadia.c cuboot-amigaone.c cuboot-kilauea.c \ ! gamecube.c wii.c src-boot := $(src-wlib) $(src-plat) empty.c *************** *** 255,258 **** --- 256,261 ---- image-$(CONFIG_MPC7448HPC2) += cuImage.mpc7448hpc2 image-$(CONFIG_PPC_C2K) += cuImage.c2k + image-$(CONFIG_GAMECUBE) += dtbImage.gamecube + image-$(CONFIG_WII) += dtbImage.wii # Board port in arch/powerpc/platform/amigaone/Kconfig Index: wrapper =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/boot/wrapper,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** wrapper 9 Dec 2009 18:40:09 -0000 1.7 --- wrapper 9 Dec 2009 18:44:54 -0000 1.8 *************** *** 231,234 **** --- 231,237 ---- platformo=$object/cuboot-85xx.o ;; + wii|gamecube) + link_address='0x600000' + ;; esac |
From: Albert H. <he...@us...> - 2009-12-09 18:43:09
|
Update of /cvsroot/gc-linux/linux/include/linux In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22341/include/linux Added Files: kernel.h Log Message: Add new files for v2.6.32. --- NEW FILE: kernel.h --- #ifndef _LINUX_KERNEL_H #define _LINUX_KERNEL_H /* * 'kernel.h' contains some often-used function prototypes etc */ #ifdef __KERNEL__ #include <stdarg.h> #include <linux/linkage.h> #include <linux/stddef.h> #include <linux/types.h> #include <linux/compiler.h> #include <linux/bitops.h> #include <linux/log2.h> #include <linux/typecheck.h> #include <linux/ratelimit.h> #include <linux/dynamic_debug.h> #include <asm/byteorder.h> #include <asm/bug.h> extern const char linux_banner[]; extern const char linux_proc_banner[]; #define USHORT_MAX ((u16)(~0U)) #define SHORT_MAX ((s16)(USHORT_MAX>>1)) #define SHORT_MIN (-SHORT_MAX - 1) #define INT_MAX ((int)(~0U>>1)) #define INT_MIN (-INT_MAX - 1) #define UINT_MAX (~0U) #define LONG_MAX ((long)(~0UL>>1)) #define LONG_MIN (-LONG_MAX - 1) #define ULONG_MAX (~0UL) #define LLONG_MAX ((long long)(~0ULL>>1)) #define LLONG_MIN (-LLONG_MAX - 1) #define ULLONG_MAX (~0ULL) #define STACK_MAGIC 0xdeadbeef #define ALIGN(x,a) __ALIGN_MASK(x,(typeof(x))(a)-1) #define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask)) #define PTR_ALIGN(p, a) ((typeof(p))ALIGN((unsigned long)(p), (a))) #define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0) #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) #define FIELD_SIZEOF(t, f) (sizeof(((t*)0)->f)) #define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d)) #define roundup(x, y) ((((x) + ((y) - 1)) / (y)) * (y)) #define DIV_ROUND_CLOSEST(x, divisor)( \ { \ typeof(divisor) __divisor = divisor; \ (((x) + ((__divisor) / 2)) / (__divisor)); \ } \ ) #define _RET_IP_ (unsigned long)__builtin_return_address(0) #define _THIS_IP_ ({ __label__ __here; __here: (unsigned long)&&__here; }) #ifdef CONFIG_LBDAF # include <asm/div64.h> # define sector_div(a, b) do_div(a, b) #else # define sector_div(n, b)( \ { \ int _res; \ _res = (n) % (b); \ (n) /= (b); \ _res; \ } \ ) #endif /** * upper_32_bits - return bits 32-63 of a number * @n: the number we're accessing * * A basic shift-right of a 64- or 32-bit quantity. Use this to suppress * the "right shift count >= width of type" warning when that quantity is * 32-bits. */ #define upper_32_bits(n) ((u32)(((n) >> 16) >> 16)) /** * lower_32_bits - return bits 0-31 of a number * @n: the number we're accessing */ #define lower_32_bits(n) ((u32)(n)) #define KERN_EMERG "<0>" /* system is unusable */ #define KERN_ALERT "<1>" /* action must be taken immediately */ #define KERN_CRIT "<2>" /* critical conditions */ #define KERN_ERR "<3>" /* error conditions */ #define KERN_WARNING "<4>" /* warning conditions */ #define KERN_NOTICE "<5>" /* normal but significant condition */ #define KERN_INFO "<6>" /* informational */ #define KERN_DEBUG "<7>" /* debug-level messages */ /* Use the default kernel loglevel */ #define KERN_DEFAULT "<d>" /* * Annotation for a "continued" line of log printout (only done after a * line that had no enclosing \n). Only to be used by core/arch code * during early bootup (a continued line is not SMP-safe otherwise). */ #define KERN_CONT "<c>" extern int console_printk[]; #define console_loglevel (console_printk[0]) #define default_message_loglevel (console_printk[1]) #define minimum_console_loglevel (console_printk[2]) #define default_console_loglevel (console_printk[3]) struct completion; struct pt_regs; struct user; #ifdef CONFIG_PREEMPT_VOLUNTARY extern int _cond_resched(void); # define might_resched() _cond_resched() #else # define might_resched() do { } while (0) #endif #ifdef CONFIG_DEBUG_SPINLOCK_SLEEP void __might_sleep(char *file, int line, int preempt_offset); /** * might_sleep - annotation for functions that can sleep * * this macro will print a stack trace if it is executed in an atomic * context (spinlock, irq-handler, ...). * * This is a useful debugging help to be able to catch problems early and not * be bitten later when the calling function happens to sleep when it is not * supposed to. */ # define might_sleep() \ do { __might_sleep(__FILE__, __LINE__, 0); might_resched(); } while (0) #else static inline void __might_sleep(char *file, int line, int preempt_offset) { } # define might_sleep() do { might_resched(); } while (0) #endif #define might_sleep_if(cond) do { if (cond) might_sleep(); } while (0) #define abs(x) ({ \ long __x = (x); \ (__x < 0) ? -__x : __x; \ }) #ifdef CONFIG_PROVE_LOCKING void might_fault(void); #else static inline void might_fault(void) { might_sleep(); } #endif extern struct atomic_notifier_head panic_notifier_list; extern long (*panic_blink)(long time); NORET_TYPE void panic(const char * fmt, ...) __attribute__ ((NORET_AND format (printf, 1, 2))) __cold; extern void oops_enter(void); extern void oops_exit(void); extern int oops_may_print(void); NORET_TYPE void do_exit(long error_code) ATTRIB_NORET; NORET_TYPE void complete_and_exit(struct completion *, long) ATTRIB_NORET; extern unsigned long simple_strtoul(const char *,char **,unsigned int); extern long simple_strtol(const char *,char **,unsigned int); extern unsigned long long simple_strtoull(const char *,char **,unsigned int); extern long long simple_strtoll(const char *,char **,unsigned int); extern int strict_strtoul(const char *, unsigned int, unsigned long *); extern int strict_strtol(const char *, unsigned int, long *); extern int strict_strtoull(const char *, unsigned int, unsigned long long *); extern int strict_strtoll(const char *, unsigned int, long long *); extern int sprintf(char * buf, const char * fmt, ...) __attribute__ ((format (printf, 2, 3))); extern int vsprintf(char *buf, const char *, va_list) __attribute__ ((format (printf, 2, 0))); extern int snprintf(char * buf, size_t size, const char * fmt, ...) __attribute__ ((format (printf, 3, 4))); extern int vsnprintf(char *buf, size_t size, const char *fmt, va_list args) __attribute__ ((format (printf, 3, 0))); extern int scnprintf(char * buf, size_t size, const char * fmt, ...) __attribute__ ((format (printf, 3, 4))); extern int vscnprintf(char *buf, size_t size, const char *fmt, va_list args) __attribute__ ((format (printf, 3, 0))); extern char *kasprintf(gfp_t gfp, const char *fmt, ...) __attribute__ ((format (printf, 2, 3))); extern char *kvasprintf(gfp_t gfp, const char *fmt, va_list args); extern int sscanf(const char *, const char *, ...) __attribute__ ((format (scanf, 2, 3))); extern int vsscanf(const char *, const char *, va_list) __attribute__ ((format (scanf, 2, 0))); extern int get_option(char **str, int *pint); extern char *get_options(const char *str, int nints, int *ints); extern unsigned long long memparse(const char *ptr, char **retptr); extern int core_kernel_text(unsigned long addr); extern int __kernel_text_address(unsigned long addr); extern int kernel_text_address(unsigned long addr); extern int func_ptr_is_kernel_text(void *ptr); struct pid; extern struct pid *session_of_pgrp(struct pid *pgrp); /* * FW_BUG * Add this to a message where you are sure the firmware is buggy or behaves * really stupid or out of spec. Be aware that the responsible BIOS developer * should be able to fix this issue or at least get a concrete idea of the * problem by reading your message without the need of looking at the kernel * code. * * Use it for definite and high priority BIOS bugs. * * FW_WARN * Use it for not that clear (e.g. could the kernel messed up things already?) * and medium priority BIOS bugs. * * FW_INFO * Use this one if you want to tell the user or vendor about something * suspicious, but generally harmless related to the firmware. * * Use it for information or very low priority BIOS bugs. */ #define FW_BUG "[Firmware Bug]: " #define FW_WARN "[Firmware Warn]: " #define FW_INFO "[Firmware Info]: " #ifdef CONFIG_PRINTK asmlinkage int vprintk(const char *fmt, va_list args) __attribute__ ((format (printf, 1, 0))); asmlinkage int printk(const char * fmt, ...) __attribute__ ((format (printf, 1, 2))) __cold; extern struct ratelimit_state printk_ratelimit_state; extern int printk_ratelimit(void); extern bool printk_timed_ratelimit(unsigned long *caller_jiffies, unsigned int interval_msec); extern int printk_delay_msec; /* * Print a one-time message (analogous to WARN_ONCE() et al): */ #define printk_once(x...) ({ \ static bool __print_once = true; \ \ if (__print_once) { \ __print_once = false; \ printk(x); \ } \ }) void log_buf_kexec_setup(void); #else static inline int vprintk(const char *s, va_list args) __attribute__ ((format (printf, 1, 0))); static inline int vprintk(const char *s, va_list args) { return 0; } static inline int printk(const char *s, ...) __attribute__ ((format (printf, 1, 2))); static inline int __cold printk(const char *s, ...) { return 0; } static inline int printk_ratelimit(void) { return 0; } static inline bool printk_timed_ratelimit(unsigned long *caller_jiffies, \ unsigned int interval_msec) \ { return false; } /* No effect, but we still get type checking even in the !PRINTK case: */ #define printk_once(x...) printk(x) static inline void log_buf_kexec_setup(void) { } #endif extern int printk_needs_cpu(int cpu); extern void printk_tick(void); extern void asmlinkage __attribute__((format(printf, 1, 2))) early_printk(const char *fmt, ...); unsigned long int_sqrt(unsigned long); static inline void console_silent(void) { console_loglevel = 0; } static inline void console_verbose(void) { if (console_loglevel) console_loglevel = 15; } extern void bust_spinlocks(int yes); extern void wake_up_klogd(void); extern int oops_in_progress; /* If set, an oops, panic(), BUG() or die() is in progress */ extern int panic_timeout; extern int panic_on_oops; extern int panic_on_unrecovered_nmi; extern int panic_on_io_nmi; extern const char *print_tainted(void); extern void add_taint(unsigned flag); extern int test_taint(unsigned flag); extern unsigned long get_taint(void); extern int root_mountflags; /* Values used for system_state */ extern enum system_states { SYSTEM_BOOTING, SYSTEM_RUNNING, SYSTEM_HALT, SYSTEM_POWER_OFF, SYSTEM_RESTART, SYSTEM_SUSPEND_DISK, } system_state; #define TAINT_PROPRIETARY_MODULE 0 #define TAINT_FORCED_MODULE 1 #define TAINT_UNSAFE_SMP 2 #define TAINT_FORCED_RMMOD 3 #define TAINT_MACHINE_CHECK 4 #define TAINT_BAD_PAGE 5 #define TAINT_USER 6 #define TAINT_DIE 7 #define TAINT_OVERRIDDEN_ACPI_TABLE 8 #define TAINT_WARN 9 #define TAINT_CRAP 10 extern void dump_stack(void) __cold; enum { DUMP_PREFIX_NONE, DUMP_PREFIX_ADDRESS, DUMP_PREFIX_OFFSET }; extern void hex_dump_to_buffer(const void *buf, size_t len, int rowsize, int groupsize, char *linebuf, size_t linebuflen, bool ascii); extern void print_hex_dump(const char *level, const char *prefix_str, int prefix_type, int rowsize, int groupsize, const void *buf, size_t len, bool ascii); extern void print_hex_dump_bytes(const char *prefix_str, int prefix_type, const void *buf, size_t len); extern const char hex_asc[]; #define hex_asc_lo(x) hex_asc[((x) & 0x0f)] #define hex_asc_hi(x) hex_asc[((x) & 0xf0) >> 4] static inline char *pack_hex_byte(char *buf, u8 byte) { *buf++ = hex_asc_hi(byte); *buf++ = hex_asc_lo(byte); return buf; } #ifndef pr_fmt #define pr_fmt(fmt) fmt #endif #define pr_emerg(fmt, ...) \ printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__) #define pr_alert(fmt, ...) \ printk(KERN_ALERT pr_fmt(fmt), ##__VA_ARGS__) #define pr_crit(fmt, ...) \ printk(KERN_CRIT pr_fmt(fmt), ##__VA_ARGS__) #define pr_err(fmt, ...) \ printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) #define pr_warning(fmt, ...) \ printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__) #define pr_notice(fmt, ...) \ printk(KERN_NOTICE pr_fmt(fmt), ##__VA_ARGS__) #define pr_info(fmt, ...) \ printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) #define pr_cont(fmt, ...) \ printk(KERN_CONT fmt, ##__VA_ARGS__) /* pr_devel() should produce zero code unless DEBUG is defined */ #ifdef DEBUG #define pr_devel(fmt, ...) \ printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) #else #define pr_devel(fmt, ...) \ ({ if (0) printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); 0; }) #endif /* If you are writing a driver, please use dev_dbg instead */ #if defined(DEBUG) #define pr_debug(fmt, ...) \ printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) #elif defined(CONFIG_DYNAMIC_DEBUG) /* dynamic_pr_debug() uses pr_fmt() internally so we don't need it here */ #define pr_debug(fmt, ...) do { \ dynamic_pr_debug(fmt, ##__VA_ARGS__); \ } while (0) #else #define pr_debug(fmt, ...) \ ({ if (0) printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); 0; }) #endif /* * General tracing related utility functions - trace_printk(), * tracing_on/tracing_off and tracing_start()/tracing_stop * * Use tracing_on/tracing_off when you want to quickly turn on or off * tracing. It simply enables or disables the recording of the trace events. * This also corresponds to the user space /sys/kernel/debug/tracing/tracing_on * file, which gives a means for the kernel and userspace to interact. * Place a tracing_off() in the kernel where you want tracing to end. * From user space, examine the trace, and then echo 1 > tracing_on * to continue tracing. * * tracing_stop/tracing_start has slightly more overhead. It is used * by things like suspend to ram where disabling the recording of the * trace is not enough, but tracing must actually stop because things * like calling smp_processor_id() may crash the system. * * Most likely, you want to use tracing_on/tracing_off. */ #ifdef CONFIG_RING_BUFFER void tracing_on(void); void tracing_off(void); /* trace_off_permanent stops recording with no way to bring it back */ void tracing_off_permanent(void); int tracing_is_on(void); #else static inline void tracing_on(void) { } static inline void tracing_off(void) { } static inline void tracing_off_permanent(void) { } static inline int tracing_is_on(void) { return 0; } #endif #ifdef CONFIG_TRACING extern void tracing_start(void); extern void tracing_stop(void); extern void ftrace_off_permanent(void); extern void ftrace_special(unsigned long arg1, unsigned long arg2, unsigned long arg3); static inline void __attribute__ ((format (printf, 1, 2))) ____trace_printk_check_format(const char *fmt, ...) { } #define __trace_printk_check_format(fmt, args...) \ do { \ if (0) \ ____trace_printk_check_format(fmt, ##args); \ } while (0) /** * trace_printk - printf formatting in the ftrace buffer * @fmt: the printf format for printing * * Note: __trace_printk is an internal function for trace_printk and * the @ip is passed in via the trace_printk macro. * * This function allows a kernel developer to debug fast path sections * that printk is not appropriate for. By scattering in various * printk like tracing in the code, a developer can quickly see * where problems are occurring. * * This is intended as a debugging tool for the developer only. * Please refrain from leaving trace_printks scattered around in * your code. */ #define trace_printk(fmt, args...) \ do { \ __trace_printk_check_format(fmt, ##args); \ if (__builtin_constant_p(fmt)) { \ static const char *trace_printk_fmt \ __attribute__((section("__trace_printk_fmt"))) = \ __builtin_constant_p(fmt) ? fmt : NULL; \ \ __trace_bprintk(_THIS_IP_, trace_printk_fmt, ##args); \ } else \ __trace_printk(_THIS_IP_, fmt, ##args); \ } while (0) extern int __trace_bprintk(unsigned long ip, const char *fmt, ...) __attribute__ ((format (printf, 2, 3))); extern int __trace_printk(unsigned long ip, const char *fmt, ...) __attribute__ ((format (printf, 2, 3))); /* * The double __builtin_constant_p is because gcc will give us an error * if we try to allocate the static variable to fmt if it is not a * constant. Even with the outer if statement. */ #define ftrace_vprintk(fmt, vargs) \ do { \ if (__builtin_constant_p(fmt)) { \ static const char *trace_printk_fmt \ __attribute__((section("__trace_printk_fmt"))) = \ __builtin_constant_p(fmt) ? fmt : NULL; \ \ __ftrace_vbprintk(_THIS_IP_, trace_printk_fmt, vargs); \ } else \ __ftrace_vprintk(_THIS_IP_, fmt, vargs); \ } while (0) extern int __ftrace_vbprintk(unsigned long ip, const char *fmt, va_list ap); extern int __ftrace_vprintk(unsigned long ip, const char *fmt, va_list ap); extern void ftrace_dump(void); #else static inline void ftrace_special(unsigned long arg1, unsigned long arg2, unsigned long arg3) { } static inline int trace_printk(const char *fmt, ...) __attribute__ ((format (printf, 1, 2))); static inline void tracing_start(void) { } static inline void tracing_stop(void) { } static inline void ftrace_off_permanent(void) { } static inline int trace_printk(const char *fmt, ...) { return 0; } static inline int ftrace_vprintk(const char *fmt, va_list ap) { return 0; } static inline void ftrace_dump(void) { } #endif /* CONFIG_TRACING */ /* * Display an IP address in readable format. */ #define NIPQUAD(addr) \ ((unsigned char *)&addr)[0], \ ((unsigned char *)&addr)[1], \ ((unsigned char *)&addr)[2], \ ((unsigned char *)&addr)[3] #define NIPQUAD_FMT "%u.%u.%u.%u" /* * min()/max()/clamp() macros that also do * strict type-checking.. See the * "unnecessary" pointer comparison. */ #define min(x, y) ({ \ typeof(x) _min1 = (x); \ typeof(y) _min2 = (y); \ (void) (&_min1 == &_min2); \ _min1 < _min2 ? _min1 : _min2; }) #define max(x, y) ({ \ typeof(x) _max1 = (x); \ typeof(y) _max2 = (y); \ (void) (&_max1 == &_max2); \ _max1 > _max2 ? _max1 : _max2; }) /** * clamp - return a value clamped to a given range with strict typechecking * @val: current value * @min: minimum allowable value * @max: maximum allowable value * * This macro does strict typechecking of min/max to make sure they are of the * same type as val. See the unnecessary pointer comparisons. */ #define clamp(val, min, max) ({ \ typeof(val) __val = (val); \ typeof(min) __min = (min); \ typeof(max) __max = (max); \ (void) (&__val == &__min); \ (void) (&__val == &__max); \ __val = __val < __min ? __min: __val; \ __val > __max ? __max: __val; }) /* * ..and if you can't take the strict * types, you can specify one yourself. * * Or not use min/max/clamp at all, of course. */ #define min_t(type, x, y) ({ \ type __min1 = (x); \ type __min2 = (y); \ __min1 < __min2 ? __min1: __min2; }) #define max_t(type, x, y) ({ \ type __max1 = (x); \ type __max2 = (y); \ __max1 > __max2 ? __max1: __max2; }) /** * clamp_t - return a value clamped to a given range using a given type * @type: the type of variable to use * @val: current value * @min: minimum allowable value * @max: maximum allowable value * * This macro does no typechecking and uses temporary variables of type * 'type' to make all the comparisons. */ #define clamp_t(type, val, min, max) ({ \ type __val = (val); \ type __min = (min); \ type __max = (max); \ __val = __val < __min ? __min: __val; \ __val > __max ? __max: __val; }) /** * clamp_val - return a value clamped to a given range using val's type * @val: current value * @min: minimum allowable value * @max: maximum allowable value * * This macro does no typechecking and uses temporary variables of whatever * type the input argument 'val' is. This is useful when val is an unsigned * type and min and max are literals that will otherwise be assigned a signed * integer type. */ #define clamp_val(val, min, max) ({ \ typeof(val) __val = (val); \ typeof(val) __min = (min); \ typeof(val) __max = (max); \ __val = __val < __min ? __min: __val; \ __val > __max ? __max: __val; }) /* * swap - swap value of @a and @b */ #define swap(a, b) \ do { typeof(a) __tmp = (a); (a) = (b); (b) = __tmp; } while (0) /** * container_of - cast a member of a structure out to the containing structure * @ptr: the pointer to the member. * @type: the type of the container struct this is embedded in. * @member: the name of the member within the struct. * */ #define container_of(ptr, type, member) ({ \ const typeof( ((type *)0)->member ) *__mptr = (ptr); \ (type *)( (char *)__mptr - offsetof(type,member) );}) struct sysinfo; extern int do_sysinfo(struct sysinfo *info); #endif /* __KERNEL__ */ #ifndef __EXPORTED_HEADERS__ #ifndef __KERNEL__ #warning Attempt to use kernel headers from user space, see http://kernelnewbies.org/KernelHeaders #endif /* __KERNEL__ */ #endif /* __EXPORTED_HEADERS__ */ #define SI_LOAD_SHIFT 16 struct sysinfo { long uptime; /* Seconds since boot */ unsigned long loads[3]; /* 1, 5, and 15 minute load averages */ unsigned long totalram; /* Total usable main memory size */ unsigned long freeram; /* Available memory size */ unsigned long sharedram; /* Amount of shared memory */ unsigned long bufferram; /* Memory used by buffers */ unsigned long totalswap; /* Total swap space size */ unsigned long freeswap; /* swap space still available */ unsigned short procs; /* Number of current processes */ unsigned short pad; /* explicit padding for m68k */ unsigned long totalhigh; /* Total high memory size */ unsigned long freehigh; /* Available high memory size */ unsigned int mem_unit; /* Memory unit size in bytes */ char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding: libc5 uses this.. */ }; /* Force a compilation error if condition is true */ #define BUILD_BUG_ON(condition) ((void)BUILD_BUG_ON_ZERO(condition)) /* Force a compilation error if condition is constant and true */ #define MAYBE_BUILD_BUG_ON(cond) ((void)sizeof(char[1 - 2 * !!(cond)])) /* Force a compilation error if condition is true, but also produce a result (of value 0 and type size_t), so the expression can be used e.g. in a structure initializer (or where-ever else comma expressions aren't permitted). */ #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); })) #define BUILD_BUG_ON_NULL(e) ((void *)sizeof(struct { int:-!!(e); })) /* Trap pasters of __FUNCTION__ at compile-time */ #define __FUNCTION__ (__func__) /* This helps us to avoid #ifdef CONFIG_NUMA */ #ifdef CONFIG_NUMA #define NUMA_BUILD 1 #else #define NUMA_BUILD 0 #endif /* Rebuild everything on CONFIG_FTRACE_MCOUNT_RECORD */ #ifdef CONFIG_FTRACE_MCOUNT_RECORD # define REBUILD_DUE_TO_FTRACE_MCOUNT_RECORD #endif #endif |
From: Albert H. <he...@us...> - 2009-12-09 18:43:07
|
Update of /cvsroot/gc-linux/linux/drivers/net/wireless/b43 In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22341/drivers/net/wireless/b43 Added Files: Kconfig main.c Log Message: Add new files for v2.6.32. --- NEW FILE: main.c --- /* Broadcom B43 wireless driver Copyright (c) 2005 Martin Langer <mar...@gm...> Copyright (c) 2005 Stefano Brivio <ste...@po...> Copyright (c) 2005-2009 Michael Buesch <mb...@bu...> Copyright (c) 2005 Danny van Dyk <kug...@ge...> Copyright (c) 2005 Andreas Jaggi <and...@wa...> SDIO support Copyright (c) 2009 Albert Herranz <alb...@ya...> Some parts of the code in this file are derived from the ipw2200 driver Copyright(c) 2003 - 2004 Intel Corporation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or [...5050 lines suppressed...] err_sdio_exit: b43_sdio_exit(); err_pcmcia_exit: b43_pcmcia_exit(); err_dfs_exit: b43_debugfs_exit(); return err; } static void __exit b43_exit(void) { ssb_driver_unregister(&b43_ssb_driver); b43_sdio_exit(); b43_pcmcia_exit(); b43_debugfs_exit(); } module_init(b43_init) module_exit(b43_exit) --- NEW FILE: Kconfig --- config B43 tristate "Broadcom 43xx wireless support (mac80211 stack)" depends on SSB_POSSIBLE && MAC80211 && WLAN_80211 && HAS_DMA select SSB select FW_LOADER ---help--- b43 is a driver for the Broadcom 43xx series wireless devices. Check "lspci" for something like "Broadcom Corporation BCM43XX 802.11 Wireless LAN Controller" to determine whether you own such a device. This driver supports the new BCM43xx IEEE 802.11G devices, but not the old IEEE 802.11B devices. Old devices are supported by the b43legacy driver. Note that this has nothing to do with the standard that your AccessPoint supports (A, B, G or a combination). IEEE 802.11G devices can talk to IEEE 802.11B AccessPoints. It is safe to include both b43 and b43legacy as the underlying glue layer will automatically load the correct version for your device. This driver uses V4 firmware, which must be installed separately using b43-fwcutter. This driver can be built as a module (recommended) that will be called "b43". If unsure, say M. # Auto-select SSB PCI-HOST support, if possible config B43_PCI_AUTOSELECT bool depends on B43 && SSB_PCIHOST_POSSIBLE select SSB_PCIHOST select SSB_B43_PCI_BRIDGE default y # Auto-select SSB PCICORE driver, if possible config B43_PCICORE_AUTOSELECT bool depends on B43 && SSB_DRIVER_PCICORE_POSSIBLE select SSB_DRIVER_PCICORE default y config B43_PCMCIA bool "Broadcom 43xx PCMCIA device support" depends on B43 && SSB_PCMCIAHOST_POSSIBLE select SSB_PCMCIAHOST ---help--- Broadcom 43xx PCMCIA device support. Support for 16bit PCMCIA devices. Please note that most PC-CARD devices are _NOT_ 16bit PCMCIA devices, but 32bit CardBUS devices. CardBUS devices are supported out of the box by b43. With this config option you can drive b43 cards in CompactFlash formfactor in a PCMCIA adaptor. CF b43 cards can sometimes be found in handheld PCs. It's safe to select Y here, even if you don't have a B43 PCMCIA device. If unsure, say N. config B43_SDIO bool "Broadcom 43xx SDIO device support (EXPERIMENTAL)" depends on B43 && SSB_SDIOHOST_POSSIBLE && EXPERIMENTAL select SSB_SDIOHOST ---help--- Broadcom 43xx device support for Soft-MAC SDIO devices. With this config option you can drive Soft-MAC b43 cards with a Secure Digital I/O interface. This includes the WLAN daughter card found on the Nintendo Wii video game console. Note that this does not support Broadcom 43xx Full-MAC devices. It's safe to select Y here, even if you don't have a B43 SDIO device. If unsure, say N. # Data transfers to the device via PIO # This is only needed on PCMCIA and SDIO devices. All others can do DMA properly. config B43_PIO bool depends on B43 && (B43_SDIO || B43_PCMCIA || B43_FORCE_PIO) select SSB_BLOCKIO default y config B43_NPHY bool "Pre IEEE 802.11n support (BROKEN)" depends on B43 && EXPERIMENTAL && BROKEN ---help--- Support for the IEEE 802.11n draft. THIS IS BROKEN AND DOES NOT WORK YET. SAY N. config B43_PHY_LP bool "Support for low-power (LP-PHY) devices (EXPERIMENTAL)" depends on B43 && EXPERIMENTAL default y ---help--- Support for the LP-PHY. The LP-PHY is a low-power PHY built into some notebooks and embedded devices. It supports 802.11a/g (802.11a support is optional, and currently disabled). # This config option automatically enables b43 LEDS support, # if it's possible. config B43_LEDS bool depends on B43 && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43) default y # This config option automatically enables b43 HW-RNG support, # if the HW-RNG core is enabled. config B43_HWRNG bool depends on B43 && (HW_RANDOM = y || HW_RANDOM = B43) default y config B43_DEBUG bool "Broadcom 43xx debugging" depends on B43 ---help--- Broadcom 43xx debugging. This adds additional runtime sanity checks and statistics to the driver. These checks and statistics might me expensive and hurt runtime performance of your system. This also adds the b43 debugfs interface. Do not enable this, unless you are debugging the driver. Say N, if you are a distributor or user building a release kernel for production use. Only say Y, if you are debugging a problem in the b43 driver sourcecode. config B43_FORCE_PIO bool "Force usage of PIO instead of DMA" depends on B43 && B43_DEBUG ---help--- This will disable DMA and always enable PIO instead. Say N! This is only for debugging the PIO engine code. You do _NOT_ want to enable this. |
From: Albert H. <he...@us...> - 2009-12-09 18:41:50
|
Update of /cvsroot/gc-linux/linux/drivers/net/wireless/b43 In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv22075/drivers/net/wireless/b43 Log Message: Directory /cvsroot/gc-linux/linux/drivers/net/wireless/b43 added to the repository |
From: Albert H. <he...@us...> - 2009-12-09 18:41:17
|
Update of /cvsroot/gc-linux/linux/drivers/net/wireless In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21885/drivers/net/wireless Log Message: Directory /cvsroot/gc-linux/linux/drivers/net/wireless added to the repository |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/drivers/serial In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers/serial Modified Files: Kconfig Makefile Log Message: Forward to v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/serial/Makefile,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Makefile 9 Dec 2009 18:18:07 -0000 1.13 --- Makefile 9 Dec 2009 18:40:10 -0000 1.14 *************** *** 35,38 **** --- 35,39 ---- obj-$(CONFIG_SERIAL_PNX8XXX) += pnx8xxx_uart.o obj-$(CONFIG_SERIAL_SA1100) += sa1100.o + obj-$(CONFIG_SERIAL_BCM63XX) += bcm63xx_uart.o obj-$(CONFIG_SERIAL_BFIN) += bfin_5xx.o obj-$(CONFIG_SERIAL_BFIN_SPORT) += bfin_sport_uart.o *************** *** 44,47 **** --- 45,49 ---- obj-$(CONFIG_SERIAL_S3C24A0) += s3c24a0.o obj-$(CONFIG_SERIAL_S3C6400) += s3c6400.o + obj-$(CONFIG_SERIAL_S5PC100) += s3c6400.o obj-$(CONFIG_SERIAL_MAX3100) += max3100.o obj-$(CONFIG_SERIAL_IP22_ZILOG) += ip22zilog.o Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/serial/Kconfig,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Kconfig 9 Dec 2009 18:18:07 -0000 1.14 --- Kconfig 9 Dec 2009 18:40:10 -0000 1.15 *************** *** 460,464 **** depends on ARM && PLAT_S3C default 2 if ARCH_S3C2400 ! default 4 if ARCH_S3C64XX || CPU_S3C2443 default 3 help --- 460,464 ---- depends on ARM && PLAT_S3C default 2 if ARCH_S3C2400 ! default 4 if ARCH_S5PC1XX || ARCH_S3C64XX || CPU_S3C2443 default 3 help *************** *** 534,537 **** --- 534,544 ---- SoCs + config SERIAL_S5PC100 + tristate "Samsung S5PC100 Serial port support" + depends on SERIAL_SAMSUNG && CPU_S5PC100 + default y + help + Serial port support for the Samsung S5PC100 SoCs + config SERIAL_MAX3100 tristate "MAX3100 support" *************** *** 856,860 **** config SERIAL_UARTLITE tristate "Xilinx uartlite serial port support" ! depends on PPC32 || MICROBLAZE select SERIAL_CORE help --- 863,867 ---- config SERIAL_UARTLITE tristate "Xilinx uartlite serial port support" ! depends on PPC32 || MICROBLAZE || MFD_TIMBERDALE select SERIAL_CORE help *************** *** 1452,1454 **** --- 1459,1480 ---- Add support for UART controller on timberdale. + config SERIAL_BCM63XX + tristate "bcm63xx serial port support" + select SERIAL_CORE + depends on BCM63XX + help + If you have a bcm63xx CPU, you can enable its onboard + serial port by enabling this options. + + To compile this driver as a module, choose M here: the + module will be called bcm963xx_uart. + + config SERIAL_BCM63XX_CONSOLE + bool "Console on bcm63xx serial port" + depends on SERIAL_BCM63XX=y + select SERIAL_CORE_CONSOLE + help + If you have enabled the serial port on the bcm63xx CPU + you can make it the console by answering Y to this option. + endmenu |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/drivers/net/usb In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers/net/usb Modified Files: usbnet.c Log Message: Forward to v2.6.32. Index: usbnet.c =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/net/usb/usbnet.c,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** usbnet.c 9 Dec 2009 18:18:07 -0000 1.10 --- usbnet.c 9 Dec 2009 18:40:10 -0000 1.11 *************** *** 234,237 **** --- 234,242 ---- int status; + if (test_bit(EVENT_RX_PAUSED, &dev->flags)) { + skb_queue_tail(&dev->rxq_pause, skb); + return; + } + skb->protocol = eth_type_trans (skb, dev->net); dev->net->stats.rx_packets++; *************** *** 527,530 **** --- 532,570 ---- /*-------------------------------------------------------------------------*/ + void usbnet_pause_rx(struct usbnet *dev) + { + set_bit(EVENT_RX_PAUSED, &dev->flags); + + if (netif_msg_rx_status(dev)) + devdbg(dev, "paused rx queue enabled"); + } + EXPORT_SYMBOL_GPL(usbnet_pause_rx); + + void usbnet_resume_rx(struct usbnet *dev) + { + struct sk_buff *skb; + int num = 0; + + clear_bit(EVENT_RX_PAUSED, &dev->flags); + + while ((skb = skb_dequeue(&dev->rxq_pause)) != NULL) { + usbnet_skb_return(dev, skb); + num++; + } + + tasklet_schedule(&dev->bh); + + if (netif_msg_rx_status(dev)) + devdbg(dev, "paused rx queue disabled, %d skbs requeued", num); + } + EXPORT_SYMBOL_GPL(usbnet_resume_rx); + + void usbnet_purge_paused_rxq(struct usbnet *dev) + { + skb_queue_purge(&dev->rxq_pause); + } + EXPORT_SYMBOL_GPL(usbnet_purge_paused_rxq); + + /*-------------------------------------------------------------------------*/ // unlink pending rx/tx; completion handlers do all other cleanup *************** *** 576,580 **** --- 616,622 ---- { struct usbnet *dev = netdev_priv(net); + struct driver_info *info = dev->driver_info; int temp; + int retval; DECLARE_WAIT_QUEUE_HEAD_ONSTACK (unlink_wakeup); DECLARE_WAITQUEUE (wait, current); *************** *** 588,609 **** ); ! // ensure there are no more active urbs ! add_wait_queue (&unlink_wakeup, &wait); ! dev->wait = &unlink_wakeup; ! temp = unlink_urbs (dev, &dev->txq) + unlink_urbs (dev, &dev->rxq); ! // maybe wait for deletions to finish. ! while (!skb_queue_empty(&dev->rxq) ! && !skb_queue_empty(&dev->txq) ! && !skb_queue_empty(&dev->done)) { ! msleep(UNLINK_TIMEOUT_MS); ! if (netif_msg_ifdown (dev)) ! devdbg (dev, "waited for %d urb completions", temp); } - dev->wait = NULL; - remove_wait_queue (&unlink_wakeup, &wait); usb_kill_urb(dev->interrupt); /* deferred work (task, timer, softirq) must also stop. * can't flush_scheduled_work() until we drop rtnl (later), --- 630,669 ---- ); ! /* allow minidriver to stop correctly (wireless devices to turn off ! * radio etc) */ ! if (info->stop) { ! retval = info->stop(dev); ! if (retval < 0 && netif_msg_ifdown(dev)) ! devinfo(dev, ! "stop fail (%d) usbnet usb-%s-%s, %s", ! retval, ! dev->udev->bus->bus_name, dev->udev->devpath, ! info->description); ! } ! if (!(info->flags & FLAG_AVOID_UNLINK_URBS)) { ! /* ensure there are no more active urbs */ ! add_wait_queue(&unlink_wakeup, &wait); ! dev->wait = &unlink_wakeup; ! temp = unlink_urbs(dev, &dev->txq) + ! unlink_urbs(dev, &dev->rxq); ! ! /* maybe wait for deletions to finish. */ ! while (!skb_queue_empty(&dev->rxq) ! && !skb_queue_empty(&dev->txq) ! && !skb_queue_empty(&dev->done)) { ! msleep(UNLINK_TIMEOUT_MS); ! if (netif_msg_ifdown(dev)) ! devdbg(dev, "waited for %d urb completions", ! temp); ! } ! dev->wait = NULL; ! remove_wait_queue(&unlink_wakeup, &wait); } usb_kill_urb(dev->interrupt); + usbnet_purge_paused_rxq(dev); + /* deferred work (task, timer, softirq) must also stop. * can't flush_scheduled_work() until we drop rtnl (later), *************** *** 795,799 **** /* drivers may override default ethtool_ops in their bind() routine */ ! static struct ethtool_ops usbnet_ethtool_ops = { .get_settings = usbnet_get_settings, .set_settings = usbnet_set_settings, --- 855,859 ---- /* drivers may override default ethtool_ops in their bind() routine */ ! static const struct ethtool_ops usbnet_ethtool_ops = { .get_settings = usbnet_get_settings, .set_settings = usbnet_set_settings, *************** *** 948,960 **** /*-------------------------------------------------------------------------*/ ! int usbnet_start_xmit (struct sk_buff *skb, struct net_device *net) { struct usbnet *dev = netdev_priv(net); int length; - int retval = NET_XMIT_SUCCESS; struct urb *urb = NULL; struct skb_data *entry; struct driver_info *info = dev->driver_info; unsigned long flags; // some devices want funky USB-level framing, for --- 1008,1021 ---- /*-------------------------------------------------------------------------*/ ! netdev_tx_t usbnet_start_xmit (struct sk_buff *skb, ! struct net_device *net) { struct usbnet *dev = netdev_priv(net); int length; struct urb *urb = NULL; struct skb_data *entry; struct driver_info *info = dev->driver_info; unsigned long flags; + int retval; // some devices want funky USB-level framing, for *************** *** 989,993 **** * the ZLP here, but ignore the one-byte packet. */ ! if ((length % dev->maxpacket) == 0) { urb->transfer_buffer_length++; if (skb_tailroom(skb)) { --- 1050,1054 ---- * the ZLP here, but ignore the one-byte packet. */ ! if (!(info->flags & FLAG_SEND_ZLP) && (length % dev->maxpacket) == 0) { urb->transfer_buffer_length++; if (skb_tailroom(skb)) { *************** *** 1020,1024 **** devdbg (dev, "drop, code %d", retval); drop: - retval = NET_XMIT_SUCCESS; dev->net->stats.tx_dropped++; if (skb) --- 1081,1084 ---- *************** *** 1029,1033 **** length, skb->protocol); } ! return retval; } EXPORT_SYMBOL_GPL(usbnet_start_xmit); --- 1089,1093 ---- length, skb->protocol); } ! return NETDEV_TX_OK; } EXPORT_SYMBOL_GPL(usbnet_start_xmit); *************** *** 1096,1100 **** - /*------------------------------------------------------------------------- * --- 1156,1159 ---- *************** *** 1193,1196 **** --- 1252,1256 ---- skb_queue_head_init (&dev->txq); skb_queue_head_init (&dev->done); + skb_queue_head_init(&dev->rxq_pause); dev->bh.func = usbnet_bh; dev->bh.data = (unsigned long) dev; |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/arch/powerpc/platforms In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/arch/powerpc/platforms Modified Files: Kconfig.cputype Log Message: Forward to v2.6.32. Index: Kconfig.cputype =================================================================== RCS file: /cvsroot/gc-linux/linux/arch/powerpc/platforms/Kconfig.cputype,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Kconfig.cputype 9 Dec 2009 18:18:06 -0000 1.14 --- Kconfig.cputype 9 Dec 2009 18:40:09 -0000 1.15 *************** *** 58,70 **** endchoice ! config PPC_BOOK3S_64 ! def_bool y depends on PPC64 select PPC_FPU config PPC_BOOK3S def_bool y depends on PPC_BOOK3S_32 || PPC_BOOK3S_64 config POWER4_ONLY bool "Optimize for POWER4" --- 58,90 ---- endchoice ! choice ! prompt "Processor Type" depends on PPC64 + help + There are two families of 64 bit PowerPC chips supported. + The most common ones are the desktop and server CPUs + (POWER3, RS64, POWER4, POWER5, POWER5+, POWER6, ...) + + The other are the "embedded" processors compliant with the + "Book 3E" variant of the architecture + + config PPC_BOOK3S_64 + bool "Server processors" select PPC_FPU + config PPC_BOOK3E_64 + bool "Embedded processors" + select PPC_FPU # Make it a choice ? + + endchoice + config PPC_BOOK3S def_bool y depends on PPC_BOOK3S_32 || PPC_BOOK3S_64 + config PPC_BOOK3E + def_bool y + depends on PPC_BOOK3E_64 + config POWER4_ONLY bool "Optimize for POWER4" *************** *** 126,130 **** config BOOKE bool ! depends on E200 || E500 || 44x default y --- 146,150 ---- config BOOKE bool ! depends on E200 || E500 || 44x || PPC_BOOK3E default y *************** *** 224,230 **** depends on !PPC_STD_MMU config PPC_BOOK3E_MMU def_bool y ! depends on FSL_BOOKE config PPC_MM_SLICES --- 244,258 ---- depends on !PPC_STD_MMU + config PPC_MMU_NOHASH_32 + def_bool y + depends on PPC_MMU_NOHASH && PPC32 + + config PPC_MMU_NOHASH_64 + def_bool y + depends on PPC_MMU_NOHASH && PPC64 + config PPC_BOOK3E_MMU def_bool y ! depends on FSL_BOOKE || PPC_BOOK3E config PPC_MM_SLICES *************** *** 253,262 **** config PPC_PERF_CTRS def_bool y ! depends on PERF_COUNTERS && PPC_HAVE_PMU_SUPPORT help ! This enables the powerpc-specific perf_counter back-end. config SMP ! depends on PPC_STD_MMU || FSL_BOOKE bool "Symmetric multi-processing support" ---help--- --- 281,290 ---- config PPC_PERF_CTRS def_bool y ! depends on PERF_EVENTS && PPC_HAVE_PMU_SUPPORT help ! This enables the powerpc-specific perf_event back-end. config SMP ! depends on PPC_BOOK3S || PPC_BOOK3E || FSL_BOOKE bool "Symmetric multi-processing support" ---help--- |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/drivers/video In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers/video Modified Files: Kconfig Makefile Log Message: Forward to v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/Makefile,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** Makefile 9 Dec 2009 18:18:07 -0000 1.37 --- Makefile 9 Dec 2009 18:40:10 -0000 1.38 *************** *** 86,89 **** --- 86,90 ---- obj-$(CONFIG_FB_HP300) += hpfb.o obj-$(CONFIG_FB_G364) += g364fb.o + obj-$(CONFIG_FB_EP93XX) += ep93xx-fb.o obj-$(CONFIG_FB_SA1100) += sa1100fb.o obj-$(CONFIG_FB_HIT) += hitfb.o *************** *** 127,130 **** --- 128,132 ---- obj-$(CONFIG_FB_CARMINE) += carminefb.o obj-$(CONFIG_FB_MB862XX) += mb862xx/ + obj-$(CONFIG_FB_MSM) += msm/ # Platform or fallback drivers go here *************** *** 137,140 **** --- 139,143 ---- obj-$(CONFIG_FB_BFIN_T350MCQB) += bfin-t350mcqb-fb.o obj-$(CONFIG_FB_MX3) += mx3fb.o + obj-$(CONFIG_FB_DA8XX) += da8xx-fb.o # the test framebuffer is last Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/video/Kconfig,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** Kconfig 9 Dec 2009 18:18:07 -0000 1.41 --- Kconfig 9 Dec 2009 18:40:10 -0000 1.42 *************** *** 8,11 **** --- 8,13 ---- source "drivers/char/agp/Kconfig" + source "drivers/gpu/vga/Kconfig" + source "drivers/gpu/drm/Kconfig" *************** *** 936,940 **** config FB_ATMEL tristate "AT91/AT32 LCD Controller support" ! depends on FB && (ARCH_AT91SAM9261 || ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || ARCH_AT91CAP9 || AVR32) select FB_CFB_FILLRECT select FB_CFB_COPYAREA --- 938,942 ---- config FB_ATMEL tristate "AT91/AT32 LCD Controller support" ! depends on FB && (ARCH_AT91SAM9261 || ARCH_AT91SAM9G10 || ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || ARCH_AT91SAM9G45 || ARCH_AT91CAP9 || AVR32) select FB_CFB_FILLRECT select FB_CFB_COPYAREA *************** *** 952,956 **** config FB_ATMEL_STN bool "Use a STN display with AT91/AT32 LCD Controller" ! depends on FB_ATMEL && MACH_AT91SAM9261EK default n help --- 954,958 ---- config FB_ATMEL_STN bool "Use a STN display with AT91/AT32 LCD Controller" ! depends on FB_ATMEL && (MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK) default n help *************** *** 1274,1297 **** engine). - config FB_MATROX_MULTIHEAD - bool "Multihead support" - depends on FB_MATROX - ---help--- - Say Y here if you have more than one (supported) Matrox device in - your computer and you want to use all of them for different monitors - ("multihead"). If you have only one device, you should say N because - the driver compiled with Y is larger and a bit slower, especially on - ia32 (ix86). - - If you said M to "Matrox unified accelerated driver" and N here, you - will still be able to use several Matrox devices simultaneously: - insert several instances of the module matroxfb into the kernel - with insmod, supplying the parameter "dev=N" where N is 0, 1, etc. - for the different Matrox devices. This method is slightly faster but - uses 40 KB of kernel memory per Matrox card. - - There is no need for enabling 'Matrox multihead support' if you have - only one Matrox card in the box. - config FB_RADEON tristate "ATI Radeon display support" --- 1276,1279 ---- *************** *** 1868,1872 **** config FB_SH_MOBILE_LCDC tristate "SuperH Mobile LCDC framebuffer support" ! depends on FB && SUPERH select FB_SYS_FILLRECT select FB_SYS_COPYAREA --- 1850,1854 ---- config FB_SH_MOBILE_LCDC tristate "SuperH Mobile LCDC framebuffer support" ! depends on FB && SUPERH && HAVE_CLK select FB_SYS_FILLRECT select FB_SYS_COPYAREA *************** *** 2040,2043 **** --- 2022,2036 ---- panels <= 320 pixel horizontal resolution. + config FB_DA8XX + tristate "DA8xx/OMAP-L1xx Framebuffer support" + depends on FB && ARCH_DAVINCI_DA8XX + select FB_CFB_FILLRECT + select FB_CFB_COPYAREA + select FB_CFB_IMAGEBLIT + ---help--- + This is the frame buffer device driver for the TI LCD controller + found on DA8xx/OMAP-L1xx SoCs. + If unsure, say N. + config FB_VIRTUAL tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)" *************** *** 2116,2126 **** Framebuffer support for Fujitsu Lime GDC on host CPU bus. config FB_PRE_INIT_FB bool "Don't reinitialize, use bootloader's GDC/Display configuration" ! depends on FB_MB862XX_LIME ---help--- Select this option if display contents should be inherited as set by the bootloader. config FB_MX3 tristate "MX3 Framebuffer support" --- 2109,2138 ---- Framebuffer support for Fujitsu Lime GDC on host CPU bus. + config FB_EP93XX + tristate "EP93XX frame buffer support" + depends on FB && ARCH_EP93XX + select FB_CFB_FILLRECT + select FB_CFB_COPYAREA + select FB_CFB_IMAGEBLIT + ---help--- + Framebuffer driver for the Cirrus Logic EP93XX series of processors. + This driver is also available as a module. The module will be called + ep93xx-fb. + config FB_PRE_INIT_FB bool "Don't reinitialize, use bootloader's GDC/Display configuration" ! depends on FB && FB_MB862XX_LIME ---help--- Select this option if display contents should be inherited as set by the bootloader. + config FB_MSM + tristate + depends on FB && ARCH_MSM + select FB_CFB_FILLRECT + select FB_CFB_COPYAREA + select FB_CFB_IMAGEBLIT + default y + config FB_MX3 tristate "MX3 Framebuffer support" |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/drivers/gpio In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers/gpio Modified Files: gpiolib.c Log Message: Forward to v2.6.32. Index: gpiolib.c =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/gpio/gpiolib.c,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** gpiolib.c 9 Dec 2009 18:18:06 -0000 1.8 --- gpiolib.c 9 Dec 2009 18:40:09 -0000 1.9 *************** *** 1,4 **** --- 1,5 ---- #include <linux/kernel.h> #include <linux/module.h> + #include <linux/interrupt.h> #include <linux/irq.h> #include <linux/spinlock.h> *************** *** 8,11 **** --- 9,13 ---- #include <linux/seq_file.h> #include <linux/gpio.h> + #include <linux/idr.h> *************** *** 50,53 **** --- 52,62 ---- #define FLAG_EXPORT 3 /* protected by sysfs_lock */ #define FLAG_SYSFS 4 /* exported via /sys/class/gpio/control */ + #define FLAG_TRIG_FALL 5 /* trigger on falling edge */ + #define FLAG_TRIG_RISE 6 /* trigger on rising edge */ + + #define PDESC_ID_SHIFT 16 /* add new flags before this one */ + + #define GPIO_FLAGS_MASK ((1 << PDESC_ID_SHIFT) - 1) + #define GPIO_TRIGGER_MASK (BIT(FLAG_TRIG_FALL) | BIT(FLAG_TRIG_RISE)) #ifdef CONFIG_DEBUG_FS *************** *** 57,60 **** --- 66,78 ---- static struct gpio_desc gpio_desc[ARCH_NR_GPIOS]; + #ifdef CONFIG_GPIO_SYSFS + struct poll_desc { + struct work_struct work; + struct sysfs_dirent *value_sd; + }; + + static struct idr pdesc_idr; + #endif + static inline void desc_set_label(struct gpio_desc *d, const char *label) { *************** *** 189,196 **** * * always readable, subject to hardware behavior * * may be writable, as zero/nonzero ! * ! * REVISIT there will likely be an attribute for configuring async ! * notifications, e.g. to specify polling interval or IRQ trigger type ! * that would for example trigger a poll() on the "value". */ --- 207,214 ---- * * always readable, subject to hardware behavior * * may be writable, as zero/nonzero ! * /edge ! * * configures behavior of poll(2) on /value ! * * available only if pin can generate IRQs on input ! * * is read/write as "none", "falling", "rising", or "both" */ *************** *** 289,292 **** --- 307,479 ---- gpio_value_show, gpio_value_store); + static irqreturn_t gpio_sysfs_irq(int irq, void *priv) + { + struct work_struct *work = priv; + + schedule_work(work); + return IRQ_HANDLED; + } + + static void gpio_notify_sysfs(struct work_struct *work) + { + struct poll_desc *pdesc; + + pdesc = container_of(work, struct poll_desc, work); + sysfs_notify_dirent(pdesc->value_sd); + } + + static int gpio_setup_irq(struct gpio_desc *desc, struct device *dev, + unsigned long gpio_flags) + { + struct poll_desc *pdesc; + unsigned long irq_flags; + int ret, irq, id; + + if ((desc->flags & GPIO_TRIGGER_MASK) == gpio_flags) + return 0; + + irq = gpio_to_irq(desc - gpio_desc); + if (irq < 0) + return -EIO; + + id = desc->flags >> PDESC_ID_SHIFT; + pdesc = idr_find(&pdesc_idr, id); + if (pdesc) { + free_irq(irq, &pdesc->work); + cancel_work_sync(&pdesc->work); + } + + desc->flags &= ~GPIO_TRIGGER_MASK; + + if (!gpio_flags) { + ret = 0; + goto free_sd; + } + + irq_flags = IRQF_SHARED; + if (test_bit(FLAG_TRIG_FALL, &gpio_flags)) + irq_flags |= IRQF_TRIGGER_FALLING; + if (test_bit(FLAG_TRIG_RISE, &gpio_flags)) + irq_flags |= IRQF_TRIGGER_RISING; + + if (!pdesc) { + pdesc = kmalloc(sizeof(*pdesc), GFP_KERNEL); + if (!pdesc) { + ret = -ENOMEM; + goto err_out; + } + + do { + ret = -ENOMEM; + if (idr_pre_get(&pdesc_idr, GFP_KERNEL)) + ret = idr_get_new_above(&pdesc_idr, + pdesc, 1, &id); + } while (ret == -EAGAIN); + + if (ret) + goto free_mem; + + desc->flags &= GPIO_FLAGS_MASK; + desc->flags |= (unsigned long)id << PDESC_ID_SHIFT; + + if (desc->flags >> PDESC_ID_SHIFT != id) { + ret = -ERANGE; + goto free_id; + } + + pdesc->value_sd = sysfs_get_dirent(dev->kobj.sd, "value"); + if (!pdesc->value_sd) { + ret = -ENODEV; + goto free_id; + } + INIT_WORK(&pdesc->work, gpio_notify_sysfs); + } + + ret = request_irq(irq, gpio_sysfs_irq, irq_flags, + "gpiolib", &pdesc->work); + if (ret) + goto free_sd; + + desc->flags |= gpio_flags; + return 0; + + free_sd: + sysfs_put(pdesc->value_sd); + free_id: + idr_remove(&pdesc_idr, id); + desc->flags &= GPIO_FLAGS_MASK; + free_mem: + kfree(pdesc); + err_out: + return ret; + } + + static const struct { + const char *name; + unsigned long flags; + } trigger_types[] = { + { "none", 0 }, + { "falling", BIT(FLAG_TRIG_FALL) }, + { "rising", BIT(FLAG_TRIG_RISE) }, + { "both", BIT(FLAG_TRIG_FALL) | BIT(FLAG_TRIG_RISE) }, + }; + + static ssize_t gpio_edge_show(struct device *dev, + struct device_attribute *attr, char *buf) + { + const struct gpio_desc *desc = dev_get_drvdata(dev); + ssize_t status; + + mutex_lock(&sysfs_lock); + + if (!test_bit(FLAG_EXPORT, &desc->flags)) + status = -EIO; + else { + int i; + + status = 0; + for (i = 0; i < ARRAY_SIZE(trigger_types); i++) + if ((desc->flags & GPIO_TRIGGER_MASK) + == trigger_types[i].flags) { + status = sprintf(buf, "%s\n", + trigger_types[i].name); + break; + } + } + + mutex_unlock(&sysfs_lock); + return status; + } + + static ssize_t gpio_edge_store(struct device *dev, + struct device_attribute *attr, const char *buf, size_t size) + { + struct gpio_desc *desc = dev_get_drvdata(dev); + ssize_t status; + int i; + + for (i = 0; i < ARRAY_SIZE(trigger_types); i++) + if (sysfs_streq(trigger_types[i].name, buf)) + goto found; + return -EINVAL; + + found: + mutex_lock(&sysfs_lock); + + if (!test_bit(FLAG_EXPORT, &desc->flags)) + status = -EIO; + else { + status = gpio_setup_irq(desc, dev, trigger_types[i].flags); + if (!status) + status = size; + } + + mutex_unlock(&sysfs_lock); + + return status; + } + + static DEVICE_ATTR(edge, 0644, gpio_edge_show, gpio_edge_store); + static const struct attribute *gpio_attrs[] = { &dev_attr_direction.attr, *************** *** 474,479 **** dev = device_create(&gpio_class, desc->chip->dev, MKDEV(0, 0), ! desc, ioname ? ioname : "gpio%d", gpio); ! if (dev) { if (direction_may_change) status = sysfs_create_group(&dev->kobj, --- 661,666 ---- dev = device_create(&gpio_class, desc->chip->dev, MKDEV(0, 0), ! desc, ioname ? ioname : "gpio%d", gpio); ! if (!IS_ERR(dev)) { if (direction_may_change) status = sysfs_create_group(&dev->kobj, *************** *** 482,489 **** status = device_create_file(dev, &dev_attr_value); if (status != 0) device_unregister(dev); } else ! status = -ENODEV; if (status == 0) set_bit(FLAG_EXPORT, &desc->flags); --- 669,684 ---- status = device_create_file(dev, &dev_attr_value); + + if (!status && gpio_to_irq(gpio) >= 0 + && (direction_may_change + || !test_bit(FLAG_IS_OUT, + &desc->flags))) + status = device_create_file(dev, + &dev_attr_edge); + if (status != 0) device_unregister(dev); } else ! status = PTR_ERR(dev); if (status == 0) set_bit(FLAG_EXPORT, &desc->flags); *************** *** 506,509 **** --- 701,749 ---- /** + * gpio_export_link - create a sysfs link to an exported GPIO node + * @dev: device under which to create symlink + * @name: name of the symlink + * @gpio: gpio to create symlink to, already exported + * + * Set up a symlink from /sys/.../dev/name to /sys/class/gpio/gpioN + * node. Caller is responsible for unlinking. + * + * Returns zero on success, else an error. + */ + int gpio_export_link(struct device *dev, const char *name, unsigned gpio) + { + struct gpio_desc *desc; + int status = -EINVAL; + + if (!gpio_is_valid(gpio)) + goto done; + + mutex_lock(&sysfs_lock); + + desc = &gpio_desc[gpio]; + + if (test_bit(FLAG_EXPORT, &desc->flags)) { + struct device *tdev; + + tdev = class_find_device(&gpio_class, NULL, desc, match_export); + if (tdev != NULL) { + status = sysfs_create_link(&dev->kobj, &tdev->kobj, + name); + } else { + status = -ENODEV; + } + } + + mutex_unlock(&sysfs_lock); + + done: + if (status) + pr_debug("%s: gpio%d status %d\n", __func__, gpio, status); + + return status; + } + EXPORT_SYMBOL_GPL(gpio_export_link); + + /** * gpio_unexport - reverse effect of gpio_export() * @gpio: gpio to make unavailable *************** *** 528,531 **** --- 768,772 ---- dev = class_find_device(&gpio_class, NULL, desc, match_export); if (dev) { + gpio_setup_irq(desc, dev, 0); clear_bit(FLAG_EXPORT, &desc->flags); put_device(dev); *************** *** 560,568 **** dev = device_create(&gpio_class, chip->dev, MKDEV(0, 0), chip, "gpiochip%d", chip->base); ! if (dev) { status = sysfs_create_group(&dev->kobj, &gpiochip_attr_group); } else ! status = -ENODEV; chip->exported = (status == 0); mutex_unlock(&sysfs_lock); --- 801,809 ---- dev = device_create(&gpio_class, chip->dev, MKDEV(0, 0), chip, "gpiochip%d", chip->base); ! if (!IS_ERR(dev)) { status = sysfs_create_group(&dev->kobj, &gpiochip_attr_group); } else ! status = PTR_ERR(dev); chip->exported = (status == 0); mutex_unlock(&sysfs_lock); *************** *** 612,615 **** --- 853,858 ---- unsigned gpio; + idr_init(&pdesc_idr); + status = class_register(&gpio_class); if (status < 0) *************** *** 1245,1249 **** } ! static struct file_operations gpiolib_operations = { .open = gpiolib_open, .read = seq_read, --- 1488,1492 ---- } ! static const struct file_operations gpiolib_operations = { .open = gpiolib_open, .read = seq_read, |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/drivers/misc In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers/misc Modified Files: Kconfig Makefile Log Message: Forward to v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/misc/Makefile,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** Makefile 9 Dec 2009 18:18:07 -0000 1.18 --- Makefile 9 Dec 2009 18:40:09 -0000 1.19 *************** *** 20,23 **** --- 20,24 ---- obj-$(CONFIG_HP_ILO) += hpilo.o obj-$(CONFIG_ISL29003) += isl29003.o + obj-$(CONFIG_EP93XX_PWM) += ep93xx_pwm.o obj-$(CONFIG_C2PORT) += c2port/ obj-y += eeprom/ Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/misc/Kconfig,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** Kconfig 9 Dec 2009 18:18:07 -0000 1.22 --- Kconfig 9 Dec 2009 18:40:09 -0000 1.23 *************** *** 234,237 **** --- 234,250 ---- will be called isl29003. + config EP93XX_PWM + tristate "EP93xx PWM support" + depends on ARCH_EP93XX + help + This option enables device driver support for the PWM channels + on the Cirrus EP93xx processors. The EP9307 chip only has one + PWM channel all the others have two, the second channel is an + alternate function of the EGPIO14 pin. A sysfs interface is + provided to control the PWM channels. + + To compile this driver as a module, choose M here: the module will + be called ep93xx_pwm. + source "drivers/misc/c2port/Kconfig" source "drivers/misc/eeprom/Kconfig" |
From: Albert H. <he...@us...> - 2009-12-09 18:40:27
|
Update of /cvsroot/gc-linux/linux/drivers/input/keyboard In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers/input/keyboard Modified Files: Kconfig Makefile Log Message: Forward to v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/input/keyboard/Makefile,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Makefile 9 Dec 2009 18:18:07 -0000 1.13 --- Makefile 9 Dec 2009 18:40:09 -0000 1.14 *************** *** 6,9 **** --- 6,10 ---- obj-$(CONFIG_KEYBOARD_AAED2000) += aaed2000_kbd.o + obj-$(CONFIG_KEYBOARD_ADP5588) += adp5588-keys.o obj-$(CONFIG_KEYBOARD_AMIGA) += amikbd.o obj-$(CONFIG_KEYBOARD_ATARI) += atakbd.o *************** *** 22,29 **** --- 23,33 ---- obj-$(CONFIG_KEYBOARD_MAPLE) += maple_keyb.o obj-$(CONFIG_KEYBOARD_MATRIX) += matrix_keypad.o + obj-$(CONFIG_KEYBOARD_MAX7359) += max7359_keypad.o obj-$(CONFIG_KEYBOARD_NEWTON) += newtonkbd.o obj-$(CONFIG_KEYBOARD_OMAP) += omap-keypad.o + obj-$(CONFIG_KEYBOARD_OPENCORES) += opencores-kbd.o obj-$(CONFIG_KEYBOARD_PXA27x) += pxa27x_keypad.o obj-$(CONFIG_KEYBOARD_PXA930_ROTARY) += pxa930_rotary.o + obj-$(CONFIG_KEYBOARD_QT2160) += qt2160.o obj-$(CONFIG_KEYBOARD_SH_KEYSC) += sh_keysc.o obj-$(CONFIG_KEYBOARD_SPITZ) += spitzkbd.o *************** *** 31,33 **** --- 35,39 ---- obj-$(CONFIG_KEYBOARD_SUNKBD) += sunkbd.o obj-$(CONFIG_KEYBOARD_TOSA) += tosakbd.o + obj-$(CONFIG_KEYBOARD_TWL4030) += twl4030_keypad.o obj-$(CONFIG_KEYBOARD_XTKBD) += xtkbd.o + obj-$(CONFIG_KEYBOARD_W90P910) += w90p910_keypad.o Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/input/keyboard/Kconfig,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** Kconfig 9 Dec 2009 18:18:07 -0000 1.17 --- Kconfig 9 Dec 2009 18:40:09 -0000 1.18 *************** *** 25,28 **** --- 25,38 ---- module will be called aaed2000_kbd. + config KEYBOARD_ADP5588 + tristate "ADP5588 I2C QWERTY Keypad and IO Expander" + depends on I2C + help + Say Y here if you want to use a ADP5588 attached to your + system I2C bus. + + To compile this driver as a module, choose M here: the + module will be called adp5588-keys. + config KEYBOARD_AMIGA tristate "Amiga keyboard" *************** *** 105,108 **** --- 115,128 ---- left-hand column. + config QT2160 + tristate "Atmel AT42QT2160 Touch Sensor Chip" + depends on I2C && EXPERIMENTAL + help + If you say yes here you get support for Atmel AT42QT2160 Touch + Sensor chip as a keyboard input. + + This driver can also be built as a module. If so, the module + will be called qt2160. + config KEYBOARD_BFIN tristate "Blackfin BF54x keypad support" *************** *** 188,192 **** config KEYBOARD_HIL ! tristate "HP HIL keyboard support" depends on GSC || HP300 default y --- 208,212 ---- config KEYBOARD_HIL ! tristate "HP HIL keyboard/pointer support" depends on GSC || HP300 default y *************** *** 197,201 **** The "Human Interface Loop" is a older, 8-channel USB-like controller used in several Hewlett Packard models. ! This driver implements support for HIL-keyboards attached to your machine, so normally you should say Y here. --- 217,222 ---- The "Human Interface Loop" is a older, 8-channel USB-like controller used in several Hewlett Packard models. ! This driver implements support for HIL-keyboards and pointing ! devices (mice, tablets, touchscreens) attached to your machine, so normally you should say Y here. *************** *** 251,254 **** --- 272,286 ---- module will be called maple_keyb. + config KEYBOARD_MAX7359 + tristate "Maxim MAX7359 Key Switch Controller" + depends on I2C + help + If you say yes here you get support for the Maxim MAX7359 Key + Switch Controller chip. This providers microprocessors with + management of up to 64 key switches + + To compile this driver as a module, choose M here: the + module will be called max7359_keypad. + config KEYBOARD_NEWTON tristate "Newton keyboard" *************** *** 260,263 **** --- 292,304 ---- module will be called newtonkbd. + config KEYBOARD_OPENCORES + tristate "OpenCores Keyboard Controller" + help + Say Y here if you want to use the OpenCores Keyboard Controller + http://www.opencores.org/project,keyboardcontroller + + To compile this driver as a module, choose M here; the + module will be called opencores-kbd. + config KEYBOARD_PXA27x tristate "PXA27x/PXA3xx keypad support" *************** *** 330,333 **** --- 371,385 ---- module will be called omap-keypad. + config KEYBOARD_TWL4030 + tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" + depends on TWL4030_CORE + help + Say Y here if your board use the keypad controller on + TWL4030 family chips. It's safe to say enable this + even on boards that don't use the keypad controller. + + To compile this driver as a module, choose M here: the + module will be called twl4030_keypad. + config KEYBOARD_TOSA tristate "Tosa keyboard" *************** *** 362,364 **** --- 414,426 ---- module will be called xtkbd. + config KEYBOARD_W90P910 + tristate "W90P910 Matrix Keypad support" + depends on ARCH_W90X900 + help + Say Y here to enable the matrix keypad on evaluation board + based on W90P910. + + To compile this driver as a module, choose M here: the + module will be called w90p910_keypad. + endif |
From: Albert H. <he...@us...> - 2009-12-09 18:40:26
|
Update of /cvsroot/gc-linux/linux/drivers In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/drivers Modified Files: Makefile Log Message: Forward to v2.6.32. Index: Makefile =================================================================== RCS file: /cvsroot/gc-linux/linux/drivers/Makefile,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -d -r1.35 -r1.36 *** Makefile 9 Dec 2009 18:18:06 -0000 1.35 --- Makefile 9 Dec 2009 18:40:09 -0000 1.36 *************** *** 12,15 **** --- 12,16 ---- obj-y += video/ obj-$(CONFIG_ACPI) += acpi/ + obj-$(CONFIG_SFI) += sfi/ # PnP must come after ACPI since it will eventually need to check if acpi # was used and do nothing if so *************** *** 43,46 **** --- 44,49 ---- obj-$(CONFIG_SCSI) += scsi/ obj-$(CONFIG_ATA) += ata/ + obj-$(CONFIG_MTD) += mtd/ + obj-$(CONFIG_SPI) += spi/ obj-y += net/ obj-$(CONFIG_ATM) += atm/ *************** *** 51,56 **** obj-y += cdrom/ obj-y += auxdisplay/ - obj-$(CONFIG_MTD) += mtd/ - obj-$(CONFIG_SPI) += spi/ obj-$(CONFIG_PCCARD) += pcmcia/ obj-$(CONFIG_DIO) += dio/ --- 54,57 ---- |
From: Albert H. <he...@us...> - 2009-12-09 18:40:26
|
Update of /cvsroot/gc-linux/linux/fs In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv21229/fs Modified Files: Kconfig Log Message: Forward to v2.6.32. Index: Kconfig =================================================================== RCS file: /cvsroot/gc-linux/linux/fs/Kconfig,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** Kconfig 25 Oct 2009 18:56:56 -0000 1.17 --- Kconfig 9 Dec 2009 18:40:10 -0000 1.18 *************** *** 44,47 **** --- 44,48 ---- source "fs/ocfs2/Kconfig" source "fs/btrfs/Kconfig" + source "fs/nilfs2/Kconfig" endif # BLOCK *************** *** 109,112 **** --- 110,114 ---- config TMPFS bool "Virtual memory file system support (former shm fs)" + depends on SHMEM help Tmpfs is a file system which keeps all files in virtual memory. *************** *** 134,139 **** config HUGETLBFS bool "HugeTLB file system support" ! depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \ ! (S390 && 64BIT) || SYS_SUPPORTS_HUGETLBFS || BROKEN help hugetlbfs is a filesystem backing for HugeTLB pages, based on --- 136,141 ---- config HUGETLBFS bool "HugeTLB file system support" ! depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \ ! SYS_SUPPORTS_HUGETLBFS || BROKEN help hugetlbfs is a filesystem backing for HugeTLB pages, based on *************** *** 187,191 **** source "fs/ufs/Kconfig" source "fs/exofs/Kconfig" - source "fs/nilfs2/Kconfig" endif # MISC_FILESYSTEMS --- 189,192 ---- |