- 25 3月, 2011 1 次提交
-
-
由 Thomas Gleixner 提交于
Scripted conversion to new function names with coccinelle. Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Cc: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
-
- 14 1月, 2011 1 次提交
-
-
由 Vasiliy Kulikov 提交于
clk_get() returns ERR_PTR() on error, not NULL. Signed-off-by: NVasiliy Kulikov <segoon@openwall.com> Acked-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
-
- 15 10月, 2010 1 次提交
-
-
由 Arnd Bergmann 提交于
All file_operations should get a .llseek operation so we can make nonseekable_open the default for future file operations without a .llseek pointer. The three cases that we can automatically detect are no_llseek, seq_lseek and default_llseek. For cases where we can we can automatically prove that the file offset is always ignored, we use noop_llseek, which maintains the current behavior of not returning an error from a seek. New drivers should normally not use noop_llseek but instead use no_llseek and call nonseekable_open at open time. Existing drivers can be converted to do the same when the maintainer knows for certain that no user code relies on calling seek on the device file. The generated code is often incorrectly indented and right now contains comments that clarify for each added line why a specific variant was chosen. In the version that gets submitted upstream, the comments will be gone and I will manually fix the indentation, because there does not seem to be a way to do that using coccinelle. Some amount of new code is currently sitting in linux-next that should get the same modifications, which I will do at the end of the merge window. Many thanks to Julia Lawall for helping me learn to write a semantic patch that does all this. ===== begin semantic patch ===== // This adds an llseek= method to all file operations, // as a preparation for making no_llseek the default. // // The rules are // - use no_llseek explicitly if we do nonseekable_open // - use seq_lseek for sequential files // - use default_llseek if we know we access f_pos // - use noop_llseek if we know we don't access f_pos, // but we still want to allow users to call lseek // @ open1 exists @ identifier nested_open; @@ nested_open(...) { <+... nonseekable_open(...) ...+> } @ open exists@ identifier open_f; identifier i, f; identifier open1.nested_open; @@ int open_f(struct inode *i, struct file *f) { <+... ( nonseekable_open(...) | nested_open(...) ) ...+> } @ read disable optional_qualifier exists @ identifier read_f; identifier f, p, s, off; type ssize_t, size_t, loff_t; expression E; identifier func; @@ ssize_t read_f(struct file *f, char *p, size_t s, loff_t *off) { <+... ( *off = E | *off += E | func(..., off, ...) | E = *off ) ...+> } @ read_no_fpos disable optional_qualifier exists @ identifier read_f; identifier f, p, s, off; type ssize_t, size_t, loff_t; @@ ssize_t read_f(struct file *f, char *p, size_t s, loff_t *off) { ... when != off } @ write @ identifier write_f; identifier f, p, s, off; type ssize_t, size_t, loff_t; expression E; identifier func; @@ ssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off) { <+... ( *off = E | *off += E | func(..., off, ...) | E = *off ) ...+> } @ write_no_fpos @ identifier write_f; identifier f, p, s, off; type ssize_t, size_t, loff_t; @@ ssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off) { ... when != off } @ fops0 @ identifier fops; @@ struct file_operations fops = { ... }; @ has_llseek depends on fops0 @ identifier fops0.fops; identifier llseek_f; @@ struct file_operations fops = { ... .llseek = llseek_f, ... }; @ has_read depends on fops0 @ identifier fops0.fops; identifier read_f; @@ struct file_operations fops = { ... .read = read_f, ... }; @ has_write depends on fops0 @ identifier fops0.fops; identifier write_f; @@ struct file_operations fops = { ... .write = write_f, ... }; @ has_open depends on fops0 @ identifier fops0.fops; identifier open_f; @@ struct file_operations fops = { ... .open = open_f, ... }; // use no_llseek if we call nonseekable_open //////////////////////////////////////////// @ nonseekable1 depends on !has_llseek && has_open @ identifier fops0.fops; identifier nso ~= "nonseekable_open"; @@ struct file_operations fops = { ... .open = nso, ... +.llseek = no_llseek, /* nonseekable */ }; @ nonseekable2 depends on !has_llseek @ identifier fops0.fops; identifier open.open_f; @@ struct file_operations fops = { ... .open = open_f, ... +.llseek = no_llseek, /* open uses nonseekable */ }; // use seq_lseek for sequential files ///////////////////////////////////// @ seq depends on !has_llseek @ identifier fops0.fops; identifier sr ~= "seq_read"; @@ struct file_operations fops = { ... .read = sr, ... +.llseek = seq_lseek, /* we have seq_read */ }; // use default_llseek if there is a readdir /////////////////////////////////////////// @ fops1 depends on !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; identifier readdir_e; @@ // any other fop is used that changes pos struct file_operations fops = { ... .readdir = readdir_e, ... +.llseek = default_llseek, /* readdir is present */ }; // use default_llseek if at least one of read/write touches f_pos ///////////////////////////////////////////////////////////////// @ fops2 depends on !fops1 && !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; identifier read.read_f; @@ // read fops use offset struct file_operations fops = { ... .read = read_f, ... +.llseek = default_llseek, /* read accesses f_pos */ }; @ fops3 depends on !fops1 && !fops2 && !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; identifier write.write_f; @@ // write fops use offset struct file_operations fops = { ... .write = write_f, ... + .llseek = default_llseek, /* write accesses f_pos */ }; // Use noop_llseek if neither read nor write accesses f_pos /////////////////////////////////////////////////////////// @ fops4 depends on !fops1 && !fops2 && !fops3 && !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; identifier read_no_fpos.read_f; identifier write_no_fpos.write_f; @@ // write fops use offset struct file_operations fops = { ... .write = write_f, .read = read_f, ... +.llseek = noop_llseek, /* read and write both use no f_pos */ }; @ depends on has_write && !has_read && !fops1 && !fops2 && !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; identifier write_no_fpos.write_f; @@ struct file_operations fops = { ... .write = write_f, ... +.llseek = noop_llseek, /* write uses no f_pos */ }; @ depends on has_read && !has_write && !fops1 && !fops2 && !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; identifier read_no_fpos.read_f; @@ struct file_operations fops = { ... .read = read_f, ... +.llseek = noop_llseek, /* read uses no f_pos */ }; @ depends on !has_read && !has_write && !fops1 && !fops2 && !has_llseek && !nonseekable1 && !nonseekable2 && !seq @ identifier fops0.fops; @@ struct file_operations fops = { ... +.llseek = noop_llseek, /* no read or write fn */ }; ===== End semantic patch ===== Signed-off-by: NArnd Bergmann <arnd@arndb.de> Cc: Julia Lawall <julia@diku.dk> Cc: Christoph Hellwig <hch@infradead.org>
-
- 15 12月, 2009 1 次提交
-
-
由 Hans-Christian Egtvedt 提交于
This patch adds board support for ATNGW100 mkII. This board is an upgrade of the ATNGW100 where the difference is an additional 256 MB NAND flash device and 128 MB 32-bit SDRAM instead of the 32 MB 16-bit SDRAM on ATNGW100. Tested on ATNGW100 mkII, duh (-: Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 04 12月, 2009 1 次提交
-
-
由 André Goddard Rosa 提交于
That is "success", "unknown", "through", "performance", "[re|un]mapping" , "access", "default", "reasonable", "[con]currently", "temperature" , "channel", "[un]used", "application", "example","hierarchy", "therefore" , "[over|under]flow", "contiguous", "threshold", "enough" and others. Signed-off-by: NAndré Goddard Rosa <andre.goddard@gmail.com> Signed-off-by: NJiri Kosina <jkosina@suse.cz>
-
- 27 8月, 2009 2 次提交
-
-
由 Peter Ma 提交于
For MRMT1/2 add-on card to Atmel ATNGW100. This patch implements the SPI slave setup method created by patch: <<avr32: function for independently setting up SPI slaves>> Signed-off-by: NPeter Ma <pma@mediamatech.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Peter Ma 提交于
The MRMT1 patch mistakenly reverted commit fe272b5b. This new patch is intended to correct this, so that both daughtercards should be able to assign GPIO PC25 and PE0 to the MCI driver. Signed-off-by: NPeter Ma <pma@mediamatech.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 27 7月, 2009 1 次提交
-
-
由 Ben Nizette 提交于
The ezLCD+101 board (to which an favr-32 is fitted) has a long, unshielded, nasty lead between the touch panel and the ads7843 touch controller. In order to get satisfactory response then, we need to employ every noise-reduction trick in the driver's arsenal. After extensive fiddling I've found some good settings: 1) We keep vref on all the time to dramatically reduce settling times (at the cost of a tiny increase in power consumption). 2) Despite 1 the settling time is still non-zero. 500uS is plenty of time for the signals to settle 3) Despite 1 and 2 there's still a little bit of noise around. By setting a pen recheck delay we make the panel feel less touchy and twitchy. Someone with more time and patience myself might be able to tune this numbers further but these settings are now perfectly acceptable for normal use. Tested on ezLCD+101 though should only improve response on other ezLCD+/ favr-32 boards too. Signed-off-by: NBen Nizette <bn@niasdigital.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 08 6月, 2009 2 次提交
-
-
由 Peter Ma 提交于
Signed-off-by: NPeter Ma <pma@mediamatech.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Peter Ma 提交于
Signed-off-by: NPeter Ma <pma@mediamatech.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 03 6月, 2009 1 次提交
-
-
由 Mark Jackson 提交于
This patch updates the LCD init code for the MIMC200 board. V2 fixes a .yres typo and corrects an incorrect setup value in the call to at32_add_device_lcdc() Without this patch, the lcd setup is wrong and won't display images correctly (if at all !!) Signed-off-by: NMark Jackson <mpfj@mimc.co.uk> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 09 4月, 2009 1 次提交
-
-
由 Jonas Larsson 提交于
Same patch as before, modified to use bool. This patch solves the problem with the inverted mci detect pin on Merisc boards. Signed-off-by: NJonas Larsson <jonas.larsson@martinsson.se> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 07 4月, 2009 1 次提交
-
-
由 Yang Hongyang 提交于
Replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) Signed-off-by: Yang Hongyang<yanghy@cn.fujitsu.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 01 4月, 2009 1 次提交
-
-
由 Peter Ma 提交于
Adds extra parameter to AT32 at32_map_usart(), so as to reserve RTS/CTS/CLK pins. All boards under arch/avr32/boards have been updated (trivial change), but not all have been tested. Signed-off-by: NPeter Ma <pma@mediamatech.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 30 3月, 2009 1 次提交
-
-
由 Jonas Larsson 提交于
This patch adds RTC support for the Merisc boards. Signed-off-by: NJonas Larsson <jonas.larsson@martinsson.se> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 27 3月, 2009 3 次提交
-
-
由 Hans-Christian Egtvedt 提交于
This patch will adjust the setup the DMA controller for the AC97 Controller in the at32ap700x machine code. This setup matches the new ALSA driver for the AC97C. The struct ac97c_platform_data has been moved into its own header file located in the sound include path. Tested on ATSTK1006 + ATSTK1000. This patch will setup the AC97 controller properly for the adjusted machine code. Both EVKLCD10x and Hammerhead board has been updated. Tested on EVKLCD10x, and copied to Hammerhead board. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> [haavard.skinnemoen@atmel.com: fold with board code update] Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Hans-Christian Egtvedt 提交于
This patch will adjust the setup the DMA controller for the Audio Bistream DAC in the at32ap700x machine code. This setup matches the new ALSA driver for the ABDAC. Tested on ATSTK1006 + ATSTK1000. This patch will setup the needed platform data for the Audio Bistream DAC used by the Favr-32 board. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> [haavard.skinnemoen@atmel.com: fold board code update] Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Jonas Larsson 提交于
Merisc is the family name for a range of AVR32-based boards. The boards are designed to be used in a man-machine interfacing environment, utilizing a touch-based graphical user interface. They host a vast range of I/O peripherals as well as a large SDRAM & Flash memory bank. For more information see: http://www.martinsson.se/meriscSigned-off-by: NJonas Larsson <jonas.larsson@martinsson.se> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 26 3月, 2009 4 次提交
-
-
由 Hans-Christian Egtvedt 提交于
This patch adjusts the timing parameters for the Kyocera LCD panels connected on the EVKLCD10X addon boards. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Hans-Christian Egtvedt 提交于
The PB15 GPIO line is used to control the enable and disable signal for the backlight regulator on EVKLCD10x boards. This patch hands the I/O line over to the LCDC driver, which will control when to enable and disable the backlight. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> [haavard.skinnemoen@atmel.com: reverted ac97c change] Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Hans-Christian Egtvedt 提交于
This patch removes the special handling of MCI platform data for EVKLCD10x boards. This is now possible since the pin mask for the LCD controller is no longer reserving the I/O lines used for MCI card detection and write protect. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Hans-Christian Egtvedt 提交于
This patch will set the pin mask to alternative 18 bits per pixel output for EVKLCD10x boards. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 24 3月, 2009 1 次提交
-
-
由 Huang Weiyi 提交于
Remove duplicated #include in arch/avr32/boards/hammerhead/flash.c. Signed-off-by: NHuang Weiyi <weiyi.huang@gmail.com> Acked-by: NAlex Raimondi <mailinglist@miromico.ch> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 06 1月, 2009 1 次提交
-
-
由 Haavard Skinnemoen 提交于
at32_add_device_mci() will refuse to add the mci device if the data parameter is NULL. Fix up the favr-32 and hammerhead boards so that this doesn't happen. Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com> Cc: Alex Raimondi <mailinglist@miromico.ch> Cc: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
-
- 05 1月, 2009 5 次提交
-
-
由 Nicolas Ferre 提交于
Needed to use the atmel-mci driver in an architecture independant maner. Signed-off-by: NNicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Alex Raimondi 提交于
The Hammerhead platform is built around a AVR32 32-bit microcontroller from Atmel. It offers versatile peripherals, such as ethernet, usb device, usb host etc. The board also incooperates a power supply and is a Power over Ethernet (PoE) Powered Device (PD). Additonally, a Cyclone III FPGA from Altera is integrated on the board. The FPGA is mapped into the 32-bit AVR memory bus. The FPGA offers two DDR2 SDRAM interfaces, which will cover even the most exceptional need of memory bandwidth. Together with the onboard video decoder the board is ready for video processing. This patch does include the basic support for the fpga device driver, but not the device driver itself. Signed-off-by: NAlex Raimondi <mailinglist@miromico.ch> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Alex Raimondi 提交于
at32_reserve_pin now takes an u32 bitmask rather than a single pin. This allows to reserve multiple pins at once. Remove (undocumented) SDCS (pin PE26) from reservation in board setup code. Signed-off-by: NAlex Raimondi <raimondi@miromico.ch> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Haavard Skinnemoen 提交于
at32_add_system_devices() is deprecated, so remove the call to it. Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Mark Jackson 提交于
This patch removes a call to the deprecated function at32_add_system_devices(). Signed-off-by: NMark Jackson <mpfj@mimc.co.uk> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 18 12月, 2008 1 次提交
-
-
由 Haavard Skinnemoen 提交于
The favr-32 board code still refers to the old asm/arch header files which were moved to mach/ some time ago. Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 23 10月, 2008 1 次提交
-
-
由 Haavard Skinnemoen 提交于
Add essential system devices, including GPIO controllers, automatically at core_initcall time. This ensures that the devices are there when the PIO driver gets initialized at postcore_initcall, fixing a bug exposed by commit d6634db8 "avr32: Use platform_driver_probe for pio platform driver". Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 13 10月, 2008 3 次提交
-
-
由 Mark Jackson 提交于
Please consider the following patch which adds support for a new AVR32 based board. The board is closely based on Atmel's NGW100 reference board, but has an extra 8MByte FLASH and 128KByte FRAM. Signed-off-by: NMark Jackson <mpfj@mimc.co.uk> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Hans-Christian Egtvedt 提交于
This patch adds support for the Favr-32 board made by EarthLCD. This kit, which is also called ezLCD-101, has a 10.4" touch screen LCD panel, 16 MB 32-bit SDRAM, 8 MB parallel flash, Ethernet, audio out, USB device, SD-card slot, USART and various other connectors for cennecting stuff to SPI, I2C, GPIO, etc. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Hans-Christian Egtvedt 提交于
This patch lets the user enable support for EVKLCD100 and EVKLCD101 (refered to by EVKLCD10X). By enabling EVKLCD10X support the LCD controller and AC97 controller platform devices are added. The user can also choose between the EVKLCD100 (QVGA display) and the EVKLCD101 (VGA display), this is added to automagically select the correct panel timing and resolution parameters. Enabling support for EVKLCD10X addon board will cripple the MCI platform device a bit since they share two GPIO lines (detect and write-protect). These two lines are disabled when EVKLCD10X is enabled. The default configurations are based upon ATNGW100, but with added AC97C and LCDC driver. Virtual terminal is also enabled by default for EVKLCD10X boards. Verified on hardware with a NGW100 + EVKLCD100/101. Signed-off-by: NHans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 12 10月, 2008 2 次提交
-
-
由 Haavard Skinnemoen 提交于
Fix a few instances of board code breakage introduced by the atmel-mci platform interface changes. Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Julien May 提交于
at32_select_periph() now takes an u32 bitmask rather than a single pin. This allows to set multiple pins at once. Signed-off-by: NAlex Raimondi <mailinglist@miromico.ch> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 06 10月, 2008 1 次提交
-
-
由 Haavard Skinnemoen 提交于
Add the necessary platform infrastructure to support multiple mmc/sdcard slots all at once through a single controller. Currently, the driver will use the first valid slot it finds and stick with that, but later patches will add support for switching between several slots on the fly. Extend the platform data structure with per-slot information: MMC/SDcard bus width and card detect/write protect pins. This will affect the pin muxing as well as the capabilities announced to the mmc core. Note that board code is now required to supply a mci_platform_data struct to at32_add_device_mci(). Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 22 9月, 2008 2 次提交
-
-
由 David Brownell 提交于
The NGW100 board has jumper J15 (near the reset button) which is unused. This patch exports it through the GPIO sysfs support (as /sys/class/gpio/gpio62/value) so that it's easily queried by boot scripts or whatever might want to know if the jumper has been installed (value = 0) or not (value = 1, "default"). Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net> [haavard.skinnemoen@atmel.com: add missing include] Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
由 Julien May 提交于
This replaces the pin_config param with an u64 pin_mask in at32_add_device_lcdc, allowing a board-maintainer to indivually select specific lcdc pins. Signed-off-by: NAlex Raimondi <raimondi@miromico.ch> Signed-off-by: NJulien May <jmay@miromico.ch> Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-
- 20 9月, 2008 1 次提交
-
-
由 Haavard Skinnemoen 提交于
The #ifdef surrounding the code adding the mmc controller had a typo, causing it to be compiled even when mmc was supposed to be disabled. Signed-off-by: NHaavard Skinnemoen <haavard.skinnemoen@atmel.com>
-