This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM385 Linux SATA Drvier

Other Parts Discussed in Thread: DM385, DM383, DM388, DMVA3

Hello everyone:

We have customized board, ipnc_psp_arago package 04.04.00.02 on DM385 platform.

I wanted test SATA part, according to http://processors.wiki.ti.com/index.php/TI_SATA_FAQ#Do_we_support_Linux

the Linux Support section.

my kernel config 

Device Drivers  --->
    <*> Serial ATA and Parallel ATA drivers  --->
            [ * ]   Verbose ATA error reporting
            [ * ]   SATA Port Multiplier support
            <*>   Platform AHCI SATA support 

but when booting the kernel occur kernel panic, please look log file.

7585.log.txt
Loading zImage from SD1... done, booting the zImage.
Uncompressing Linux... done, booting the kernel.
[    0.000000] Linux version 2.6.37 (vic@Hogwarts) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #68 Tue Dec 31 133
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=50c53c7d
[    0.000000] CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: dm385ipnc
[    0.000000] vram size = 8388608 at 0x0
[    0.000000] ti81xx_reserve: ### Reserved DDR region @84800000
[    0.000000] reserved size = 8388608 at 0x0
[    0.000000] FB: Reserving 8388608 bytes SDRAM for VRAM
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] OMAP chip is DM385 1.0
[    0.000000] SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16238
[    0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/ram0 mem=73M vram=8M notifyk.vpssm3_sva=0xAFD00000
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 64MB = 64MB total
[    0.000000] Memory: 58400k/58400k available, 16352k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
[    0.000000]     vmalloc : 0xc5000000 - 0xf8000000   ( 816 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc4900000   (  73 MB)
[    0.000000]     modules : 0xbf800000 - 0xc0000000   (   8 MB)
[    0.000000]       .init : 0xc0008000 - 0xc028a000   (2568 kB)
[    0.000000]       .text : 0xc028a000 - 0xc05ca224   (3329 kB)
[    0.000000]       .data : 0xc05cc000 - 0xc06092c0   ( 245 kB)
[    0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:375
[    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[    0.000000] Total of 128 interrupts on 1 active controller
[    0.000000] GPMC revision 6.0
[    0.000000] Trying to install interrupt handler for IRQ368
[    0.000000] Trying to install interrupt handler for IRQ369
[    0.000000] Trying to install interrupt handler for IRQ370
[    0.000000] Trying to install interrupt handler for IRQ371
[    0.000000] Trying to install interrupt handler for IRQ372
[    0.000000] Trying to install interrupt handler for IRQ373
[    0.000000] Trying to install interrupt handler for IRQ374
[    0.000000] Trying to install type control for IRQ375
[    0.000000] Trying to set irq flags for IRQ375
[    0.000000] OMAP clockevent source: GPTIMER1 at 20000000 Hz
[    0.000000] Console: colour dummy device 80x30
[    0.000000] Calibrating delay loop... 399.76 BogoMIPS (lpj=1998848)
[    0.220000] pid_max: default: 32768 minimum: 301
[    0.220000] Security Framework initialized
[    0.220000] Mount-cache hash table entries: 512
[    0.220000] CPU: Testing write buffer coherency: ok
[    0.220000] devtmpfs: initialized
[    0.220000] TI81XX: Map 0x84800000 to 0xfe500000 for dram barrier
[    0.220000] TI81XX: Map 0x40300000 to 0xfe600000 for sram barrier
[    0.220000] omap_voltage_early_init: voltage driver support not added
[    0.220000] regulator: core version 0.5
[    0.220000] regulator: dummy: 
[    0.220000] NET: Registered protocol family 16
[    0.220000] omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
[    0.220000] omap_voltage_add_dev: VDD specified does not exist!
[    0.220000] OMAP GPIO hardware version 0.1
[    0.220000] OMAP GPIO hardware version 0.1
[    0.220000] OMAP GPIO hardware version 0.1
[    0.220000] OMAP GPIO hardware version 0.1
[    0.220000] Debugfs: Only enabling/disabling deep sleep and wakeup timer is supported now
[    0.220000] registered ti81xx_vpss device
[    0.220000] registered ti81xx_vidout device
[    0.220000] registered ti81xx_fb device
[    0.220000] registered ti81xx_vin device
[    0.220000] PWM0 init success.
[    0.230000] PWM1 init success.
[    0.230000] PWM2 init success.
[    0.240000] bio: create slab <bio-0> at 0
[    0.240000] SCSI subsystem initialized
[    0.240000] usbcore: registered new interface driver usbfs
[    0.240000] usbcore: registered new interface driver hub
[    0.240000] usbcore: registered new device driver usb
[    0.240000] USBSS revision 4ea2080b
[    0.240000] registerd cppi-dma Intr @ IRQ 17
[    0.240000] Cppi41 Init Done
[    0.260000] omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
[    0.280000] omap_i2c omap_i2c.2: bus 2 rev4.0 at 100 kHz
[    0.280000] Advanced Linux Sound Architecture Driver Version 1.0.23.
[    0.280000] Switching to clocksource gp timer
[    0.290000] musb-hdrc: version 6.0, otg (peripheral+host), debug=0
[    0.290000] musb-hdrc musb-hdrc.0: dma type: dma-cppi41
[    0.290000] MUSB controller-0 revision 4ea20800
[    0.290000] musb-hdrc musb-hdrc.0: USB OTG mode controller at c501e000 using DMA, IRQ 18
[    0.290000] musb-hdrc musb-hdrc.1: dma type: dma-cppi41
[    0.290000] MUSB controller-1 revision 4ea20800
[    0.290000] musb-hdrc musb-hdrc.1: USB OTG mode controller at c5028800 using DMA, IRQ 19
[    0.290000] NET: Registered protocol family 2
[    0.290000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.290000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[    0.290000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[    0.290000] TCP: Hash tables configured (established 2048 bind 2048)
[    0.290000] TCP reno registered
[    0.290000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.290000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.290000] NET: Registered protocol family 1
[    0.290000] RPC: Registered udp transport module.
[    0.290000] RPC: Registered tcp transport module.
[    0.290000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.310000] PMU: registered new PMU device of type 0
[    0.310000] omap-iommu omap-iommu.0: ducati registered
[    0.310000] omap-iommu omap-iommu.1: sys registered
[    0.320000] NTFS driver 2.1.29 [Flags: R/W].
[    0.320000] msgmni has been set to 114
[    0.320000] io scheduler noop registered
[    0.320000] io scheduler deadline registered
[    0.320000] io scheduler cfq registered (default)
[    0.320000] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.320000] omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
[    0.940000] console [ttyO0] enabled
[    0.940000] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
[    0.950000] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
[    0.960000] loop: module loaded
[    0.960000] Uniform Multi-Platform E-IDE driver
[    0.970000] ide-gd driver 1.18
[    0.970000] Unhandled fault: external abort on non-linefetch (0x1008) at 0xc5040004
[    0.980000] Internal error: : 1008 [#1]
[    0.980000] last sysfs file: 
[    0.980000] Modules linked in:
[    0.980000] CPU: 0    Not tainted  (2.6.37 #68)
[    0.980000] PC is at ahci_enable_ahci+0x4/0x40
[    0.980000] LR is at ahci_save_initial_config+0x17/0x1a0
[    0.980000] pc : [<c03c4cbc>]    lr : [<c03c4dbb>]    psr: 60000033
[    0.980000] sp : c3825e78  ip : c5000000  fp : 00000000
[    0.980000] r10: c5040000  r9 : 00000000  r8 : c05d10b0
[    0.980000] r7 : 00000000  r6 : c05d10b0  r5 : c5040000  r4 : c30ee150
[    0.980000] r3 : 00000000  r2 : 00000000  r1 : c30ee150  r0 : c5040000
[    0.980000] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA Thumb  Segment kernel
[    0.980000] Control: 50c5387d  Table: 80004019  DAC: 00000017
[    0.980000] Process swapper (pid: 1, stack limit = 0xc38242e8)
[    0.980000] Stack: (0xc3825e78 to 0xc3826000)
[    0.980000] 5e60:                                                       c30ee150 c30ee150
[    0.980000] 5e80: c05d10b0 c03c4dbb c05d10b0 c30ee150 c30ee150 c05d191c c05d10b0 c05d1938
[    0.980000] 5ea0: c3825ec4 00000000 00000000 c0015e13 c3825ee0 00000000 c30ecea0 00000010
[    0.980000] 5ec0: c30ece40 0016008e 00000000 0000001f 00000000 0000007f c05fa10c 00000000
[    0.980000] 5ee0: c3825ec4 00000000 c05d10e4 c05d10b0 c05d10e4 c05fa024 c05fa024 00000000
[    0.980000] 5f00: 00000000 00000000 00000000 c03a13df c03a13d3 c03a0ba5 00000000 c05d10b0
[    0.980000] 5f20: c05d10e4 c05fa024 00000000 c03a0c59 c05fa024 c3825f40 c03a0c29 c03a0315
[    0.980000] 5f40: c381ecb8 c3859430 c05fa024 c05fa024 c30ef200 c05f8fb8 00000000 c03a0749
[    0.980000] 5f60: c053d668 c053d669 00000061 c05fa024 c0015d19 00000000 00000033 00000000
[    0.980000] 5f80: 00000000 c03a0d55 00000000 c05fa010 c0015d19 00000000 00000033 00000000
[    0.980000] 5fa0: 00000000 c03a1545 c3824000 c001b030 c0015d19 c028a2bd c0289958 3733edd1
[    0.980000] 5fc0: 00000034 00000000 00000176 c001b030 c001b11c c028edd1 00000033 00000000
[    0.980000] 5fe0: 00000000 c0008945 00000000 00000000 c00088dd c028edd1 ebaaaaba aaeaaaaa
[    0.980000] [<c03c4cbc>] (ahci_enable_ahci+0x4/0x40) from [<c03c4dbb>] (ahci_save_initial_config+0x17/0x1a0)
[    0.980000] [<c03c4dbb>] (ahci_save_initial_config+0x17/0x1a0) from [<c0015e13>] (ahci_probe+0xeb/0x240)
[    0.980000] [<c0015e13>] (ahci_probe+0xeb/0x240) from [<c03a13df>] (platform_drv_probe+0xd/0xe)
[    0.980000] [<c03a13df>] (platform_drv_probe+0xd/0xe) from [<c03a0ba5>] (driver_probe_device+0x7d/0x100)
[    0.980000] [<c03a0ba5>] (driver_probe_device+0x7d/0x100) from [<c03a0c59>] (__driver_attach+0x31/0x44)
[    0.980000] [<c03a0c59>] (__driver_attach+0x31/0x44) from [<c03a0315>] (bus_for_each_dev+0x27/0x48)
[    0.980000] [<c03a0315>] (bus_for_each_dev+0x27/0x48) from [<c03a0749>] (bus_add_driver+0x69/0x168)
[    0.980000] [<c03a0749>] (bus_add_driver+0x69/0x168) from [<c03a0d55>] (driver_register+0x57/0xae)
[    0.980000] [<c03a0d55>] (driver_register+0x57/0xae) from [<c03a1545>] (platform_driver_probe+0x11/0x44)
[    0.980000] [<c03a1545>] (platform_driver_probe+0x11/0x44) from [<c028a2bd>] (do_one_initcall+0x81/0x110)
[    0.980000] [<c028a2bd>] (do_one_initcall+0x81/0x110) from [<c0008945>] (kernel_init+0x69/0xe8)
[    0.980000] [<c0008945>] (kernel_init+0x69/0xe8) from [<c028edd1>] (kernel_thread_exit+0x1/0x6)
[    0.980000] Code: 9e18 c05f b570 4605 (6846) 
[    1.290000] ---[ end trace 05b300aa1fe761a2 ]---
[    1.300000] Kernel panic - not syncing: Attempted to kill init!
[    1.300000] [<c0291d5d>] (unwind_backtrace+0x1/0x8c) from [<c048bf59>] (panic+0x35/0xfc)
[    1.310000] [<c048bf59>] (panic+0x35/0xfc) from [<c02a879f>] (do_exit+0x41/0x41e)
[    1.320000] [<c02a879f>] (do_exit+0x41/0x41e) from [<c0290b67>] (die+0x1d3/0x20c)
[    1.330000] [<c0290b67>] (die+0x1d3/0x20c) from [<c028a15b>] (do_DataAbort+0x4f/0x60)
[    1.340000] [<c028a15b>] (do_DataAbort+0x4f/0x60) from [<c028d90b>] (__dabt_svc+0x4b/0x80)
[    1.340000] Exception stack(0xc3825e30 to 0xc3825e78)
[    1.350000] 5e20:                                     c5040000 c30ee150 00000000 00000000
[    1.360000] 5e40: c30ee150 c5040000 c05d10b0 00000000 c05d10b0 00000000 c5040000 00000000
[    1.370000] 5e60: c5000000 c3825e78 c03c4dbb c03c4cbc 60000033 ffffffff
[    1.370000] [<c028d90b>] (__dabt_svc+0x4b/0x80) from [<c03c4cbc>] (ahci_enable_ahci+0x4/0x40)
[    1.380000] [<c03c4cbc>] (ahci_enable_ahci+0x4/0x40) from [<c03c4dbb>] (ahci_save_initial_config+0x17/0x1a0)
[    1.390000] [<c03c4dbb>] (ahci_save_initial_config+0x17/0x1a0) from [<c0015e13>] (ahci_probe+0xeb/0x240)
[    1.400000] [<c0015e13>] (ahci_probe+0xeb/0x240) from [<c03a13df>] (platform_drv_probe+0xd/0xe)
[    1.410000] [<c03a13df>] (platform_drv_probe+0xd/0xe) from [<c03a0ba5>] (driver_probe_device+0x7d/0x100)
[    1.420000] [<c03a0ba5>] (driver_probe_device+0x7d/0x100) from [<c03a0c59>] (__driver_attach+0x31/0x44)
[    1.430000] [<c03a0c59>] (__driver_attach+0x31/0x44) from [<c03a0315>] (bus_for_each_dev+0x27/0x48)
[    1.440000] [<c03a0315>] (bus_for_each_dev+0x27/0x48) from [<c03a0749>] (bus_add_driver+0x69/0x168)
[    1.450000] [<c03a0749>] (bus_add_driver+0x69/0x168) from [<c03a0d55>] (driver_register+0x57/0xae)
[    1.460000] [<c03a0d55>] (driver_register+0x57/0xae) from [<c03a1545>] (platform_driver_probe+0x11/0x44)
[    1.470000] [<c03a1545>] (platform_driver_probe+0x11/0x44) from [<c028a2bd>] (do_one_initcall+0x81/0x110)
[    1.480000] [<c028a2bd>] (do_one_initcall+0x81/0x110) from [<c0008945>] (kernel_init+0x69/0xe8)
[    1.490000] [<c0008945>] (kernel_init+0x69/0xe8) from [<c028edd1>] (kernel_thread_exit+0x1/0x6)

could experts can help me or any suggest?

Thank you!

  • Lin,

    Looks the a register access failure in any of the AHCI related register. You can check the ahci_enable_ahci() function and see what register its accessing. It could be the power or clock the module might not be enabled in kernel or u-boot. 

  • Lin,

    I Couldn't find any information about SATA on DM385 TRM and Datasheet. Can Any one from TI comment on the Availability of SATA On DM385..?

    Regards,

    Manoj

  • Hi Thomas
    Thank you very much for your remind
    I will check UBL set the SATA related register and let you know the result. : )

  • Hello Manoj

    I 'm same with you, I can't find document about SATA on DM385.

  • Hi Thomas
    I ensure sata_pll_config is set in kernel dm385_evm_init function,
    but build in sata driver always kernel panic.

    BTW,
    drvier call flow: drvier, ahci_probe --> ti81xx_ahci_plat_init --> ahci_save_initial_config --> ahci_enable_ahci --> kernel panic

    on linux/arch/arm/mach-omap2/devices.c line 2560
    #define TI81XX_SATA_BASE 0x4A140000
    #define DM385_SATA1_BASE 0x4A0AE000
    driver get Platform IORESOURCE_MEM, mem->start = 0x4A140000

    but DM385 Datasheet P17, indicate the address
    0x4A0A_E000 and 0x4A14_0000 is Reserved !?

    could tell me why ?

  • Hi Lin,

    I'm not really sure why the datasheet says so. One possibility is that SATA is not supported by DM385 or the document is not correct. I've seen that DM385 has SATA from Mistral EVM. So, I think the document is not updated or the address is wrong. 

    Do you have DM385 EVM with you? And have you checked whether SATA is running on it properly? 

    Can you try to access the same address from u-boot by performing an md?

  • Hi Thomas

    Thank you very much for your quick reply
    we not have DM385 EVM...
    how can I get detail information about SATA on DM385 and correct register address?

    thank you again.

  • Hi Lin,

    Its difficult to find open documentation on DM385. So it will be tricky. Best way is to check the register in a working setup preferably an EVM.

  • Hi Thomas

    Thank you for your suggest,
    I will try it, if have any info I will post it.
    : )

  • Hi,

    As per my understanding,

    DM385 do not have SATA hardware in it,

    you may find SATA ports are available in many vendor's EVM board but it  (connectors & rooting to SOM in schematic (and actually it wont connected to the DM365 SOM) ) ll be avail at base board only and not in SOM, This ( base + SOM )kind of designs are used to integrate different types of SOM in the same base boards which will support variety of processors ,

    You can connect ur DM814x SOM which is supporting SATA per into this type of base board.

    Ex:

    http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&ved=0CD0QFjAC&url=http%3A%2F%2Ffossilshale.com%2FdownloadFile.php%3Ffile%3DFS-DM385-SOM-Brochure.pdf&ei=hB3FUomfHoP-rAe-0YGABQ&usg=AFQjCNH_1MSHy6KhdAtrv96DP0zkp4pujQ&sig2=6pVVUSKD__q-psyqDqSsCA&bvm=bv.58187178,d.bmk

    plz correct me if im wrong,

  • Titus,

    Please check the mistral DM385 EVM schematics. You can see Sata interface 

    http://www.mistralsolutions.com/pes-support/support-downloads/dm385.html

  • Hi Renjith,

    Sorry, i m unable to download due to login access,

    anyway, ur correct only,

    while technically speaking,

    If SATA driver is not avail then this panic should not occur kw !

    Am i right Renjtih?

    4111.DM38x_SOM_-_V1.4.pdf

    PFA of brochure from fossilshale

    Suppose, DM385 SOC does not having SATA then,  I think they are supporting SATA using any-other interfaces(converting | bitbanging etc.,)

    @ Vic lin

    refer this link & enable SATA driver as a module & then compile and test.

    http://processors.wiki.ti.com/index.php/Linux_Core_SATA_User%27s_Guide#Building_into_Kernel

  • Tiger Titus said:

    If SATA driver is not avail then this panic should not occur kw !

    Am i right Renjtih?

    You are absolutely right. 

    Tiger Titus said:

    Suppose, DM385 SOC does not having SATA then,  I think they are supporting SATA using any-other interfaces(converting | bitbanging etc.,)

    I don't think there is any pressing need to do bitbanging etc. Only option is using external SATA controller, which I feel that will be ridiculous. Also from the DM385 EVM schematics it doesn't seems like they are using external SATA controller.

  • Renjith Thomas said:
    Please check the mistral DM385 EVM schematics. You can see Sata interface

    DM388/DM385 doesn't have SATA according to the datasheet, although the DM383 does.  What partnumber is listed on the BOM?

  • You could also check the DEV_FEATURE register (address 0x48140604), bit 22 should represent the availability of SATA afaik (assuming this register is consistent between Centaurus-variants).

  • Matthijs van Duin said:
    You could also check the DEV_FEATURE register (address 0x48140604), bit 22 should represent the availability of SATA afaik (assuming this register is consistent between Centaurus-variants).

    I know this is an old thread, but having a Mistral DM38x EVM with a DM385 fitted and two SATA connectors populated on the EVM was curious.

    On a DM385 address 0x48140604 reads as 0FE29F7F. Bit 22 is set, but as I don't have the DM385 TRM (no NDA) not sure of the encoding of the DEV_FEATURE.

    As per previous posts the DM385 datasheet doesn't list SATA support, and the DM383 SATA pins on the AAR package are marked as reserved in the DM385 datasheet. Therefore I don't expect the Linux SATA driver to work on a DM385.

  • Chester Gillon said:
    having a Mistral DM38x EVM with a DM385 fitted

    What's the actual package marking? I've noticed EVMs tend to have early/experimental devices which may be more generic or featureful than production versions. For example, our DM814x EVM has a part marked X8148X3874BCYE with feature bits 0xffefff7f whereas the production DM8148BCYE has feature bits 0xbfe1ff7f.

    Chester Gillon said:
    address 0x48140604 reads as 0FE29F7F

    Although I can't be sure the allocation is the same, if I interpret it based on the DM814x I get:

    update: changed the "DM385" column heading to "XDM8139"

    bit X8148 DM8148 XDM8139
    0 Y Y Y Macrovision
    1 Y Y Y GMII1/RMII1 pins
    2 Y Y Y VIP2 pins
    3 Y Y Y ThreeCC mode
    4-6 Y Y Y ?
    7 ?
    8-11 Y Y Y ?
    12 Y Y Y SecSS AES
    13 Y Y ?
    14 Y (Y) TPPSS Multi2
    15 Y (Y) Y TPPSS Irdeto
    16 Y (Y) TPPSS NDS
    17 Y Y ATL
    18 Y MLB
    19 Y VCP2
    20 Customer eFUSE
    21 Y Y Y HDMI
    22 Y Y Y SATA
    23 Y Y Y PCIe
    24 Y Y Y CSI2
    25 Y Y Y ISP5 pins
    26 Y Y Y FDIF
    27 Y Y Y HDVICP2
    28 Y Y EMIF1
    29 Y Y SGX530
    30 Y TPPSS
    31 Y Y C674x DSP

    I'd guess that the DM38x devices have no TPPSS on die at all, hence its feature bits (14-16) have probably been repurposed. However, feature bits 17-31 seem to be in agreement with the datasheet except for SATA.

    My guess would be that SATA is in fact present and enabled in the device you have. Of course it may have been removed from the datasheet for good reason, i.e. it may be non-functional or unreliable.

    Chester Gillon said:
    I don't expect the Linux SATA driver to work on a DM385.

    I've been working mostly with the AM335x lately so I I was about to say "well just add it to its device tree and see what happens" before I realized you're still stuck with an ancient unmaintained kernel... *sigh* -.-  Tony Lindgren has actually been working on mainline DM81xx support and his kernel boots on the evm814x, but no SATA there yet I'm afraid.

    Still, since you have the processor sitting on a board already equipped with SATA support, I'd say "try it and see". Can't be that hard to locate the SATA support code for DM383 and enable it also for the DM385...

  • Matthijs van Duin said:
    What's the actual package marking? I've noticed EVMs tend to have early/experimental devices which may be more generic or featureful than production versions.

    The actual package marking is "DaVinci XDM8139 AAR1F" i.e. not a production version.

    Matthijs van Duin said:
    Still, since you have the processor sitting on a board already equipped with SATA support, I'd say "try it and see". Can't be that hard to locate the SATA support code for DM383 and enable it also for the DM385...

    I will give that a go once have got Linux to boot.  From TI81XX PSP 04.04.00.02 obtained a working u-boot and Kernel, but haven't yet found a working root file-system for the TI831x / DM385.

  • Chester Gillon said:
    The actual package marking is "DaVinci XDM8139 AAR1F" i.e. not a production version.

    Hah, even predates the DM813x being renamed to DM38x

    Being an experimental version, combined with the '9' as final digit (suggesting it is the most featureful of the series) means I'd expect it to have the union of the features of the various DM38x models, i.e. both SATA and the noise filtering engine. (I'd even be inclined to poke around a bit to see if there's a vision coprocessor in there, considering the suspicious similarity between the DM38x and the DMVA3/4)

    This does mean that even if SATA indeed works on this chip, that still says nothing about whether it works in a production DM385.

    Chester Gillon said:
    I will give that a go once have got Linux to boot.  From TI81XX PSP 04.04.00.02 obtained a working u-boot and Kernel, but haven't yet found a working root file-system for the TI831x

    Hmm? The EVM didn't include any working system? Also, I'd expect getting the kernel to run to be the hard part. The rootfs can then just be something basic and spartan to be begin with. Maybe grab the EZSDK and use the arago-base-tisdk-image inside it? Or just about any rootfs, as long as you keep any video-related startup scripts / demos disabled.