18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright (C) 2010 ARM Ltd. 48c2ecf20Sopenharmony_ci * Written by Catalin Marinas <catalin.marinas@arm.com> 58c2ecf20Sopenharmony_ci */ 68c2ecf20Sopenharmony_ci#include <linux/bug.h> 78c2ecf20Sopenharmony_ci#include <linux/smp.h> 88c2ecf20Sopenharmony_ci#include <asm/outercache.h> 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_civoid outer_disable(void) 118c2ecf20Sopenharmony_ci{ 128c2ecf20Sopenharmony_ci WARN_ON(!irqs_disabled()); 138c2ecf20Sopenharmony_ci WARN_ON(num_online_cpus() > 1); 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci if (outer_cache.disable) 168c2ecf20Sopenharmony_ci outer_cache.disable(); 178c2ecf20Sopenharmony_ci} 18