[linux-sunxi] Re: [PATCH v6 0/7] mfd: AXP20x: Add support for AXP202 and AXP209
On Wed, May 21, 2014 at 12:23 AM, Mark Brown broo...@kernel.org wrote: On Mon, May 19, 2014 at 09:47:41PM +0200, Carlo Caione wrote: This set of patches introduces the core driver and support for two different subsystems: - Regulators .../ABI/testing/sysfs-driver-input-axp-pek | 11 + Documentation/devicetree/bindings/mfd/axp20x.txt | 93 +++ .../devicetree/bindings/vendor-prefixes.txt| 1 + arch/arm/configs/multi_v7_defconfig| 3 + arch/arm/configs/sunxi_defconfig | 4 + drivers/input/misc/Kconfig | 11 + drivers/input/misc/Makefile| 1 + drivers/input/misc/axp20x-pek.c| 281 + drivers/mfd/Kconfig| 12 + drivers/mfd/Makefile | 1 + drivers/mfd/axp20x.c | 258 +++ include/linux/mfd/axp20x.h | 180 + 12 files changed, 856 insertions(+) The regulator changes don't appear to be showing up in the diffstat or obviously in the series? Right. Cut-and-paste error. You have already applied the regulator patches so I didn't include them here (in theory I posted this series to be picked up by Lee). Thanks, -- Carlo Caione -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[linux-sunxi] Re: [PATCH v7] DMA: sun6i: Add driver for the Allwinner A31 DMA controller
On Wed, May 21, 2014 at 11:01:05AM +0530, Vinod Koul wrote: On Tue, May 13, 2014 at 03:42:58PM +0200, Maxime Ripard wrote: Hi Vinod, On Wed, Apr 30, 2014 at 12:34:08PM +0530, Vinod Koul wrote: + +static int sun6i_dma_terminate_all(struct sun6i_vchan *vchan) +{ + struct sun6i_dma_dev *sdev = to_sun6i_dma_dev(vchan-vc.chan.device); + struct sun6i_pchan *pchan = vchan-phy; + unsigned long flags; + LIST_HEAD(head); + + spin_lock(sdev-lock); + list_del_init(vchan-node); + spin_unlock(sdev-lock); + + spin_lock_irqsave(vchan-vc.lock, flags); + + vchan_get_all_descriptors(vchan-vc, head); + + if (pchan) { + writel(DMA_CHAN_ENABLE_STOP, pchan-base + DMA_CHAN_ENABLE); + writel(DMA_CHAN_PAUSE_RESUME, pchan-base + DMA_CHAN_PAUSE); + + vchan-phy = NULL; + pchan-vchan = NULL; + pchan-desc = NULL; + pchan-done = NULL; + } + + spin_unlock_irqrestore(vchan-vc.lock, flags); + + vchan_dma_desc_free_list(vchan-vc, head); shouldn't you kill the tasklet as well here? Just to be clear, which tasklet? vchan's or the driver's? You need to take care of both. But I suspect if we ensure irq is not triggered and any pending ones are completed you can simply kill both of the tasklets happily. See the fixes merged in dmaengine last cycle (hint: patchlog shows what we need to do) I still don't get why I should kill the driver tasklet in terminate_all. The tasklet is common to all the channels, if you kill it, you'll prevent it from scheduling while other channels might have had a need for it to actually run. About the commits themselves, I guess you talk about 9068b032 and ccc7aad0. Both these commits only fix the remove path, not the terminate_all one, and both these drivers are not doing anything related to the tasklet in terminate_all. Btw just noticed, you *should* use dmaengine: as the subsytem name on the patch series... Ok, I will. Thanks, Maxime -- Maxime Ripard, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com signature.asc Description: Digital signature
[linux-sunxi] Re: [PATCH v6 0/7] mfd: AXP20x: Add support for AXP202 and AXP209
This set of patches introduces the core driver and support for two different subsystems: - Regulators .../ABI/testing/sysfs-driver-input-axp-pek | 11 + Documentation/devicetree/bindings/mfd/axp20x.txt | 93 +++ .../devicetree/bindings/vendor-prefixes.txt| 1 + arch/arm/configs/multi_v7_defconfig| 3 + arch/arm/configs/sunxi_defconfig | 4 + drivers/input/misc/Kconfig | 11 + drivers/input/misc/Makefile| 1 + drivers/input/misc/axp20x-pek.c| 281 + drivers/mfd/Kconfig| 12 + drivers/mfd/Makefile | 1 + drivers/mfd/axp20x.c | 258 +++ include/linux/mfd/axp20x.h | 180 + 12 files changed, 856 insertions(+) The regulator changes don't appear to be showing up in the diffstat or obviously in the series? Right. Cut-and-paste error. You have already applied the regulator patches so I didn't include them here (in theory I posted this series to be picked up by Lee). That's fine. Just tell me which patches need to stay together and which are able to be applied through their respective subsystem trees separately. Then, once I have all the Acks I can apply no problem. -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[linux-sunxi] Re: [PATCH v8 0/2] Add support for the Allwinner A31 DMA Controller
On Wednesday 21 May 2014 17:55:51 Maxime Ripard wrote: On Wed, May 21, 2014 at 05:23:41PM +0200, Arnd Bergmann wrote: On Wednesday 21 May 2014 17:15:54 Maxime Ripard wrote: Changes from v7: - select DMA_OF, since we're only relying on DT I missed the discussion about this issue, but it seems wrong to me. DMA_OF is currently enabled if we have both DMAENGINE and OF turned on. If OF is disabled but DMA_OF gets selected by DMA_SUN6I, what happens? Is that even possible with a multiplatform-based platform? It's not possible for ARCH_SUNXI or any other that depends on ARCH_MULTIPLATFORM. I just noticed that you have 'depends on ARCH_SUNXI', so the 'select DMA_OF' statement is just redundant, not wrong. However, if the driver was 'depends on ARCH_SUNXI || COMPILE_TEST' as many others are nowadays, it would be a bug. Arnd -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[linux-sunxi] [PATCH 1/2] ARM: dts: sun7i: cubietruck: set mmc3 bus-width property
bus-width defaults to 1, and all 4 lines are hooked up at the cubietruck, properly set bus-width to 4. Signed-off-by: Hans de Goede hdego...@redhat.com --- arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts index 765191d..70271f6 100644 --- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts +++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts @@ -34,6 +34,7 @@ pinctrl-names = default; pinctrl-0 = mmc3_pins_a; vmmc-supply = reg_vmmc3; + bus-width = 4; non-removable; status = okay; }; -- 1.9.0 -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[linux-sunxi] [PATCH 2/2] ARM: dts: sun7i: Add new i12-tvbox board
The i12 tvbox is an A20 based android tvbox, with 512M / 1G RAM, 4G nand flash, ap6210 or ap6330 sdio wifi + bt (broadcom sdio wifi + uart attached brcm bt), 2USB host ports using USB-A receptacles and a micro-usb receptacle for USB OTG, and 100Mbit ethernet using an IP101a phy. The PCB is labelled i12-a20 hence I've named the board i12-a20. It is used in noname allwinner A20 tv-boxes, which are sometimes sold with Q5 or QT840A as product name. Signed-off-by: Hans de Goede hdego...@redhat.com --- arch/arm/boot/dts/Makefile| 1 + arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts | 176 ++ 2 files changed, 177 insertions(+) create mode 100644 arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 1d9c50d..b40be4e 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -349,6 +349,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += \ sun6i-a31-m9.dtb \ sun7i-a20-cubieboard2.dtb \ sun7i-a20-cubietruck.dtb \ + sun7i-a20-i12-tvbox.dtb \ sun7i-a20-olinuxino-micro.dtb dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ tegra20-iris-512.dtb \ diff --git a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts new file mode 100644 index 000..b77308e --- /dev/null +++ b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts @@ -0,0 +1,176 @@ +/* + * Copyright 2014 Hans de Goede hdego...@redhat.com + * + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +/dts-v1/; +/include/ sun7i-a20.dtsi +/include/ sunxi-common-regulators.dtsi + +/ { + model = I12 / Q5 / QT840A A20 tvbox; + compatible = allwinner,i12-tvbox, allwinner,sun7i-a20; + + soc@01c0 { + mmc0: mmc@01c0f000 { + pinctrl-names = default; + pinctrl-0 = mmc0_pins_a, mmc0_cd_pin_reference_design; + vmmc-supply = reg_vcc3v3; + bus-width = 4; + cd-gpios = pio 7 1 0; /* PH1 */ + cd-inverted; + status = okay; + }; + + mmc3: mmc@01c12000 { + pinctrl-names = default; + pinctrl-0 = mmc3_pins_a; + vmmc-supply = reg_vmmc3; + bus-width = 4; + non-removable; + status = okay; + }; + + usbphy: phy@01c13400 { + usb1_vbus-supply = reg_usb1_vbus; + usb2_vbus-supply = reg_usb2_vbus; + status = okay; + }; + + ehci0: usb@01c14000 { + status = okay; + }; + + ohci0: usb@01c14400 { + status = okay; + }; + + ehci1: usb@01c1c000 { + status = okay; + }; + + ohci1: usb@01c1c400 { + status = okay; + }; + + pinctrl@01c20800 { + mmc3_pins_a: mmc3@0 { + /* AP6210 / AP6330 requires pull-up */ + allwinner,pull = 1; + }; + + vmmc3_pin_i12_tvbox: vmmc3_pin@0 { + allwinner,pins = PH2; + allwinner,function = gpio_out; + allwinner,drive = 0; + allwinner,pull = 0; + }; + + vmmc3_io_pin_i12_tvbox: vmmc3_io_pin@0 { + allwinner,pins = PH12; + allwinner,function = gpio_out; + allwinner,drive = 0; + allwinner,pull = 0; + }; + + gmac_power_pin_i12_tvbox: gmac_power_pin@0 { + allwinner,pins = PH21; + allwinner,function = gpio_out; + allwinner,drive = 0; + allwinner,pull = 0; + }; + + led_pins_i12_tvbox: led_pins@0 { + allwinner,pins = PH9, PH20; + allwinner,function = gpio_out; + allwinner,drive = 0; + allwinner,pull = 0; + }; + }; + + uart0: serial@01c28000 { + pinctrl-names = default; + pinctrl-0 = uart0_pins_a; +
Re: [linux-sunxi] [PATCH] Add qt840a
On Sun, May 18, 2014 at 8:45 PM, Hans de Goede hdego...@redhat.com wrote: Hi, On 05/18/2014 12:30 PM, Hans de Goede wrote: snip What about my u-boot patch? Did you create a dram file for the board too? Yes, that one I had not pushed yet, but I just did, if you checkout the latest sunxi branch code, then you can do: make -j4 CROSS_COMPILE=arm-linux-gnu- i12-tvbox_config make -j4 CROSS_COMPILE=arm-linux-gnu- And you will get a u-boot which should work fine on your board too. As for your patch I've not seen that one, I guess it somehow never made it to the list. But is no longer necessary, the i12-tvbox target should work 100% for you. I just realized this may not be true. My board has 1G of RAM in 2 16 bit dram chips, if your board is like the qt840a-s I've found on aliexpress, it has only 512M of RAM, if that is done by using lower capacity DRAM chips, the existing u-boot code should work fine. But if it is done by using only 1 DRAM chip (which would be quite bad for performance since it would half the RAM bus width), then we need a separate board config for it in u-boot. I just checked with the stock u-boot and it shows 1GiB on my device. There is still hope we might get away with a single configuration. -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[linux-sunxi] Booting devel device tree kernel on Cubietruck
I can't get anywhere trying to boot a devel device tree kernel on Cubietruck. This is with https://github.com/jwrdegoede/linux-sunxi.git and the linux-devel branch. I don't get any boot output. I can boot a 3.4 kernel without problem. I followed these steps. http://linux-sunxi.org/Mainline_Kernel_Howto I also tried turning on low level printk but still no output U-Boot SPL 2014.04-10675-g44b53fd (May 19 2014 - 20:39:18) Board: Cubietruck DRAM: 2048 MiB CPU: 96000Hz, AXI/AHB/APB: 3/2/2 spl: not an uImage at 1600 U-Boot 2014.04-10675-g44b53fd (May 19 2014 - 20:39:18) Allwinner Technology CPU: Allwinner A20 (SUN7I) Board: Cubietruck I2C: ready DRAM: 2 GiB MMC: SUNXI SD/MMC: 0 In:serial Out: serial Err: serial Net: dwmac.1c5 Hit any key to stop autoboot: 0 sun7i# tftp 0x4900 /var/lib/tftpboot/ct.dtb dwmac.1c5 Waiting for PHY auto negotiation to complete done Speed: 1000, full duplex Using dwmac.1c5 device TFTP from server 192.168.1.50; our IP address is 192.168.1.51 Filename '/var/lib/tftpboot/ct.dtb'. Load address: 0x4900 Loading: ## 7.6 MiB/s done Bytes transferred = 24030 (5dde hex) sun7i# tftp 0x4600 /var/lib/tftpboot/uImage Speed: 1000, full duplex Using dwmac.1c5 device TFTP from server 192.168.1.50; our IP address is 192.168.1.51 Filename '/var/lib/tftpboot/uImage'. Load address: 0x4600 Loading: # # 12.3 MiB/s done Bytes transferred = 1837040 (1c07f0 hex) sun7i# env set fdt_high sun7i# sun7i# bootm 0x4600 - 0x4900 ## Booting kernel from Legacy Image at 4600 ... Image Name: Linux-3.15.0-rc5-80186-gb9505da Image Type: ARM Linux Kernel Image (uncompressed) Data Size:1836976 Bytes = 1.8 MiB Load Address: 40008000 Entry Point: 40008000 Verifying Checksum ... OK ## Flattened Device Tree blob at 4900 Booting using the fdt blob at 0x4900 Loading Kernel Image ... OK Using Device Tree in place at 4900, end 49008ddd Starting kernel ... -- Jon Smirl jonsm...@gmail.com -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [linux-sunxi] Booting devel device tree kernel on Cubietruck
setenv bootargs console=ttyS0,115200 loglevel=9 earlyprintk root=/dev/mmcblk0p2 ro rootwait On Thu, May 22, 2014 at 2:26 PM, jonsm...@gmail.com jonsm...@gmail.comwrote: I can't get anywhere trying to boot a devel device tree kernel on Cubietruck. This is with https://github.com/jwrdegoede/linux-sunxi.git and the linux-devel branch. I don't get any boot output. I can boot a 3.4 kernel without problem. I followed these steps. http://linux-sunxi.org/Mainline_Kernel_Howto I also tried turning on low level printk but still no output U-Boot SPL 2014.04-10675-g44b53fd (May 19 2014 - 20:39:18) Board: Cubietruck DRAM: 2048 MiB CPU: 96000Hz, AXI/AHB/APB: 3/2/2 spl: not an uImage at 1600 U-Boot 2014.04-10675-g44b53fd (May 19 2014 - 20:39:18) Allwinner Technology CPU: Allwinner A20 (SUN7I) Board: Cubietruck I2C: ready DRAM: 2 GiB MMC: SUNXI SD/MMC: 0 In:serial Out: serial Err: serial Net: dwmac.1c5 Hit any key to stop autoboot: 0 sun7i# tftp 0x4900 /var/lib/tftpboot/ct.dtb dwmac.1c5 Waiting for PHY auto negotiation to complete done Speed: 1000, full duplex Using dwmac.1c5 device TFTP from server 192.168.1.50; our IP address is 192.168.1.51 Filename '/var/lib/tftpboot/ct.dtb'. Load address: 0x4900 Loading: ## 7.6 MiB/s done Bytes transferred = 24030 (5dde hex) sun7i# tftp 0x4600 /var/lib/tftpboot/uImage Speed: 1000, full duplex Using dwmac.1c5 device TFTP from server 192.168.1.50; our IP address is 192.168.1.51 Filename '/var/lib/tftpboot/uImage'. Load address: 0x4600 Loading: # # 12.3 MiB/s done Bytes transferred = 1837040 (1c07f0 hex) sun7i# env set fdt_high sun7i# sun7i# bootm 0x4600 - 0x4900 ## Booting kernel from Legacy Image at 4600 ... Image Name: Linux-3.15.0-rc5-80186-gb9505da Image Type: ARM Linux Kernel Image (uncompressed) Data Size:1836976 Bytes = 1.8 MiB Load Address: 40008000 Entry Point: 40008000 Verifying Checksum ... OK ## Flattened Device Tree blob at 4900 Booting using the fdt blob at 0x4900 Loading Kernel Image ... OK Using Device Tree in place at 4900, end 49008ddd Starting kernel ... -- Jon Smirl jonsm...@gmail.com -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups linux-sunxi group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.