aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Merge tag 'for-linux-3.3-merge-window' of ↵Linus Torvalds2012-01-10
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://linux-c6x.org/git/projects/linux-c6x-upstreaming * tag 'for-linux-3.3-merge-window' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming: (29 commits) C6X: replace tick_nohz_stop/restart_sched_tick calls C6X: add register_cpu call C6X: deal with memblock API changes C6X: fix timer64 initialization C6X: fix layout of EMIFA registers C6X: MAINTAINERS C6X: DSCR - Device State Configuration Registers C6X: EMIF - External Memory Interface C6X: general SoC support C6X: library code C6X: headers C6X: ptrace support C6X: loadable module support C6X: cache control C6X: clocks C6X: build infrastructure C6X: syscalls C6X: interrupt handling C6X: time management C6X: signal management ...
| * C6X: replace tick_nohz_stop/restart_sched_tick callsMark Salter2012-01-08
| | | | | | | | | | | | | | | | | | | | | | | | | | The following commits replaced the tick_nohz_{stop,restart}_sched_tick API with separate tick and rcu calls: 280f06774afedf849f0b34248ed6aff57d0f6908 2bbb6817c0ac1b5f2a68d720f364f98eeb1ac4fd 1268fbc746ea1cd279886a740dcbad4ba5232225 This patch replaces the C6X use of the old API with the newer interfaces. Signed-off-by: Mark Salter <msalter@redhat.com>
| * C6X: add register_cpu callMark Salter2012-01-08
| | | | | | | | | | | | | | | | | | Commit ccbc60d3e19a1b6ae66ca0d89b3da02dde62088b requires CPU topology information even in !SMP cases. This requires C6X to add a call tp register_cpu() in order to avoid a panic at boot time. Signed-off-by: Mark Salter <msalter@redhat.com>
| * C6X: deal with memblock API changesMark Salter2012-01-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent memblock related commits require the following C6X changes: * commit 24aa07882b672fff2da2f5c955759f0bd13d32d5 asm/memblock.h no longer required * commit 1440c4e2c918532f39131c3330fe2226e16be7b6 memblock_analyze() no longer needed to update total size * commit fe091c208a40299fba40e62292a610fb91e44b4e memblock_init() no longer needed Signed-off-by: Mark Salter <msalter@redhat.com>
| * C6X: fix timer64 initializationMark Salter2012-01-08
| | | | | | | | | | | | | | | | | | | | | | Some SoCs have a timer block enable controlled through the DSCR registers. There is a problem in the timer64 driver initialization where the code accesses a timer register to get the divisor used to calculate timer clock rate. If the timer block has not been enabled when this register read takes place, an exception is generated. This patch makes sure that the timer block is enabled before accessing the registers. Signed-off-by: Mark Salter <msalter@redhat.com>
| * C6X: fix layout of EMIFA registersMark Salter2012-01-08
| | | | | | | | Signed-off-by: Mark Salter <msalter@redhat.com>
| * C6X: MAINTAINERSMark Salter2011-10-06
| | | | | | | | | | | | Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: DSCR - Device State Configuration RegistersMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | All SoCs provide an area of device configuration registers called the DSCR. The location of specific registers as well as their use varies considerably from implementation to implementation. Rather than having to rely on additional SoC-specific DSCR code for each new supported SoC, this code generalize things as much as possible using device tree properties. Initialization must take place early on (setup_arch time) in case the event timer device needs to be enable via the DSCR. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: EMIF - External Memory InterfaceMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Several SoC parts provide a simple bridge to support external memory mapped devices. This code probes the device tree for an EMIF node and sets up the bridge registers if such a node is found. Beyond initial set up, there is no further need to access the bridge control registers. External devices on the bus are accessed through their MMIO registers using suitable drivers. The bridge hardware does provide for timeout and other error interrupts, but these are not yet supported. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: general SoC supportMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | This patch provides a soc_ops struct which provides hooks for SoC functionality which doesn't fit well into other places. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: library codeAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: headersAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: ptrace supportAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: loadable module supportAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: cache controlAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: clocksMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | | | | | The C6X SoCs contain several PLL controllers each with up to 16 clock outputs feeding into the cores or peripheral clock domains. The hardware is very similar to arm/mach-davinci clocks. This is still a work in progress which needs to be updated once device tree clock binding changes shake out. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: build infrastructureAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: syscallsAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de> [msalter@redhat.com: add include of linux/module.h to sys_c6x.c] Signed-off-by: Mark Salter <msalter@redhat.com>
| * C6X: interrupt handlingAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: time managementAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: signal managementAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: process managementAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: memory management and DMA supportAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> The C6X architecture currently lacks an MMU so memory management is relatively simple. There is no bus snooping between L2 and main memory but coherent DMA memory is supported by making regions of main memory uncached. If such a region is desired, it can be specified on the commandline with a "memdma=" argument. Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: devicetree supportMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the basic devicetree support for C6X. Currently, four boards are supported. Each one uses a different SoC part. Two of the four supported SoCs are multicore. One with 3 cores and the other with 6 cores. There is no coherency between the core-level caches, so SMP is not an option. It is possible to run separate kernel instances on the various cores. There is currently no C6X bootloader support for device trees so we build in the DTB for now. There are some interesting twists to the hardware which are of note for device tree support. Each core has its own interrupt controller which is controlled by special purpose core registers. This core controller provides 12 general purpose prioritized interrupt sources. Each core is contained within a hardware "module" which provides L1 and L2 caches, power control, and another interrupt controller which cascades into the core interrupt controller. These core module functions are controlled by memory mapped registers. The addresses for these registers are the same for each core. That is, when coreN accesses a module-level MMIO register at a given address, it accesses the register for coreN even though other cores would use the same address to access the register in the module containing those cores. Other hardware modules (timers, enet, etc) which are memory mapped can be accessed by all cores. The timers need some further explanation for multicore SoCs. Even though all timer control registers are visible to all cores, interrupt routing or other considerations may make a given timer more suitable for use by a core than some other timer. Because of this and the desire to have the same image run on more than one core, the timer nodes have a "ti,core-mask" property which is used by the driver to scan for a suitable timer to use. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: early boot codeAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> This patch provides the early boot code for C6X architecture. There is a 16 entry vector table which is used to direct reset and interrupt events. The vector table entries contain a small amount of code (maximum of 8 opcodes) which simply branches to the actual event handling code. The head.S code simply clears BSS, setups up a few control registers, and calls machine_init followed by start_kernel. The machine_init code in setup.c does the early flat tree parsing (memory, commandline, etc). At setup_arch time, the code does the usual memory setup and minimally scans the devicetree for any needed information. Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * C6X: build infrastructureAurelien Jacquiot2011-10-06
| | | | | | | | | | | | | | | | | | Original port to early 2.6 kernel using TI COFF toolchain. Brought up to date by Mark Salter <msalter@redhat.com> Signed-off-by: Aurelien Jacquiot <a-jacquiot@ti.com> Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * add missing __iomem to generic iounmap declarationMark Salter2011-10-06
| | | | | | | | | | Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * add ELF machine define for TI C6X DSPsMark Salter2011-10-06
| | | | | | | | | | Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * fixed generic page.h for non-zero PAGE_OFFSETMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | asm-generic/page.h had several problems when used with a non-zero PAGE_OFFSET. This patch adds a default ARCH_PFN_OFFSET and fixes the __va, __pa, and pfn_valid macros to work with non-zero PAGE_OFFSETs. Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
| * fix default __strnlen_user macroMark Salter2011-10-06
| | | | | | | | | | | | | | | | | | The existing __strnlen_user macro simply resolved to strnlen. However, the count returned by strnlen_user should include the NULL byte. This patch fixes the __strnlen_user macro to include the NULL byte in the count. Signed-off-by: Mark Salter <msalter@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
* | Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblazeLinus Torvalds2012-01-10
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'next' of git://git.monstr.eu/linux-2.6-microblaze: microblaze: Wire-up new system calls microblaze: Remove NO_IRQ from architecture input: xilinx_ps2: Don't use NO_IRQ block: xsysace: Don't use NO_IRQ microblaze: Trivial asm fix microblaze: Fix debug message in module microblaze: Remove eprintk macro microblaze: Send CR before LF for early console microblaze: Change NO_IRQ to 0 microblaze: Use irq_of_parse_and_map for timer microblaze: intc: Change variable name microblaze: Use of_find_compatible_node for timer and intc microblaze: Add __cmpdi2 microblaze: Synchronize __pa __va macros
| * | microblaze: Wire-up new system callsMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wire up three system calls sendmmsg/process_vm_readv/process_vm_writev All tested by testing apps. Look at: net: Add sendmmsg socket system call (sha1: 228e548e602061b08ee8e8966f567c12aa079682) Cross Memory Attach (sha1: fcf634098c00dd9cd247447368495f0b79be12d1) Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Remove NO_IRQ from architectureMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NO_IRQ shouldn't be used by any driver. All Microblaze drivers are fixed that's why NO_IRQ can be removed. Also fix pci-common.c which has references to NO_IRQ removed. Signed-off-by: Michal Simek <monstr@monstr.eu> Reviewed-by: Ryan Mallon <rmallon@gmail.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| * | input: xilinx_ps2: Don't use NO_IRQMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drivers shouldn't use NO_IRQ. Microblaze and PPC define NO_IRQ as 0 and this reference will be removed in near future. Signed-off-by: Michal Simek <monstr@monstr.eu> Reviewed-by: Ryan Mallon <rmallon@gmail.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> CC: Rob Herring <rob.herring@calxeda.com>
| * | block: xsysace: Don't use NO_IRQMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drivers shouldn't use NO_IRQ. Microblaze and PPC define NO_IRQ as 0 and this reference will be removed in near future. Signed-off-by: Michal Simek <monstr@monstr.eu> Reviewed-by: Ryan Mallon <rmallon@gmail.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> CC: Rob Herring <rob.herring@calxeda.com>
| * | microblaze: Trivial asm fixMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | Just replace one dot with comma. New binutils can detect it. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Fix debug message in moduleMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | Trivial fix. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Remove eprintk macroMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | eprintk macro was used for printing early_printk messages. Early console registration was changed that's why this is not needed. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Send CR before LF for early consoleMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | This patch fixes problem with measuring tools. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Change NO_IRQ to 0Michal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As has been discussed many times[1], Using NO_IRQ set to anything other than 0 is bug waiting to happen since many drivers follow the pattern "if (!irq)" for testing whether or not an irq has been set. This patch changes the Microblaze NO_IRQ setting from -1 to 0 to bring it in line with most of the rest of the kernel. It also prepares for Microblaze eventually supporting multiple interrupt controllers by breaking the assumption that hwirq# == Linux IRQ#. The Linux IRQ number is just a cookie with no guarantee of a direct relationship with the hardware irq arrangement. At this point, Microblaze interrupt handling only supports only one instance of one kind of interrupt controller (xilinx_intc). This change shouldn't affect any architecture code outside of the interrupt controller driver and the irq_of mapping. Updated to 3.2 and to use irq_data.hwirq by Rob Herring. Tested and fixed by Michal Simek. [1] http://lkml.org/lkml/2005/11/21/221 Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Rob Herring <rob.herring@calxeda.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Use irq_of_parse_and_map for timerMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | | | | It is necessary to call generic function for irq finding. The main reason is that this generic function calls irq_create_of_mapping which can add some shift because of NO_IRQ. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: intc: Change variable nameMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | intr_type is mask - change name. s/intr_type/intr_mask/g Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Use of_find_compatible_node for timer and intcMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | | | | Calling of_find_compatible_node instead of calling private code which does the same. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Add __cmpdi2Michal Simek2012-01-05
| | | | | | | | | | | | | | | | | | Some new kernel configurations require __cmpdi2 function. Signed-off-by: Michal Simek <monstr@monstr.eu>
| * | microblaze: Synchronize __pa __va macrosMichal Simek2012-01-05
| | | | | | | | | | | | | | | | | | noMMU and MMU system use the same macros - synchronize them. Signed-off-by: Michal Simek <monstr@monstr.eu>
* | | Merge branch 'unicore32' of git://github.com/gxt/linuxLinus Torvalds2012-01-10
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'unicore32' of git://github.com/gxt/linux: rtc-puv3: solve section mismatch in rtc-puv3.c rtc-puv3: using module_platform_driver() i2c-puv3: using module_platform_driver() rtc-puv3: irq: remove IRQF_DISABLED unicore32: Remove IRQF_DISABLED unicore32: Use set_current_blocked() unicore32: add ioremap_nocache definition unicore32: delete specified xlate_dev_mem_ptr of: add include asm/setup.h in drivers/of/fdt.c unicore32: standardize /proc/iomem "Kernel code" name
| * | | rtc-puv3: solve section mismatch in rtc-puv3.cGuan Xuetao2012-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch renames puv3_rtcdrv to puv3_rtc_driver, so that modpost will know that this is simply a list of pointers to driver functions, in which case the section mismatch is OK. (Thanks Michal Marek) Cc: Axel Lin <axel.lin@gmail.com> Cc: Michal Marek <mmarek@suse.cz> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: rtc-linux@googlegroups.com Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn> -- Section mismatch warning information: WARNING: drivers/rtc/built-in.o(.data+0x90): Section mismatch in reference from the variable puv3_rtcdrv to the function .devinit.text:puv3_rtc_probe() The variable puv3_rtcdrv references the function __devinit puv3_rtc_probe() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console WARNING: drivers/rtc/built-in.o(.data+0x94): Section mismatch in reference from the variable puv3_rtcdrv to the function .devexit.text:puv3_rtc_remove() The variable puv3_rtcdrv references the function __devexit puv3_rtc_remove() If the reference is valid then annotate the variable with __exit* (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console WARNING: drivers/built-in.o(.data+0x6c04): Section mismatch in reference from the variable puv3_rtcdrv to the function .devinit.text:puv3_rtc_probe() The variable puv3_rtcdrv references the function __devinit puv3_rtc_probe() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console WARNING: drivers/built-in.o(.data+0x6c08): Section mismatch in reference from the variable puv3_rtcdrv to the function .devexit.text:puv3_rtc_remove() The variable puv3_rtcdrv references the function __devexit puv3_rtc_remove() If the reference is valid then annotate the variable with __exit* (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console WARNING: vmlinux.o(.data+0x1126c): Section mismatch in reference from the variable puv3_rtcdrv to the function .devinit.text:puv3_rtc_probe() The variable puv3_rtcdrv references the function __devinit puv3_rtc_probe() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console WARNING: vmlinux.o(.data+0x11270): Section mismatch in reference from the variable puv3_rtcdrv to the function .devexit.text:puv3_rtc_remove() The variable puv3_rtcdrv references the function __devexit puv3_rtc_remove() If the reference is valid then annotate the variable with __exit* (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
| * | | rtc-puv3: using module_platform_driver()Guan Xuetao2012-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch converts the driver to use the module_platform_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
| * | | i2c-puv3: using module_platform_driver()Guan Xuetao2012-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch converts the driver to use the module_platform_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
| * | | rtc-puv3: irq: remove IRQF_DISABLEDGuan Xuetao2012-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This flag is deprecated, so is removed now. Signed-off-by: Yong Zhang <yong.zhang@gmail.com> Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>