Overview of patches in jz-3.1 branch

Lars-Peter Clausen lars at metafoo.de
Thu Nov 3 14:56:07 EDT 2011


On 11/02/2011 11:59 PM, Maarten ter Huurne wrote:
> Hi all,
> 
> About a week ago I created the jz-3.1 branch in the qi-kernel repository, 
> which contains Linux 3.1 plus patches for the Ben NanoNote and Dingoo A320. 
> I'd like to see this patch set reduced by sending patches that are mature 
> enough upstream for inclusion in the mainline kernel.
> 
> I grouped the patches by which part of the kernel they apply to. For those 
> patches that I know the status of, I have commented, for the other patches 
> I'd like others to comment (most importantly Lars, but other opinions are 
> welcome too).
> 
> === MIPS: NanoNote
> 
> qi_lb60: Don't use 3-wire spi mode for the display for now
> commit 4bac1160b7780ed31b4d8fe40cb462ff16f89e85
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> Send upstream?

This is manly due to the gpio spi driver not supporting 3-wire.

> 
> Add defconfig for the Ben NanoNote
> commit b38a9752edaec01a0622127f838c6072719928b7
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> Is there a reason this is not upstream yet? There is already upstream 
> support for the NanoNote (board-qi_lb60.c), but no config.

The reason why it is not upstream is because we submitted the NanoNote upstream
at a time when Linus ranted about the defconfig madness in ARM.
But I've talked with Ralf (the MIPS maintainer) and he said he is ok with
accepting the patch now.

> 
> === MIPS: Dingoo
> 
> MIPS: A320: Default config for Dingoo A320.
> commit 5a99636945144202b0614105318923702dc4ab41
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: A320: Add Dingoo A320 board support.
> commit 774717b5526b000d97a2c0f66b23fa9c157ae1ed
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: JZ4740: A320: Force vmlinuz load address on Dingoo A320
> commit bb843c18cdcb15d72a0e63ebe57758a29be7b666
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> OpenDingux: initrd: Specify initrd contents using text file
> commit 4646c580a390c4e4102d9ddb43fb22c6b6d9e70a
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: JZ4740: Add Dingux logo.
> commit ac69b22c69c2066a2ecdaf6dacb1bca50456d586
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: A320: Added Dingoo specific README.
> commit 45af28962084f92f6ed2dd8943da5b68134f9a55
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: A320: Add SoC sound support for Dingoo A320.
> commit d39c5053620bd59743a6d64b980cc5e3369bf4bf
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Not all required drivers are included in / ready for mainline yet to make 
> the Dingoo config work. The most essential missing piece is SLCD support.
> 
> === MIPS: CPU:
> 
> JZ4740 cache quirks
> commit 5b523455712c2fb193f31ac70f7d67f3dc59acb4
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> This patch has been around for a while. Submit?

Nope. We don't have really evidence that this improves performance or fixes any
problems. This is sort of a cargo-cult patch, we keep it because it was in the
Ingenic Linux tree.

> 
> MIPS: Implement flush_kernel_dcache_page().
> commit 42a54a2d7569cc5e1136a153a820e7484cbf7ca4
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> This is an ugly hack, but without it bounce buffers for MMC/SD are broken. 
> We don't actually need bounce buffers though. Should not be sent upstream in 
> its current state, but maybe it should be cleanly implemented.
> 

Ralf has several times promised to implement this properly in upstream MIPS
Linux. But so far this has not happened yet. Maybe sending this patch upstream
as is might be a good idea to remind him.

> === MIPS: platform:
> 
> MIPS: JZ4740: reset: Initialize hibernate wakeup counters.
> commit 5cd896c6fe51f8f090e0b2eb29e6d44e6fa50a65
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Reduces wake-up time from 2 seconds to 100 ms. This is a welcome 
> improvement, in my opinion.

Yes, should go upstream. You can add my:
Acked-by: Lars-Peter Clausen <lars at metafoo.de>

> 
> === MIPS: cpufreq:
> 
> MMC: JZ4740: Added support for CPU frequency changing.
> commit 228f1d2948e0517dd444464c24cc5104ca966c31
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: JZ4740: Add cpufreq support.
> commit 4d8c6ec45ce86b25639bea0d140363385a27a429
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: JZ4740: Added setting of PLL rate and main dividers.
> commit 2ab204fc94838234636c4657712e463aa0c462a9
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> cpufreq_stats: Support runtime changes to frequency table.
> commit 2485a5469be6d50b84e03c05654de70f64d4c346
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Not ready to send upstream. Drivers need to be modified to avoid disrupting 
> their clock while they are busy; this was done for the MMC/SD controller but 
> should be done for other devices like the USB device controller as well. I 
> also have some other doubts about the robustness of the code.

I agree

> 
> === MIPS: GPIO:
> 
> MIPS: JZ4740: GPIO: Use new name for generic ack function.
> commit 64804950140e13384d25ab8496528ff359105c84
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> MIPS: JZ4740: GPIO: Check correct IRQ in demux handler
> commit 0d22105f793636905f0d70633789ff49a258790e
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> MIPS: JZ4740: GPIO: Simplify IRQ demuxer
> commit d62e0a6752d2f988e7f6f68d1a7c748865503f49
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> MIPS: JZ4740: Use generic irq chip
> commit e95573b765767d7eebdaacbf84e59a62686c0436
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> Updates to better match kernel infrastructure. Can be sent upstream, I 
> think.

All already on their way into upstream 3.2

> 
> === MIPS: I2C:
> 
> MIPS: JZ4740: Fix i2c driver name.
> commit d020a7a5f707ffa35dc95eab861c1d93c434bc22
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> i2c: Add i2c driver for JZ47XX SoCs
> commit 963f9f704ed0a91724d5079c84f2bbfec820f59f
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> On the Dingoo we're using the bitbanging GPIO I2C driver because at some 
> point the JZ I2C driver wasn't working correctly. That was a long time ago 
> though, I haven't re-tested recently.
> 
> OpenInkpot has some patches for the I2C driver in their git repository, but 
> I don't know if those were included yet or whether they do the right thing.
> 

I'm not really sure if it makes sense to keep this patch around. The jz4740 I2C
core is really crappy and requires all kinds of workarounds to be properly
used. i2c-gpio might be the better alternative.

> === MIPS: ADC:
> 
> mfd: jz4740-adc: Make jz4740_adc_driver static
> commit 3da78c02d3755ffd35ac0775d0c84d603bd26b19
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> One-word fix, safe to upstream, I think.

Already on its way into 3.2

> 
> === MIPS: UDC:
> 
> usb: gadget: jz4740: Converted to new registration infrastructure.
> commit 4adea3bca06ca2a733de118755cbc074d65e9c90
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Add jz4740 udc driver
> commit eb26571230d3c29b6680a4ff9e66f2f1893c7967
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> Although Lars is the patch author, the driver originates from Ingenic. Apart 
> from some API updates there haven't been any recent changes as far as I 
> know. So can this one can be submitted?
> 

I don't think the patch would be accepted upstream in it's current form. Needs
more cleanups.

> === MIPS: MMC:
> 
> MMC: JZ4740: Fix warning.
> commit 3ce6aa621508f9d8937197371f022f596ab1e4fa
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Safe to send upstream, I think.

The warning is only present in the Qi tree. The patch should probably be
squashed into the one adding cpufreq support.

> 
> === MIPS: NAND:
> 
> MTD: NAND: JZ4740: Multi-bank support with autodetection
> commit cac9ecaf448642d478240fe8d179c2a9d920bdfa
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> The multi-bank detection seems to work fine on the various A320 models, so I 
> think it's safe to upstream this.

I'm not entirely happy with this yet, but ok.

> 
> MTD: NAND: JZ4740: Fix possible uninitialized pointer.
> commit e098aaf91ef481a53133c3978e42fbfbb7081cdb
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> This should be sent upstream, in my opinion.

Yes. You can add my acked-by.

> 
> === generic MTD:
> 
> ubi: Read only the vid header instead of the whole page
> commit 084c939bc5acfe299b11bd6bfde06586dea01984
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> NAND: Add support for subpage reads for NAND_ECC_HW_OOB_FIRST
> commit 4010626ef8943cc1cd2f7bae5301339b5116610e
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> NAND: Optimize NAND_ECC_HW_OOB_FIRST read
> commit f0a40e2672110f50b21f99b3cdd7e9aa343f033e
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> These are optimizations to reduce the boot time on the NanoNote. Are they 
> safe to send upstream?

I need to re-review these first.

> 
> There was a fourth patch, labeled in the commit itself as "evil hack", which 
> broke NAND reading on the Dingoo; that patch didn't make it to jz-3.1 but 
> might be worthwhile to rework.
> 
> mtd: cc_ftl: New FTL driver for media players using China Chip firmware.
> commit cb54a95fdbe5e2b5014b725e27e8c9b3a6c748fc
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Not ready yet for submission: needs locking and more robust handling of bad 
> data.
> 
> === video:
> 
> Add ili8960 lcd driver
> commit cd6264c67526f198fc8c568fa8b4f578be5aa3bf
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> Used by the NanoNote. I don't know anything about this one.

Not ready yet. Needs some cleanup. E.g. replace magic constants with some more
meaningful defines.

> 
> MIPS: JZ4740: SLCD framebufer driver.
> commit 27f826d6f722bf3741441e2159bfadd5cac2476b
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Although it is usable, this driver is too messy to submit. Actually I think 
> it would be better to adapt the LCD framebuffer driver to support SLCD mode 
> as well.
> 
> Framebuffer notifier: Call notifier callbacks prior to blanking the screen
> commit d111ee753dd71beedb394a79da6285d7ce6e6204
> Author: Lars-Peter Clausen <lars at metafoo.de>
> 
> Changes in the generic framebuffer code. Is this is a bug fix or a change of 
> the kernel infrastructure?

This is a hack and should not go into upstream. But there has recently been a
patch submitted upstream which fixes the problem this patch addresses with a
more sensible approach. http://www.spinics.net/lists/linux-fbdev/msg04503.html

> 
> === audio:
> 
> ASoC: JZ4740: Support buffer size that is not a multiple of period size.
> commit a89e974cab68554ad577944e1556fcbe676e0fdd
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Fixes some audio glitches but not all. Since it is a step forward, we could 
> submit it?
> 
> ASoC: JZ4740: Replaced comma operators with semicolons.
> commit 7c4447b5440ad9f4319ef4379322bcc09cb9604a
> Author: Maarten ter Huurne <maarten at treewalker.org>
> 
> Simple cleanup, should be safe to submit.

Yes. You can add my Acked-by.


Thanks for compiling the list.



More information about the jz47xx-kernel mailing list


interactive