On 11/8/2017 11:49 AM, Timur Tabi wrote: > On 11/08/2017 10:29 AM, Sinan Kaya wrote: >> +#define HIDMA_MAX_DEV_MATCH 10 >> + >> +struct hidma_cap { >> + const struct of_device_id of[HIDMA_MAX_DEV_MATCH]; >> + const struct acpi_device_id acpi[HIDMA_MAX_DEV_MATCH]; >> +}; > > This seems wrong. You're defining an array of size 10, but it only has three elements. And the third element is a sentinel, which is typically used to avoid specifying the size of the array. > It is true that I define an array of size 10. It is just some arbitrary number with forward thinking. I don't really have to use it to the maximum today as long as I satisfy the calling conventions. What is important is that the of_device_match() and acpi_device_match() functions will stop searching only if they find an empty element. The {} element. That's the calling semantics of of_device_match() and acpi_device_match(). Besides, C compiler also won't let me put two arrays together like this. struct my_struct { struct some_struct array1[] struct some_struct array2[] } -- Sinan Kaya Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html