jonsmirl

Members
  • Content Count

    13
  • Joined

  • Last visited

About jonsmirl

  • Rank
    Member

Recent Profile Visitors

478 profile views
  1. What is the status of h.264 encode/decode support on V3? Has anyone got it working on a mainline kernel?
  2. How do you control which PHY the Rock64 is going to use? Android 9 is available for Rock64 now, https://github.com/a9rock64/manifests But it is configured to use the internal PHY and I need to change it over to the external one. Is this controlled in the DTS or someplace else? It is running on this kernel: https://github.com/rockchip-linux/kernel
  3. Swithing eMMC into DDR mode works in the dump with the gdrive link. https://drive.google.com/open?id=0B_YnvHgh2rwjaVVMSi1xU1ZOY2c
  4. I have verified that the kernel inside of this: https://drive.google.com/open?id=0B_YnvHgh2rwjaVVMSi1xU1ZOY2c Builds, loads into the M64 eMMC using PhoenixCard, and will boot out of the eMMC. That is a recent Android 6.01 dump from Allwinner with M64 support added in. I will start turning it back into a repo (it started out as a repo and the middlemen removed the repo support) based on AOSP and load the git trees on gitlab. It is going to take me a couple of days to turn it back into a repo. Meanwhile you can download it and extract the working eMMC driver from it. The M64 eMMC wants to run in DDR mode. The older kernel in my Pine64 Android 5.1 does not have working eMMC DDR support in it. PS - the build tools were moved from that dump, you will have to add them back in. PPS - running pack on the Android side does not generate a valid image, in lichee './build.sh pack' does.
  5. That is with an unformatted SD Card. It is booted up into running Android. http://pastebin.com/0gtFZkc5 I think it keeps hitting the SD Card because it is unformatted and can't mount it.
  6. shell@tulip-bpi-m64:/ $ shell@tulip-bpi-m64:/ $ shell@tulip-bpi-m64:/ $ dmesg | grep mmc [ 0.000000] Kernel command line: earlyprintk=sunxi-uart,0x01c28000 initcall_debug=0 console=ttyS0,115200 loglevel=8 root=/dev/mmcblk0p7 init=/init partitions=bootloader@mmcblk0p2:env@mmcblk0p5:boot@mmcblk0p6:system@mmcblk0p7:verity_block@mmcblk0p8:misc@mmcblk0p9:recovery@mmcblk0p10:cache@mmcblk0p11:metadata@mmcblk0p12:private@mmcblk0p13:frp@mmcblk0p14:empty@mmcblk0p15:alog@mmcblk0p16:media_data@mmcblk0p17:UDISK@mmcblk0p1 cma=256M androidboot.selinux=enforcing androidboot.serialno=0410503444104420048e androidboot.hardware=sun50iw1p1 boot_type=2 androidboot.verifiedbootstate=<NULL> androidboot.sunxi_rotpk=<NULL> [ 2.249755] sunxi-mmc 1c11000.sdmmc: SD/MMC/SDIO Host Controller Driver(v0.37 2015-11-9 15:13) Compiled in Sep 13 2016 at 18:51:56 [ 2.262868] sunxi-mmc 1c11000.sdmmc: regulator prop vmmc,str vcc-emmcv [ 2.270132] sunxi-mmc 1c11000.sdmmc: regulator prop vqmmc,str vcc-emmcvq18 [ 2.277643] sunxi-mmc 1c11000.sdmmc: regulator prop vdmmc,str none [ 2.284816] sunxi-mmc 1c11000.sdmmc: No vdmmc regulator found [ 2.312366] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 0Hz bm PP pm UP vdd 22 width 1 timing LEGACY(SDR12) dt B [ 2.350027] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 22 width 1 timing LEGACY(SDR12) dt B [ 2.380049] sunxi-mmc 1c11000.sdmmc: base:0xffffff80000b8000 irq:94 [ 2.380863] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 52, RTO !! [ 2.381696] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 52, RTO !! [ 2.381714] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 22 width 1 timing LEGACY(SDR12) dt B [ 2.384118] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 22 width 1 timing LEGACY(SDR12) dt B [ 2.385984] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 8, RTO !! [ 2.386811] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 5, RTO !! [ 2.387636] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 5, RTO !! [ 2.388461] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 5, RTO !! [ 2.389286] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 5, RTO !! [ 2.390114] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 55, RTO !! [ 2.390941] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 55, RTO !! [ 2.391768] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 55, RTO !! [ 2.392596] sunxi-mmc 1c11000.sdmmc: smc 0 p2 err, cmd 55, RTO !! [ 2.392614] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm OD pm ON vdd 22 width 1 timing LEGACY(SDR12) dt B [ 2.392967] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm OD pm ON vdd 7 width 1 timing LEGACY(SDR12) dt B [ 2.393011] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm OD pm ON vdd 7 width 1 timing LEGACY(SDR12) dt B [ 2.393051] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm OD pm ON vdd 7 width 1 timing LEGACY(SDR12) dt B [ 2.395448] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm OD pm ON vdd 7 width 1 timing LEGACY(SDR12) dt B [ 2.411207] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 7 width 1 timing LEGACY(SDR12) dt B [ 2.422758] mmc0: BKOPS_EN bit is not set [ 2.557926] sunxi-mmc 1c0f000.sdmmc: SD/MMC/SDIO Host Controller Driver(v0.37 2015-11-9 15:13) Compiled in Sep 13 2016 at 18:51:56 [ 2.571002] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 7 width 1 timing MMC-HS(SDR20) dt B [ 2.571033] sunxi-mmc 1c0f000.sdmmc: regulator prop vmmc,str vcc-sdcv [ 2.571041] sunxi-mmc 1c0f000.sdmmc: regulator prop vqmmc,str vcc-sdcvq33 [ 2.571047] sunxi-mmc 1c0f000.sdmmc: regulator prop vdmmc,str vcc-sdcvd [ 2.604729] mmc0: Check switch ready sunxi_mmc_check_timing_switch_done [ 2.619988] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 50000000Hz bm PP pm ON vdd 7 width 1 timing MMC-HS(SDR20) dt B [ 2.631874] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 50000000Hz bm PP pm ON vdd 7 width 8 timing MMC-HS(SDR20) dt B [ 2.631875] sunxi-mmc 1c0f000.sdmmc: Got CD GPIO #166. [ 2.649620] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 50000000Hz bm PP pm ON vdd 7 width 8 timing UHS-DDR50 dt B [ 2.649623] sunxi-mmc 1c0f000.sdmmc: base:0xffffff80000c0000 irq:92 [ 2.650092] sunxi-mmc 1c10000.sdmmc: SD/MMC/SDIO Host Controller Driver(v0.37 2015-11-9 15:13) Compiled in Sep 13 2016 at 18:51:56 [ 2.650128] sunxi-mmc 1c10000.sdmmc: Can't get vmmc regulator string [ 2.650133] sunxi-mmc 1c10000.sdmmc: Can't get vqmmc regulator string [ 2.650138] sunxi-mmc 1c10000.sdmmc: Can't get vdmmc regulator string [ 2.650147] sunxi-mmc 1c10000.sdmmc: No vmmc regulator found [ 2.650150] sunxi-mmc 1c10000.sdmmc: No vqmmc regulator found [ 2.650154] sunxi-mmc 1c10000.sdmmc: No vdmmc regulator found [ 2.733253] sunxi-mmc 1c11000.sdmmc: sdc set ios: clk 50000000Hz bm PP pm ON vdd 7 width 8 timing UHS-DDR50 dt B [ 2.744701] mmc0: new high speed DDR MMC card at address 0001 [ 2.745087] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B [ 2.745106] sunxi-mmc 1c10000.sdmmc: no vqmmc,Check if there is regulator [ 2.760031] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 2.780064] sunxi-mmc 1c10000.sdmmc: base:0xffffff80000c8000 irq:93 [ 2.790661] mmcblk0: mmc0:0001 8WPD3R 7.28 GiB [ 2.802547] mmcblk0boot0: mmc0:0001 8WPD3R partition 1 4.00 MiB [ 2.809875] mmcblk0boot1: mmc0:0001 8WPD3R partition 2 4.00 MiB [ 2.854067] mmcblk0: p1 p2 p3 < p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 > [ 2.854092] mmcblk0: p1 size 8937472 extends beyond EOD, truncated [ 2.885206] mmcblk0boot1: unknown partition table [ 2.895855] mmcblk0boot0: unknown partition table [ 2.896216] *mmc0 lock timeout* [ 2.990859] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 52, RTO !! [ 2.998532] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 52, RTO !! [ 3.005400] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 3.019480] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 3.021363] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 8, RTO !! [ 3.022184] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 5, RTO !! [ 3.023004] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 5, RTO !! [ 3.023821] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 5, RTO !! [ 3.024639] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 5, RTO !! [ 3.025461] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 55, RTO !! [ 3.026279] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 55, RTO !! [ 3.027099] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 55, RTO !! [ 3.027916] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 55, RTO !! [ 3.027932] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm OD pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 3.028780] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 1, RTO !! [ 3.028796] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 0Hz bm OD pm OFF vdd 0 width 1 timing LEGACY(SDR12) dt B [ 3.029845] *mmc2 unlock* [ 5.201722] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. Opts: barrier=1 [ 5.211085] SELinux: initialized (dev mmcblk0p7, type ext4), uses xattr [ 5.228724] EXT4-fs (mmcblk0p11): Ignoring removed nomblk_io_submit option [ 5.245118] EXT4-fs (mmcblk0p11): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro [ 5.256936] SELinux: initialized (dev mmcblk0p11, type ext4), uses xattr [ 5.385313] EXT4-fs (mmcblk0p11): Ignoring removed nomblk_io_submit option [ 5.401142] EXT4-fs (mmcblk0p11): mounted filesystem with ordered data mode. Opts: barrier=1,data=ordered,nomblk_io_submit,noauto_da_alloc,errors=panic [ 5.416260] SELinux: initialized (dev mmcblk0p11, type ext4), uses xattr [ 5.433400] EXT4-fs (mmcblk0p16): Ignoring removed nomblk_io_submit option [ 5.445618] EXT4-fs (mmcblk0p16): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro [ 5.457439] SELinux: initialized (dev mmcblk0p16, type ext4), uses xattr [ 5.526303] EXT4-fs (mmcblk0p16): Ignoring removed nomblk_io_submit option [ 5.538630] EXT4-fs (mmcblk0p16): mounted filesystem with ordered data mode. Opts: barrier=1,data=ordered,nomblk_io_submit,noauto_da_alloc,errors=panic [ 5.553771] SELinux: initialized (dev mmcblk0p16, type ext4), uses xattr [ 5.570853] EXT4-fs (mmcblk0p1): VFS: Can't find ext4 filesystem [ 5.720117] EXT4-fs (mmcblk0p1): VFS: Can't find ext4 filesystem [ 5.795973] FAT-fs (mmcblk0p17): bogus number of reserved sectors [ 5.802776] FAT-fs (mmcblk0p17): Can't find a valid FAT filesystem [ 8.507452] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 0Hz bm PP pm UP vdd 21 width 1 timing LEGACY(SDR12) dt B [ 8.518640] sunxi-mmc 1c10000.sdmmc: no vqmmc,Check if there is regulator [ 8.540024] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 8.570836] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 52, RTO !! [ 8.578424] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 52, RTO !! [ 8.585096] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 8.599197] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 21 width 1 timing LEGACY(SDR12) dt B [ 8.612652] sunxi-mmc 1c10000.sdmmc: smc 2 p1 err, cmd 8, RTO !! [ 8.619645] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 16 width 1 timing LEGACY(SDR12) dt B [ 8.640354] mmc2: queuing unknown CIS tuple 0x80 (2 bytes) [ 8.647965] mmc2: queuing unknown CIS tuple 0x80 (3 bytes) [ 8.655577] mmc2: queuing unknown CIS tuple 0x80 (3 bytes) [ 8.664435] mmc2: queuing unknown CIS tuple 0x80 (7 bytes) [ 8.756550] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 400000Hz bm PP pm ON vdd 16 width 1 timing SD-HS(SDR25) dt B [ 8.768100] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 50000000Hz bm PP pm ON vdd 16 width 1 timing SD-HS(SDR25) dt B [ 8.779892] sunxi-mmc 1c10000.sdmmc: sdc set ios: clk 50000000Hz bm PP pm ON vdd 16 width 4 timing SD-HS(SDR25) dt B [ 8.792924] mmc2: new high speed SDIO card at address 0001 [ 8.801771] *mmc2 lock timeout* [ 8.823535] bcmsdh_sdmmc: bcmsdh_sdmmc_probe Enter [ 8.828845] bcmsdh_sdmmc: bcmsdh_sdmmc_probe Enter [ 9.233650] type=1400 audit(1484013113.200:4): avc: denied { execute_no_trans } for pid=1688 comm="init" path="/system/bin/sh" dev="mmcblk0p7" ino=451 scontext=u:r:init:s0 tcontext=u:object_r:shell_exec:s0 tclass=file permissive=0 [ 9.352501] FAT-fs (mmcblk0p2): Volume was not properly unmounted. Some data may be corrupt. Please run fsck. [ 9.363868] SELinux: initialized (dev mmcblk0p2, type vfat), uses genfs_contexts shell@tulip-bpi-m64:
  7. I had not noticed this code before, we purposely used the same eMMC that is in the Allwinner reference design. So our eMMC just worked without needing any code changes. (that's why I don't know much about the eMMC code)
  8. /* -- speed mode -- sm0: DS26_SDR12 sm1: HSSDR52_SDR25 sm2: HSDDR52_DDR50 sm3: HS200_SDR104 sm4: HS400 -- frequency point -- f0: CLK_400K f1: CLK_25M f2: CLK_50M f3: CLK_100M f4: CLK_150M f5: CLK_200M */ /* some information is passed in boot0's extend data buffer: BT0_head.prvt_head.storage_data these information is write to BT0_head.prvt_head.storage_data before write boot0 during product. 1. BT0_head.prvt_head.storage_data + 128 Byte +0 struct tune_sdly 2. BT0_head.prvt_head.storage_data + 128 + sizeof(struct tune_sdly) Byte +0 Byte: boot0_para +1 Byte: boot_odly_50M +2 Byte: boot_sdly_50M +3 Byte: boot_odly_50M_ddr +4 Byte: boot_sdly_50M_ddr +5 Byte: boot_hs_f_max */
  9. There is a very recent dump of the H5 Linux SDK here, https://github.com/orangepi-xunlong/OrangePi_H5SDK It also includes A64 support. sun50iw2p1 is H5, sun50iw1p1 is A64,
  10. ;-------------------------------------------------------------------------------- ; SDMMC PINS MAPPING | ; ------------------------------------------------------------------------------| ; Config Guide | ; sdc_used: 1-enable card, 0-disable card | ; non-removable:if you use as main memory,you should set it,for example eMMC | ; bus-width: card bus width, 1-1bit, 4-4bit, 8-8bit | ; sunxi-power-save-mode: if use sdio card,should not set it | ; vmmc:regulator for card/emmc power | ; vqmmc:regulator for card/emmc io power | ; vdmmc:regulator for card detect pin pull up power | ; other: GPIO Mapping configuration | ; ------------------------------------------------------------------------------| [pmu0_regu] regulator_count = 23 regulator1 = "axp81x_dcdc1 none vcc-nand vcc-emmc vcc-sdc vcc-usb-30 vcc-io vcc-emmcv vcc-emmcvq33 vcc-sdcvq33 vcc-sdcv vcc-sdcvd" regulator16 = "axp81x_eldo1 none vcc-cpvdd vcc-pc vcc-emmcvq18" [sdc2] sdc2_used = 1 non-removable = bus-width = 8 sdc2_ds = port:PC01<3><1><3><default> sdc2_clk = port:PC05<3><1><3><default> sdc2_cmd = port:PC06<3><1><3><default> sdc2_d0 = port:PC08<3><1><3><default> sdc2_d1 = port:PC09<3><1><3><default> sdc2_d2 = port:PC10<3><1><3><default> sdc2_d3 = port:PC11<3><1><3><default> sdc2_d4 = port:PC12<3><1><3><default> sdc2_d5 = port:PC13<3><1><3><default> sdc2_d6 = port:PC14<3><1><3><default> sdc2_d7 = port:PC15<3><1><3><default> sdc2_emmc_rst = port:PC16<3><1><3><default> cd-gpios = sunxi-power-save-mode = sunxi-dis-signal-vol-sw = mmc-ddr-1_8v = mmc-hs200-1_8v = mmc-hs400-1_8v = max-frequency = 100000000 sdc_tm4_sm0_freq0 = 0 sdc_tm4_sm0_freq1 = 0 sdc_tm4_sm1_freq0 = 0x00000000 sdc_tm4_sm1_freq1 = 0 sdc_tm4_sm2_freq0 = 0x00000000 sdc_tm4_sm2_freq1 = 0 sdc_tm4_sm3_freq0 = 0x05000000 sdc_tm4_sm3_freq1 = 0x00000405 sdc_tm4_sm4_freq0 = 0x00050000 sdc_tm4_sm4_freq1 = 0x00000408 vmmc="vcc-emmcv" ;vqmmc="vcc-emmcvq33" vqmmc="vcc-emmcvq18" vdmmc="none"
  11. Here is the extracted sys_config.fex from the M64 image. They are not using DTDs https://drive.google.com/file/d/0B-2Z6FDzyIwrYVVyWkRHcmpSbWs/view?usp=sharing
  12. It is an image for PhoenixCard/PhoenixSuit/LiveSuit. The BPi M64 support is 99.99% unchanged from Allwinner's reference code. You can run these images from either SD Card or eMMC. Just click the appropriate choice when making the SD Card.
  13. There isn't really much source to release for the BPi M64 Android build. It is unchanged from Allwinner's stock release except for a couple lines in a fex file where BPI moved a few wires around. An accurate schematic for M64 has been released so we know where those wires go now. I have been running their Android image for a couple weeks and it has never crashed unless I was messing around and doing bad things to it. It has no issues with adb. The hardware seems stable. My board is exposed to the open air and it stays about room temperature, no thermal problems. But I am not running any games that would peg the fours cores at 100% for an hour. If you did that it'd probably get really hot. It should not be a big deal to get Armbian working on the M64. The M64 is closer to the Allwinner reference design than the Pine64 is. The Ampak AP6212 wifi/BT is quite common and drivers for it have been in mainline since around 3.5 or so. All of the USB OTG support is correctly wired up (unlike the Pine). Ethernet PHY is common. Nothing special about the eMMC. All of the needed pieces are available, someone just needs to take the time to put them together. It could be as simple as having an accurate device tree and a kernel that supports the A64. Something I do hope to be getting in the near future is direct access to the Allwinner git server. I've only been asking for about five years now. Direct access would save me the pain of getting 6GB snapshots from the OEMs and then turning them back into AOSP repo trees. Still waiting on my dream of Allwinner getting support for their SOCs into mainline.