diff options
-rw-r--r-- | include/linux/mod_devicetable.h | 10 | ||||
-rw-r--r-- | scripts/mod/devicetable-offsets.c | 4 | ||||
-rw-r--r-- | scripts/mod/file2alias.c | 11 |
3 files changed, 25 insertions, 0 deletions
diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h index f458469c5ce5..26327be36589 100644 --- a/include/linux/mod_devicetable.h +++ b/include/linux/mod_devicetable.h @@ -653,6 +653,16 @@ struct isapnp_device_id { }; /** + * struct ipaq_option_id - iPAQ sleeve option id + * @vendor: 16-bit vendor identifier + * @device: 16-bit device identifier + */ +struct ipaq_option_id { + __u16 vendor; + __u16 device; +}; + +/** * struct amba_id - identifies a device on an AMBA bus * @id: The significant bits if the hardware device ID * @mask: Bitmask specifying which bits of the id field are significant when diff --git a/scripts/mod/devicetable-offsets.c b/scripts/mod/devicetable-offsets.c index e91a3c38143b..0dc91c57aa54 100644 --- a/scripts/mod/devicetable-offsets.c +++ b/scripts/mod/devicetable-offsets.c @@ -178,6 +178,10 @@ int main(void) DEVID_FIELD(ipack_device_id, vendor); DEVID_FIELD(ipack_device_id, device); + DEVID(ipaq_option_id); + DEVID_FIELD(ipaq_option_id, vendor); + DEVID_FIELD(ipaq_option_id, device); + DEVID(amba_id); DEVID_FIELD(amba_id, id); DEVID_FIELD(amba_id, mask); diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index 4829680a0a6d..257d095e6c3a 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c @@ -1140,6 +1140,16 @@ static void append_nibble_mask(char **outp, *outp = p; } +/* Looks like: ipaq:vNdN */ +static int do_ipaq_entry(const char *filename, void *symval, char *alias) +{ + DEF_FIELD(symval, ipaq_option_id, vendor); + DEF_FIELD(symval, ipaq_option_id, device); + + sprintf(alias, "ipaq:v%04Xd%04X", vendor, device); + return 1; +} + /* * looks like: "amba:dN" * @@ -1553,6 +1563,7 @@ static const struct devtable devtable[] = { {"zorro", SIZE_zorro_device_id, do_zorro_entry}, {"isapnp", SIZE_isapnp_device_id, do_isapnp_entry}, {"ipack", SIZE_ipack_device_id, do_ipack_entry}, + {"ipaq", SIZE_ipaq_option_id, do_ipaq_entry}, {"amba", SIZE_amba_id, do_amba_entry}, {"mipscdmm", SIZE_mips_cdmm_device_id, do_mips_cdmm_entry}, {"x86cpu", SIZE_x86_cpu_id, do_x86cpu_entry}, |