/*
 * Copyright (c) 2018 Phytec Messtechnik GmbH
 *
 * SPDX-License-Identifier: Apache-2.0
 */


#ifndef __SSD1306_REGS_H__
#define __SSD1306_REGS_H__

/* All following bytes will contain commands */
#define SSD1306_CONTROL_ALL_BYTES_CMD		0x00
/* All following bytes will contain data */
#define SSD1306_CONTROL_ALL_BYTES_DATA		0x40
/* The next byte will contain a command */
#define SSD1306_CONTROL_BYTE_CMD		0x80
/* The next byte will contain data */
#define SSD1306_CONTROL_BYTE_DATA		0xc0
#define SSD1306_READ_STATUS_MASK		0xc0
#define SSD1306_READ_STATUS_BUSY		0x80
#define SSD1306_READ_STATUS_ON			0x40

/*
 * Fundamental Command Table
 */
#define SSD1306_SET_CONTRAST_CTRL		0x81 /* double byte command */

#define SSD1306_SET_ENTIRE_DISPLAY_OFF		0xa4
#define SSD1306_SET_ENTIRE_DISPLAY_ON		0xa5

/* RAM data of 1 indicates an "ON" pixel */
#define SSD1306_SET_NORMAL_DISPLAY		0xa6
/* RAM data of 0 indicates an "ON" pixel */
#define SSD1306_SET_REVERSE_DISPLAY		0xa7

#define SSD1306_DISPLAY_OFF			0xae
#define SSD1306_DISPLAY_ON			0xaf

/*
 * Addressing Setting Command Table
 */
#define SSD1306_SET_LOWER_COL_ADDRESS		0x00
#define SSD1306_SET_LOWER_COL_ADDRESS_MASK	0x0f

#define SSD1306_SET_HIGHER_COL_ADDRESS		0x10
#define SSD1306_SET_HIGHER_COL_ADDRESS_MASK	0x0f

#define SSD1306_SET_MEM_ADDRESSING_MODE		0x20 /* double byte command */
#define SSD1306_SET_MEM_ADDRESSING_HORIZONTAL	0x00
#define SSD1306_SET_MEM_ADDRESSING_VERTICAL	0x01
#define SSD1306_SET_MEM_ADDRESSING_PAGE		0x02

#define SSD1306_SET_COLUMN_ADDRESS		0x21 /* triple byte command */

#define SSD1306_SET_PAGE_ADDRESS		0x22 /* triple byte command */

#define SSD1306_SET_PAGE_START_ADDRESS		0xb0
#define SSD1306_SET_PAGE_START_ADDRESS_MASK	0x07


/*
 * Hardware Configuration Command Table
 */
#define SSD1306_SET_START_LINE			0x40
#define SSD1306_SET_START_LINE_MASK		0x3f

#define SSD1306_SET_SEGMENT_MAP_NORMAL		0xa0
#define SSD1306_SET_SEGMENT_MAP_REMAPED		0xa1

#define SSD1306_SET_MULTIPLEX_RATIO		0xa8 /* double byte command */

#define SSD1306_SET_COM_OUTPUT_SCAN_NORMAL	0xc0
#define SSD1306_SET_COM_OUTPUT_SCAN_FLIPPED	0xc8

#define SSD1306_SET_DISPLAY_OFFSET		0xd3 /* double byte command */

#define SSD1306_SET_PADS_HW_CONFIG		0xda /* double byte command */
#define SSD1306_SET_PADS_HW_SEQUENTIAL		0x02
#define SSD1306_SET_PADS_HW_ALTERNATIVE		0x12


/*
 * Timing and Driving Scheme Setting Command Table
 */
#define SSD1306_SET_CLOCK_DIV_RATIO		0xd5 /* double byte command */

#define SSD1306_SET_CHARGE_PERIOD		0xd9 /* double byte command */

#define SSD1306_SET_VCOM_DESELECT_LEVEL		0xdb /* double byte command */

#define SSD1306_NOP				0xe3

/*
 * Charge Pump Command Table
 */
#define SSD1306_SET_CHARGE_PUMP_ON		0x8d /* double byte command */
#define SSD1306_SET_CHARGE_PUMP_ON_DISABLED	0x10
#define SSD1306_SET_CHARGE_PUMP_ON_ENABLED	0x14

#define SH1106_SET_DCDC_MODE			0xad /* double byte command */
#define SH1106_SET_DCDC_DISABLED		0x8a
#define SH1106_SET_DCDC_ENABLED			0x8b

#define SSD1306_SET_PUMP_VOLTAGE_64		0x30
#define SSD1306_SET_PUMP_VOLTAGE_74		0x31
#define SSD1306_SET_PUMP_VOLTAGE_80		0x32
#define SSD1306_SET_PUMP_VOLTAGE_90		0x33

/*
 * Read modify write
 */
#define SSD1306_READ_MODIFY_WRITE_START		0xe0
#define SSD1306_READ_MODIFY_WRITE_END		0xee

/* time constants in ms */
#define SSD1306_RESET_DELAY			1

#endif
