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 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) #ifndef _SUN3_INTERSIL_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) #define _SUN3_INTERSIL_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) /* bits 0 and 1 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) #define INTERSIL_FREQ_32K        0x00
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) #define INTERSIL_FREQ_1M         0x01
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) #define INTERSIL_FREQ_2M         0x02
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) #define INTERSIL_FREQ_4M         0x03
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) /* bit 2 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) #define INTERSIL_12H_MODE   0x00
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #define INTERSIL_24H_MODE   0x04
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) /* bit 3 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #define INTERSIL_STOP            0x00
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #define INTERSIL_RUN             0x08
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) /* bit 4 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #define INTERSIL_INT_ENABLE     0x10
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #define INTERSIL_INT_DISABLE    0x00
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) /* bit 5 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) #define INTERSIL_MODE_NORMAL     0x00
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #define INTERSIL_MODE_TEST       0x20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) #define INTERSIL_HZ_100_MASK	 0x02
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) struct intersil_dt {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 	unsigned char	csec;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	unsigned char	hour;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	unsigned char	minute;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 	unsigned char	second;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 	unsigned char	month;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 	unsigned char	day;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 	unsigned char	year;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 	unsigned char	weekday;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) struct intersil_7170 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 	struct intersil_dt counter;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 	struct intersil_dt alarm;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 	unsigned char	int_reg;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 	unsigned char	cmd_reg;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) extern volatile char* clock_va;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) #define intersil_clock ((volatile struct intersil_7170 *) clock_va)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) #define intersil_clear() (void)intersil_clock->int_reg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) #endif