]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blame - drivers/platform/x86/dell-smbios.h
platform/x86: fujitsu-laptop: remove pf_device field from struct fujitsu_bl
[mirror_ubuntu-eoan-kernel.git] / drivers / platform / x86 / dell-smbios.h
CommitLineData
2f9f26bd
MK
1/*
2 * Common functions for kernel modules using Dell SMBIOS
3 *
4 * Copyright (c) Red Hat <mjg@redhat.com>
5 * Copyright (c) 2014 Gabriele Mazzotta <gabriele.mzt@gmail.com>
6 * Copyright (c) 2014 Pali Rohár <pali.rohar@gmail.com>
7 *
8 * Based on documentation in the libsmbios package:
9 * Copyright (C) 2005-2014 Dell Inc.
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
14 */
15
16#ifndef _DELL_SMBIOS_H_
17#define _DELL_SMBIOS_H_
18
19/* This structure will be modified by the firmware when we enter
20 * system management mode, hence the volatiles */
21
22struct calling_interface_buffer {
23 u16 class;
24 u16 select;
25 volatile u32 input[4];
26 volatile u32 output[4];
27} __packed;
28
29struct calling_interface_token {
30 u16 tokenID;
31 u16 location;
32 union {
33 u16 value;
34 u16 stringlength;
35 };
36};
37
0db2180f 38int dell_smbios_error(int value);
e8edf53b 39
bc2104c2 40struct calling_interface_buffer *dell_smbios_get_buffer(void);
b6aa7e18 41void dell_smbios_clear_buffer(void);
cb161763 42void dell_smbios_release_buffer(void);
c42831c8 43void dell_smbios_send_request(int class, int select);
2f9f26bd 44
96f7ef90 45struct calling_interface_token *dell_smbios_find_token(int tokenid);
2f9f26bd 46#endif