diff --git a/[refs] b/[refs] index f2867f3693e5..69afde12e1ac 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2dbba6f773d1e1e4c78f03b0dbf19790d9017693 +refs/heads/master: 7c8081eb8f20aa83deb5f1e95adc8a98902555a9 diff --git a/trunk/Documentation/dvb/bt8xx.txt b/trunk/Documentation/dvb/bt8xx.txt index ecb47adda063..4e7614e606c5 100644 --- a/trunk/Documentation/dvb/bt8xx.txt +++ b/trunk/Documentation/dvb/bt8xx.txt @@ -9,29 +9,19 @@ for accessing the i2c bus and the gpio pins of the bt8xx chipset. Please see Documentation/dvb/cards.txt => o Cards based on the Conexant Bt8xx PCI bridge: Compiling kernel please enable: -a.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "Enable Video for Linux API 1 (DEPRECATED)" -b.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "Video Capture Adapters" => "BT848 Video For Linux" -c.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" => "DVB for Linux" "DVB Core Support" "Bt8xx based PCI Cards" - -Please use the following options with care as deselection of drivers which are in fact necessary -may result in DVB devices that cannot be tuned due to lack of driver support: -You can save RAM by deselecting every frontend module that your DVB card does not need. - -First please remove the static dependency of DVB card drivers on all frontend modules for all possible card variants by enabling: -d.) "Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" - => "DVB for Linux" "DVB Core Support" "Load and attach frontend modules as needed" - -If you know the frontend driver that your card needs please enable: -e.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" - => "DVB for Linux" "DVB Core Support" "Customise DVB Frontends" => "Customise the frontend modules to build" - Then please select your card-specific frontend module. +a.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "BT848 Video For Linux" +b.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" + => "DVB for Linux" "DVB Core Support" "Bt8xx based PCI Cards" 2) Loading Modules ================== -Regular case: If the bttv driver detects a bt8xx-based DVB card, all frontend and backend modules will be loaded automatically. -Exceptions are: -- Old TwinHan DST cards or clones with or without CA slot and not containing an Eeprom. +In default cases bttv is loaded automatically. +To load the backend either place dvb-bt8xx in etc/modules, or apply manually: + + $ modprobe dvb-bt8xx + +All frontends will be loaded automatically. People running udev please see Documentation/dvb/udev.txt. In the following cases overriding the PCI type detection for dvb-bt8xx might be necessary: @@ -40,6 +30,7 @@ In the following cases overriding the PCI type detection for dvb-bt8xx might be ------------------------------ $ modprobe bttv card=113 + $ modprobe dvb-bt8xx $ modprobe dst Useful parameters for verbosity level and debugging the dst module: @@ -74,9 +65,10 @@ DViCO FusionHDTV 5 Lite: 135 Notice: The order of the card ID should be uprising: Example: $ modprobe bttv card=113 card=135 + $ modprobe dvb-bt8xx For a full list of card ID's please see Documentation/video4linux/CARDLIST.bttv. -In case of further problems please subscribe and send questions to the mailing list: linux-dvb@linuxtv.org. +In case of further problems send questions to the mailing list: www.linuxdvb.org. Authors: Richard Walker, Jamie Honan, diff --git a/trunk/Documentation/dvb/get_dvb_firmware b/trunk/Documentation/dvb/get_dvb_firmware index b4d306ae9234..4820366b6ae8 100644 --- a/trunk/Documentation/dvb/get_dvb_firmware +++ b/trunk/Documentation/dvb/get_dvb_firmware @@ -24,8 +24,7 @@ use IO::Handle; @components = ( "sp8870", "sp887x", "tda10045", "tda10046", "tda10046lifeview", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", "nxt2004", - "or51211", "or51132_qam", "or51132_vsb", "bluebird", - "opera1"); + "or51211", "or51132_qam", "or51132_vsb", "bluebird"); # Check args syntax() if (scalar(@ARGV) != 1); @@ -57,7 +56,7 @@ syntax(); sub sp8870 { my $sourcefile = "tt_Premium_217g.zip"; - my $url = "http://www.softwarepatch.pl/9999ccd06a4813cb827dbb0005071c71/$sourcefile"; + my $url = "http://www.technotrend.de/new/217g/$sourcefile"; my $hash = "53970ec17a538945a6d8cb608a7b3899"; my $outfile = "dvb-fe-sp8870.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); @@ -211,45 +210,6 @@ sub dec3000s { $outfile; } -sub opera1{ - my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 0); - - checkstandard(); - my $fwfile1="dvb-usb-opera1-fpga-01.fw"; - my $fwfile2="dvb-usb-opera-01.fw"; - extract("2830SCap2.sys", 0x62e8, 55024, "$tmpdir/opera1-fpga.fw"); - extract("2830SLoad2.sys",0x3178,0x3685-0x3178,"$tmpdir/fw1part1"); - extract("2830SLoad2.sys",0x0980,0x3150-0x0980,"$tmpdir/fw1part2"); - delzero("$tmpdir/fw1part1","$tmpdir/fw1part1-1"); - delzero("$tmpdir/fw1part2","$tmpdir/fw1part2-1"); - verify("$tmpdir/fw1part1-1","5e0909858fdf0b5b09ad48b9fe622e70"); - verify("$tmpdir/fw1part2-1","d6e146f321427e931df2c6fcadac37a1"); - verify("$tmpdir/opera1-fpga.fw","0f8133f5e9051f5f3c1928f7e5a1b07d"); - - my $RES1="\x01\x92\x7f\x00\x01\x00"; - my $RES0="\x01\x92\x7f\x00\x00\x00"; - my $DAT1="\x01\x00\xe6\x00\x01\x00"; - my $DAT0="\x01\x00\xe6\x00\x00\x00"; - open FW,">$tmpdir/opera.fw"; - print FW "$RES1"; - print FW "$DAT1"; - print FW "$RES1"; - print FW "$DAT1"; - appendfile(FW,"$tmpdir/fw1part1-1"); - print FW "$RES0"; - print FW "$DAT0"; - print FW "$RES1"; - print FW "$DAT1"; - appendfile(FW,"$tmpdir/fw1part2-1"); - print FW "$RES1"; - print FW "$DAT1"; - print FW "$RES0"; - print FW "$DAT0"; - copy ("$tmpdir/opera1-fpga.fw",$fwfile1); - copy ("$tmpdir/opera.fw",$fwfile2); - - $fwfile1.",".$fwfile2; -} sub vp7041 { my $sourcefile = "2.422.zip"; @@ -480,25 +440,6 @@ sub appendfile { close(INFILE); } -sub delzero{ - my ($infile,$outfile) =@_; - - open INFILE,"<$infile"; - open OUTFILE,">$outfile"; - while (1){ - $rcount=sysread(INFILE,$buf,22); - $len=ord(substr($buf,0,1)); - print OUTFILE substr($buf,0,1); - print OUTFILE substr($buf,2,$len+3); - last if ($rcount<1); - printf OUTFILE "%c",0; -#print $len." ".length($buf)."\n"; - - } - close(INFILE); - close(OUTFILE); -} - sub syntax() { print STDERR "syntax: get_dvb_firmware \n"; print STDERR "Supported components:\n"; diff --git a/trunk/Documentation/dvb/opera-firmware.txt b/trunk/Documentation/dvb/opera-firmware.txt deleted file mode 100644 index 93e784c2607b..000000000000 --- a/trunk/Documentation/dvb/opera-firmware.txt +++ /dev/null @@ -1,27 +0,0 @@ -To extract the firmware for the Opera DVB-S1 USB-Box -you need to copy the files: - -2830SCap2.sys -2830SLoad2.sys - -from the windriver disk into this directory. - -Then run - -./get_dvb_firware opera1 - -and after that you have 2 files: - -dvb-usb-opera-01.fw -dvb-usb-opera1-fpga-01.fw - -in here. - -Copy them into /lib/firmware/ . - -After that the driver can load the firmware -(if you have enabled firmware loading -in kernel config and have hotplug running). - - -Marco Gittler \ No newline at end of file diff --git a/trunk/Documentation/video4linux/CARDLIST.bttv b/trunk/Documentation/video4linux/CARDLIST.bttv index 177159c5f4c4..b60639130a51 100644 --- a/trunk/Documentation/video4linux/CARDLIST.bttv +++ b/trunk/Documentation/video4linux/CARDLIST.bttv @@ -66,7 +66,7 @@ 65 -> Lifeview FlyVideo 2000S LR90 66 -> Terratec TValueRadio [153b:1135,153b:ff3b] 67 -> IODATA GV-BCTV4/PCI [10fc:4050] - 68 -> 3Dfx VoodooTV FM (Euro) [10b4:2637] + 68 -> 3Dfx VoodooTV FM (Euro), VoodooTV 200 (USA) [121a:3000,10b4:2637] 69 -> Active Imaging AIMMS 70 -> Prolink Pixelview PV-BT878P+ (Rev.4C,8E) 71 -> Lifeview FlyVideo 98EZ (capture only) LR51 [1851:1851] @@ -145,5 +145,3 @@ 144 -> MagicTV 145 -> SSAI Security Video Interface [4149:5353] 146 -> SSAI Ultrasound Video Interface [414a:5353] -147 -> VoodooTV 200 (USA) [121a:3000] -148 -> DViCO FusionHDTV 2 [dbc0:d200] diff --git a/trunk/Documentation/video4linux/CARDLIST.cx88 b/trunk/Documentation/video4linux/CARDLIST.cx88 index 82ac8250e978..60f838beb9c8 100644 --- a/trunk/Documentation/video4linux/CARDLIST.cx88 +++ b/trunk/Documentation/video4linux/CARDLIST.cx88 @@ -55,4 +55,3 @@ 54 -> Norwood Micro TV Tuner 55 -> Shenzhen Tungsten Ages Tech TE-DTV-250 / Swann OEM [c180:c980] 56 -> Hauppauge WinTV-HVR1300 DVB-T/Hybrid MPEG Encoder [0070:9600,0070:9601,0070:9602] - 57 -> ADS Tech Instant Video PCI [1421:0390] diff --git a/trunk/Documentation/video4linux/CARDLIST.saa7134 b/trunk/Documentation/video4linux/CARDLIST.saa7134 index 3f8aeab50a10..712e8c8333cc 100644 --- a/trunk/Documentation/video4linux/CARDLIST.saa7134 +++ b/trunk/Documentation/video4linux/CARDLIST.saa7134 @@ -114,4 +114,3 @@ 113 -> Elitegroup ECS TVP3XP FM1246 Tuner Card (PAL,FM) [1019:4cb6] 114 -> KWorld DVB-T 210 [17de:7250] 115 -> Sabrent PCMCIA TV-PCB05 [0919:2003] -116 -> 10MOONS TM300 TV Card [1131:2304] diff --git a/trunk/Documentation/video4linux/CARDLIST.tuner b/trunk/Documentation/video4linux/CARDLIST.tuner index a88c02d23805..44134f04b82a 100644 --- a/trunk/Documentation/video4linux/CARDLIST.tuner +++ b/trunk/Documentation/video4linux/CARDLIST.tuner @@ -40,7 +40,7 @@ tuner=38 - Philips PAL/SECAM multi (FM1216ME MK3) tuner=39 - LG NTSC (newer TAPC series) tuner=40 - HITACHI V7-J180AT tuner=41 - Philips PAL_MK (FI1216 MK) -tuner=42 - Philips FCV1236D ATSC/NTSC dual in +tuner=42 - Philips 1236D ATSC/NTSC dual in tuner=43 - Philips NTSC MK3 (FM1236MK3 or FM1236/F) tuner=44 - Philips 4 in 1 (ATI TV Wonder Pro/Conexant) tuner=45 - Microtune 4049 FM5 @@ -72,4 +72,3 @@ tuner=70 - Samsung TCPN 2121P30A tuner=71 - Xceive xc3028 tuner=72 - Thomson FE6600 tuner=73 - Samsung TCPG 6121P30A -tuner=75 - Philips TEA5761 FM Radio diff --git a/trunk/Documentation/video4linux/sn9c102.txt b/trunk/Documentation/video4linux/sn9c102.txt index 1ffad19ce891..279717c96f63 100644 --- a/trunk/Documentation/video4linux/sn9c102.txt +++ b/trunk/Documentation/video4linux/sn9c102.txt @@ -436,7 +436,7 @@ HV7131D Hynix Semiconductor | Yes No No No HV7131R Hynix Semiconductor | No Yes Yes Yes MI-0343 Micron Technology | Yes No No No MI-0360 Micron Technology | No Yes Yes Yes -OV7630 OmniVision Technologies | Yes Yes Yes Yes +OV7630 OmniVision Technologies | Yes Yes No No OV7660 OmniVision Technologies | No No Yes Yes PAS106B PixArt Imaging | Yes No No No PAS202B PixArt Imaging | Yes Yes No No @@ -583,7 +583,6 @@ order): - Bertrik Sikken, who reverse-engineered and documented the Huffman compression algorithm used in the SN9C101, SN9C102 and SN9C103 controllers and implemented the first decoder; -- Ronny Standke for the donation of a webcam; - Mizuno Takafumi for the donation of a webcam; - an "anonymous" donator (who didn't want his name to be revealed) for the donation of a webcam. diff --git a/trunk/Documentation/video4linux/zr364xx.txt b/trunk/Documentation/video4linux/zr364xx.txt index 4d9a0c33f2fd..c76992d0ff4d 100644 --- a/trunk/Documentation/video4linux/zr364xx.txt +++ b/trunk/Documentation/video4linux/zr364xx.txt @@ -62,4 +62,4 @@ Vendor Product Distributor Model 0x0784 0x0040 Traveler Slimline X5 0x06d6 0x0034 Trust Powerc@m 750 0x0a17 0x0062 Pentax Optio 50L -0x06d6 0x003b Trust Powerc@m 970Z + diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index e78f62f13bac..5abec1435ad8 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -913,12 +913,6 @@ M: mchan@broadcom.com L: netdev@vger.kernel.org S: Supported -BSG (block layer generic sg v4 driver) -P: FUJITA Tomonori -M: fujita.tomonori@lab.ntt.co.jp -L: linux-scsi@vger.kernel.org -S: Supported - BTTV VIDEO4LINUX DRIVER P: Mauro Carvalho Chehab M: mchehab@infradead.org @@ -1740,7 +1734,6 @@ S: Maintained i386 SETUP CODE / CPU ERRATA WORKAROUNDS P: H. Peter Anvin M: hpa@zytor.com -T: git.kernel.org:/pub/scm/linux/kernel/git/hpa/linux-2.6-x86setup.git S: Maintained IA64 (Itanium) PLATFORM @@ -2394,7 +2387,7 @@ P: Artem Bityutskiy M: dedekind@infradead.org W: http://www.linux-mtd.infradead.org/ L: linux-mtd@lists.infradead.org -T: git git://git.infradead.org/~dedekind/ubi-2.6.git +T: git git://git.infradead.org/ubi-2.6.git S: Maintained MICROTEK X6 SCANNER @@ -4111,11 +4104,6 @@ W: http://www.polyware.nl/~middelin/En/hobbies.html W: http://www.polyware.nl/~middelin/hobbies.html S: Maintained -ZS DECSTATION Z85C30 SERIAL DRIVER -P: Maciej W. Rozycki -M: macro@linux-mips.org -S: Maintained - THE REST P: Linus Torvalds S: Buried alive in reporters diff --git a/trunk/arch/alpha/kernel/smp.c b/trunk/arch/alpha/kernel/smp.c index b28731437c31..80cfb758ee2b 100644 --- a/trunk/arch/alpha/kernel/smp.c +++ b/trunk/arch/alpha/kernel/smp.c @@ -65,7 +65,7 @@ enum ipi_message_type { }; /* Set to a secondary's cpuid when it comes online. */ -static int smp_secondary_alive __devinitdata = 0; +static int smp_secondary_alive __initdata = 0; /* Which cpus ids came online. */ cpumask_t cpu_online_map; @@ -173,7 +173,7 @@ smp_callin(void) } /* Wait until hwrpb->txrdy is clear for cpu. Return -1 on timeout. */ -static int __devinit +static int __init wait_for_txrdy (unsigned long cpumask) { unsigned long timeout; @@ -358,7 +358,7 @@ secondary_cpu_start(int cpuid, struct task_struct *idle) /* * Bring one cpu online. */ -static int __devinit +static int __init smp_boot_one_cpu(int cpuid) { struct task_struct *idle; diff --git a/trunk/arch/alpha/lib/checksum.c b/trunk/arch/alpha/lib/checksum.c index 8698e0746f9f..ab3761c437a8 100644 --- a/trunk/arch/alpha/lib/checksum.c +++ b/trunk/arch/alpha/lib/checksum.c @@ -69,7 +69,6 @@ __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, result = (result & 0xffffffff) + (result >> 32); return (__force __wsum)result; } -EXPORT_SYMBOL(csum_tcpudp_nofold); /* * Do a 64-bit checksum on an arbitrary memory area.. diff --git a/trunk/arch/avr32/Kconfig b/trunk/arch/avr32/Kconfig index d12346aaa88b..3ec76586877e 100644 --- a/trunk/arch/avr32/Kconfig +++ b/trunk/arch/avr32/Kconfig @@ -113,10 +113,6 @@ config BOARD_ATNGW100 bool "ATNGW100 Network Gateway" endchoice -if BOARD_ATSTK1000 -source "arch/avr32/boards/atstk1000/Kconfig" -endif - choice prompt "Boot loader type" default LOADER_U_BOOT @@ -189,27 +185,6 @@ config CMDLINE endmenu -menu "Power managment options" - -menu "CPU Frequency scaling" - -source "drivers/cpufreq/Kconfig" - -config CPU_FREQ_AT32AP - bool "CPU frequency driver for AT32AP" - depends on CPU_FREQ && PLATFORM_AT32AP - default n - help - This enables the CPU frequency driver for AT32AP processors. - - For details, take a look in . - - If in doubt, say N. - -endmenu - -endmenu - menu "Bus options" config PCI diff --git a/trunk/arch/avr32/boards/atstk1000/Kconfig b/trunk/arch/avr32/boards/atstk1000/Kconfig deleted file mode 100644 index 71bc7d364fb7..000000000000 --- a/trunk/arch/avr32/boards/atstk1000/Kconfig +++ /dev/null @@ -1,53 +0,0 @@ -# STK1000 customization - -if BOARD_ATSTK1002 - -config BOARD_ATSTK1002_CUSTOM - bool "Non-default STK-1002 jumper settings" - help - You will normally leave the jumpers on the CPU card at their - default settings. If you need to use certain peripherals, - you will need to change some of those jumpers. - -if BOARD_ATSTK1002_CUSTOM - -config BOARD_ATSTK1002_SW1_CUSTOM - bool "SW1: use SSC1 (not SPI0)" - help - This also prevents using the external DAC as an audio interface, - and means you can't initialize the on-board QVGA display. - -config BOARD_ATSTK1002_SW2_CUSTOM - bool "SW2: use IRDA or TIMER0 (not UART-A, MMC/SD, and PS2-A)" - help - If you change this you'll want an updated boot loader putting - the console on UART-C not UART-A. - -config BOARD_ATSTK1002_SW3_CUSTOM - bool "SW3: use TIMER1 (not SSC0 and GCLK)" - help - This also prevents using the external DAC as an audio interface. - -config BOARD_ATSTK1002_SW4_CUSTOM - bool "SW4: use ISI/Camera (not GPIOs, SPI1, and PS2-B)" - help - To use the camera interface you'll need a custom card (on the - PCI-format connector) connect a video sensor. - -config BOARD_ATSTK1002_SW5_CUSTOM - bool "SW5: use MACB1 (not LCDC)" - -config BOARD_ATSTK1002_SW6_CUSTOM - bool "SW6: more GPIOs (not MACB0)" - -endif # custom - -config BOARD_ATSTK1002_SPI1 - bool "Configure SPI1 controller" - depends on !BOARD_ATSTK1002_SW4_CUSTOM - help - All the signals for the second SPI controller are available on - GPIO lines and accessed through the J1 jumper block. Say "y" - here to configure that SPI controller. - -endif # stk 1002 diff --git a/trunk/arch/avr32/boards/atstk1000/atstk1002.c b/trunk/arch/avr32/boards/atstk1000/atstk1002.c index cb93eabb9c6c..e253e86a1a39 100644 --- a/trunk/arch/avr32/boards/atstk1000/atstk1002.c +++ b/trunk/arch/avr32/boards/atstk1000/atstk1002.c @@ -27,27 +27,15 @@ #include "atstk1000.h" +#define SW2_DEFAULT /* MMCI and UART_A available */ struct eth_addr { u8 addr[6]; }; static struct eth_addr __initdata hw_addr[2]; -static struct eth_platform_data __initdata eth_data[2] = { - { - /* - * The MDIO pullups on STK1000 are a bit too weak for - * the autodetection to work properly, so we have to - * mask out everything but the correct address. - */ - .phy_mask = ~(1U << 16), - }, - { - .phy_mask = ~(1U << 17), - }, -}; +static struct eth_platform_data __initdata eth_data[2]; -#ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM static struct spi_board_info spi0_board_info[] __initdata = { { /* QVGA display */ @@ -57,13 +45,6 @@ static struct spi_board_info spi0_board_info[] __initdata = { .mode = SPI_MODE_3, }, }; -#endif - -#ifdef CONFIG_BOARD_ATSTK1002_SPI1 -static struct spi_board_info spi1_board_info[] __initdata = { { - /* patch in custom entries here */ -} }; -#endif /* * The next two functions should go away as the boot loader is @@ -122,10 +103,10 @@ static void __init set_hw_addr(struct platform_device *pdev) void __init setup_board(void) { -#ifdef CONFIG_BOARD_ATSTK1002_SW2_CUSTOM - at32_map_usart(0, 1); /* USART 0/B: /dev/ttyS1, IRDA */ -#else +#ifdef SW2_DEFAULT at32_map_usart(1, 0); /* USART 1/A: /dev/ttyS0, DB9 */ +#else + at32_map_usart(0, 1); /* USART 0/B: /dev/ttyS1, IRDA */ #endif /* USART 2/unused: expansion connector */ at32_map_usart(3, 2); /* USART 3/C: /dev/ttyS2, DB9 */ @@ -159,31 +140,18 @@ static int __init atstk1002_init(void) at32_add_system_devices(); -#ifdef CONFIG_BOARD_ATSTK1002_SW2_CUSTOM - at32_add_device_usart(1); -#else +#ifdef SW2_DEFAULT at32_add_device_usart(0); +#else + at32_add_device_usart(1); #endif at32_add_device_usart(2); -#ifndef CONFIG_BOARD_ATSTK1002_SW6_CUSTOM set_hw_addr(at32_add_device_eth(0, ð_data[0])); -#endif -#ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM + at32_add_device_spi(0, spi0_board_info, ARRAY_SIZE(spi0_board_info)); -#endif -#ifdef CONFIG_BOARD_ATSTK1002_SPI1 - at32_add_device_spi(1, spi1_board_info, ARRAY_SIZE(spi1_board_info)); -#endif -#ifdef CONFIG_BOARD_ATSTK1002_SW5_CUSTOM - set_hw_addr(at32_add_device_eth(1, ð_data[1])); -#else at32_add_device_lcdc(0, &atstk1000_lcdc_data, fbmem_start, fbmem_size); -#endif -#ifndef CONFIG_BOARD_ATSTK1002_SW3_CUSTOM - at32_add_device_ssc(0, ATMEL_SSC_TX); -#endif return 0; } diff --git a/trunk/arch/avr32/kernel/setup.c b/trunk/arch/avr32/kernel/setup.c index d08b0bc6b2bb..b279d66acf5f 100644 --- a/trunk/arch/avr32/kernel/setup.c +++ b/trunk/arch/avr32/kernel/setup.c @@ -313,7 +313,7 @@ __tagtable(ATAG_MEM, parse_tag_mem); static int __init parse_tag_rdimg(struct tag *tag) { -#ifdef CONFIG_BLK_DEV_INITRD +#ifdef CONFIG_INITRD struct tag_mem_range *mem = &tag->u.mem_range; int ret; @@ -323,7 +323,7 @@ static int __init parse_tag_rdimg(struct tag *tag) return 0; } - ret = add_reserved_region(mem->addr, mem->addr + mem->size - 1, + ret = add_reserved_region(mem->start, mem->start + mem->size - 1, "initrd"); if (ret) { printk(KERN_WARNING diff --git a/trunk/arch/avr32/mach-at32ap/Makefile b/trunk/arch/avr32/mach-at32ap/Makefile index a8b445046e3e..f1d395724ac6 100644 --- a/trunk/arch/avr32/mach-at32ap/Makefile +++ b/trunk/arch/avr32/mach-at32ap/Makefile @@ -1,4 +1,3 @@ obj-y += at32ap.o clock.o intc.o extint.o pio.o hsmc.o obj-$(CONFIG_CPU_AT32AP7000) += at32ap7000.o obj-$(CONFIG_CPU_AT32AP7000) += time-tc.o -obj-$(CONFIG_CPU_FREQ_AT32AP) += cpufreq.o diff --git a/trunk/arch/avr32/mach-at32ap/at32ap.c b/trunk/arch/avr32/mach-at32ap/at32ap.c index 7c4987f3287a..90f207e8e96d 100644 --- a/trunk/arch/avr32/mach-at32ap/at32ap.c +++ b/trunk/arch/avr32/mach-at32ap/at32ap.c @@ -11,10 +11,41 @@ #include #include +#include + #include +#include + +struct at32_sm system_manager; + +static int __init at32_sm_init(void) +{ + struct resource *regs; + struct at32_sm *sm = &system_manager; + int ret = -ENXIO; + + regs = platform_get_resource(&at32_sm_device, IORESOURCE_MEM, 0); + if (!regs) + goto fail; + + spin_lock_init(&sm->lock); + sm->pdev = &at32_sm_device; + + ret = -ENOMEM; + sm->regs = ioremap(regs->start, regs->end - regs->start + 1); + if (!sm->regs) + goto fail; + + return 0; + +fail: + printk(KERN_ERR "Failed to initialize System Manager: %d\n", ret); + return ret; +} void __init setup_platform(void) { + at32_sm_init(); at32_clock_init(); at32_portmux_init(); } diff --git a/trunk/arch/avr32/mach-at32ap/at32ap7000.c b/trunk/arch/avr32/mach-at32ap/at32ap7000.c index 64cc5583ddfb..4dda42d3f6d5 100644 --- a/trunk/arch/avr32/mach-at32ap/at32ap7000.c +++ b/trunk/arch/avr32/mach-at32ap/at32ap7000.c @@ -17,20 +17,14 @@ #include #include #include +#include #include