summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/linux/mod_devicetable.h10
-rw-r--r--scripts/mod/devicetable-offsets.c4
-rw-r--r--scripts/mod/file2alias.c11
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},