Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) /* SPDX-License-Identifier: GPL-2.0-only */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3)  *      Intel_SCU 0.2:  An Intel SCU IOH Based Watchdog Device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4)  *			for Intel part #(s):
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5)  *				- AF82MP20 PCH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7)  *      Copyright (C) 2009-2010 Intel Corporation. All rights reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #ifndef __INTEL_SCU_WATCHDOG_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define __INTEL_SCU_WATCHDOG_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #define WDT_VER "0.3"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) /* minimum time between interrupts */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #define MIN_TIME_CYCLE 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) /* Time from warning to reboot is 2 seconds */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #define DEFAULT_SOFT_TO_HARD_MARGIN 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) #define MAX_TIME 170
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) #define DEFAULT_TIME 5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) #define MAX_SOFT_TO_HARD_MARGIN (MAX_TIME-MIN_TIME_CYCLE)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) /* Ajustment to clock tick frequency to make timing come out right */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #define FREQ_ADJUSTMENT 8
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) struct intel_scu_watchdog_dev {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	ulong driver_open;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	ulong driver_closed;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	u32 timer_started;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 	u32 timer_set;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	u32 threshold;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	u32 soft_threshold;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 	u32 __iomem *timer_load_count_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 	u32 __iomem *timer_current_value_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 	u32 __iomem *timer_control_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 	u32 __iomem *timer_clear_interrupt_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 	u32 __iomem *timer_interrupt_status_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 	struct sfi_timer_table_entry *timer_tbl_ptr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 	struct notifier_block intel_scu_notifier;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 	struct miscdevice miscdev;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) extern int sfi_mtimer_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) /* extern struct sfi_timer_table_entry *sfi_get_mtmr(int hint); */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) #endif /* __INTEL_SCU_WATCHDOG_H */