
     	ˆÄÃƒŸs_†I|¥�+ÃÂ ø    	/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Wifi Band Exclusion Interface (AMD ACPI Implementation)
 * Copyright (C) 2023 Advanced Micro Devices
 */

#ifndef _ACPI_AMD_WBRF_H
#define _ACPI_AMD_WBRF_H

#include <linux/device.h>
#include <linux/notifier.h>

/* The maximum number of frequency band ranges */
#define MAX_NUM_OF_WBRF_RANGES		11

/* Record actions */
#define WBRF_RECORD_ADD		0x0
#define WBRF_RECORD_REMOVE	0x1

/**
 * struct freq_band_range - Wifi frequency band range definition
 * @start: start frequency point (in Hz)
 * @end: end frequency point (in Hz)
 */
struct freq_band_range {
	u64		start;
	u64		end;
};

/**
 * struct wbrf_ranges_in_out - wbrf ranges info
 * @num_of_ranges: total number of band ranges in this struct
 * @band_list: array of Wifi band ranges
 */
struct wbrf_ranges_in_out {
	u64			num_of_ranges;
	struct freq_band_range	band_list[MAX_NUM_OF_WBRF_RANGES];
};

/**
 * enum wbrf_notifier_actions - wbrf notifier actions index
 * @WBRF_CHANGED: there was some frequency band updates. The consumers
 *               should retrieve the latest active frequency bands.
 */
enum wbrf_notifier_actions {
	WBRF_CHANGED,
};

#if IS_ENABLED(CONFIG_AMD_WBRF)
bool acpi_amd_wbrf_supported_producer(struct device *dev);
int acpi_amd_wbrf_add_remove(struct device *dev, uint8_t action, struct wbrf_ranges_in_out *in);
bool acpi_amd_wbrf_supported_consumer(struct device *dev);
int amd_wbrf_retrieve_freq_band(struct device *dev, struct wbrf_ranges_in_out *out);
int amd_wbrf_register_notifier(struct notifier_block *nb);
int amd_wbrf_unregister_notifier(struct notifier_block *nb);
#else
static inline
bool acpi_amd_wbrf_supported_consumer(struct device *dev)
{
	return false;
}

static inline
int acpi_amd_wbrf_add_remove(struct device *dev, uint8_t action, struct wbrf_ranges_in_out *in)
{
	return -ENODEV;
}

static inline
bool acpi_amd_wbrf_supported_producer(struct device *dev)
{
	return false;
}
static inline
int amd_wbrf_retrieve_freq_band(struct device *dev, struct wbrf_ranges_in_out *out)
{
	return -ENODEV;
}
static inline
int amd_wbrf_register_notifier(struct notifier_block *nb)
{
	return -ENODEV;
}
static inline
int amd_wbrf_unregister_notifier(struct notifier_block *nb)
{
	return -ENODEV;
}
#endif /* CONFIG_AMD_WBRF */

#endif /* _ACPI_AMD_WBRF_H */
  	   ˆÅÄ0ÃÂ  !   ˆƒ[oÁa–Ým_J*j"Tâ�fà™¸ÈTÅ£Ã ƒ    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <title>Index of /FSS-OZR/root/lib/python3.9/site-packages/cockpit/_vendor/bei</title>
 </head>
 <body>
<h1>Index of /FSS-OZR/root/lib/python3.9/site-packages/cockpit/_vendor/bei</h1>
  <table>
   <tr><th valign="top">&nbsp;</th><th><a href="?C=N;O=A">Name</a></th><th><a href="?C=M;O=D">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/FSS-OZR/root/lib/python3.9/site-packages/cockpit/_vendor/">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="__pycache__/">__pycache__/</a>           </td><td align="right">2026-05-29 07:46  </td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="data/">data/</a>                  </td><td align="right">2026-05-29 07:46  </td><td align="right">  - </td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr>
</table>
</body></html>
     ˆÆÅƒî¹¿¾Ã      /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
/*
 * Xilinx Controls Header
 *
 * Copyright (C) 2013-2015 Ideas on Board
 * Copyright (C) 2013-2015 Xilinx, Inc.
 *
 * Contacts: Hyun Kwon <hyun.kwon@xilinx.com>
 *           Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 *
 * This software is licensed under the terms of the GNU General Public
 * License version 2, as published by the Free Software Foundation, and
 * may be copied, distributed, and modified under those terms.
 *
 * T