]> xenbits.xensource.com Git - xen.git/commitdiff
Revert "xen/arm: platform: Drop the quirks callback"
authorStefano Stabellini <sstabellini@kernel.org>
Tue, 8 Nov 2016 19:42:42 +0000 (11:42 -0800)
committerStefano Stabellini <sstabellini@kernel.org>
Wed, 9 Nov 2016 22:26:17 +0000 (14:26 -0800)
This reverts commit 14fa16961b03a23e9b883e5f0ed06b6837a489d8.
Do not reintroduce platform_dom0_evtchn_ppi.

Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
Acked-by: Julien Grall <julien.grall@arm.com>
Release-acked-by: Wei Liu <wei.liu2@citrix.com>
xen/arch/arm/platform.c
xen/include/asm-arm/platform.h

index b0bfaa9ea0857e440e97f2ad3a18f738b3aa40eb..0af6d57bfe04e5319071b156060bd9eb98afcdd5 100644 (file)
@@ -127,6 +127,16 @@ void platform_poweroff(void)
         platform->poweroff();
 }
 
+bool_t platform_has_quirk(uint32_t quirk)
+{
+    uint32_t quirks = 0;
+
+    if ( platform && platform->quirks )
+        quirks = platform->quirks();
+
+    return !!(quirks & quirk);
+}
+
 bool_t platform_device_is_blacklisted(const struct dt_device_node *node)
 {
     const struct dt_device_match *blacklist = NULL;
index f97315db84367869b36cb76ef3c3da02cf04ec89..c6e5010bc9844e4370f1e148d815cf80848b57a1 100644 (file)
@@ -26,6 +26,12 @@ struct platform_desc {
     void (*reset)(void);
     /* Platform power-off */
     void (*poweroff)(void);
+    /*
+     * Platform quirks
+     * Defined has a function because a platform can support multiple
+     * board with different quirk on each
+     */
+    uint32_t (*quirks)(void);
     /*
      * Platform blacklist devices
      * List of devices which must not pass-through to a guest
@@ -42,6 +48,7 @@ int platform_cpu_up(int cpu);
 #endif
 void platform_reset(void);
 void platform_poweroff(void);
+bool_t platform_has_quirk(uint32_t quirk);
 bool_t platform_device_is_blacklisted(const struct dt_device_node *node);
 
 #define PLATFORM_START(_name, _namestr)                         \