The NetBSD Project

CVS log for src/sys/dev/ic/ssdfb.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev / ic

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.22 / (download) - annotate - [select for diffs], Sat Aug 21 17:50:02 2021 UTC (2 years, 7 months ago) by tnn
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.21: +4 -2 lines
Diff to previous 1.21 (colored)

ssdfb: add missing break in switch. Unbreaks contrast setting for SSD1353

spotted by hannken@

Revision 1.21 / (download) - annotate - [select for diffs], Sat Aug 7 16:19:12 2021 UTC (2 years, 8 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2
Changes since 1.20: +3 -3 lines
Diff to previous 1.20 (colored)

Merge thorpej-cfargs2.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Aug 6 18:15:48 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
Changes since 1.19: +5 -2 lines
Diff to previous 1.19 (colored)

conditionally put back the include of <uvm/uvm_page.h>

This is a kludge to fix the build on some ports. According to pmap(9),
including <uvm/uvm_extern.h> should be sufficient to use
"bool pmap_is_modified(struct vm_page *pg)". However, on several ports,
the function is implemented as a macro and depends on implementation
details of "struct vm_page *", which is normally an incomplete forward
declaration only. XXX revert when all ports are fixed.

Revision 1.19 / (download) - annotate - [select for diffs], Thu Aug 5 22:31:20 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
Changes since 1.18: +11 -6 lines
Diff to previous 1.18 (colored)

ssdfb: revert rev 1.14

Can't run the worker thread MPSAFE with spi(4) yet because most controller
drivers still lack MP safety. Cause issues when using multiple displays.

Revision 1.18 / (download) - annotate - [select for diffs], Thu Aug 5 19:07:09 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
Changes since 1.17: +226 -4 lines
Diff to previous 1.17 (colored)

ssdfb: support the SSD1353 controller and the DEP 160128A(1)-RGB display

DEP 160128A is a 160x128 18-bit RGB OLED display module advertised as
having an 8-bit parallel I/O interface. The controller can however attach
serially via spi(4) by moving jumper resistors J1 and J2 to GND position.

Revision 1.17 / (download) - annotate - [select for diffs], Thu Aug 5 00:16:36 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
CVS Tags: thorpej-futex2-base, thorpej-futex2
Changes since 1.16: +35 -10 lines
Diff to previous 1.16 (colored)

ssdfb: prepare for supporting rgb color displays

Revision 1.16 / (download) - annotate - [select for diffs], Thu Aug 5 00:02:51 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
Changes since 1.15: +12 -10 lines
Diff to previous 1.15 (colored)

ssdfb: make it work on big-endian

Revision 1.14.2.1 / (download) - annotate - [select for diffs], Wed Aug 4 20:14:42 2021 UTC (2 years, 8 months ago) by thorpej
Branch: thorpej-cfargs2
Changes since 1.14: +3 -3 lines
Diff to previous 1.14 (colored) next main 1.15 (colored)

Adapt to CFARGS().

Revision 1.15 / (download) - annotate - [select for diffs], Mon Aug 2 14:00:48 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
Changes since 1.14: +5 -5 lines
Diff to previous 1.14 (colored)

ssdfb: define SSD1353 command set

also adjust some SSD1322 command names

Revision 1.13.2.1 / (download) - annotate - [select for diffs], Sun Aug 1 22:42:23 2021 UTC (2 years, 8 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.13: +6 -11 lines
Diff to previous 1.13 (colored) next main 1.14 (colored)

Sync with HEAD.

Revision 1.14 / (download) - annotate - [select for diffs], Fri Jul 30 13:44:09 2021 UTC (2 years, 8 months ago) by tnn
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf-base, thorpej-cfargs2-base
Branch point for: thorpej-cfargs2
Changes since 1.13: +6 -11 lines
Diff to previous 1.13 (colored)

ssdfb(4): remove code for dealing with non-MPSAFE attachment

spi(4) was marked MPSAFE some time ago, so we're always on an
MPSAFE parent device.

Revision 1.13 / (download) - annotate - [select for diffs], Sat Apr 24 23:36:55 2021 UTC (2 years, 11 months ago) by thorpej
Branch: MAIN
CVS Tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Branch point for: thorpej-i2c-spi-conf
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored)

Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
  actually needed.
- Don't be explicit about what interface attribute is attaching if
  the device only has one.  (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
  situations, making is visibly easier to see when indirect config is
  in play, and allowing for future change in semantics.  (As of now,
  this is just a wrapper around config_match(), but that is an
  implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance.  This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).

Revision 1.12.4.1 / (download) - annotate - [select for diffs], Sun Mar 21 21:09:12 2021 UTC (3 years ago) by thorpej
Branch: thorpej-cfargs
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored) next main 1.13 (colored)

Give config_found() the same variadic arguments treatment as
config_search().  This commit only adds the CFARG_EOL sentinel
to the existing config_found() calls.  Conversion of config_found_sm_loc()
and config_found_ia() call sites will be in subsequent commits.

Revision 1.12 / (download) - annotate - [select for diffs], Sat Sep 5 16:30:11 2020 UTC (3 years, 7 months ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-futex, thorpej-cfargs-base
Branch point for: thorpej-cfargs
Changes since 1.11: +6 -5 lines
Diff to previous 1.11 (colored)

Round of uvm.h cleanup.

The poorly named uvm.h is generally supposed to be for uvm-internal
users only.

- Narrow it to files that actually need it -- mostly files that need
  to query whether curlwp is the pagedaemon, which should maybe be
  exposed by an external header.

- Use uvm_extern.h where feasible and uvm_*.h for things not exposed
  by it.  We should split up uvm_extern.h but this will serve for now
  to reduce the uvm.h dependencies.

- Use uvm_stat.h and #ifdef UVMHIST uvm.h for files that use
  UVMHIST(ubchist), since ubchist is declared in uvm.h but the
  reference evaporates if UVMHIST is not defined, so we reduce header
  file dependencies.

- Make uvm_device.h and uvm_swap.h independently includable while
  here.

ok chs@

Revision 1.6.2.4 / (download) - annotate - [select for diffs], Mon Apr 13 08:04:22 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.6.2.3: +314 -64 lines
Diff to previous 1.6.2.3 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.6.2.3 / (download) - annotate - [select for diffs], Wed Apr 8 14:08:06 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.6.2.2: +4 -4 lines
Diff to previous 1.6.2.2 (colored) to branchpoint 1.6 (colored)

Merge changes from current as of 20200406

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Sat Feb 29 20:19:08 2020 UTC (4 years, 1 month ago) by ad
Branch: ad-namecache
Changes since 1.10: +4 -4 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)

Sync with head.

Revision 1.11 / (download) - annotate - [select for diffs], Sun Feb 23 15:46:39 2020 UTC (4 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3
Changes since 1.10: +4 -4 lines
Diff to previous 1.10 (colored)

UVM locking changes, proposed on tech-kern:

- Change the lock on uvm_object, vm_amap and vm_anon to be a RW lock.
- Break v_interlock and vmobjlock apart.  v_interlock remains a mutex.
- Do partial PV list locking in the x86 pmap.  Others to follow later.

Revision 1.10 / (download) - annotate - [select for diffs], Sat Nov 2 17:13:20 2019 UTC (4 years, 5 months ago) by tnn
Branch: MAIN
CVS Tags: phil-wifi-20191119, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Changes since 1.9: +4 -3 lines
Diff to previous 1.9 (colored)

fix hang when SSDFB_ATTACH_FLAG_CONSOLE used with spi

Revision 1.9 / (download) - annotate - [select for diffs], Sat Nov 2 14:18:36 2019 UTC (4 years, 5 months ago) by tnn
Branch: MAIN
Changes since 1.8: +305 -57 lines
Diff to previous 1.8 (colored)

ssdfb: add support for SSD1322

Revision 1.8 / (download) - annotate - [select for diffs], Tue Oct 22 22:03:27 2019 UTC (4 years, 5 months ago) by tnn
Branch: MAIN
Changes since 1.7: +13 -8 lines
Diff to previous 1.7 (colored)

allow to have a per-product init function

Revision 1.7 / (download) - annotate - [select for diffs], Tue Oct 22 21:41:01 2019 UTC (4 years, 5 months ago) by tnn
Branch: MAIN
Changes since 1.6: +6 -10 lines
Diff to previous 1.6 (colored)

use __SHIFTIN

Revision 1.6.2.2 / (download) - annotate - [select for diffs], Mon Jun 10 22:07:11 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.6.2.1: +1039 -0 lines
Diff to previous 1.6.2.1 (colored) to branchpoint 1.6 (colored)

Sync with HEAD

Revision 1.6.2.1, Wed Jun 5 20:32:28 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.6: +0 -1039 lines
FILE REMOVED

file ssdfb.c was added on branch phil-wifi on 2019-06-10 22:07:11 +0000

Revision 1.6 / (download) - annotate - [select for diffs], Wed Jun 5 20:32:28 2019 UTC (4 years, 10 months ago) by tnn
Branch: MAIN
CVS Tags: phil-wifi-20190609, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9
Branch point for: phil-wifi
Changes since 1.5: +3 -2 lines
Diff to previous 1.5 (colored)

add missing kthread_exit

Revision 1.5 / (download) - annotate - [select for diffs], Tue Jun 4 16:36:18 2019 UTC (4 years, 10 months ago) by tnn
Branch: MAIN
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)

revert previous as suggested by mrg IPL_SCHED is correct here

Revision 1.4 / (download) - annotate - [select for diffs], Thu May 30 07:37:17 2019 UTC (4 years, 10 months ago) by tnn
Branch: MAIN
Changes since 1.3: +5 -4 lines
Diff to previous 1.3 (colored)

- include uvm.h before uvm_device.h
- don't need IPL_SCHED here

Revision 1.3 / (download) - annotate - [select for diffs], Sun Mar 17 04:03:17 2019 UTC (5 years, 1 month ago) by tnn
Branch: MAIN
CVS Tags: isaki-audio2-base, isaki-audio2
Changes since 1.2: +36 -5 lines
Diff to previous 1.2 (colored)

ensure the device's UVM pager object is present before using uvm_pageratop

Revision 1.2 / (download) - annotate - [select for diffs], Sun Mar 17 01:33:02 2019 UTC (5 years, 1 month ago) by tnn
Branch: MAIN
Changes since 1.1: +12 -7 lines
Diff to previous 1.1 (colored)

formatting

Revision 1.1 / (download) - annotate - [select for diffs], Sun Mar 17 00:57:15 2019 UTC (5 years, 1 month ago) by tnn
Branch: MAIN

add ssdfb

The ssdfb driver provides wsdisplay(4) support for OLED/PLED framebuffer
modules based on one of the following controller chips:

- Solomon Systech Ltd SSD1306
- Sino Wealth Electronic Ltd SH1106

It supports xf86-video-wsfb and can optionally attach as the console.

Some products that should work with this driver include:
- Adafruit 0.96" 128x64 OLED graphic display
- Adafruit 1.3" 128x64 OLED graphic display
- Adafruit 128x32 OLED graphic display
- Adafruit PiOLED 128x32 Monochome OLED for Raspberry Pi
- "GM009605" commonly distributed with Arduino starter kits
- display modules made by Chengdu Heltec Automation technology co. LTD

Note: I used the name ssdfb(4) because that's what OpenBSD calls their
driver but the implementation is entirely unique to NetBSD.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>