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


Keyword substitution: kv
Default branch: MAIN


Revision 1.22: download - view: text, markup, annotated - select for diffs
Sat Aug 21 17:50:02 2021 UTC (3 years, 6 months ago) by tnn
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, netbsd-10-base, netbsd-10-1-RELEASE, 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
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +4 -2 lines
ssdfb: add missing break in switch. Unbreaks contrast setting for SSD1353

spotted by hannken@

Revision 1.21: download - view: text, markup, annotated - select for diffs
Sat Aug 7 16:19:12 2021 UTC (3 years, 7 months ago) by thorpej
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +3 -3 lines
Merge thorpej-cfargs2.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Fri Aug 6 18:15:48 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +5 -2 lines
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 - view: text, markup, annotated - select for diffs
Thu Aug 5 22:31:20 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +11 -6 lines
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 - view: text, markup, annotated - select for diffs
Thu Aug 5 19:07:09 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +226 -4 lines
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 - view: text, markup, annotated - select for diffs
Thu Aug 5 00:16:36 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
CVS tags: thorpej-futex2-base, thorpej-futex2
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +35 -10 lines
ssdfb: prepare for supporting rgb color displays

Revision 1.16: download - view: text, markup, annotated - select for diffs
Thu Aug 5 00:02:51 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +12 -10 lines
ssdfb: make it work on big-endian

Revision 1.14.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 4 20:14:42 2021 UTC (3 years, 7 months ago) by thorpej
Branches: thorpej-cfargs2
Diff to: previous 1.14: preferred, colored; next MAIN 1.15: preferred, colored
Changes since revision 1.14: +3 -3 lines
Adapt to CFARGS().

Revision 1.15: download - view: text, markup, annotated - select for diffs
Mon Aug 2 14:00:48 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +5 -5 lines
ssdfb: define SSD1353 command set

also adjust some SSD1322 command names

Revision 1.13.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 1 22:42:23 2021 UTC (3 years, 7 months ago) by thorpej
Branches: thorpej-i2c-spi-conf
Diff to: previous 1.13: preferred, colored; next MAIN 1.14: preferred, colored
Changes since revision 1.13: +6 -11 lines
Sync with HEAD.

Revision 1.14: download - view: text, markup, annotated - select for diffs
Fri Jul 30 13:44:09 2021 UTC (3 years, 7 months ago) by tnn
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf-base, thorpej-cfargs2-base
Branch point for: thorpej-cfargs2
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +6 -11 lines
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 - view: text, markup, annotated - select for diffs
Sat Apr 24 23:36:55 2021 UTC (3 years, 10 months ago) by thorpej
Branches: 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
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +3 -3 lines
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 - view: text, markup, annotated - select for diffs
Sun Mar 21 21:09:12 2021 UTC (3 years, 11 months ago) by thorpej
Branches: thorpej-cfargs
Diff to: previous 1.12: preferred, colored; next MAIN 1.13: preferred, colored
Changes since revision 1.12: +3 -3 lines
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 - view: text, markup, annotated - select for diffs
Sat Sep 5 16:30:11 2020 UTC (4 years, 6 months ago) by riastradh
Branches: MAIN
CVS tags: thorpej-futex-base, thorpej-futex, thorpej-cfargs-base
Branch point for: thorpej-cfargs
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +6 -5 lines
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 - view: text, markup, annotated - select for diffs
Mon Apr 13 08:04:22 2020 UTC (4 years, 11 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.6.2.3: preferred, colored; branchpoint 1.6: preferred, colored; next MAIN 1.7: preferred, colored
Changes since revision 1.6.2.3: +314 -64 lines
Mostly merge changes from HEAD upto 20200411

Revision 1.6.2.3: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:08:06 2020 UTC (4 years, 11 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.6.2.2: preferred, colored; branchpoint 1.6: preferred, colored
Changes since revision 1.6.2.2: +4 -4 lines
Merge changes from current as of 20200406

Revision 1.10.2.1: download - view: text, markup, annotated - select for diffs
Sat Feb 29 20:19:08 2020 UTC (5 years ago) by ad
Branches: ad-namecache
Diff to: previous 1.10: preferred, colored; next MAIN 1.11: preferred, colored
Changes since revision 1.10: +4 -4 lines
Sync with head.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Sun Feb 23 15:46:39 2020 UTC (5 years ago) by ad
Branches: 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
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +4 -4 lines
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 - view: text, markup, annotated - select for diffs
Sat Nov 2 17:13:20 2019 UTC (5 years, 4 months ago) by tnn
Branches: MAIN
CVS tags: phil-wifi-20191119, ad-namecache-base2, ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +4 -3 lines
fix hang when SSDFB_ATTACH_FLAG_CONSOLE used with spi

Revision 1.9: download - view: text, markup, annotated - select for diffs
Sat Nov 2 14:18:36 2019 UTC (5 years, 4 months ago) by tnn
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +305 -57 lines
ssdfb: add support for SSD1322

Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue Oct 22 22:03:27 2019 UTC (5 years, 4 months ago) by tnn
Branches: MAIN
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +13 -8 lines
allow to have a per-product init function

Revision 1.7: download - view: text, markup, annotated - select for diffs
Tue Oct 22 21:41:01 2019 UTC (5 years, 4 months ago) by tnn
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +6 -10 lines
use __SHIFTIN

Revision 1.6.2.2: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:07:11 2019 UTC (5 years, 9 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.6.2.1: preferred, colored; branchpoint 1.6: preferred, colored
Changes since revision 1.6.2.1: +1039 -0 lines
Sync with HEAD

Revision 1.6.2.1
Wed Jun 5 20:32:28 2019 UTC (5 years, 9 months ago) by christos
Branches: phil-wifi
FILE REMOVED
Changes since revision 1.6: +0 -1039 lines
file ssdfb.c was added on branch phil-wifi on 2019-06-10 22:07:11 +0000

Revision 1.6: download - view: text, markup, annotated - select for diffs
Wed Jun 5 20:32:28 2019 UTC (5 years, 9 months ago) by tnn
Branches: MAIN
CVS tags: phil-wifi-20190609, netbsd-9-base, netbsd-9-4-RELEASE, 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
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +3 -2 lines
add missing kthread_exit

Revision 1.5: download - view: text, markup, annotated - select for diffs
Tue Jun 4 16:36:18 2019 UTC (5 years, 9 months ago) by tnn
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +3 -3 lines
revert previous as suggested by mrg IPL_SCHED is correct here

Revision 1.4: download - view: text, markup, annotated - select for diffs
Thu May 30 07:37:17 2019 UTC (5 years, 9 months ago) by tnn
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +5 -4 lines
- include uvm.h before uvm_device.h
- don't need IPL_SCHED here

Revision 1.3: download - view: text, markup, annotated - select for diffs
Sun Mar 17 04:03:17 2019 UTC (6 years ago) by tnn
Branches: MAIN
CVS tags: isaki-audio2-base, isaki-audio2
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +36 -5 lines
ensure the device's UVM pager object is present before using uvm_pageratop

Revision 1.2: download - view: text, markup, annotated - select for diffs
Sun Mar 17 01:33:02 2019 UTC (6 years ago) by tnn
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +12 -7 lines
formatting

Revision 1.1: download - view: text, markup, annotated - select for diffs
Sun Mar 17 00:57:15 2019 UTC (6 years ago) by tnn
Branches: 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.

Diff request

This form allows you to request diffs 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.

Log view options

CVSweb <webmaster@jp.NetBSD.org>