Core-chat-meeting-2016-01-19 10:08 < geertu> Agenda: 10:08 < geertu> 1. Upcoming Gen3 development for the Core group, 10:08 < geertu> 2. Could we change initcall() in some drivers? 10:08 < geertu> 3. Status check for tasks from last meeting - what is remaining? 10:08 < geertu> Topic 1. Upcoming Gen3 development for the Core group 10:10 < dammsan> magnus intends to keep on doing IPMMU stuff and also MSIOF MMC-via-SPI on Koelsch 10:11 < dammsan> he would like someone to look into the SYS-DMAC errata bits from Gen2 in the rcar-dmac.c driver 10:11 < geertu> errata bits from Gen2? 10:12 < dammsan> there are at least two - one related to not using the first channel with IPMMU 10:12 < dammsan> another one is about re-initializing some register 10:12 -!- horms_ [~horms@reginn.isobedori.kobe.vergenet.net] has joined #periperi 10:12 < geertu> I mean, do we have them documented somewhere? 10:12 < dammsan> i did not write the workarounds myself, so i'm not sure 10:13 < dammsan> they probably apply to gen2, but maybe not gen3 10:14 < dammsan> so we may need per-soc compat string matching 10:15 < geertu> OK, bindings for that have been accepted 10:15 < dammsan> gr8 10:15 < dammsan> saw that the cpg-mssr driver also went in 10:15 < geertu> and adding the compatible values to dtsi is queued in arm-soc/for-next 10:16 < geertu> (does arm-soc plan to miss the merge window?) 10:16 < dammsan> maybe they outsource the patch management to same place as vinod 10:16 < horms> geertu: they seem to like to cut things fine 10:17 < geertu> horms: btw, do you plan to push out a renesas-devel later today? 10:17 < dammsan> so someone need to dive into sys-dmac driver details on gen3 10:17 < horms> geertu: no plan, assuming i actually pushed yesterday 10:18 < geertu> horms: nope, latest is still renesas-devel-20160111-v4.4 10:19 < horms> sorry, i'll push now 10:19 < geertu> dammsan: I'm a bit puzzeled 10:19 < geertu> dammsan: errate on gen2 vs. driver details on gen3? 10:19 < dammsan> right now the driver does not differentiate between gen3 and gen2 10:20 < dammsan> we may not have to deal with all the gen2 errata on gen3 10:20 < geertu> but it "works" nevertheless 10:20 < geertu> Ah, IC 10:20 < geertu> So basically it's testing if the driver still works on gen3 without the errata for gen2? 10:21 < horms> geertu: sorry about that and thanks for pointing out that I hadn't pushed. The latest should now be renesas-devel-20160118-v4.4 10:21 < dammsan> yeah, and requesting errata information from renesas if needed 10:21 < dammsan> we also have CAE/CAIR error management for the rcar-dmac.c driver 10:22 < dammsan> so it seems that the driver itself needs some attention at some point 10:22 < geertu> I don't think there was anything SYS-DMAC related in the Gen3 errata we received through Jinzai 10:22 < geertu> horms: got it 10:22 < neg> I know about one of the errat fixes in dmac.c about not using the first channel I can lookinto if that is needed on gen3 and if not try to fix it 10:23 < dammsan> neg: thanks for stepping up 10:24 < morimoto> dammsan: please let me know if you want to ask it to datasheet guys 10:24 < geertu> The first channel issue is only with IPMMU enabled, right? 10:24 < dammsan> i believe so 10:25 < dammsan> morimoto: thanks 10:26 < geertu> I've retried SYS-DMAC on Salvator-X with (H)SCIF, and RX DMA is working now, too. 10:26 < geertu> Strange, as I believe the board I have now is the same I was using remotely before? 10:26 < dammsan> geertu: thanks, i saw your email 10:26 < dammsan> i think we should revisit after upgrading firmware =) 10:26 < geertu> However, I had mixed results with IPMMU enabled 10:27 < geertu> (ah, now I realzie while the console still worked with IPMMU: SCIF2 is on DMAC1, where IPMMU wasn't enabled) 10:27 < geertu> OK, firmware upgrade it'll be 10:27 < dammsan> i think the current working sample of H3 has some IPMMU hardware issues 10:28 < dammsan> so M3 may be in better state for serious IPMMU usage 10:28 < geertu> OK 10:28 < geertu> Anyway, SYS-DMAC is now declared "working" 10:28 < geertu> Moving on to PM... 10:29 < neg> from rcar-dmac.c 'A still unconfirmed hardware bug prevents the IPMMU microTLB 0 to be flushed correctly, resulting in memory corruption.' can we confirm the HW bug somehow? 10:29 < dammsan> neg: that is on gen2 and we could not get information earlier 10:30 < neg> ok I see if I can give it a try on gen3 10:30 < dammsan> neg: please focus on the framework bits since the hardware itself may be unstable 10:31 < neg> ok 10:31 < dammsan> geertu: regarding PM, is SYS-DMAC working with PM as well? =) 10:32 < dammsan> it used to be a can of worms 10:32 < geertu> dammsan: I think so, at least on Koelsch 10:33 < geertu> Yeah, we had a few PM-related crashes during its development in Summer 2014 10:33 < dammsan> good! 10:35 < dammsan> is core handling thermal sensor? 10:35 < dammsan> i don't remember 10:35 < geertu> git grep -i therm 10:35 < geertu> io/todo 10:36 < dammsan> if so i would like someone to lookin some errors 10:36 < dammsan> ok i see 10:37 < geertu> Anything else to report for Topic 1? 10:38 < horms> one small thing from the upport world 10:39 < horms> Kaneko-san says the PWM upport is a bit tricky for him. I'll see about handling it myself else report back here or the periperi ML. 10:39 < horms> end 10:40 < shimoda> oh, original pwm driver is made by me 10:40 < shimoda> so, I'll check the bsp patches later 10:41 < horms> his difficulty is with the clocks. i assume because the driver is different in mainline. if you want to handle this feel free to do so :) 10:42 < morimoto> Is this BSP original driver do you mean ? 10:42 < dammsan> geertu: what are you hacking on from now on? 10:43 < horms> I assume the CPG dirvers are different. To be honest I haven't looked at the patches yet 10:43 < morimoto> Ah.. OK thanks 10:43 < dammsan> geertu: i noticed that a bunch of SCIF code went into mainline recently - thanks for that 10:44 < geertu> dammsan: I started SYS-DMAC, but that seems to work now 10:44 < geertu> dammsan: So next will be PM, integrating your CPU bringup for Gen2 with the SYSC PM Domain stuff 10:45 < dammsan> geertu: in your r8a7795 SYS-DMAC DTS patch you wrote you tested MSIOF - may I ask how? 10:45 < dammsan> i could not get MSIOF to work well on Gen3 myself 10:45 < geertu> MSIOF indeed has hardware bugs 10:45 < dammsan> geertu: ok, PM sounds good 10:45 < geertu> But it sends out data when DMA is used 10:46 < dammsan> so _something_ is working =) 10:47 < geertu> Yeah, it behaved the same for PIO and DMA, which IMHO proves that DMA is working ;-) 10:47 < dammsan> equally busted =) 10:48 < dammsan> i'll try to re-verify MSIOF on Gen2 and then revisit Gen3 10:48 < dammsan> the BSP workaround seems pretty useless 10:49 < dammsan> or rather - i cannot see how it would help MSIOF 10:49 < dammsan> but anyway 10 - below commits should be NULL at the final stage - git log --no-merges --pretty=format:"%H # %s" 52f6ded2a377ac4f191c84182488e454b1386239..rcar-4.1.0.rc6 bsp41x: - c3b6a643fc75d151a4a4dc06355793a0cb062238 # arm64: dts: renesas: r8a77980-es2: Add videobox boards support - a04b7826f6d01d478027972e2bab14a5f5846d70 # rm64: dts: renesas: v3x: update videoboxes for Yocto4.1.0 - 9c07f509fc8907d165b9e9c876bb7c1a37044300 # arm64: dts: renesas: r8a77980: Add ES2 boards - fc6057e20ed45be56d3ecafe9c012b02cfed27e1 # arm64: dts: renesas: r8a77970: Add ES1 and Eagle Function boards - eb380d1c6e382f93c79ad75fe8de53b72ef35e2b # rcar_imr v4l2 driver: Fix module support. - fc2e1b3cb964e10665f826b956d3b09392012385 # media: rcar_imr: Update to v5.4.0 - 288b9d6b920b4e6f1bbd5fd02a7975c70fca77b6 # media: rcar-imr: Add stride support to IMR - 2657f3b7e5449487cbe88a44708f81118c01c4e9 # media: platform: rcar_imr: Clean up to avoid compiler warnings - c38f8889f1550948938d6033566c7a1d2f12b128 # media: rcar_imr: Enable LUCE for NV16 format - f39221323eccc941303b804a3b8c4f7ffe0b4292 # media: rcar-imr: Add RSE support - 15018431ec67b8f59f5ecec3500edb3ddc101275 # media: rcar-imr: IMR driver updates for raw DL - 5148717ffdadcf8e94600ddf836ac01f44bffc26 # IMR driver - interim patch - 3026989c751e262ad800f1956ec78f240cb8d052 # arm64: dts: renesas: Add ulcb-kf-imx219 overlay - 7ecbde0b92f417484873f646f0e11b0007618ab6 # media: i2c: imx219: Set 8-bit SBGGR mode by default - 95be6972c13148e54c892974a15643b0d5128d14 # media: i2c: imx219: Set subdevice fwnode - d01291e2e1b906deb6ea3fc9e8c13ee8061350b7 # arm64: dts: renesas: ulcb-kf: Add ov5647 support - 56ec7a1c7a73cfebdc4ce786d700506395a09fca # media: i2c: ov5647: Add test pattern control - 453672d8fa3defd0fdcecb8983df3cf3abc5c3b1 # media: i2c: ov5647: Add V4L2_CID_PIXEL_RATE control - e95242f52cac133a32dabd7d5c82fb71d53520fb # media: ov5647: Add 2592x1944 8-bit SBGGR mode - 46bad2801bdc896dc9c1ace077270983068366ef # media: ov5647: Set subdevice fwnode - ed4197c7301bbe5008f0ab71b84568c1b4f3353d # media: ov5647: Fix return codes from ov5647_write/ov5647_read functions. - 5a70f18f9b3c039f44454f6bb37b4e664bd17388 # media: i2c: ov2311: add frame rate adjustment - ac30fd3f138e287394b00b65bbf14f1af723e170 # arm64: boot: dts: rcar-gen3: Fix MLP IRQ order - 08c5882b168a32ff551a4651701e29e20f7ccf6e # arm64: dts: renesas: Add r8a7796-m3ulcb-2x4g-kf.dts - 29fa601ee03ed86a59173861f164eba241e82251 # arm64: dts: renesas: eagle: Add x1 clock - a3826fa21d29121056f80bf639a3d9c819ee4f8a # arm64: dts: renesas: r8a779x: add IMP nodes - 0d76c65cba4f7e3d2c1148bfc73c2e752114d82a # Add MOST support for r8a77965 - 3a861276aaafb2bcf4137dbe7570c06bc721218f # arm64: dts: renesas: v3hsk: Add GEther PHY GPIO reset pin support - 297419f7b2362056733607e45b8ecfe79adc3d4a # arm64: dts: renesas: r8a77970-v3msk: Fix memory size - 3bf5e06b0acd1a3017acb2efe042a937f39c3e6b # arm64: dts: renesas: r8a77980: add max9286 - d13c75fe7cca41d0e7be14ab503383274d878b9e # regulator: add MAX2008X camera protector - 836e84d18310ae121977be35a0f8a6648d53aefe # arm64: dts: renesas: ulcb-kf: deselect GP5_9 interrupt - aff48242492b441213404874c9abac4182990df9 # arm64: dts: renesas: ulcb-kf: update for Yocto4.1.0 - 0cf6e36f5bf49e1c2aab87139ec5b588623c56f8 # media: i2c: add camera lvds support - 55c7accd45642894717b027bce499a3f587a8b72 # media: i2c: add ov5642 sensor driver - 4f12b00f6c73fc9ad90b009ad9c8d50fbf9f79f4 # MOST: dim2: Renesas R-Car3 variant - 04fcd7232cc638a78b8e6e9fb0653416d95b6425 # arm64: dts: renesas: r8a779x: add mlp nodes - 0b2d1db721500404a81996364146a659cfa9dea5 # arm64: dts: r8a779a0-falcon: Enabled IPMMU MMC - e941fd79e9c2f78279b332405f987ebdefef5f2f # arm64: dts: renesas: r8a779a0: Enable IPMMU support for eMMC by default on R-Car V3U - 50bcd99d989763eae90c3316ef649cec018dd4fb # crypto: ccree - change DOUT_LAST_IND bit value - f31eae5ae5f363cebc36249e00e96eb4651695fb # crypto: ccree - change AES condition in SKP readiv - f7114d5756919fc50497b5a28f6d1c68fd0f34f5 # arm64: dts: renesas: r8a779a0-falcon: Reserve u-boot secure area - 0428e0f302521ffb20c1fe4902eb4e7abcbdd8e5 # arm64: dts: renesas: ebisu: Add endpoint for dual-link in Ebisu board - 5c199537152789cba639f3c481561aee28de30c3 # arm64: dts: r8a779a0-falcon: Add reserved memory for CMA - 8eec419b387b1b0f7172b741c357cb5d9368bea4 # arm64: dts: renesas: r8a779a0: Update power domain for ISP nodes - aa698a511be6d72946eae23d7fe30ffb13b1cd2c # arm64: dts: renesas: r8a779a0: Add IPMMU nodes - 9d2958e9d5500c9412d6aa2a4ece2b389d2590c1 # arm64: dts: renesas: r8a779a0: Add IMP nodes - d97204da22532be16b6de934d401ecc2990c9e5d # arm64: renesas: r8a779a0-falcon: Enable fakra connector - d1e422a4bf102c7d06c6fcc186885cf7915888a4 # arm64: renesas: r8a779a0-falcon: Enable capture module - 7f05ff2006197c3803dd056fcd7d3f1fd4b5bb89 # arm64: dts: renesas: r8a779a0: Add IMR nodes - 65065f90c4b9983cd50ec2033405012a105ad6bf # arm64: dts: r8a779a0: Add SYSC PM Domains - e47b222b047a2776df67cf36714b36ccd59a6d02 # arm64: dts: renesas: r8a77990: Use default clock and reset property for secure public core - fa95493a4b2b894848d6fc63036343f1fc0e2112 # arm64: dts: renesas: r8a77965: Use default clock and reset property for secure public core - b375044112b6c01cb7c842a9be66a8cf135c0f35 # arm64: dts: renesas: r8a7796: Use default clock and reset property for secure public core - 3da0daf13d7656b91825718d49c03e493d50c2c5 # arm64: dts: renesas: r8a7795: Use default clock and reset property for secure public core - 6794f96ba63bf2ca17c2c7209c427b3b8ebb8978 # arm64: dts: r8a77965: Fix power domain for FCPCS - 034b43d6d396793fff4c77033c9f6022aed60cac # arm64: dts: r8a7795: Fix clock, reset and power domain for iVDP1C - 4b4c6ce0ac6b3387bee08f3e37a8891ade1c8657 # arm64: dts: r8a77990: Enable IPMMU-DS1 and IPMMU-MM - 98bd560f9959aa833a8118b31cee113df84a63ff # arm64: dts: r8a77965: Enable IPMMU-DS1 and IPMMU-MM - d6bcfc3e79bb8ff10f3de0dae5e1f95e7e1d5326 # arm64: dts: r8a7796: Enable IPMMU-DS1 and IPMMU-MM - feb194f8420a190d27467badf3f9f58864872b29 # arm64: dts: r8a7795: Enable IPMMU-DS1 and IPMMU-MM - e6c2c5a9d009658687f5028995ebf0a541ba891c # arm64: dts: renesas: r8a77990: Change default of all IPMMU devices to disable - 53eccb4433b01476365ddba4c77128bf14e1f50f # arm64: dts: renesas: r8a77965: Change default of all IPMMU devices to disable - 532fbdfa578bf5a4fccf1077a1da63e2b707ea8b # arm64: dts: r8a77990: Detach IPMMU-VI0/1 from FCPVD - 7ae113a9d05daf3ccacd80cd70fd4b640faa2ec6 # arm64: dts: r8a7796-m3ulcb: Disable CPUIdle support for CA53 - 7419b8b89c6c1050161320de804df61590978cf4 # crypto: ccree - fix handling of buffers managed by scatter list - 6a39a63743c59097d052ae6be8e23db7f7247bac # crypto: ccree - fix to Enc/Dec data of two pages or more - 6010b2b6f34c8098e370c1ac80f6259623e439a1 # arm64: defconfig: Disable 4K Sector size by default - c700f0328ec33c8b07a1d194754184220bd351a7 # arm64: defconfig: Enable JFFS2 support by default - 444f75c7d0efd993ff20800ca20a39b87126abc3 # arm64: dts: renesaas: r8a77990: Fixup power-domains of 3DGE for R-Car E3 ES1.0 - de41ca23ae1893772b8a6d3fbc2c73943c86bd46 # arm64: dts: r8a77990-ebisu-4d: Add lossy descompress area - 32e4514bfec79304b11109ccf769e9026f171485 # arm64: defconfig: Enable Renesas VMSA-compatible IPMMU support - b491e45c981136542a2c7445e38de19b5a8efcb9 # crypto: ccree - add support for Secure Key mode - 0c98ff021f256a963a80d3bc76c2b05fa7e51f7f # crypto: ccree - add support for MULTI2 mode - 9032478a059b6177b198f40a0bc02a1201ca1a84 # arm64: defconfig: Select power allocator as default governor - b05df20945c96d9e62db8acc5262c2a46f0bb7ae # soc: renesas: rcar-topology: Add support for R-Car capacity awareness - c95710e3c42be1b3b627288ed9931ea29864ff7d # sched/core: Disable SD_ASYM_CPUCAPACITY for root_domains without asymmetry - 28befca2b3680da502a19f47e8651b1f8cdcb3df # arm64: dts: r8a7796: Add cpu capacity-dmips-mhz - f87e1f6f294a3eef5946c6c386ab6d2f260fe0a9 # arm64: dts: r8a7795: Add cpu capacity-dmips-mhz - 312ac3bfe63a5ce930d2648c9cd8914287165b41 # arm64: dts: r8a77995: Add Audio-DMAC device nodes - 83409353c2bbb327130f6495bbea856ac4f785bf # arm64: dts: renesas: r8a77965: Add Sound and Audio DMAC device nodes - ea032c5af030e4b0d0a645e8d2f4e5ae829681aa # DT: hwspinlock: Add binding documentation for R-Car Gen3 hwspinlock - 71329f367f4117cfd0e0ad6bf920aeecf71306e8 # hwspinlock: rcar: Add support for R-Car Gen3 Hardware Spinlock