20 Oct, 2010

2 commits

  • Since we're now using addruart to establish the debug mapping, we can
    remove the io_pg_offst and phys_io members of struct machine_desc.

    The various declarations were removed using the following script:

    grep -rl MACHINE_START arch/arm | xargs \
    sed -i '/MACHINE_START/,/MACHINE_END/ { /\.\(phys_io\|io_pg_offst\)/d }'

    [ Initial patch was from Jeremy Kerr, example script from Russell King ]

    Signed-off-by: Nicolas Pitre
    Acked-by: Eric Miao

    Nicolas Pitre
     
  • Rather than checking the MMU status in every instance of addruart, do it
    once in kernel/debug.S, and change the existing addruart macros to
    return both physical and virtual addresses. The main debug code can then
    select the appropriate address to use.

    This will also allow us to retreive the address of a uart for the MMU
    state that we're not current in.

    Updated with fixes for OMAP from Jason Wang
    and Tony Lindgren , and fix for versatile express from
    Lorenzo Pieralisi .

    Signed-off-by: Jeremy Kerr
    Signed-off-by: Lorenzo Pieralisi
    Signed-off-by: Jason Wang
    Signed-off-by: Tony Lindgren
    Tested-by: Kevin Hilman

    Jeremy Kerr
     

27 Jul, 2010

1 commit


13 Feb, 2010

1 commit

  • Otherwise more complicated uart configuration won't be possible.
    We can use r1 for tmp register for both head.S and debug.S.

    NOTE: This patch depends on another patch to add the the tmp register
    into all debug-macro.S files. That can be done with:

    $ sed -i -e "s/addruart,rx|addruart, rx/addruart, rx, tmp/"
    arch/arm/*/include/*/debug-macro.S

    Signed-off-by: Tony Lindgren
    Signed-off-by: Russell King

    Tony Lindgren
     

23 Nov, 2009

1 commit


06 Nov, 2009

1 commit


06 Aug, 2009

1 commit


30 Jul, 2009

1 commit


25 Mar, 2009

1 commit


20 Mar, 2009

1 commit

  • OMAP wishes to pass state to the boot loader upon reboot in order to
    instruct it whether to wait for USB-based reflashing or not. There is
    already a facility to do this via the reboot() syscall, except we ignore
    the string passed to machine_restart().

    This patch fixes things to pass this string to arch_reset(). This means
    that we keep the reboot mode limited to telling the kernel _how_ to
    perform the reboot which should be independent of what we request the
    boot loader to do.

    Acked-by: Tony Lindgren
    Signed-off-by: Russell King

    Russell King
     

16 Mar, 2009

1 commit

  • If a machine class has a custom __virt_to_bus() implementation then it
    must provide a __arch_page_to_dma() implementation as well which is
    _not_ based on page_address() to support highmem.

    This patch fixes existing __arch_page_to_dma() and provide a default
    implementation otherwise. The default implementation for highmem is
    based on __pfn_to_bus() which is defined only when no custom
    __virt_to_bus() is provided by the machine class.

    That leaves only ebsa110 and footbridge which cannot support highmem
    until they provide their own __arch_page_to_dma() implementation.
    But highmem support on those legacy platforms with limited memory is
    certainly not a priority.

    Signed-off-by: Nicolas Pitre

    Nicolas Pitre
     

10 Feb, 2009

1 commit


09 Jan, 2009

1 commit

  • arch/arm/mach-at91/at91cap9.c:337: error: 'NR_AIC_IRQS' undeclared here (not in a function)
    arch/arm/mach-at91/at91rm9200.c:301: error: 'NR_AIC_IRQS' undeclared here (not in a function)
    arch/arm/mach-at91/at91sam9260.c:351: error: 'NR_AIC_IRQS' undeclared here (not in a function)
    arch/arm/mach-at91/at91sam9261.c:287: error: 'NR_AIC_IRQS' undeclared here (not in a function)
    arch/arm/mach-at91/at91sam9263.c:312: error: 'NR_AIC_IRQS' undeclared here (not in a function)
    arch/arm/mach-at91/at91sam9rl.c:304: error: 'NR_AIC_IRQS' undeclared here (not in a function)
    arch/arm/mach-h720x/h7202-eval.c:38: error: implicit declaration of function 'IRQ_CHAINED_GPIOB'
    arch/arm/mach-ks8695/devices.c:46: error: 'KS8695_IRQ_WAN_RX_STATUS' undeclared here (not in a function)
    arch/arm/mach-msm/devices.c:28: error: 'INT_UART1' undeclared here (not in a function)
    arch/arm/mach-mx2/devices.c:233: error: 'MXC_GPIO_IRQ_START' undeclared here (not in a function)
    arch/arm/mach-mx3/devices.c:128: error: 'MXC_GPIO_IRQ_START' undeclared here (not in a function)
    arch/arm/mach-omap1/mcbsp.c:140: error: 'INT_730_McBSP1RX' undeclared here (not in a function)
    arch/arm/mach-omap1/mcbsp.c:165: error: 'INT_McBSP1RX' undeclared here (not in a function)
    arch/arm/mach-omap1/mcbsp.c:200: error: 'INT_McBSP1RX' undeclared here (not in a function)
    arch/arm/mach-omap2/board-apollon.c:286: error: implicit declaration of function 'omap_set_gpio_direction'
    arch/arm/mach-omap2/mcbsp.c:154: error: 'INT_24XX_MCBSP1_IRQ_RX' undeclared here (not in a function)
    arch/arm/mach-omap2/mcbsp.c:181: error: 'INT_24XX_MCBSP1_IRQ_RX' undeclared here (not in a function)
    arch/arm/mach-pxa/e350.c:36: error: 'IRQ_BOARD_START' undeclared here (not in a function)
    arch/arm/plat-s3c/dev-i2c0.c:32: error: 'IRQ_IIC' undeclared here (not in a function)
    ...

    Signed-off-by: Russell King

    Russell King
     

14 Dec, 2008

4 commits

  • Add support for the D-Link DSM-320 Wireless Media Player which is
    based on the Micrel KS8695 SoC.

    Signed-off-by: Daniel Silverstone
    Signed-off-by: Ben Dooks

    Daniel Silverstone
     
  • Use the GPIOlib .to_irq call to map KS8695 GPIOs
    to the relevant IRQ line.

    Signed-off-by: Ben Dooks

    Ben Dooks
     
  • This patch is as small a change as possible to the KS8695 GPIO layer
    to use GPIOLIB to allow the generic GPIO expanders and the like to
    be compiled.

    As a side-effect, we also remove __init_or_module from several
    functions which could be called by drivers such as i2c-gpio which
    could plausibly be compiled into a non-modular kernel.

    Signed-off-by: Daniel Silverstone
    Signed-off-by: Vincent Sanders
    Signed-off-by: Ben Dooks

    Daniel Silverstone
     
  • The KS8695 device.c provides registration functionality for the
    KS8695's various devices such as watchdog timers and ethernet
    devices. Rather than predicating those on the config options for the
    drivers, always register the platform devices so that a later built
    module can hook on. Also, the ethernet used to register virtual
    addresses in the platform data. This is wrong and so this patch
    changes them to physical addresses and also passes in the
    appropriate physical region for the PHY or Switch as appropriate.

    Signed-off-by: Daniel Silverstone
    Signed-off-by: Ben Dooks

    Daniel Silverstone
     

30 Nov, 2008

2 commits

  • As Al did for Versatile in 2ad4f86b60b649fd7428265c08d73a3bd360c81b,
    add a typesafe __io implementation for platforms to use. Convert
    platforms to use this new simple typesafe implementation.

    Signed-off-by: Russell King

    Russell King
     
  • When ISA_DMA_API is unset, we're not implementing the ISA DMA API,
    so there's no point in publishing the prototypes via asm/dma.h, nor
    including the machine dependent parts of that API.

    This allows us to remove a lot of mach/dma.h files which don't contain
    any useful code. Unfortunately though, some platforms put their own
    private non-ISA definitions into mach/dma.h, so we leave these behind
    and fix the appropriate #include statments.

    Signed-off-by: Russell King

    Russell King
     

28 Nov, 2008

1 commit

  • Let's provide an overridable default instead of having every machine
    class define __virt_to_bus and __bus_to_virt to the same thing. What
    most platforms are using is bus_addr == phys_addr so such is the default.

    One exception is ebsa110 which has no DMA what so ever, so the actual
    definition is not important except only for proper compilation. Also
    added a comment about the special footbridge bus translation.

    Let's also remove comments alluding to set_dma_addr which is not
    (and should not) be commonly used.

    Signed-off-by: Nicolas Pitre
    Signed-off-by: Russell King

    Nicolas Pitre
     

30 Oct, 2008

1 commit

  • According to the documentation gpio_free should only be called from task
    context only. To make this more explicit add a might sleep to all
    implementations.

    This patch changes the gpio_free implementations for the arm architecture.
    DaVinci is skipped on purpose to simplify the merge process for patches
    switching it over to use gpiolib as per request by David Brownell.

    Signed-off-by: Uwe Kleine-König
    Cc: David Brownell
    Cc: Andrew Victor
    Signed-off-by: Andrew Morton
    Signed-off-by: Russell King

    Uwe Kleine-König
     

10 Oct, 2008

1 commit


09 Oct, 2008

2 commits

  • Fix two warnings when compiling for the KS8695 processor.

    arch/arm/include/asm/dma-mapping.h: In function 'dma_to_virt':
    arch/arm/include/asm/dma-mapping.h:40: warning: return makes pointer
    from integer without a cast

    Section mismatch in reference from the function pcibios_fixup_bus() to
    the (unknown reference) .devinit.text:(unknown)
    The function pcibios_fixup_bus() references
    the (unknown reference) __devinit (unknown).
    This is often because pcibios_fixup_bus lacks a __devinit
    annotation or the annotation of (unknown) is wrong.

    Signed-off-by: Andrew Victor
    Signed-off-by: Russell King

    Andrew Victor
     
  • Replace Macro names that have trailing underscores.
    Also use the IOPD() macro instead of a hard-coded bit-shift (for
    better readability).

    Signed-off-by: Andrew Victor
    Signed-off-by: Russell King

    Andrew Victor
     

06 Sep, 2008

1 commit


07 Aug, 2008

3 commits


27 Jul, 2008

1 commit

  • IRQT_* and __IRQT_* were obsoleted long ago by patch [3692/1].
    Remove them completely. Sed script for the reference:

    s/__IRQT_RISEDGE/IRQ_TYPE_EDGE_RISING/g
    s/__IRQT_FALEDGE/IRQ_TYPE_EDGE_FALLING/g
    s/__IRQT_LOWLVL/IRQ_TYPE_LEVEL_LOW/g
    s/__IRQT_HIGHLVL/IRQ_TYPE_LEVEL_HIGH/g
    s/IRQT_RISING/IRQ_TYPE_EDGE_RISING/g
    s/IRQT_FALLING/IRQ_TYPE_EDGE_FALLING/g
    s/IRQT_BOTHEDGE/IRQ_TYPE_EDGE_BOTH/g
    s/IRQT_LOW/IRQ_TYPE_LEVEL_LOW/g
    s/IRQT_HIGH/IRQ_TYPE_LEVEL_HIGH/g
    s/IRQT_PROBE/IRQ_TYPE_PROBE/g
    s/IRQT_NOEDGE/IRQ_TYPE_NONE/g

    Signed-off-by: Dmitry Baryshkov
    Signed-off-by: Russell King

    Dmitry Baryshkov
     

17 Apr, 2008

1 commit


28 Jan, 2008

2 commits

  • …2410', 'sa1100' and 'vfp' into devel

    * at91: (24 commits)
    [ARM] 4615/4: sam926[13]ek buttons updated
    [ARM] 4765/1: [AT91] AT91CAP9A-DK board support
    [ARM] 4764/1: [AT91] AT91CAP9 core support
    [ARM] 4738/1: at91sam9261: Remove udc pullup enabling in board initialisation
    [ARM] 4761/1: [AT91] Board-support for NEW_LEDs
    [ARM] 4760/1: [AT91] SPI CS0 errata on AT91RM9200
    [ARM] 4759/1: [AT91] Buttons on CSB300
    [ARM] 4758/1: [AT91] LEDs
    [ARM] 4757/1: [AT91] UART initialization
    [ARM] 4756/1: [AT91] Makefile cleanup
    [ARM] 4755/1: [AT91] NAND update
    [ARM] 4754/1: [AT91] SSC library support
    [ARM] 4753/1: [AT91] Use DMA_BIT_MASK
    [ARM] 4752/1: [AT91] RTT, RTC and WDT peripherals on SAM9
    [ARM] 4751/1: [AT91] ISI peripheral on SAM9263
    [ARM] 4750/1: [AT91] STN LCD displays on SAM9261
    [ARM] 4734/1: at91sam9263ek: include IRQ for Ethernet PHY
    [ARM] 4646/1: AT91: configurable HZ, default to 128
    [ARM] 4688/1: at91: speed-up irq processing
    [ARM] 4657/1: AT91: Header definition update
    ...

    * ep93xx:
    [ARM] 4671/1: ep93xx: remove obsolete gpio_line_* operations
    [ARM] 4670/1: ep93xx: implement IRQT_BOTHEDGE gpio irq sense type
    [ARM] 4669/1: ep93xx: simplify GPIO code and cleanups
    [ARM] 4668/1: ep93xx: implement new GPIO API

    * iop:
    [ARM] 4770/1: GLAN Tank: correct physmap_flash_data width field
    [ARM] 4732/1: GLAN Tank: register rtc-rs5c372 i2c device
    [ARM] 4708/1: iop: update defconfigs for 2.6.24

    * kprobes:
    ARM kprobes: let's enable it
    ARM kprobes: special hook for the kprobes breakpoint handler
    ARM kprobes: prevent some functions involved with kprobes from being probed
    ARM kprobes: don't let a single-stepped stmdb corrupt the exception stack
    ARM kprobes: add the kprobes hook to the page fault handler
    ARM kprobes: core code
    ARM kprobes: instruction single-stepping support

    * ks8695:
    [ARM] 4603/1: KS8695: debugfs interface to view pin state
    [ARM] 4601/1: KS8695: PCI support

    * misc:
    [ARM] remove duplicate includes
    [ARM] CONFIG_DEBUG_STACK_USAGE
    [ARM] 4689/1: small comment wrap fix
    [ARM] 4687/1: Trivial arch/arm/kernel/entry-common.S comment fix
    [ARM] 4666/1: ixp4xx: fix sparse warnings in include/asm-arm/arch-ixp4xx/io.h
    [ARM] remove reference to non-existent MTD_OBSOLETE_CHIPS
    [SERIAL] 21285: Report baud rate back via termios
    [ARM] Remove pointless casts from void pointers,
    [ARM] Misc minor interrupt handler cleanups
    [ARM] Remove at91_lcdc.h
    [ARM] ARRAY_SIZE() cleanup
    [ARM] Update mach-types

    * msm:
    [ARM] msm: dma support for MSM7X00A
    [ARM] msm: board file for MACH_HALIBUT (QCT MSM7200A)
    [ARM] msm: irq and timer support for ARCH_MSM7X00A
    [ARM] msm: core platform support for ARCH_MSM7X00A

    * s3c2410: (33 commits)
    [ARM] 4795/1: S3C244X: Add armclk and setparent call
    [ARM] 4794/1: S3C24XX: Comonise S3C2440 and S3C2442 clock code
    [ARM] 4793/1: S3C24XX: Add IRQ->GPIO pin mapping function
    [ARM] 4792/1: S3C24XX: Remove warnings from debug-macro.S
    [ARM] 4791/1: S3C2412: Make fclk a parent of msysclk
    [ARM] 4790/1: S3C2412: Fix parent selection for msysclk.
    [ARM] 4789/1: S3C2412: Add missing CLKDIVN register values
    [ARM] 4788/1: S3C24XX: Fix paramet to s3c2410_dma_ctrl if S3C2410_DMAF_AUTOSTART used.
    [ARM] 4787/1: S3C24XX: s3c2410_dma_request() should return the allocated channel number
    [ARM] 4786/1: S3C2412: Add SPI FIFO controll constants
    [ARM] 4785/1: S3C24XX: Add _SHIFT definitions for S3C2410_BANKCON registers
    [ARM] 4784/1: S3C24XX: Fix GPIO restore glitches
    [ARM] 4783/1: S3C24XX: Add s3c2410_gpio_getpull()
    [ARM] 4782/1: S3C24XX: Define FIQ_START for any FIQ users
    [ARM] 4781/1: S3C24XX: DMA suspend and resume support
    [ARM] 4780/1: S3C2412: Allow for seperate DMA channels for TX and RX
    [ARM] 4779/1: S3C2412: Add s3c2412_gpio_set_sleepcfg() call
    [ARM] 4778/1: S3C2412: Add armclk and init from DVS state
    [ARM] 4777/1: S3C24XX: Ensure clk_set_rate() checks the set_rate method for the clk
    [ARM] 4775/1: s3c2410: fix compilation error if only s3c2442 cpu is selected
    ...

    * sa1100:
    [ARM] sa1100: add clock source support

    * vfp:
    [ARM] 4584/2: ARMv7: Add Advanced SIMD (NEON) extension support
    [ARM] 4583/1: ARMv7: Add VFPv3 support
    [ARM] 4582/2: Add support for the common VFP subarchitecture

    Russell King
     
  • Move the xtime write mode seqlock into timer_tick(), so it only
    surrounds the call to do_timer().

    This avoids a deadlock in update_process_times() ...
    hrtimer_get_softirq_time() which tries to get a read mode seqlock
    on xtime, thereby preventing booting.

    Signed-off-by: Russell King

    Russell King
     

26 Jan, 2008

2 commits


15 Aug, 2007

1 commit


20 Jul, 2007

1 commit


12 Jul, 2007

1 commit


12 May, 2007

2 commits

  • Board support and default configuration file for the Micrel/Kendin
    KS8695 Development board.

    Signed-off-by: Andrew Victor
    Signed-off-by: Russell King

    Andrew Victor
     
  • Add core support for the Kendin/Micrel KS8695 processor family.

    It is an ARM922-T based SoC with integrated USART, 4-port Ethernet
    Switch, WAN Ethernet port, and optional PCI Host bridge, etc.
    http://www.micrel.com/page.do?page=product-info/sys_on_chip.jsp

    This patch is based on earlier patches from Lennert Buytenhek, Ben
    Dooks and Greg Ungerer posted to the arm-linux-kernel mailing list in
    March 2006; and Micrel's 2.6.9 port.

    Signed-off-by: Andrew Victor
    Signed-off-by: Russell King

    Andrew Victor