Gregory Nutt
3657723208
drivers/lcd: Add support for external LCD initialization required by some board logic. configs/zpa214xpa: Tried to get the LCD working again unsuccessfully. Too much bit rot I suppose.
2017-11-25 11:41:21 -06:00
Gregory Nutt
84de1fed9b
Fix previous commit: In calculating the length of a run, the width has to be updated AFTER the start X position has been modified.
2017-11-22 06:13:56 -06:00
Gregory Nutt
9a4c3bbe99
drivers/lcd_framebuffer.c: If BPP is less then 8, then we need to byte-align the update region.
2017-11-22 05:35:33 -06:00
Alan Carvalho de Assis
7c5f329294
drivers/lcd/max7219.c: Add support for MAX7219 vertically organized display.
2017-11-07 13:20:03 -06:00
Gregory Nutt
205fe8053f
Kconfigs: Add CONFIG_LCD_UPDATE that works like CONFIG_NX_UPDATE but can be enabled without enabling the graphics subsystem.
2017-11-04 14:08:21 -06:00
Alan Carvalho de Assis
829e6520e3
drivers/lcd/max7219.c: Add support to MAX7219 LED Matrix as LCD interface
2017-11-04 07:54:48 -06:00
Gregory Nutt
936df1bcb5
Adds new OS internal functions nxsig_sleep() and nxsig_usleep. These differ from the standard sleep() and usleep() in that (1) they don't cause cancellation points, and (2) don't set the errno variable (if applicable). All calls to sleep() and usleep() changed to calls to nxsig_sleep() and nxsig_usleep().
...
Squashed commit of the following:
Change all calls to usleep() in the OS proper to calls to nxsig_usleep()
sched/signal: Add a new OS internal function nxsig_usleep() that is functionally equivalent to usleep() but does not cause a cancellaption point and does not modify the errno variable.
sched/signal: Add a new OS internal function nxsig_sleep() that is functionally equivalent to sleep() but does not cause a cancellaption point.
2017-10-06 10:15:01 -06:00
Gregory Nutt
9568600ab1
Squashed commit of the following:
...
This commit backs out most of commit b4747286b1
. That change was added because sem_wait() would sometimes cause cancellation points inappropriated. But with these recent changes, nxsem_wait() is used instead and it is not a cancellation point.
In the OS, all calls to sem_wait() changed to nxsem_wait(). nxsem_wait() does not return errors via errno so each place where nxsem_wait() is now called must not examine the errno variable.
In all OS functions (not libraries), change sem_wait() to nxsem_wait(). This will prevent the OS from creating bogus cancellation points and from modifying the per-task errno variable.
sched/semaphore: Add the function nxsem_wait(). This is a new internal OS interface. It is functionally equivalent to sem_wait() except that (1) it is not a cancellation point, and (2) it does not set the per-thread errno value on return.
2017-10-04 15:22:27 -06:00
Gregory Nutt
42a0796615
Squashed commit of the following:
...
sched/semaphore: Add nxsem_post() which is identical to sem_post() except that it never modifies the errno variable. Changed all references to sem_post in the OS to nxsem_post().
sched/semaphore: Add nxsem_destroy() which is identical to sem_destroy() except that it never modifies the errno variable. Changed all references to sem_destroy() in the OS to nxsem_destroy().
libc/semaphore and sched/semaphore: Add nxsem_getprotocol() and nxsem_setprotocola which are identical to sem_getprotocol() and set_setprotocol() except that they never modifies the errno variable. Changed all references to sem_setprotocol in the OS to nxsem_setprotocol(). sem_getprotocol() was not used in the OS
2017-10-03 15:35:24 -06:00
Gregory Nutt
83cdb0c552
Squashed commit of the following:
...
libc/semaphore: Add nxsem_getvalue() which is identical to sem_getvalue() except that it never modifies the errno variable. Changed all references to sem_getvalue in the OS to nxsem_getvalue().
sched/semaphore: Rename all internal private functions from sem_xyz to nxsem_xyz. The sem_ prefix is (will be) reserved only for the application semaphore interfaces.
libc/semaphore: Add nxsem_init() which is identical to sem_init() except that it never modifies the errno variable. Changed all references to sem_init in the OS to nxsem_init().
sched/semaphore: Rename sem_tickwait() to nxsem_tickwait() so that it is clear this is an internal OS function.
sched/semaphoate: Rename sem_reset() to nxsem_reset() so that it is clear this is an internal OS function.
2017-10-03 12:52:31 -06:00
Gregory Nutt
8394f9b60f
Squashed commit of the following:
...
configs/z80sim and xtrs: Serial driver lower halfs ioctl methods should return a negated errno value, not set the errno variable.
drivers/wireless: CC1101 driver not permitted to set errno.
drivers/sensors: LIS331DL driver not permitted to set errno.
drivers/lcd: ILI9341 initialize method not permitted to set errno,
drivers/serial: 16550 UART driver IOCTL method must not set errno; it must return a negated errno value.
2017-09-30 12:59:33 -06:00
Gregory Nutt
cfd44639b2
Fix some cosmetic stuff in the framebuffer character driver and in the LCD framebuffer driver front-end.
2017-09-17 13:48:10 -06:00
Gregory Nutt
0b8730fb8b
Squashed commit of the following:
...
configs/stm3210e-eval: Bring in new stm32_appinit.c, add board_initialize(), add support for FB character driver.
configs/stm3210e-eval: Rename stm32_appinit.c to stm32_bringup.c so that the start up logic is compatible with other, new boards.
2017-09-17 13:17:06 -06:00
Gregory Nutt
a9c054237a
drivers/lcd: Add suppose for a generic front-end that will convert any LCD driver into a framebuffer driver.
2017-09-17 10:39:23 -06:00
Jussi Kivilinna
a099506b1b
drivers/lcd: ssd1306: separate lcd_dev_s setup to separate object. g_oleddev takes 1 KiB because framebuffer and was allocated to .data section because of lcd_dev_s function pointer setup. Move lcd_dev_s setup out, so that g_oleddev goes to .bss and avoid wasting ROM.
2017-08-22 08:46:00 -06:00
ussi Kivilinna
89cc4741ac
drivers/lcd: ssd1306: fix memory corruption caused by ssd1306_getrun(). ssd1306_getrun was writing one extra byte (with value 0) past target buffer when pixlen is multiple of 8. When pixlen was not multiple of 8, last byte of buffer was fully cleared, instead of modifying only the (pixlen % 8) bits of last byte.
2017-08-22 08:42:40 -06:00
Jussi Kivilinna
3dfeb9e59f
drivers/lcd: ssd1306: add support for board power control. ThingseeOne has regulator for controlling display power on/off. Patch adds support for board based power control to SSD1306 driver.
2017-08-22 08:40:27 -06:00
Jussi Kivilinna
310a29227a
drivers/lcd: add DD-12864WO-4A/SSD1309 support to SSD1306 driver
2017-08-22 08:32:52 -06:00
Gregory Nutt
95e20afcd2
drivers/: Remove dangling space at the end of lines.
2017-06-28 13:17:17 -06:00
Alan Carvalho de Assis
96e1a80f99
Replace the structure initializer with C89 style
2017-05-26 11:36:36 -03:00
Alan Carvalho de Assis
8df5c29857
Add driver for Nokia 5110 (Philips PCD8544)
2017-05-26 10:53:13 -03:00
Gregory Nutt
e9a5477506
Add an instance argument to the SPIDEV definitions.
2017-04-29 12:26:52 -06:00
Gregory Nutt
d5207efb5a
Be consistent... Use Name: consistent in function headers vs Function:
2017-04-21 16:33:14 -06:00
Gregory Nutt
6c4dac459a
lcd/: PCF8574 backpack logic needs to include poll.h CONFIG_DISABLE_POLL is not set.
2017-03-27 12:28:34 -06:00
Masayuki Ishikawa
e336d24898
drivers/lcd/st7565.c: Use ST7565_POWERCTRL_INT instead of ST7565_POWERCTRL_BRF
2017-03-22 08:21:22 +09:00
Masayuki Ishikawa
591f91ebd3
drivers/lcd/st7565.c: Extend to include support for the AQM_1248A
2017-03-21 15:30:23 +09:00
no1wudi
5528b2836c
fixed the debug method selection of ssd1306
2017-03-07 19:49:18 +08:00
Mark Schulte
28226198a7
memlcd: Mark Schulte <mark@mjs.pw>
2017-03-01 08:52:58 -06:00
Gregory Nutt
0df1c556dc
drivers/lcd: ssd1306_configspi() must have global scope.
2017-02-09 07:45:25 -06:00
Gregory Nutt
d9e040d76b
Remove all Calypso board configurations
2016-12-13 18:24:49 -06:00
Gong Darcy
44b7975a5e
SSD1306: Fix errors in SPI mode configuration
2016-12-04 10:07:46 -06:00
Alpo Leinonen
7d5173ca09
USB host composite: Several syntactic errors fixed
2016-08-29 07:53:57 -06:00
Gregory Nutt
32ebeb15b4
Trivial changes from review of PR 115
2016-08-14 13:47:07 -06:00
Gregory Nutt
ade02a513b
Merged in v01d/nuttx/ssd1306-128 (pull request #115 )
2016-08-14 13:42:24 -06:00
v01d
943c853939
semantic changes
2016-08-14 16:23:13 -03:00
v01d
02a7fd2430
Make OLED 132x64 use 128x64 for the time being
2016-08-14 14:54:58 -03:00
Gregory Nutt
4b582f0ae9
Fix some comments
2016-08-14 07:16:18 -06:00
Gregory Nutt
e963e8d879
Changes from review of PR 112
2016-08-13 16:53:23 -06:00
Gregory Nutt
72a2fed1d0
Merged in v01d/nuttx/ssd1306_fixes (pull request #112 )
...
SH1106 0.96 OLED module support (SSD1306 compatible) + I2C fixes
2016-08-13 16:33:28 -06:00
v01d
21e930cdba
SH1106 0.96 OLED module support (SSD1306 compatible) + I2C fixes
2016-08-13 19:20:20 -03:00
Gregory Nutt
caea59b340
SPI bit order: Add configuration setting to indicate if an architecture-specif SPI implementation does or does not support LSB bit order.
2016-08-08 12:21:20 -06:00
Gregory Nutt
6df28bc74e
Make bit-order SPI H/W feature configurable for better error detection
2016-08-08 11:54:13 -06:00
Gregory Nutt
21859af6d9
Add check of return value in drivers affected by last change: Report the error on a failure to set the bit order.
2016-08-08 08:40:37 -06:00
Gregory Nutt
7d4cb73bd6
STM32 and EFM32 SPI drivers adopted an incompatible conventions somewhere along the line. The set the number of bits to negative when calling SPI_SETBITS which had the magical side-effect of setting LSB first order of bit transmission. This is not only a hokey way to pass control information but is supported by no other SPI drivers.
...
This change three things: (1) It adds HWFEAT_LSBFIRST as a new H/W feature. (2) It changes the implementations of SPI_SETBITS in the STM32 and EFM32 derivers so that negated bit numbers are simply errors and it adds the SPI_HWFEATURES method that can set the LSB bit order, and (3) It changes all calls with negative number of bits from all drivers: The number of bits is now always positive and SPI_HWFEATUREs is called with HWFEAT_LSBFIRST to set the bit order.
2016-08-08 08:28:13 -06:00
Gregory Nutt
2a751068e6
Without lowsyslog() *llerr() is not useful. Eliminate and replace with *err().
2016-06-20 12:44:38 -06:00
Gregory Nutt
0c8c7fecf0
Add _ to the beginning of all debug macros to avoid name collisions
2016-06-16 12:33:32 -06:00
Gregory Nutt
24c51ec1ff
Centralize definitions associated with CONFIG_DEBUG_LCD
2016-06-15 11:40:33 -06:00
Gregory Nutt
0665c7e06c
drivers/: Change some nerr() ERRORS to ninfo() and nwarn() WARNINGS.
2016-06-12 09:26:12 -06:00
Gregory Nutt
a1469a3e95
Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err()
2016-06-11 15:50:49 -06:00
Gregory Nutt
e99301d7c2
Rename *lldbg to *llerr
2016-06-11 14:55:27 -06:00
Gregory Nutt
1cdc746726
Rename CONFIG_DEBUG to CONFIG_DEBUG_FEATURES
2016-06-11 14:14:08 -06:00
Gregory Nutt
fc3540cffe
Replace all occurrences of vdbg with vinfo
2016-06-11 11:59:51 -06:00
Gregory Nutt
3a74a438d9
Rename CONFIG_DEBUG_VERBOSE to CONFIG_DEBUG_INFO
2016-06-11 11:50:18 -06:00
Gregory Nutt
d76d889efd
Restore FLASH_ERASALL in configurations where it was previously selected
2016-06-03 09:10:21 -06:00
Pierre-noel Bouteville
7e2aed942a
Correct conditioinal compilation in ST7565 driver
2016-06-03 08:42:32 -06:00
Gregory Nutt
22044edd12
Merged in ziggurat29/nuttx/stm32l4_i2c_lcd_mjkdz_001 (pull request #35 )
...
correct bugs and add enhancements to pcf8574 lcd backpack driver
2016-05-29 14:02:39 -06:00
ziggurat29
bb7a579681
fleshed out rest of fileops interface; read now takes into consideration current file position (so the display can be read in multiple operations, and indiate EOF correctly), seek (really just to facilitate rewind), and unlink (to facilitate dropping from system at runtime).
2016-05-29 14:53:37 -05:00
ziggurat29
4643fcdfd8
correct logic hazard in latch and load nybble; was transitioning control lines at the same time as enable, causing spurious behaviour on less-tolerant displays
...
improve timing parameters in init sequences for better display compatibility
correct (row,col) -> address calculation; affects 4-line displays
update comments in header and readme
2016-05-29 11:09:00 -05:00
Gregory Nutt
1571575d54
Perhaps this is a little clearer
2016-05-26 13:44:10 -06:00
Gregory Nutt
e57a6d14c3
lcd/Kconfig, Make.defs: Remove dependency of CONFIG_LCD_NXDRIVER for building non-graphic, SLCD drivers.
2016-05-26 07:21:14 -06:00
Gregory Nutt
d58e4acf17
Remove whitespace from the end of lines
2016-05-25 08:48:55 -06:00
Gregory Nutt
51504a032e
Oops... forgot to add PCF8574 LCD Backpack files before doing the commit.
2016-05-25 08:48:54 -06:00
Dave
dc1c27cee7
* This driver supports the 'I2C lcd backpack' design that is based on the PCF8574 io expander. There's a myriad of different vendors of such, but they are principally the same, save wiring and minor features like jumpers for I2C addresses. This driver supports known and unknown variants.
...
* The interface board supports HD44780-based LCD modules up to 4x32, and this driver accommodates all those formats.
2016-05-25 08:06:32 -06:00
Gregory Nutt
69ce24c70c
I2C: Remove the setfrequency method from the interface
2016-02-01 16:31:13 -06:00
Gregory Nutt
6ad641888b
Add I2C frequency to the i2c_msg_s structure
2016-02-01 14:17:20 -06:00
Gregory Nutt
f9053182d3
I2C: Remove setaddress method
2016-02-01 12:14:31 -06:00
Gregory Nutt
3a781a2d3f
Remove I2C slave methods from I2C master interface; rename i2c_dev_s to i2c_master_s.
2016-01-30 08:36:47 -06:00
Gregory Nutt
ceb415204e
Move include/nuttx/i2c.h to include/nuttx/i2c/i2c_master.h
2016-01-30 08:00:16 -06:00
Gregory Nutt
31cf7e0900
Fix missing semicolon
2016-01-23 21:21:15 -06:00
Gregory Nutt
d87f7e99d2
NOkia LCD needs to initialize SPI before using it
2016-01-23 19:45:30 -06:00
Gregory Nutt
7ee6c5bcfc
Minor clean-up for last big commit
2016-01-23 19:18:55 -06:00
Gregory Nutt
7edf921c5e
Remove CONFIG_SPI_OWNBUS: Now it is not just a good idea, it is the law
2016-01-23 18:54:36 -06:00
Gregory Nutt
f6e49caba8
All SPI-based device drivers needs to call SPI_HWFEATURES() with zero in order to co-exist with drivers that use H/W features
2016-01-23 16:18:13 -06:00
Marco Krahl
b1b97e89c8
drivers/lcd/ili9432.c: Fixed errors in orientation. Portrait, RPortrait, and RLandscript should work correly now. They were displayed mirrored. From Marco Krahl
2015-11-25 13:01:37 -06:00
Gregory Nutt
cf14f8d1b5
drivers/: Fixes to spacing and alignement
2015-10-10 10:41:00 -06:00
Pierre-noel Bouteville
59e5e2f5cc
drivers/lcd/st7565.c: Extend to include support for the ERC12864-3. From Pierre-noel Bouteville
2015-10-07 14:30:08 -06:00
Gregory Nutt
af086c40ff
Remove dangling whitespace
2015-10-04 15:28:54 -06:00
Gregory Nutt
0b12dbf95d
Fix some spacing problems
2015-10-04 15:04:00 -06:00
Gregory Nutt
16b32bbadd
Standardize the width of all comment boxes in C files
2015-10-03 07:25:53 -06:00
Gregory Nutt
ac394041bf
Standardize nameing of the pre-processor definitiongs group header
2015-10-02 14:17:29 -06:00
Gregory Nutt
bb595777fd
Eliminate warnings
2015-09-08 10:21:19 -06:00
Paul A. Patience
c080146748
SSD1351 driver: add 8-bit parallel interface
2015-09-06 13:28:28 -04:00
Gregory Nutt
9c66bde5b0
Fix typo in pre-processor command noted by Pierre-noel Bouteville. Also move # of pre-processior command to column 1
2015-09-05 09:10:48 -06:00
Paul A. Patience
01b68e90d0
Add SSD1351 OLED controller support
2015-08-28 18:37:01 -04:00
Alan Carvalho de Assis
d7d15072c4
Updated SSD1306 driver
2015-07-15 13:28:31 -06:00
Gregory Nutt
8580d37352
SSD1306: Rename ssd1306_helpers.h to ssd1306.h. Move all SSD1306 driver definitions from ssd1306_base.c to ssd1306.h
2015-07-15 11:46:28 -06:00
Alan Carvalho de Assis
a3e24a0b6c
Modify the SSD1306 LCD driver to support either the SPI or I2C interface. From Alan Carvalho de Assis,
2015-07-15 11:21:54 -06:00
Gregory Nutt
342f5fe33d
Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation
2015-06-28 08:08:57 -06:00
Gregory Nutt
8ab4ea531e
Update README
2015-04-24 07:48:53 -06:00
Gregory Nutt
a8a3790139
RA8875 LCD driver contributed by Marten Svanfeldt
2015-04-24 07:46:03 -06:00
Gregory Nutt
e4d2822af8
Make some file section headers more consistent with standard
2015-04-08 07:15:32 -06:00
Gregory Nutt
e9e386ac6e
Add ILI9488 header file
2015-04-03 07:12:11 -06:00
Gregory Nutt
e7470e0834
Update dates in all skeleton files
2015-02-13 06:13:34 -06:00
Gregory Nutt
2994448d85
More fixes to problems noted by cppcheck. Some are kind of risky; some are real bugs.
2014-11-25 13:15:09 -06:00
Gregory Nutt
8d00912207
Add mirror (x/y) and inverse video (black<->white) options to the ST7565 LCD driver. From Pierre-noel Bouteville.
2014-11-15 06:43:12 -06:00
Gregory Nutt
e03c764d92
I don't think that the net_route function has ever worked correctly. The source ip was updated in the match struct instead of the route ip. From Brennan Ashton.
2014-11-14 16:45:25 -06:00
Gregory Nutt
ca15802ae5
Trival fix to comment
2014-11-14 10:58:13 -06:00
Gregory Nutt
9f3d4b30fb
Add st7565.c to build
2014-11-14 06:55:16 -06:00
Gregory Nutt
3576e249b5
Add driver for ST7565 that works with NHD‐C12864KGZ display. From Pierre-noel Bouteville.
2014-11-13 16:03:52 -06:00
Gregory Nutt
fa3753c466
rivers: enable usage of ili9341
...
This enables build and configuration of the ili9341 lcd interface driver.
Signed-off-by: Marco Krahl <ocram.lhark@gmail.com>
2014-10-20 15:27:56 -06:00