1. 27 2月, 2010 2 次提交
  2. 17 6月, 2009 1 次提交
    • M
      MIPS: Alchemy: Rewrite GPIO support. · 51e02b02
      Manuel Lauss 提交于
      The current in-kernel Alchemy GPIO support is far too inflexible for
      all my use cases.  To address this, the following changes are made:
      
      * create generic functions which deal with manipulating the on-chip
        GPIO1/2 blocks.  Such functions are universally useful.
      * Macros for GPIO2 shared interrupt management and block control.
      * support for both built-in CONFIG_GPIOLIB and fast, inlined GPIO macros.
      
        If CONFIG_GPIOLIB is not enabled, provide linux gpio framework
        compatibility by directly inlining the GPIO1/2 functions.  GPIO access
        is limited to on-chip ones and they can be accessed as documented in
        the datasheets (GPIO0-31 and 200-215).
      
        If CONFIG_GPIOLIB is selected, two (2) gpio_chip-s, one for GPIO1 and
        one for GPIO2, are registered.  GPIOs can still be accessed by using
        the numberspace established in the databooks.
      
        However this is not yet flexible enough for my uses:  My Alchemy
        systems have a documented "external" gpio interface (fixed, different
        numberspace) and can support a variety of baseboards, some of which
        are equipped with I2C gpio expanders.  I want to be able to provide
        the default 16 GPIOs of the CPU board numbered as 0..15 and also
        support gpio expanders, if present, starting as gpio16.
      
        To achieve this, a new Kconfig symbol for Alchemy is introduced,
        CONFIG_ALCHEMY_GPIO_INDIRECT, which boards can enable to signal
        that they don't want the Alchemy numberspace exposed to the outside
        world, but instead want to provide their own.  Boards are now respon-
        sible for providing the linux gpio interface glue code (either in a
        custom gpio.h header (in board include directory) or with gpio_chips).
      
        To make the board-specific inlined gpio functions work, the MIPS
        Makefile must be changed so that the mach-au1x00/gpio.h header is
        included _after_ the board headers, by moving the inclusion of
        the mach-au1x00/ to the end of the header list.
      
        See arch/mips/include/asm/mach-au1x00/gpio.h for more info.
      Signed-off-by: NManuel Lauss <manuel.lauss@gmail.com>
      Acked-by: NFlorian Fainelli <florian@openwrt.org>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      51e02b02
  3. 11 1月, 2009 2 次提交
    • M
      MIPS: Alchemy: remove cpu_table. · 074cf656
      Manuel Lauss 提交于
      Remove the cpu_table:
      - move detection of whether c0_config[OD] is read-only and should be set
        to fix various chip errata to au1000 headers.
      - move detection of write-only sys_cpupll to au1000 headers.
      - remove the BCLK switching code:  Activation of this features should be
        left to the boards using the chips since it also affects external devices
        tied to BCLK, and only the board designers know whether it is safe to
        enable.
      Signed-off-by: NManuel Lauss <mano@roarinelk.homelinux.net>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      
       delete mode 100644 arch/mips/alchemy/common/cputable.c
      074cf656
    • M
      MIPS: Alchemy: update core interrupt code. · 785e3268
      Manuel Lauss 提交于
      This patch attempts to modernize core Alchemy interrupt handling code.
      
      - add irq_chips for irq controllers instead of irq type,
      - add a set_type() hook to change irq trigger type during runtime,
      - add a set_wake() hook to control GPIO0..7 based wakeup,
      - use linux' IRQF_TRIGGER_ constants instead of homebrew ones,
      - enable GENERIC_HARDIRQS_NO__DO_IRQ.
      - simplify plat_irq_dispatch
      - merge au1xxx_irqmap into irq.c file, the only place where its
        contents are referenced.
      - board_init_irq() is now mandatory for every board; use it to register
        the remaining (gpio-based) interrupt sources; update all boards
        accordingly.
      
      Run-tested on Db1200 and other Au1200 based platforms.
      Signed-off-by: NManuel Lauss <mano@roarinelk.homelinux.net>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      
       delete mode 100644 arch/mips/alchemy/common/au1xxx_irqmap.c
      785e3268
  4. 11 10月, 2008 1 次提交
  5. 31 7月, 2008 1 次提交
  6. 12 5月, 2008 1 次提交
    • S
      [MIPS] Alchemy common code style cleanup · c1dcb14e
      Sergei Shtylyov 提交于
      Fix many errors and warnings given by checkpatch.pl:
      
      - use of C99 // comments;
      
      - missing space between the type and asterisk in a variable declaration;
      
      - space between the asterisk and function/variable name;
      
      - leading spaces instead of tabs;
      
      - space after opening and before closing parentheses;
      
      - initialization of a 'static' variable to 0;
      
      - missing spaces around assignement/comparison operator;
      
      - brace not on the same line with condition (or 'else') in the 'if'/'switch'
        statement;
      
      - missing space between 'if'/'for'/'while' and opening parenthesis;
      
      - use of assignement in 'if' statement's condition;
      
      - printk() without KERN_* facility level;
      
      - EXPORT_SYMBOL() not following its function immediately;
      
      - unnecessary braces for single-statement block;
      
      - adding new 'typedef' (where including <linux/types.h> will do);
      
      - use of 'extern' in the .c file (where it can be avoided by including header);
      
      - line over 80 characters.
      
      In addition to these changes, also do the following:
      
      - insert missing space after opening brace and/or before closing brace in the
        structure initializers;
      
      - insert spaces between operator and its operands;
      
      - put the function's result type and name/parameters on the same line;
      
      - properly indent multi-line expressions;
      
      - remove commented out code;
      
      - remove useless initializers and code;
      
      - remove needless parentheses;
      
      - fix broken/excess indentation;
      
      - add missing spaces between operator and its operands;
      
      - insert missing and remove excess new lines;
      
      - group 'else' and 'if' together where possible;
      
      - make au1xxx_platform_init() 'static';
      
      - regroup variable declarations in pm_do_freq() for prettier look;
      
      - replace numeric literals with the matching macros;
      
      - fix printk() format specifiers mismatching the argument types;
      
      - make the multi-line comment style consistent with the kernel style elsewhere
        by adding empty first line and/or adding space on their left side;
      
      - make two-line comments that only have one line of text one-line;
      
      - fix typos/errors, capitalize acronyms, etc. in the comments;
      
      - fix/remove obsolete references in the comments;
      
      - reformat some comments;
      
      - add comment about the CPU:counter clock ratio to calc_clock();
      
      - update MontaVista copyright;
      
      - remove Pete Popov's and Steve Longerbeam's old email addresses...
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      c1dcb14e
  7. 01 8月, 2007 1 次提交
  8. 10 10月, 2006 1 次提交
  9. 19 4月, 2006 1 次提交
    • R
      [MIPS] Rewrite all the assembler interrupt handlers to C. · e4ac58af
      Ralf Baechle 提交于
      Saves like 1,600 lines of code, is way easier to debug, compilers
      frequently do a better job than the cut and paste type of handlers many
      boards had.  And finally having all the stuff done in a single place
      also means alot of bug potencial for the MT ASE is gone.
      
      The only surviving handler in assembler is the DECstation one; I hope
      Maciej will rewrite it.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      e4ac58af
  10. 30 10月, 2005 1 次提交
  11. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4