Commits on Jul 8, 2011
  1. MIPS: JZ4740: A320: Updated quickstart documentation.

    Mention the new ILI9338.
    Removed the instructions to change the kernel command line for 64 MB RAM
    on A330, since that is autodetected now if the 64 MB boot loader is used.
    committed Jul 8, 2011
  2. MIPS: JZ4740: A320: Debounce microswitch buttons.

    On the microswitch buttons of the Dingoo A320 (L/R/select/start), it often
    happens that multiple presses are detected for one actual button press.
    Specifying a 5 ms debounce interval fixes that issue. I am not sure what
    the optimum interval length would be, but 5 ms is short enough to not cause
    problems for gamers and long enough to filter out the glitches.
    committed Jul 8, 2011
Commits on Jun 28, 2011
  1. MIPS: JZ4740: reset: Initialize hibernate wakeup counters.

    In hibernation mode only the wakeup logic and the RTC are left running,
    so this is what users perceive as power down.
    If the counters are not initialized, the corresponding pin (typically
    connected to the power button) has to be asserted for two seconds
    before the device wakes up. Most users expect a shorter wakeup time.
    I took the timing values of 100 ms and 60 ms from BouKiCHi's patch for
    the Dingoo A320 kernel.
    committed Jun 28, 2011
Commits on Jun 19, 2011
  1. MIPS: JZ4740: A320: defconfig: Enabled suspend.

    With the addition of cpufreq support in the MMC driver, we can come out
    of suspend without getting I/O errors from the SD card.
    committed Jun 19, 2011
  2. MIPS: JZ4740: cpufreq: select CPU_FREQ_TABLE

    The driver calls cpufreq_frequency_table_target() unconditionally.
    Also changed the indentation to tabs, which seems to be the norm.
    committed Jun 19, 2011
  3. MIPS: JZ4740: A320: defconfig: Re-enabled cpufreq driver.

    With recent changes the SD card access is reliable again when changing
    the CPU frequency.
    committed Jun 19, 2011
  4. MMC: JZ4740: Added support for CPU frequency changing.

    The MSC device clock is stopped before the frequency change.
    After the change a new divider is computed and the clock is restarted.
    Also the frequency change is postponed if an I/O operation is in progress.
    committed Jun 19, 2011
  5. MIPS: JZ4740: cpufreq: Set CE bit after PLL freq change.

    This fixes I/O errors when reading from SD card.
    I guess this is a hardware quirk: I even tried writing the current value
    with the same routine and that had no effect, so it is not some side effect
    that avoids the I/O errors, it is actually the CE bit that matters.
    committed Jun 19, 2011
Commits on Jun 6, 2011
  1. MIPS: JZ4740: A320: defconfig: Disable CPU frequency scaling for now.

    I get I/O errors reading from the SD card when the cpufreq driver is
    used. In earlier kernels we had SD problems with cpufreq and suspend,
    but in 2.6.39 it also shows up under normal use. Until this problem
    is fixed in the cpufreq driver, it's better to disable it.
    committed Jun 6, 2011
  2. MIPS: JZ4740: USB: Fix packet read/write functions.

    The read_packet() and write_packet() functions were recently converted
    to use memcpy_fromio() and memcpy_toio(). However, the FIFO register
    is only a single address while memcpy increases the address. Fixed by
    using readsl() and writesl() instead.
    committed Jun 6, 2011
  3. jz4740: Fix compile error

    larsclausen committed with Jun 6, 2011
  4. Fix MFD jz4740-ts entry

    larsclausen committed with Jun 6, 2011
  5. MIPS: A320: Default config for Dingoo A320.

    This is the config from the jz-2.6.38 branch brought up to date for 2.6.39.
    committed Aug 30, 2010
  6. MIPS: A320: Add Dingoo A320 board support.

    This is a squashed version of the development done in the jz-2.6.38 branch.
    committed Mar 16, 2011
  7. MIPS: JZ4740: A320: Force vmlinuz load address on Dingoo A320

    The Dingux dual boot loader seems to require a fixed load address.
    committed May 1, 2010
  8. OpenDingux: initrd: Specify initrd contents using text file

    The gen_init_cpio tool will parse the text file and generate a cpio archive.
    The mininit binary comes from booboo's initrd.cpio image.
    committed May 31, 2011
  9. Revert "NAND: Optimize reading the eec data for the JZ4740 (evil hack)"

    This reverts commit b05a5ad.
    This hack breaks compatibility with the ChinaChip FTL as used by the native OS of the Dingoo A320.
    committed Jun 6, 2011
  10. MTD: NAND: JZ4740: Multi-bank support with autodetection

    The platform data can now specify which external memory banks to probe
    for NAND chips, and in which order. Banks that contain a NAND are used
    and the other banks are freed.
    Squashed version of development done in jz-2.6.38 branch.
    Original patch by Lars-Peter Clausen with some bug fixes from me.
    Thanks to Paul Cercueil for the initial autodetection patch.
    committed Nov 21, 2010
  11. MIPS: JZ4740: setup: Autodetect physical memory.

    Assume that the boot loader knows the physical memory of the system and
    deduce that information from the contents of the SDRAM control register.
    It is still possible to override with with the "mem=" parameter, but we
    have a sensible default now.
    committed Apr 30, 2011
  12. MIPS: JZ4740: SLCD framebufer driver.

    This driver sends the frame buffer to a smart LCD controller, that is a controller with its own video memory.
    It is a squashed version of development done in the jz-2.6.38 branch.
    committed Jun 6, 2011
  13. MIPS: A320: Add SoC sound support for Dingoo A320.

    This is a squashed version of the development done in the jz-2.6.37 branch,
    updated with necessary changes for mainline 2.6.38.
    committed Mar 16, 2011
  14. MIPS: JZ4740: Add Dingux logo.

    committed Apr 18, 2010
  15. MIPS: Implement flush_kernel_dcache_page().

    This is just a quick fix: a real fix would implement flush_kernel_vmap_range() and invalidate_kernel_vmap_range() as well, but those are only used in XFS for which we have no need on the Dingoo.
    committed May 19, 2010
  16. MIPS: JZ4740: Add cpufreq support.

    This is a squashed version of Uli's driver that was further developed in the opendingux-kernel repository.
    committed Mar 16, 2011
  17. MIPS: JZ4740: Added setting of PLL rate and main dividers.

    This functionality makes a cpufreq driver possible.
    Squashed version of the development done in the jz-2.6.35 branch.
    committed Aug 29, 2010
  18. /dev/mem: Add kernel config option to omit this device.

    Omitting this device prevents software from accessing the hardware directly, which can cause trouble if the kernel accesses the same hardware.
    It also saves some space on embedded systems.
    committed Sep 8, 2010
  19. mtd: cc_ftl: New FTL driver for media players using China Chip firmware.

    Tested on Dingoo A320: the FAT partition on the NAND is mounted successfully.
    Read-only for now.
    Not robust against bad FTL admin data yet: the driver won't crash, but it might return unnecessary I/O errors.
    Squashed version of development done in jz-2.6.35 branch.
    committed Aug 29, 2010
  20. MIPS: A320: Added Dingoo specific README.

    This is based on booboo's README for the kernel.
    "History" and "Contributing" were added as new sections.
    committed Mar 16, 2011
Commits on May 26, 2011
  1. PM: Remove sysdev suspend, resume and shutdown operations

    Since suspend, resume and shutdown operations in struct sysdev_class
    and struct sysdev_driver are not used any more, remove them.  Also
    drop sysdev_suspend(), sysdev_resume() and sysdev_shutdown() used
    for executing those operations and modify all of their users
    accordingly.  This reduces kernel code size quite a bit and reduces
    its complexity.
    Signed-off-by: Rafael J. Wysocki <>
    rjwysocki committed with larsclausen Apr 17, 2011
  2. PM / MIPS: Use struct syscore_ops instead of sysdevs for PM

    Convert some MIPS architecture's code to using struct syscore_ops
    objects for power management instead of sysdev classes and sysdevs.
    This simplifies the code and reduces the kernel's memory footprint.
    It also is necessary for removing sysdevs from the kernel entirely in
    the future.
    Signed-off-by: Rafael J. Wysocki <>
    rjwysocki committed with larsclausen Apr 17, 2011
  3. gpio-charger: Add gpio_charger_resume

    Gpio charger should notify if the gpio state had changed
    during suspend. This will send a CHANGED event each time
    the system resumes, ensuring a plug/unplug of the charger
    is not missed.
    Signed-off-by: Benson Leung <>
    Version history :
    v3 : Use SIMPLE_DEV_PM_OPS
    v2 : Changed to use dev_ms_ops
    v1 : Initial
    bleungatchromium committed with larsclausen Apr 6, 2011
  4. NAND: Optimize reading the eec data for the JZ4740 (evil hack)

    We know that the ecc data is continuous, this allows us to only read the ecc
    data instead of the whole oob section, which slightly improves performance.
    Note that this is an evil hack, which will break platforms where the ecc data is
    larsclausen committed Feb 26, 2011