Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef __LINUX_SPI_DS1305_H
0003 #define __LINUX_SPI_DS1305_H
0004 
0005 /*
0006  * One-time configuration for ds1305 and ds1306 RTC chips.
0007  *
0008  * Put a pointer to this in spi_board_info.platform_data if you want to
0009  * be sure that Linux (re)initializes this as needed ... after losing
0010  * backup power, and potentially on the first boot.
0011  */
0012 struct ds1305_platform_data {
0013 
0014     /* Trickle charge configuration:  it's OK to leave out the MAGIC
0015      * bitmask; mask in either DS1 or DS2, and then one of 2K/4k/8K.
0016      */
0017 #define DS1305_TRICKLE_MAGIC    0xa0
0018 #define DS1305_TRICKLE_DS2  0x08    /* two diodes */
0019 #define DS1305_TRICKLE_DS1  0x04    /* one diode */
0020 #define DS1305_TRICKLE_2K   0x01    /* 2 KOhm resistance */
0021 #define DS1305_TRICKLE_4K   0x02    /* 4 KOhm resistance */
0022 #define DS1305_TRICKLE_8K   0x03    /* 8 KOhm resistance */
0023     u8  trickle;
0024 
0025     /* set only on ds1306 parts */
0026     bool    is_ds1306;
0027 
0028     /* ds1306 only:  enable 1 Hz output */
0029     bool    en_1hz;
0030 
0031     /* REVISIT:  the driver currently expects nINT0 to be wired
0032      * as the alarm IRQ.  ALM1 may also need to be set up ...
0033      */
0034 };
0035 
0036 #endif /* __LINUX_SPI_DS1305_H */