09 Jan, 2012

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (53 commits)
    Kconfig: acpi: Fix typo in comment.
    misc latin1 to utf8 conversions
    devres: Fix a typo in devm_kfree comment
    btrfs: free-space-cache.c: remove extra semicolon.
    fat: Spelling s/obsolate/obsolete/g
    SCSI, pmcraid: Fix spelling error in a pmcraid_err() call
    tools/power turbostat: update fields in manpage
    mac80211: drop spelling fix
    types.h: fix comment spelling for 'architectures'
    typo fixes: aera -> area, exntension -> extension
    devices.txt: Fix typo of 'VMware'.
    sis900: Fix enum typo 'sis900_rx_bufer_status'
    decompress_bunzip2: remove invalid vi modeline
    treewide: Fix comment and string typo 'bufer'
    hyper-v: Update MAINTAINERS
    treewide: Fix typos in various parts of the kernel, and fix some comments.
    clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR
    gpio: Kconfig: drop unknown symbol 'CS5535_GPIO'
    leds: Kconfig: Fix typo 'D2NET_V2'
    sound: Kconfig: drop unknown symbol ARCH_CLPS7500
    ...

    Fix up trivial conflicts in arch/powerpc/platforms/40x/Kconfig (some new
    kconfig additions, close to removed commented-out old ones)

    Linus Torvalds
     
  • * 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits)
    reiserfs: Properly display mount options in /proc/mounts
    vfs: prevent remount read-only if pending removes
    vfs: count unlinked inodes
    vfs: protect remounting superblock read-only
    vfs: keep list of mounts for each superblock
    vfs: switch ->show_options() to struct dentry *
    vfs: switch ->show_path() to struct dentry *
    vfs: switch ->show_devname() to struct dentry *
    vfs: switch ->show_stats to struct dentry *
    switch security_path_chmod() to struct path *
    vfs: prefer ->dentry->d_sb to ->mnt->mnt_sb
    vfs: trim includes a bit
    switch mnt_namespace ->root to struct mount
    vfs: take /proc/*/mounts and friends to fs/proc_namespace.c
    vfs: opencode mntget() mnt_set_mountpoint()
    vfs: spread struct mount - remaining argument of next_mnt()
    vfs: move fsnotify junk to struct mount
    vfs: move mnt_devname
    vfs: move mnt_list to struct mount
    vfs: switch pnode.h macros to struct mount *
    ...

    Linus Torvalds
     

07 Jan, 2012

1 commit

  • This resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file,
    and it fixes the build error in the arch/x86/kernel/microcode_core.c
    file, that the merge did not catch.

    The microcode_core.c patch was provided by Stephen Rothwell
    who was invaluable in the merge issues involved
    with the large sysdev removal process in the driver-core tree.

    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

04 Jan, 2012

1 commit

  • Move invalidate_bdev, block_sync_page into fs/block_dev.c. Export
    kill_bdev as well, so brd doesn't have to open code it. Reduce
    buffer_head.h requirement accordingly.

    Removed a rather large comment from invalidate_bdev, as it looked a bit
    obsolete to bother moving. The small comment replacing it says enough.

    Signed-off-by: Nick Piggin
    Cc: Al Viro
    Cc: Christoph Hellwig
    Signed-off-by: Andrew Morton
    Signed-off-by: Al Viro

    Al Viro
     

19 Dec, 2011

1 commit


07 Dec, 2011

1 commit


05 Dec, 2011

1 commit

  • Fixes:

    drivers/mtd/nand/gpmi-nand/gpmi-nand.c: In function 'gpmi_nfc_init':
    drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1475:16: error: 'THIS_MODULE' undeclared (first use in this function)
    drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1475:16: note: each undeclared identifier is reported only once for each function it appears in
    drivers/mtd/nand/gpmi-nand/gpmi-nand.c: At top level:
    drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1617:15: error: expected declaration specifiers or '...' before string constant
    drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1617:1: warning: data definition has no type or storage class
    drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1617:1: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR'

    and some more...

    Signed-off-by: Wolfram Sang
    Acked-by: Huang Shijie
    Signed-off-by: Artem Bityutskiy
    Signed-off-by: David Woodhouse

    Wolfram Sang
     

03 Dec, 2011

1 commit

  • In commit 9d7948c50055e74b693ce9e99a709b2e5bbc1942 (mtd: ndfc: use
    ofpart through generic parsing) we dereference a non pointer type
    causing the following compiler error:
    drivers/mtd/nand/ndfc.c: In function 'ndfc_chip_init':
    drivers/mtd/nand/ndfc.c:191: error: invalid type argument of '->' (have 'struct mtd_part_parser_data')

    Fix that.

    Signed-off-by: Tony Breeds
    Acked-by: Dmitry Eremin-Solenikov
    Signed-off-by: David Woodhouse

    Tony Breeds
     

19 Nov, 2011

1 commit

  • This converts the remaining USB drivers in the kernel to use the
    module_usb_driver() macro which makes the code smaller and a bit
    simpler.

    Added bonus is that it removes some unneeded kernel log messages about
    drivers loading and/or unloading.

    Cc: Guenter Roeck
    Cc: Jean Delvare
    Cc: Ben Dooks
    Cc: Till Harbaum
    Cc: Karsten Keil
    Cc: Chris Ball
    Cc: David Woodhouse
    Cc: Lauro Ramos Venancio
    Cc: Aloisio Almeida Jr
    Cc: Samuel Ortiz
    Cc: Steve Glendinning
    Cc: Florian Tobias Schandinat
    Cc: Evgeniy Polyakov
    Cc: Wim Van Sebroeck
    Cc: "David S. Miller"
    Cc: Jesper Juhl
    Cc: Artem Bityutskiy
    Cc: Jamie Iles
    Cc: Andrew Morton
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     

14 Nov, 2011

1 commit

  • MTD_PARTITIONS got killed in commit 6a8a98b22b. This means that since
    v3.0 this Kconfig symbol doesn't exist anymore. Apparently selecting
    a non-existant symbol is a nop. Drop that select.

    Signed-off-by: Paul Bolle
    Signed-off-by: Jiri Kosina

    Paul Bolle
     

08 Nov, 2011

2 commits

  • module.h was previously implicitly included through mtd/mtd.h.

    Fixes the following build failure after the module.h cleanup:

    CC drivers/mtd/maps/bcm963xx-flash.o
    drivers/mtd/maps/bcm963xx-flash.c: In function 'bcm963xx_probe':
    drivers/mtd/maps/bcm963xx-flash.c:208:29: error: 'THIS_MODULE' undeclared (first use in this function)
    [...]
    drivers/mtd/maps/bcm963xx-flash.c:276:1: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR'
    drivers/mtd/maps/bcm963xx-flash.c:276:15: warning: function declaration isn't a prototype
    make[7]: *** [drivers/mtd/maps/bcm963xx-flash.o] Error 1

    Signed-off-by: Jonas Gorski
    Signed-off-by: Paul Gortmaker

    Jonas Gorski
     
  • * git://git.infradead.org/mtd-2.6: (226 commits)
    mtd: tests: annotate as DANGEROUS in Kconfig
    mtd: tests: don't use mtd0 as a default
    mtd: clean up usage of MTD_DOCPROBE_ADDRESS
    jffs2: add compr=lzo and compr=zlib options
    jffs2: implement mount option parsing and compression overriding
    mtd: nand: initialize ops.mode
    mtd: provide an alias for the redboot module name
    mtd: m25p80: don't probe device which has status of 'disabled'
    mtd: nand_h1900 never worked
    mtd: Add DiskOnChip G3 support
    mtd: m25p80: add EON flash EN25Q32B into spi flash id table
    mtd: mark block device queue as non-rotational
    mtd: r852: make r852_pm_ops static
    mtd: m25p80: add support for at25df321a spi data flash
    mtd: mxc_nand: preset_v1_v2: unlock all NAND flash blocks
    mtd: nand: switch `check_pattern()' to standard `memcmp()'
    mtd: nand: invalidate cache on unaligned reads
    mtd: nand: do not scan bad blocks with NAND_BBT_NO_OOB set
    mtd: nand: wait to set BBT version
    mtd: nand: scrub BBT on ECC errors
    ...

    Fix up trivial conflicts:
    - arch/arm/mach-at91/board-usb-a9260.c
    Merged into board-usb-a926x.c
    - drivers/mtd/maps/lantiq-flash.c
    add_mtd_partitions -> mtd_device_register vs changed to use
    mtd_device_parse_register.

    Linus Torvalds
     

07 Nov, 2011

1 commit

  • * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)
    Revert "tracing: Include module.h in define_trace.h"
    irq: don't put module.h into irq.h for tracking irqgen modules.
    bluetooth: macroize two small inlines to avoid module.h
    ip_vs.h: fix implicit use of module_get/module_put from module.h
    nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
    include: replace linux/module.h with "struct module" wherever possible
    include: convert various register fcns to macros to avoid include chaining
    crypto.h: remove unused crypto_tfm_alg_modname() inline
    uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
    pm_runtime.h: explicitly requires notifier.h
    linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
    miscdevice.h: fix up implicit use of lists and types
    stop_machine.h: fix implicit use of smp.h for smp_processor_id
    of: fix implicit use of errno.h in include/linux/of.h
    of_platform.h: delete needless include
    acpi: remove module.h include from platform/aclinux.h
    miscdevice.h: delete unnecessary inclusion of module.h
    device_cgroup.h: delete needless include
    net: sch_generic remove redundant use of
    net: inet_timewait_sock doesnt need
    ...

    Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in
    - drivers/media/dvb/frontends/dibx000_common.c
    - drivers/media/video/{mt9m111.c,ov6650.c}
    - drivers/mfd/ab3550-core.c
    - include/linux/dmaengine.h

    Linus Torvalds
     

04 Nov, 2011

1 commit

  • * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (37 commits)
    MIPS: O32: Provide definition of registers ta0 .. ta3.
    MIPS: perf: Add Octeon support for hardware perf.
    MIPS: perf: Add support for 64-bit perf counters.
    MIPS: perf: Reorganize contents of perf support files.
    MIPS: perf: Cleanup formatting in arch/mips/kernel/perf_event.c
    MIPS: Add accessor macros for 64-bit performance counter registers.
    MIPS: Add probes for more Octeon II CPUs.
    MIPS: Add more CPU identifiers for Octeon II CPUs.
    MIPS: XLR, XLS: Add comment for smp setup
    MIPS: JZ4740: GPIO: Check correct IRQ in demux handler
    MIPS: JZ4740: GPIO: Simplify IRQ demuxer
    MIPS: JZ4740: Use generic irq chip
    MIPS: Alchemy: remove all CONFIG_SOC_AU1??? defines
    MIPS: Alchemy: kill au1xxx.h header
    MIPS: Alchemy: clean DMA code of CONFIG_SOC_AU1??? defines
    MIPS, IDE: Alchem, au1xxx-ide: Remove pb1200/db1200 header dep
    MIPS: Alchemy: Redo PCI as platform driver
    MIPS: Alchemy: more base address cleanup
    MIPS: Alchemy: rewrite USB platform setup.
    MIPS: Alchemy: abstract USB block control register access
    ...

    Fix up trivial conflicts in:
    arch/mips/alchemy/devboards/db1x00/platform.c
    drivers/ide/Kconfig
    drivers/mmc/host/au1xmmc.c
    drivers/video/Kconfig
    sound/mips/Kconfig

    Linus Torvalds
     

02 Nov, 2011

1 commit


01 Nov, 2011

2 commits


31 Oct, 2011

1 commit


30 Oct, 2011

2 commits

  • mtd tests may erase the mtd device, so force the user to specify which
    mtd device to test by using the module parameter. Disable the default
    (using mtd0) since this may destroy a vital part of the flash if the
    module is inserted accidently or carelessly.

    Reported-by: Roland Kletzing
    Signed-off-by: Wolfram Sang
    Signed-off-by: Artem Bityutskiy

    Wolfram Sang
     
  • Depending on whether MTD_DOCPROBE_ADVANCED is set or not,
    MTD_DOCPROBE_ADDRESS will default to either 0x0000 or 0. That should
    lead to (basically) identical code in docprobe.c. The current two
    defaults should be merged.

    And, while we're at it, if MTD_DOCPROBE is set MTD_DOCPROBE_ADDRESS will
    always be set. (MTD_DOCPROBE_ADDRESS depends on MTD_DOCPROBE and it has
    a default value.) So the check whether CONFIG_MTD_DOCPROBE_ADDRESS is
    defined is unnecessary and should be dropped.

    Signed-off-by: Paul Bolle
    Signed-off-by: Artem Bityutskiy

    Paul Bolle
     

27 Oct, 2011

1 commit

  • * 'gpio' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (43 commits)
    ARM: 7135/1: ep93xx: bring back missing
    ARM: 7104/1: plat-pxa: break out GPIO driver specifics
    ARM: 7103/1: plat-pxa: move PXA GPIO driver to GPIO subsystem
    ARM: 7042/3: mach-ep93xx: break out GPIO driver specifics
    ARM: 7101/1: arm/tegra: Replace with
    ARM: 7094/1: arm/tegra: Move EN_VDD_1V05_GPIO to board-harmony.h
    ARM: 7083/1: rewrite U300 GPIO to use gpiolib
    ARM: 7074/1: gpio: davinci: eliminate unused variable warnings
    ARM: 7063/1: Orion: gpio: add missing include of linux/types.h
    ARM: 7055/1: arm/tegra: mach/gpio.h: include linux/types.h to fix build
    ARM: 7054/1: arm/tegra: Delete custom gpio_to_irq, and irq_to_gpio
    ARM: 7053/1: gpio/tegra: Implement gpio_chip.to_irq
    ARM: 7052/1: gpio/tegra: Remove use of irq_to_gpio
    ARM: 7057/1: mach-pnx4008: rename GPIO header
    ARM: 7056/1: plat-nomadik: kill off
    ARM: 7050/1: mach-sa1100: delete irq_to_gpio() function
    ARM: 7049/1: mach-sa1100: move SA1100 GPIO driver to GPIO subsystem
    ARM: 7045/1: mach-lpc32xx: break out GPIO driver specifics
    ARM: 7044/1: mach-lpc32xx: move LPC32XX GPIO driver to GPIO subsystem
    ARM: 7043/1: mach-ixp2000: rename GPIO header
    ...

    Fix up trivial conflicts in arch/arm/mach-u300/Kconfig manually

    Linus Torvalds
     

25 Oct, 2011

2 commits

  • Now that no driver any longer depends on the CONFIG_SOC_AU1??? symbols,
    it's time to get rid of them: Move some of the platform devices to the
    boards which can use them, Rename a few (unused) constants in the header,
    Replace them with MIPS_ALCHEMY in the various Kconfig files. Finally
    delete them altogether from the Alchemy Kconfig file.

    Signed-off-by: Manuel Lauss
    To: Linux-MIPS
    Patchwork: https://patchwork.linux-mips.org/patch/2707/
    Signed-off-by: Ralf Baechle

    Manuel Lauss
     
  • No longer required

    Signed-off-by: Manuel Lauss
    To: Linux-MIPS
    Patchwork: https://patchwork.linux-mips.org/patch/2705/
    Signed-off-by: Ralf Baechle

    delete mode 100644 arch/mips/include/asm/mach-au1x00/au1xxx.h

    Manuel Lauss
     

20 Oct, 2011

1 commit


16 Oct, 2011

4 commits

  • Our `ops' information was converted to a local variable recently, and
    apparently, old code relied on the fact that the global version was
    often left in a valid mode. We can't make this assumption on local
    structs, and we shouldn't be relying on a previous state anyway.

    Instead, we initialize mode to 0 for don't-care situations (i.e., the
    operation does not use OOB anyway) and MTD_OPS_PLACE_OOB when we want to
    place OOB data.

    This fixes a bug with nand_default_block_markbad(), where we catch on
    the BUG() call in nand_fill_oob():

    Kernel bug detected[#1]:
    ...
    Call Trace:
    [] nand_fill_oob.clone.5+0xa4/0x15c
    [] nand_do_write_oob+0x1d0/0x260
    [] nand_default_block_markbad+0x15c/0x1a8
    [] part_block_markbad+0x80/0x98
    [] mtd_ioctl+0x6d8/0xbd0
    [] mtd_unlocked_ioctl+0x38/0x5c
    [] do_vfs_ioctl+0xa4/0x6e4
    [] sys_ioctl+0x44/0xa0
    [] stack_done+0x20/0x40

    Signed-off-by: Brian Norris
    Signed-off-by: Artem Bityutskiy

    Brian Norris
     
  • parse_mtd_partitions takes a list of partition types; if the driver
    isn't loaded, it attempts to load it, and then it grabs the partition
    parser. For redboot, the module name is "redboot.ko", while the parser
    name is "RedBoot". Since modprobe is case-sensitive, attempting to
    modprobe "RedBoot" will never work. I suspect the embedded systems that
    make use of redboot just always manually loaded redboot prior to loading
    their specific nand chip drivers (or statically compiled it in).

    Signed-off-by: Andres Salomon
    Signed-off-by: Artem Bityutskiy
    Cc: stable@kernel.org

    Andres Salomon
     
  • On some platforms such as P3060QDS, has multiple spi flashes, but they are
    not available at same time, so if their status is 'disabled', which is set
    by u-boot, will not be probed.

    Signed-off-by: Shaohui Xie
    Signed-off-by: Artem Bityutskiy

    Shaohui Xie
     
  • This driver has been broken through all of git history and
    cannot even be built. Better mark it as broken. Next stop is
    removing from the tree.

    Signed-off-by: Arnd Bergmann
    Acked-by: Eric Miao
    Signed-off-by: Artem Bityutskiy

    Arnd Bergmann
     

14 Oct, 2011

3 commits


01 Oct, 2011

1 commit


28 Sep, 2011

1 commit

  • There are numerous broken references to Documentation files (in other
    Documentation files, in comments, etc.). These broken references are
    caused by typo's in the references, and by renames or removals of the
    Documentation files. Some broken references are simply odd.

    Fix these broken references, sometimes by dropping the irrelevant text
    they were part of.

    Signed-off-by: Paul Bolle
    Signed-off-by: Jiri Kosina

    Paul Bolle
     

26 Sep, 2011

1 commit


23 Sep, 2011

1 commit


21 Sep, 2011

5 commits

  • A portion of the `check_pattern()' function is basically a `memcmp()'.
    Since it's possible for `memcmp()' to be optimized for a particular
    architecture, we should use it instead.

    Signed-off-by: Brian Norris
    Signed-off-by: Artem Bityutskiy

    Brian Norris
     
  • In rare cases, we are given an unaligned parameter `from' in
    `nand_do_read_ops()'. In such cases, we use the page cache
    (chip->buffers->databuf) as an intermediate buffer before dumping to the
    client buffer. However, there are also cases where this buffer is not
    cleanly reusable. In those cases, we need to make sure that we
    explicitly invalidate the cache.

    This patch prevents accidental reusage of the page cache, and for me,
    this solves some problems I come across when reading a corrupted BBT
    from flash (NAND_BBT_USE_FLASH and NAND_BBT_NO_OOB).

    Note: the rare "unaligned" case is a result of the extra BBT pattern +
    version located in the data area instead of OOB.

    Also, this patch disables caching on raw reads, since we are reading
    without error correction. This is, obviously, prone to errors and should
    not be cached.

    Signed-off-by: Brian Norris
    Signed-off-by: Artem Bityutskiy

    Brian Norris
     
  • Updates to our default function for creating bad block patterns have
    broken the "no OOB" feature. The NAND_BBT_NO_OOB option should not be
    set while scanning for bad blocks, but we've been passing all BBT
    options from nand_chip.bbt_options to the bad block scan. This causes us
    to hit the:

    BUG_ON(bd->options & NAND_BBT_NO_OOB);

    in create_bbt() when we scan the flash for bad blocks.

    Thus, while it can be legal to set NAND_BBT_NO_OOB in a custom badblock
    pattern descriptor (presumably with NAND_BBT_CREATE disabled?), we
    should not pass it through in our default function.

    Also, to help clarify and emphasize that the function creates bad block
    patterns only (not, for example, table descriptors for locating
    flash-based BBT), I renamed `nand_create_default_bbt_descr' to
    `nand_create_badblock_pattern'.

    Signed-off-by: Brian Norris
    Signed-off-by: Artem Bityutskiy

    Brian Norris
     
  • Because there are so many cases of checking, writing, and re-writing of
    the bad block table(s), we might as well wait until the we've settled on
    a valid, clean copy of the table. This also prevents us from falsely
    incrementing the table version. For example, we may have the following:

    Primary table, with version 0x02
    Mirror table, with version 0x01
    Primary table has uncorrectable ECC errors

    If we don't have this fix applied, then we will:

    Choose to read the primary table (higher version)
    Set mirror table version to 0x02
    Read back primary table
    Invalidate table because of ECC errors
    Retry readback operation with mirror table, now version 0x02
    Mirrored table reads cleanly
    Writeback BBT to primary table location (with "version 0x02")

    However, the mirrored table shouldn't have a new version number.
    Instead, we actually want:

    Choose to read the primary table (higher version)
    Read back primary table
    Invalidate table because of ECC errors
    Retry readback with mirror table (version 0x01)
    Mirrored table reads cleanly
    Set both tables to version 0x01
    Writeback BBT to primary table location (version 0x01)

    Signed-off-by: Brian Norris
    Signed-off-by: Artem Bityutskiy

    Brian Norris
     
  • Now that `read_bbt()' returns ECC error codes properly, we handle those
    codes when checking the integrity of our flash-based BBT.

    The modifications can be described by this new policy:

    *) On any uncorrected ECC error, we invalidate the corresponding table
    and retry our version-checking integrity logic.
    *) On corrected bitflips, we mark both tables for re-writing to flash
    (a.k.a. scrubbing).

    Current integrity checks (i.e., comparing version numbers, etc.) should
    take care of all the cases that result in rescanning the device for bad
    blocks or falling back to the BBT as found in the mirror descriptor.

    Signed-off-by: Brian Norris
    Signed-off-by: Artem Bityutskiy

    Brian Norris