Jon Li wrote:
Hello, I am curious as to whether there are plans to add support for integrated sata devices. I personally want to add support for a 60x1C0 based device (pci:id = 0x5182). I think adding support should be relatively simple, except for a few issues outlined below. In the original mvSata.c (ver3.4) that has 0x5182 support, the config space is as such: case MV_SATA_DEVICE_ID_5182: pAdapter->numberOfChannels = MV_SATA_5182_PORT_NUM; pAdapter->numberOfUnits = 1; pAdapter->portsPerUnit = 2; pAdapter->sataAdapterGeneration = MV_SATA_GEN_IIE; /*The integrated sata core chip based on 60x1 C0*/ pAdapter->chipIs60X1C0 = MV_TRUE; pAdapter->hostInterface = MV_HOST_IF_INTEGRATED; pAdapter->mainMaskOffset = 0x20024; /*the iobaseaddress is 0x60000*/ pAdapter->mainCauseOffset = 0x20020; break; I have not yet figured out how all these values are defined in sata-mv.c (ver 0.8). Specifically, where do I define "numberOfChannels" which should equal 2, and "numberOfUnits" which obviously equals 1? I have a current config space (not completed) for sata-mv.c which is: { /* chip_5182 */ .sht = &mv_sht, .flags = (MV_COMMON_FLAGS | MV_6XXX_FLAGS | MV_FLAG_DUAL_HC), .pio_mask = 0x1f, /* pio0-4 */ .udma_mask = 0x7f, /* udma0-6 */ .port_ops = &mv6_ops, }, I believe according to the new structure in sata-mv.c, HC_MAIN_IRQ_CAUSE_OFS should equal 0x20020 and HC_MAIN_IRQ_MASK_OFS should equal 0x20024 for the 0x5182 device. My final question is how to implement the MV_HOST_IF_INTEGRATED flag? Is this already implemented and renamed in sata-mv.c? Or do I need to also add the routines?
I just wanted to point the current sata_mv hackers to this message from April 2007...
Jeff - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html