RTC unter Raspbian Jessie

Rund um die Hardware des Revolution Pi
Sipple
Posts: 12
Joined: 07 Feb 2017, 08:28
Answers: 0

RTC unter Raspbian Jessie

Post by Sipple »

Guten Morgen

Ich habe mir das RevPI-Original-Wheezy-Image mal angesehen und die HW-RTC "gefunden".

i2cdetect -y 1

Code: Select all

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --  
0x51 (UU), das ist die RTC. (Zwischenfrage: was ist das auf Adresse 0x60?).
Dazu lsmod

Code: Select all

Module                  Size  Used by
piControl             135702  2 
cfg80211              501166  0 
rfkill                 21040  1 cfg80211
i2c_dev                 6604  0 
snd_bcm2835            22497  0 
snd_pcm                92671  1 snd_bcm2835
snd_seq                56247  0 
snd_seq_device          5122  1 snd_seq
snd_timer              21540  2 snd_pcm,snd_seq
snd                    67532  5 snd_bcm2835,snd_timer,snd_pcm,snd_seq,snd_seq_device
rtc_pcf2127             3248  0 
evdev                  10946  2 
spi_bcm2835             8072  0 
i2c_bcm2708             6004  0 
bcm2835_gpiomem         3695  0 
bcm2835_rng             2207  0 
uio_pdrv_genirq         3622  0 
uio                    10090  1 uio_pdrv_genirq
Darin sind mindestens die Einträge i2c_bcm2708, i2c_dev und rtc_pcf2127 relevant. Letzteres ist der Treiber für die eigentliche RTC.
In /etc/modules steht

Code: Select all

snd-bcm2835
i2c-bcm2708
i2c-dev
Und schließlich noch zwei Zeilen in der /boot/config.txt

Code: Select all

dtparam=i2c=on
dtoverlay=i2c-rtc,pcf2127
Also eigentlich alles wie erwartet und wie man z.B. hier https://afterthoughtsoftware.com/products/rasclock schön nachlesen kann.

Da ich für mein Projekt keine zusätzlichen Module brauche und auch keinen Desktop oder Prozessabbild, Pictory etc., habe ich den RevPI mit dem ua-netinst Jessie image installiert. Soweit alles wunderbar.
Jetzt dachte ich, geh ich nach der oben verlinkten Anleitung vor und schon geht die RTC auch bei mir unter Jessie. War wohl zu einfach :?
i2cdetect findet die Uhr ebenfalls auf 0x51 (nur das Gerät auf 0x60 ist weg).

Code: Select all

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Der RTC Treiber ist wohl auch schon damit verknüpft (siehe UU). lsmod ist bei mir identisch und /etc/modules ebenfalls.
Auch in der /boot/config.txt habe ich dieselben Einträge drin, wobei es da zwei Varianten gibt, die ich beide versucht habe (dtparam=i2c=on oder dtparam=i2c_arm=on).
fake-hwclock habe ich mit apt-get purge entfernt.
hwclock liefert "hwclock: ioctl(RTC_RD_TIME) to /dev/rtc to read the time failed: Input/output error", was mich nicht wundert, denn ein /dev/rtc gibt es nicht, dafür aber ein /dev/@rtc und ein /dev/rtc0.
Auszug aus dmesg:

Code: Select all

[   15.148293] bcm2708_i2c 20804000.i2c: BSC1 Controller at 0x20804000 (irq 77) (baudrate 100000)
[   16.599539] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
[   16.650540] rtc-pcf2127 1-0051: rtc core: registered rtc-pcf2127 as rtc0
[   16.796465] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
[   16.818665] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
[   16.828459] systemd-journald[172]: Received request to flush runtime journal from PID 1
[   17.661836] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[   17.671722] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   19.490069] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xC1E1
[   19.503607] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   28.740195] rtc-pcf2127 1-0051: pcf2127_set_datetime: err=-5
[   28.798920] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
[   29.738604] rtc-pcf2127 1-0051: pcf2127_set_datetime: err=-5
[   29.744636] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
[   29.755205] rtc-pcf2127 1-0051: pcf2127_set_datetime: err=-5
[   29.763691] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
[   30.748628] rtc-pcf2127 1-0051: pcf2127_set_datetime: err=-5
[   30.754653] rtc-pcf2127 1-0051: pcf2127_get_datetime: read error
Die letzten Zeilen wiederholen sich nun ständig.
Ich glaube die entscheidende Zeile ist "rtc core: registered rtc-pcf2127 as rtc0" und natürlich die sich wiederholenden Zeilen
pcf2127_set_datetime: err=-5
pcf2127_get_datetime: read error

Irgendwo hakt es, ich weiß aber nicht wo. Ist da fake-hwclock noch nicht vollständig entfernt und beißt sich (wie überprüfe ich das, Pakete sind weg)? Fehlt noch irgend etwas?
Da habe ich gestern einige Stunden rumgespielt und nichts hat geholfen.
Wäre Euch dankbar, wenn Ihr mir da helfen könntet. Nicht, dass die RTC so wahnsinnig wichtig wäre, aber ich dachte, das geht ganz einfach und das wurmt mich :)

Gruß, Martin
User avatar
volker
Posts: 1046
Joined: 09 Nov 2016, 15:41
Answers: 1

Re: RTC unter Raspbian Jessie

Post by volker »

Hi Martin,
da wir ja auch gerade Jessie portiert haben und es bald als Image anbieten werden, kann Dir unser Systemexperte dazu sicher etwas sagen. Bitte hab Geduld, das kann bis Dienstag dauern...
Unser RevPi Motto: Don't just claim it - make it!
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29
Answers: 0

Re: RTC unter Raspbian Jessie

Post by lukas »

Hallo Martin,

du hast alles richtig gemacht, es fehlt nur noch folgendes in der /boot/config.txt:

Code: Select all

dtoverlay=i2c1-bcm2708,sda1_pin=44,scl1_pin=45,pin_func=6
Anschließend sollte es funktionieren. Falls nicht bitte nochmal melden.

Hintergrund ist, dass die Basisplatine im RevPi Core für i2c die GPIO Pins 44 und 45 verdrahtet, anstelle der standardmäßig im DeviceTree verwendeten 2 und 3, mit obiger Zeile wird der GPIO Mux vom BCM2835 auf die richtigen Pins umkonfiguriert. Die möglichen Konfigurationen des GPIO Mux sind in der peripheral specification ab Seite 102 dokumentiert.

Auf unserem wheezy Image werden die Pins vom kunbus.dtb Overlay konfiguriert. Aber beim jessie Image der Foundation geht's auch mit dem obigen Overlay. Die kunbus.dtb korrigiert ansonsten nur die SPI Pins.

Dass i2cdetect trotz falscher Pins auf der 0x51 glaubt ein Gerät zu erkennen dürfte eine Ente sein, laut Manpage bedeutet UU: "Probing was skipped, because this address is currently in use by a driver. This strongly suggests that there is a chip at this address." Vermutlich hat sich der Kerneltreiber an diese Adresse gebunden, aber der findet dort ja laut dmesg Output nichts vor.

Auf der Adresse 0x60 sitzt der Atmel CryptoChip.

Lukas
Sipple
Posts: 12
Joined: 07 Feb 2017, 08:28
Answers: 0

Re: RTC unter Raspbian Jessie

Post by Sipple »

Hallo Lukas

Danke dir. Das wird es sein, macht alles Sinn. Werde ich die nächsten Tage gleich probieren.

Nebenbei: ich bin schwer beeindruckt über den Support hier. Schnell, kompetent, nett. Erstklassig!
Ich freue mich schon auf den angekündigten Home-RevPi. Schade, dass ich nicht auf die embedded world kommen kann.
Weiter so :)

Gruß, Martin
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29
Answers: 0

Re: RTC unter Raspbian Jessie

Post by lukas »

Noch was:

Mit jessie wird auf dem RevPi Core von Haus aus bei jedem Booten die Systemzeit auf die Epoch zurückgesetzt und damit die RTC überschrieben. Dafür scheint systemd verantwortlich zu sein, ich habe den Eindruck dass der nicht damit klarkommt dass der Treiber für die RTC erst verspätet zur Verfügung steht (weil als Modul kompiliert).

Zwar gibt es eine udev-Regel, die die Systemzeit anhand der RTC setzt sobald diese zur Verfügung steht, aber das aufgerufene Script /lib/udev/hwclock-set steigt sofort aus wenn systemd läuft. Die meisten Leute lösen das durch Auskommentieren dieser Zeilen in dem Script, aber beim nächsten Update vom util-linux Package wird die Änderung überschrieben:

Code: Select all

#if [ -e /run/systemd/system ] ; then
#    exit 0
#fi
Sipple
Posts: 12
Joined: 07 Feb 2017, 08:28
Answers: 0

Re: RTC unter Raspbian Jessie

Post by Sipple »

Ja, habe ich auch schon gelesen.
Ich habe die Änderungen jetzt alle drin und es funktioniert augenscheinlich alles einwandfrei.
Danke nochmal!

Gruß, Martin
Sipple
Posts: 12
Joined: 07 Feb 2017, 08:28
Answers: 0

Re: RTC unter Raspbian Jessie

Post by Sipple »

Servus

Ich muss den Thread nochmal rauskramen, weil ich schlicht verzweifle.

Alles was oben beschrieben wurde hat bei mir anfangs wunderbar funktioniert. Sprich, Debian Jessie mit I2C für die RTC.
Nachdem das und alles andere so funktioniert hat wie ich wollte, habe ich den RevPI in Ruhe seinen Job erledigen lassen und nichts mehr verändert. Außer apt-get update und apt-get upgrade, damit evtl. Sicherheitsupdates installiert werden.

Gestern viel mir dann auf, dass die RTC nicht mehr funktioniert. i2cdetect meldet:

Code: Select all

i2cdetect -y 1
Error: Could not open file `/dev/i2c-1' or `/dev/i2c/1': No such file or directory
Was stimmt, denn auf einmal gibt es kein I2C device mehr in /dev, auch nicht -0 oder vergleichbares. Also nachgesehen, was mit lsmod rauskommt und in /etc/modules steht:

Code: Select all

lsmod
Module                  Size  Used by
i2c_bcm2708             5772  0
cpufreq_stats           4072  0
ftdi_sio               32838  0
usbserial              29964  1 ftdi_sio
bcm2835_gpiomem         3855  0
bcm2835_wdt             4165  0
uio_pdrv_genirq         3750  0
uio                    10294  1 uio_pdrv_genirq
i2c_dev                 6546  0
snd_bcm2835            28208  0
snd_pcm                95569  1 snd_bcm2835
snd_timer              22460  1 snd_pcm
snd                    68420  3 snd_bcm2835,snd_timer,snd_pcm
ipv6                  377222  26

Code: Select all

cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

snd-bcm2835
i2c-bcm2708
i2c-dev
und hier noch die /boot/config.txt:

Code: Select all

cat /boot/config.txt
[pi1]
kernel=vmlinuz-4.4.0-1-rpi
initramfs initrd.img-4.4.0-1-rpi followkernel
# to enable DeviceTree, comment out the next line
gpu_mem=16
device_tree=
dtoverlay=i2c1-bcm2708,sda1_pin=44,scl1_pin=45,pin_func=6
dtparam=i2c=on
dtoverlay=i2c-rtc,pcf2127
Das passt doch alles??? Ich habe natürlich mit allen möglichen Parametern gespielt (z.B. dtparam=i2c_arm=on udgl.), aber es will einfach nicht mehr. Alles, was ich sagen kann ist, dass wohl ein Kernel Update gelaufen ist. Kernel ist jetzt:

Code: Select all

uname -a
Linux RevPi 4.4.0-1-rpi #1 Debian 4.4.6-1+rpi14 (2016-05-05) armv6l GNU/Linux
Ich habe mich inzwischen halb tot gegoogelt und wie gesagt gefühlt 100 Optionen versucht. Kein Erfolg. 99,9% der Treffer im Netz sind eh uralt.

Hier noch die dmesg:

Code: Select all

dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.4.0-1-rpi (debian-kernel@lists.debian.org) (gcc version 4.9.2 (Raspbian 4.9.2-10) ) #1 Debian 4.4.6-1+rpi14 (2016-05-05)
[    0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr=00c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
[    0.000000] Machine model: Raspberry Pi Compute Module Rev 1.0
[    0.000000] cma: Reserved 8 MiB at 0x1e000000
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 126976
[    0.000000] free_area_init_node: node 0, pgdat c08ecfc0, node_mem_map ddba4000
[    0.000000]   Normal zone: 1116 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 126976 pages, LIFO batch:31
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 125860
[    0.000000] Kernel command line: bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbdepth=16 bcm2708_fb.fbswap=1 smsc95xx.macaddr=B8:27:EB:38:9D:56 vc_mem.mem_base=0x1fa00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 elevator=deadline root=/dev/mmcblk0p2 rootfstype=ext4 rootwait
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 479008K/507904K available (6326K kernel code, 449K rwdata, 1972K rodata, 396K init, 741K bss, 20704K reserved, 8192K cma-reserved)
[    0.000000] Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xdf800000 - 0xff800000   ( 512 MB)
    lowmem  : 0xc0000000 - 0xdf000000   ( 496 MB)
    modules : 0xbf000000 - 0xc0000000   (  16 MB)
      .text : 0xc0008000 - 0xc0822c4c   (8300 kB)
      .init : 0xc0823000 - 0xc0886000   ( 396 kB)
      .data : 0xc0886000 - 0xc08f64b0   ( 450 kB)
       .bss : 0xc08f64b0 - 0xc09af99c   ( 742 kB)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000029] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 2147483647500ns
[    0.000070] clocksource: timer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275 ns
[    0.000169] bcm2835: system timer (irq = 27)
[    0.000570] Console: colour dummy device 80x30
[    0.001454] console [tty1] enabled
[    0.001508] Calibrating delay loop... 697.95 BogoMIPS (lpj=3489792)
[    0.060335] pid_max: default: 32768 minimum: 301
[    0.060746] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.060817] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.061880] Disabling cpuset control group subsystem
[    0.061987] Initializing cgroup subsys io
[    0.062054] Initializing cgroup subsys memory
[    0.062138] Initializing cgroup subsys devices
[    0.062201] Initializing cgroup subsys freezer
[    0.062258] Initializing cgroup subsys net_cls
[    0.062313] Initializing cgroup subsys perf_event
[    0.062368] Initializing cgroup subsys net_prio
[    0.062425] Initializing cgroup subsys pids
[    0.062560] CPU: Testing write buffer coherency: ok
[    0.062677] ftrace: allocating 21745 entries in 64 pages
[    0.179869] Setting up static identity map for 0x81c0 - 0x821c
[    0.181784] devtmpfs: initialized
[    0.190748] VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5
[    0.191530] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.193422] pinctrl core: initialized pinctrl subsystem
[    0.194482] NET: Registered protocol family 16
[    0.200094] DMA: preallocated 4096 KiB pool for atomic coherent allocations
[    0.201251] cpuidle: using governor ladder
[    0.201332] cpuidle: using governor menu
[    0.209725] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
[    0.209810] hw-breakpoint: maximum watchpoint size is 4 bytes.
[    0.210094] Serial: AMBA PL011 UART driver
[    0.210694] bcm2835-mbox 2000b880.mailbox: mailbox enabled
[    0.254325] bcm2835-dma 20007000.dma: DMA legacy API manager at f2007000, dmachans=0x1
[    0.257566] SCSI subsystem initialized
[    0.257909] usbcore: registered new interface driver usbfs
[    0.258089] usbcore: registered new interface driver hub
[    0.258331] usbcore: registered new device driver usb
[    0.259762] raspberrypi-firmware soc:firmware: Attached to firmware from 2017-04-27 17:21
[    0.287683] clocksource: Switched to clocksource timer
[    0.342076] FS-Cache: Loaded
[    0.342604] CacheFiles: Loaded
[    0.365019] NET: Registered protocol family 2
[    0.366425] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.366582] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    0.366714] TCP: Hash tables configured (established 4096 bind 4096)
[    0.366846] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.366914] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.367316] NET: Registered protocol family 1
[    0.368115] RPC: Registered named UNIX socket transport module.
[    0.368195] RPC: Registered udp transport module.
[    0.368235] RPC: Registered tcp transport module.
[    0.368270] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.368771] Trying to unpack rootfs image as initramfs...
[    1.134601] Freeing initrd memory: 5792K (dea48000 - deff0000)
[    1.145532] hw perfevents: enabled with armv6_1176 PMU driver, 3 counters available
[    1.147654] futex hash table entries: 256 (order: -1, 3072 bytes)
[    1.147981] audit: initializing netlink subsys (disabled)
[    1.148109] audit: type=2000 audit(1.060:1): initialized
[    1.163975] zbud: loaded
[    1.165343] VFS: Disk quotas dquot_6.6.0
[    1.165787] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    1.168681] FS-Cache: Netfs 'nfs' registered for caching
[    1.170185] NFS: Registering the id_resolver key type
[    1.170326] Key type id_resolver registered
[    1.170372] Key type id_legacy registered
[    1.175874] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    1.176409] io scheduler noop registered
[    1.176498] io scheduler deadline registered (default)
[    1.176944] io scheduler cfq registered
[    1.180315] BCM2708FB: allocated DMA memory 9e400000
[    1.180448] BCM2708FB: allocated DMA channel 0 @ f2007000
[    1.185882] Console: switching to colour frame buffer device 82x26
[    1.192719] bcm2835-rng 20104000.rng: hwrng registered
[    1.194602] vc-cma: Videocore CMA driver
[    1.196193] vc-cma: vc_cma_base      = 0x00000000
[    1.197818] vc-cma: vc_cma_size      = 0x00000000 (0 MiB)
[    1.199331] vc-cma: vc_cma_initial   = 0x00000000 (0 MiB)
[    1.201264] vc-mem: phys_addr:0x00000000 mem_base=0x1fa00000 mem_size:0x20000000(512 MiB)
[    1.231966] brd: module loaded
[    1.234912] vchiq: vchiq_init_state: slot_zero = 0xde480000, is_master = 0
[    1.238928] Loading iSCSI transport class v2.0-870.
[    1.241961] usbcore: registered new interface driver smsc95xx
[    1.243892] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    1.446041] Core Release: 2.80a
[    1.447646] Setting default values for core params
[    1.449249] Finished setting default values for core params
[    1.651160] Using Buffer DMA mode
[    1.652739] Periodic Transfer Interrupt Enhancement - disabled
[    1.654315] Multiprocessor Interrupt Enhancement - disabled
[    1.655896] OTG VER PARAM: 0, OTG VER FLAG: 0
[    1.657548] Dedicated Tx FIFOs mode
[    1.659792] WARN::dwc_otg_hcd_init:1047: FIQ DMA bounce buffers: virt = 0xde414000 dma = 0x5e414000 len=9024
[    1.663067] FIQ FSM acceleration enabled for :
Non-periodic Split Transactions
Periodic Split Transactions
High-Speed Isochronous Endpoints
Interrupt/Control Split Transaction hack enabled
[    1.671244] dwc_otg: Microframe scheduler enabled
[    1.671366] WARN::hcd_init_fiq:413: FIQ on core 0 at 0xc0434d30
[    1.673069] WARN::hcd_init_fiq:414: FIQ ASM at 0xc043500c length 36
[    1.674709] WARN::hcd_init_fiq:439: MPHI regs_base at 0xdf89a000
[    1.676365] dwc_otg 20980000.usb: DWC OTG Controller
[    1.678064] dwc_otg 20980000.usb: new USB bus registered, assigned bus number 1
[    1.679764] dwc_otg 20980000.usb: irq 56, io mem 0x00000000
[    1.681396] Init: Port Power? op_state=1
[    1.682953] Init: Power Port (0)
[    1.684902] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    1.686536] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.688191] usb usb1: Product: DWC OTG Controller
[    1.689762] usb usb1: Manufacturer: Linux 4.4.0-1-rpi dwc_otg_hcd
[    1.691328] usb usb1: SerialNumber: 20980000.usb
[    1.694233] hub 1-0:1.0: USB hub found
[    1.695913] hub 1-0:1.0: 1 port detected
[    1.698492] dwc_otg: FIQ enabled
[    1.698515] dwc_otg: NAK holdoff enabled
[    1.698528] dwc_otg: FIQ split-transaction FSM enabled
[    1.698586] Module dwc_common_port init
[    1.699178] usbcore: registered new interface driver usb-storage
[    1.701627] mousedev: PS/2 mouse device common for all mice
[    1.704836] bcm2835-cpufreq: min=700000 max=700000
[    1.706869] sdhci: Secure Digital Host Controller Interface driver
[    1.708553] sdhci: Copyright(c) Pierre Ossman
[    1.710654] sdhost: log_buf @ de413000 (5e413000)
[    1.712356] sdhost-bcm2835 20202000.sdhost: could not get clk
[    1.714346] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.716581] ledtrig-cpu: registered to indicate activity on CPUs
[    1.718503] hidraw: raw HID events driver (C) Jiri Kosina
[    1.720421] usbcore: registered new interface driver usbhid
[    1.722029] usbhid: USB HID core driver
[    1.725775] Initializing XFRM netlink socket
[    1.727488] NET: Registered protocol family 17
[    1.729340] Key type dns_resolver registered
[    1.732963] registered taskstats version 1
[    1.734803] zswap: loaded using pool lzo/zbud
[    1.736645] vc-sm: Videocore shared memory driver
[    1.738272] [vc_sm_connected_init]: start
[    1.740247] vc_vchi_sm_init: failed to open VCHI service (-1)
[    1.740397] [vc_sm_connected_init]: failed to initialize shared memory service
[    1.743445] [vc_sm_connected_init]: end - returning -1
[    1.745546] 20201000.serial: ttyAMA0 at MMIO 0x20201000 (irq = 81, base_baud = 0) is a PL011 rev2
[    1.938661] Indeed it is in host mode hprt0 = 00021501
[    2.178821] usb 1-1: new high-speed USB device number 2 using dwc_otg
[    2.179004] Indeed it is in host mode hprt0 = 00001101
[    2.438804] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[    2.438817] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    2.440298] hub 1-1:1.0: USB hub found
[    2.440455] hub 1-1:1.0: 5 ports detected
[    2.728146] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    2.832018] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[    2.832033] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    2.837198] smsc95xx v1.0.4
[    2.868697] console [ttyAMA0] enabled
[    2.875340] sdhost: log_buf @ de417000 (5e417000)
[    2.943058] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-20980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:38:9d:56
[    2.957973] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[    2.965268] hctosys: unable to open rtc device (rtc0)
[    2.973155] of_cfs_init
[    2.977452] of_cfs_init: OK
[    3.005836] PM: Hibernation image not present or could not be loaded.
[    3.007433] Freeing unused kernel memory: 396K (c0823000 - c0886000)
[    3.036711] mmc0: command never completed.
[    3.042622] mmc0:>cmd op 1 arg 0x0 flags 0xe1 - resp 00000000 00000000 00000000 00000000, err 0
[    3.054742] mmc0: =========== REGISTER DUMP ===========
[    3.061764] mmc0: SDCMD  0x00004001
[    3.067011] mmc0: SDARG  0x00000000
[    3.072217] mmc0: SDTOUT 0x00030d40
[    3.077361] mmc0: SDCDIV 0x0000026f
[    3.082450] mmc0: SDRSP0 0x40ff8080
[    3.087490] mmc0: SDRSP1 0x00003f7f
[    3.092441] mmc0: SDRSP2 0xffffffff
[    3.097358] mmc0: SDRSP3 0xffffffff
[    3.102232] mmc0: SDHSTS 0x00000010
[    3.107044] mmc0: SDVDD  0x00000001
[    3.111768] mmc0: SDEDM  0x00010800
[    3.116429] mmc0: SDHCFG 0x0000040a
[    3.121052] mmc0: SDHBCT 0x00000000
[    3.125631] mmc0: SDHBLC 0x00000000
[    3.130211] mmc0: ===========================================
[    3.137252] usb 1-1.2: new full-speed USB device number 4 using dwc_otg
[    3.246529] systemd-udevd[82]: starting version 215
[    3.274116] random: systemd-udevd urandom read with 17 bits of entropy available
[    3.311004] usb 1-1.2: New USB device found, idVendor=0403, idProduct=6001
[    3.319278] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    3.327847] usb 1-1.2: Product: FT232R USB UART
[    3.333596] usb 1-1.2: Manufacturer: FTDI
[    3.338870] usb 1-1.2: SerialNumber: A505RG00
[    3.446903] mmc0: MAN_BKOPS_EN bit is not set
[    3.488576] mmc0: new high speed MMC card at address 0001
[    3.532535] mmcblk0: mmc0:0001 4FEACB 3.64 GiB
[    3.567966] mmcblk0boot0: mmc0:0001 4FEACB partition 1 4.00 MiB
[    3.607948] mmcblk0boot1: mmc0:0001 4FEACB partition 2 4.00 MiB
[    3.650907] mmcblk0rpmb: mmc0:0001 4FEACB partition 3 512 KiB
[    3.676138]  mmcblk0: p1 p2
[    4.660717] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    5.166039] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR)
[    5.183645] systemd[1]: Detected architecture 'arm'.
[    5.326475] NET: Registered protocol family 10
[    5.335100] systemd[1]: Inserted module 'ipv6'
[    5.344205] systemd[1]: Set hostname to <RevPi>.
[    5.535122] uart-pl011 20201000.serial: no DMA platform data
[    6.076228] systemd[1]: Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service failed to load: No such file or directory.
[    6.102390] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
[    6.114712] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    6.126285] systemd[1]: Expecting device dev-ttyAMA0.device...
[    6.137249] systemd[1]: Starting Remote File Systems (Pre).
[    6.147859] systemd[1]: Reached target Remote File Systems (Pre).
[    6.156316] systemd[1]: Starting Dispatch Password Requests to Console Directory Watch.
[    6.168880] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    6.181165] systemd[1]: Starting Paths.
[    6.190090] systemd[1]: Reached target Paths.
[    6.196789] systemd[1]: Starting Encrypted Volumes.
[    6.206800] systemd[1]: Reached target Encrypted Volumes.
[    6.214729] systemd[1]: Starting Arbitrary Executable File Formats File System Automount Point.
[    6.231269] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[    6.245011] systemd[1]: Starting Swap.
[    6.253547] systemd[1]: Reached target Swap.
[    6.260059] systemd[1]: Expecting device dev-mmcblk0p1.device...
[    6.270741] systemd[1]: Starting Root Slice.
[    6.279914] systemd[1]: Created slice Root Slice.
[    6.286642] systemd[1]: Starting /dev/initctl Compatibility Named Pipe.
[    6.298203] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    6.307260] systemd[1]: Starting Delayed Shutdown Socket.
[    6.317569] systemd[1]: Listening on Delayed Shutdown Socket.
[    6.325561] systemd[1]: Starting Journal Socket (/dev/log).
[    6.336249] systemd[1]: Listening on Journal Socket (/dev/log).
[    6.344467] systemd[1]: Starting udev Control Socket.
[    6.354304] systemd[1]: Listening on udev Control Socket.
[    6.361864] systemd[1]: Starting udev Kernel Socket.
[    6.371441] systemd[1]: Listening on udev Kernel Socket.
[    6.378876] systemd[1]: Starting User and Session Slice.
[    6.389822] systemd[1]: Created slice User and Session Slice.
[    6.397650] systemd[1]: Starting Journal Socket.
[    6.407223] systemd[1]: Listening on Journal Socket.
[    6.414464] systemd[1]: Starting System Slice.
[    6.424400] systemd[1]: Created slice System Slice.
[    6.431520] systemd[1]: Starting Increase datagram queue length...
[    6.459860] systemd[1]: Started Set Up Additional Binary Formats.
[    6.480641] systemd[1]: Starting Create list of required static device nodes for the current kernel...
[    6.522098] systemd[1]: Mounting Debug File System...
[    6.617155] systemd[1]: Starting Load Kernel Modules...
[    6.642923] systemd[1]: Mounted Huge Pages File System.
[    6.678347] systemd[1]: Starting udev Coldplug all Devices...
[    6.725203] systemd[1]: Mounting POSIX Message Queue File System...
[    6.808592] systemd[1]: Starting system-getty.slice.
[    6.862415] systemd[1]: Created slice system-getty.slice.
[    6.873859] i2c /dev entries driver
[    6.894915] systemd[1]: Starting system-serial\x2dgetty.slice.
[    6.938041] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    6.946689] systemd[1]: Started File System Check on Root Device.
[    6.968141] systemd[1]: Starting Remount Root and Kernel File Systems...
[    6.989297] systemd[1]: Starting Slices.
[    7.007878] systemd[1]: Reached target Slices.
[    7.052714] systemd[1]: Mounted POSIX Message Queue File System.
[    7.071386] systemd[1]: Mounted Debug File System.
[    7.078940] EXT4-fs (mmcblk0p2): re-mounted. Opts: errors=remount-ro
[    7.098356] systemd[1]: Started Increase datagram queue length.
[    7.122769] systemd[1]: Started Create list of required static device nodes for the current kernel.
[    7.143401] systemd[1]: Started Load Kernel Modules.
[    7.188064] systemd[1]: Started Remount Root and Kernel File Systems.
[    7.358023] systemd[1]: Started udev Coldplug all Devices.
[    7.760327] systemd[1]: Started Various fixups to make systemd work better on Debian.
[    7.772428] systemd[1]: Starting Load/Save Random Seed...
[    7.791569] systemd[1]: Starting Apply Kernel Variables...
[    7.849293] systemd[1]: Mounted FUSE Control File System.
[    7.874108] systemd[1]: Mounting Configuration File System...
[    7.929165] systemd[1]: Starting Create Static Device Nodes in /dev...
[    7.980101] systemd[1]: Starting Syslog Socket.
[    8.025076] systemd[1]: Listening on Syslog Socket.
[    8.032419] systemd[1]: Starting Journal Service...
[    8.085551] systemd[1]: Started Journal Service.
[    8.784827] systemd-udevd[182]: starting version 215
[    9.614310] bcm2835-wdt 20100000.watchdog: Broadcom BCM2835 watchdog timer
[    9.691568] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x20200000
[    9.939773] usbcore: registered new interface driver usbserial
[    9.947580] usbcore: registered new interface driver usbserial_generic
[   10.153048] usbserial: USB Serial support registered for generic
[   10.166598] usbcore: registered new interface driver ftdi_sio
[   10.166738] usbserial: USB Serial support registered for FTDI USB Serial Device
[   10.167226] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected
[   10.167558] usb 1-1.2: Detected FT232RL
[   10.232990] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0
[   11.587313] systemd-journald[179]: Received request to flush runtime journal from PID 1
[   12.571361] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[   12.581242] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   14.215817] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xC1E1
[   14.231488] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   26.662716] random: nonblocking pool is initialized
Irgendeine Idee?

Gruß, Martin
User avatar
volker
Posts: 1046
Joined: 09 Nov 2016, 15:41
Answers: 1

Re: RTC unter Raspbian Jessie

Post by volker »

Hallo, da wir gestern unseren RevPi Day in Bremen hatten, dauert es leider ein wenig mit der Antwort. Lukas wird sich aber melden...
Unser RevPi Motto: Don't just claim it - make it!
User avatar
lukas
Expert
Posts: 186
Joined: 13 Feb 2017, 10:29
Answers: 0

Re: RTC unter Raspbian Jessie

Post by lukas »

Hm, kannst du mal den Output posten von

Code: Select all

dtc -I dtb -O dts < /sys/firmware/fdt
und

Code: Select all

ls -l /sys/bus/i2c/*
Sipple
Posts: 12
Joined: 07 Feb 2017, 08:28
Answers: 0

Re: RTC unter Raspbian Jessie

Post by Sipple »

Bitteschön:

Code: Select all

root@RevPi:~# dtc -I dtb -O dts < /sys/firmware/fdt
Warning (unit_address_vs_reg): Node /axi/vc_mem has a reg or ranges property, but no unit name
Warning (unit_address_vs_reg): Node /soc has a reg or ranges property, but no unit name
Warning (unit_address_vs_reg): Node /soc/gpiomem has a reg or ranges property, but no unit name
Warning (unit_address_vs_reg): Node /soc/vchiq has a reg or ranges property, but no unit name
Warning (unit_address_vs_reg): Node /memory has a reg or ranges property, but no unit name
Warning (avoid_default_addr_size): Relying on default #address-cells value for /axi/vc_mem
Warning (avoid_default_addr_size): Relying on default #size-cells value for /axi/vc_mem
/dts-v1/;

/ {
        memreserve = <0x1f000000 0x1000000>;
        serial-number = "000000009f389d56";
        compatible = "brcm,bcm2835", "brcm,bcm2708";
        model = "Raspberry Pi Compute Module Rev 1.0";
        interrupt-parent = <0x1>;
        #address-cells = <0x1>;
        #size-cells = <0x1>;

        system {
                linux,serial = <0x0 0x9f389d56>;
                linux,revision = <0x11>;
        };

        axi {

                vc_mem {
                        reg = <0x1fa00000 0x20000000 0x40000000>;
                };
        };

        chosen {
                linux,initrd-end = <0x1efefd6b>;
                linux,initrd-start = <0x1ea48000>;
                kaslr-seed = <0x83982cde 0xf28853e0>;
                bootargs = "bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbdepth=16 bcm2708_fb.fbswap=1 smsc95xx.macaddr= B8:27:EB:38:9D:56 vc_mem.mem_base=0x1fa00000 vc_mem.mem_size=0x20000000  dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,11 5200 console=tty1 elevator=deadline root=/dev/mmcblk0p2 rootfstype=ext4 rootwait";
        };

        soc {
                compatible = "simple-bus";
                #address-cells = <0x1>;
                #size-cells = <0x1>;
                ranges = <0x7e000000 0x20000000 0x2000000>;
                dma-ranges = <0x40000000 0x0 0x20000000>;
                phandle = <0x21>;

                timer@7e003000 {
                        compatible = "brcm,bcm2835-system-timer";
                        reg = <0x7e003000 0x1000>;
                        interrupts = <0x1 0x0 0x1 0x1 0x1 0x2 0x1 0x3>;
                        clock-frequency = <0xf4240>;
                };

                dma@7e007000 {
                        compatible = "brcm,bcm2835-dma";
                        reg = <0x7e007000 0xf00>;
                        interrupts = <0x1 0x10 0x1 0x11 0x1 0x12 0x1 0x13 0x1 0x14 0x1 0x15 0x1 0x16 0x1 0x17 0x1 0x18 0x1 0x19 0x1 0x 1a 0x1 0x1b 0x1 0x1b 0x1 0x1b 0x1 0x1b 0x1 0x1c>;
                        interrupt-names = "dma0", "dma1", "dma2", "dma3", "dma4", "dma5", "dma6", "dma7", "dma8", "dma9", "dma10", "dm a11", "dma12", "dma13", "dma14", "dma-shared-all";
                        #dma-cells = <0x1>;
                        brcm,dma-channel-mask = <0x7f34>;
                        phandle = <0x7>;
                };

                interrupt-controller@7e00b200 {
                        compatible = "brcm,bcm2835-armctrl-ic";
                        reg = <0x7e00b200 0x200>;
                        interrupt-controller;
                        #interrupt-cells = <0x2>;
                        phandle = <0x1>;
                };

                watchdog@7e100000 {
                        compatible = "brcm,bcm2835-pm-wdt";
                        reg = <0x7e100000 0x28>;
                        phandle = <0x18>;
                };

                cprman@7e101000 {
                        compatible = "brcm,bcm2835-cprman";
                        #clock-cells = <0x1>;
                        reg = <0x7e101000 0x2000>;
                        clocks = <0x2 0x3 0x0 0x3 0x1 0x3 0x2 0x4 0x0 0x4 0x1 0x4 0x2>;
                        firmware = <0x5>;
                        phandle = <0x6>;
                };

                rng@7e104000 {
                        compatible = "brcm,bcm2835-rng";
                        reg = <0x7e104000 0x10>;
                        phandle = <0x19>;
                };

                mailbox@7e00b880 {
                        compatible = "brcm,bcm2835-mbox";
                        reg = <0x7e00b880 0x40>;
                        interrupts = <0x0 0x1>;
                        #mbox-cells = <0x0>;
                        phandle = <0x13>;
                };

                gpio@7e200000 {
                        compatible = "brcm,bcm2835-gpio";
                        reg = <0x7e200000 0xb4>;
                        interrupts = <0x2 0x11 0x2 0x12>;
                        gpio-controller;
                        #gpio-cells = <0x2>;
                        interrupt-controller;
                        #interrupt-cells = <0x2>;
                        phandle = <0x9>;

                        sdhost_pins {
                                brcm,pins = <0x30 0x31 0x32 0x33 0x34 0x35>;
                                brcm,function = <0x4>;
                                phandle = <0x12>;
                        };

                        mmc_pins {
                                brcm,pins = <0x30 0x31 0x32 0x33 0x34 0x35>;
                                brcm,function = <0x7>;
                                phandle = <0x22>;
                        };

                        spi0_pins {
                                brcm,pins = <0x9 0xa 0xb>;
                                brcm,function = <0x4>;
                                phandle = <0xa>;
                        };

                        spi0_cs_pins {
                                brcm,pins = <0x8 0x7>;
                                brcm,function = <0x1>;
                                phandle = <0xb>;
                        };

                        i2c0 {
                                brcm,pins = <0x0 0x1>;
                                brcm,function = <0x4>;
                                phandle = <0xc>;
                        };

                        i2c1 {
                                brcm,pins = <0x2c 0x2d>;
                                brcm,function = <0x6>;
                                phandle = <0x3e>;
                        };

                        i2s {
                                brcm,pins = <0x12 0x13 0x14 0x15>;
                                brcm,function = <0x4>;
                                phandle = <0x8>;
                        };

                        audio_pins {
                                brcm,pins;
                                brcm,function;
                                phandle = <0x14>;
                        };
                };

                serial@7e201000 {
                        compatible = "brcm,bcm2835-pl011", "arm,pl011", "arm,primecell";
                        reg = <0x7e201000 0x1000>;
                        interrupts = <0x2 0x19>;
                        clocks = <0x6 0x13 0x6 0x14>;
                        clock-names = "uartclk", "apb_pclk";
                        arm,primecell-periphid = <0x241011>;
                        status = "okay";
                        phandle = <0x1b>;
                };

                i2s@7e203000 {
                        compatible = "brcm,bcm2835-i2s";
                        reg = <0x7e203000 0x24>;
                        dmas = <0x7 0x2 0x7 0x3>;
                        dma-names = "tx", "rx";
                        status = "disabled";
                        #sound-dai-cells = <0x0>;
                        clocks = <0x6 0x1f>;
                        pinctrl-names = "default";
                        pinctrl-0 = <0x8>;
                        phandle = <0x1d>;
                };

                spi@7e204000 {
                        compatible = "brcm,bcm2835-spi";
                        reg = <0x7e204000 0x1000>;
                        interrupts = <0x2 0x16>;
                        clocks = <0x6 0x14>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        cs-gpios = <0x9 0x8 0x1 0x9 0x7 0x1>;
                        dmas = <0x7 0x6 0x7 0x7>;
                        dma-names = "tx", "rx";
                        pinctrl-names = "default";
                        pinctrl-0 = <0xa 0xb>;
                        phandle = <0x1e>;

                        spidev@0 {
                                compatible = "spidev";
                                reg = <0x0>;
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;
                                spi-max-frequency = <0x7a120>;
                                phandle = <0x23>;
                        };

                        spidev@1 {
                                compatible = "spidev";
                                reg = <0x1>;
                                #address-cells = <0x1>;
                                #size-cells = <0x0>;
                                spi-max-frequency = <0x7a120>;
                                phandle = <0x24>;
                        };
                };

                i2c@7e205000 {
                        compatible = "brcm,bcm2835-i2c";
                        reg = <0x7e205000 0x1000>;
                        interrupts = <0x2 0x15>;
                        clocks = <0x6 0x14>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        pinctrl-names = "default";
                        pinctrl-0 = <0xc>;
                        clock-frequency = <0x186a0>;
                        phandle = <0x1f>;
                };

                pixelvalve@7e206000 {
                        compatible = "brcm,bcm2835-pixelvalve0";
                        reg = <0x7e206000 0x100>;
                        interrupts = <0x2 0xd>;
                        status = "disabled";
                        phandle = <0x25>;
                };

                pixelvalve@7e207000 {
                        compatible = "brcm,bcm2835-pixelvalve1";
                        reg = <0x7e207000 0x100>;
                        interrupts = <0x2 0xe>;
                        status = "disabled";
                        phandle = <0x26>;
                };

                dsi@7e209000 {
                        compatible = "brcm,bcm2835-dsi0";
                        reg = <0x7e209000 0x78>;
                        interrupts = <0x2 0x4>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        #clock-cells = <0x1>;
                        clocks = <0x6 0x20 0x6 0x2f 0x6 0x31>;
                        clock-names = "phy", "escape", "pixel";
                        clock-output-names = "dsi0_byte", "dsi0_ddr2", "dsi0_ddr";
                        status = "disabled";
                        phandle = <0x3>;
                };

                aux@0x7e215000 {
                        compatible = "brcm,bcm2835-aux";
                        #clock-cells = <0x1>;
                        reg = <0x7e215000 0x8>;
                        clocks = <0x6 0x14>;
                        interrupts = <0x1 0x1d>;
                        interrupt-controller;
                        #interrupt-cells = <0x1>;
                        phandle = <0xd>;
                };

                serial@7e215040 {
                        compatible = "brcm,bcm2835-aux-uart";
                        reg = <0x7e215040 0x40>;
                        interrupt-parent = <0xd>;
                        interrupts = <0x0>;
                        clocks = <0xd 0x0>;
                        status = "disabled";
                        phandle = <0x1c>;
                };

                spi@7e215080 {
                        compatible = "brcm,bcm2835-aux-spi";
                        reg = <0x7e215080 0x40>;
                        interrupt-parent = <0xd>;
                        interrupts = <0x1>;
                        clocks = <0xd 0x1>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        phandle = <0x27>;
                };

                spi@7e2150c0 {
                        compatible = "brcm,bcm2835-aux-spi";
                        reg = <0x7e2150c0 0x40>;
                        interrupt-parent = <0xd>;
                        interrupts = <0x2>;
                        clocks = <0xd 0x2>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        phandle = <0x28>;
                };

                pwm@7e20c000 {
                        compatible = "brcm,bcm2835-pwm";
                        reg = <0x7e20c000 0x28>;
                        clocks = <0x6 0x1e>;
                        assigned-clocks = <0x6 0x1e>;
                        assigned-clock-rates = <0x989680>;
                        #pwm-cells = <0x2>;
                        status = "disabled";
                        phandle = <0x29>;
                };

                hvs@7e400000 {
                        compatible = "brcm,bcm2835-hvs";
                        reg = <0x7e400000 0x6000>;
                        interrupts = <0x2 0x1>;
                        status = "disabled";
                        phandle = <0x2a>;
                };

                dsi@7e700000 {
                        compatible = "brcm,bcm2835-dsi1";
                        reg = <0x7e700000 0x8c>;
                        interrupts = <0x2 0xc>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        #clock-cells = <0x1>;
                        clocks = <0x6 0x23 0x6 0x30 0x6 0x32>;
                        clock-names = "phy", "escape", "pixel";
                        clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr";
                        status = "disabled";
                        power-domains = <0xe 0x12>;
                        phandle = <0x4>;
                };

                i2c@7e804000 {
                        compatible = "brcm,bcm2835-i2c";
                        reg = <0x7e804000 0x1000>;
                        interrupts = <0x2 0x15>;
                        clocks = <0x6 0x14>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x3e>;
                        clock-frequency = <0x186a0>;
                        phandle = <0x20>;

                        pcf8563@51 {
                                phandle = <0x47>;
                                status = "disable";
                                reg = <0x51>;
                                compatible = "nxp,pcf8563";
                        };

                        pcf8523@68 {
                                phandle = <0x46>;
                                status = "disable";
                                reg = <0x68>;
                                compatible = "nxp,pcf8523";
                        };

                        pcf2127@51 {
                                phandle = <0x45>;
                                status = "okay";
                                reg = <0x51>;
                                compatible = "nxp,pcf2127";
                        };

                        ds3231@68 {
                                phandle = <0x42>;
                                status = "disable";
                                reg = <0x68>;
                                compatible = "maxim,ds3231";
                        };

                        mcp7941x@6f {
                                phandle = <0x44>;
                                status = "disable";
                                reg = <0x6f>;
                                compatible = "microchip,mcp7941x";
                        };

                        mcp7940x@6f {
                                phandle = <0x43>;
                                status = "disable";
                                reg = <0x6f>;
                                compatible = "microchip,mcp7940x";
                        };

                        ds1339@68 {
                                phandle = <0x41>;
                                status = "disable";
                                reg = <0x68>;
                                trickle-resistor-ohms = <0x0>;
                                compatible = "dallas,ds1339";
                        };

                        ds1307@68 {
                                phandle = <0x40>;
                                status = "disable";
                                reg = <0x68>;
                                compatible = "maxim,ds1307";
                        };

                        abx80x@69 {
                                phandle = <0x3f>;
                                status = "disable";
                                abracon,tc-resistor = <0x0>;
                                abracon,tc-diode = "standard";
                                reg = <0x69>;
                                compatible = "abracon,abx80x";
                        };
                };

                i2c@7e805000 {
                        compatible = "brcm,bcm2835-i2c";
                        reg = <0x7e805000 0x1000>;
                        interrupts = <0x2 0x15>;
                        clocks = <0x6 0x14>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        clock-frequency = <0x186a0>;
                        phandle = <0x10>;
                };

                vec@7e806000 {
                        compatible = "brcm,bcm2835-vec";
                        reg = <0x7e806000 0x1000>;
                        clocks = <0x6 0x18>;
                        interrupts = <0x2 0x1b>;
                        status = "disabled";
                        phandle = <0x2b>;
                };

                pixelvalve@7e807000 {
                        compatible = "brcm,bcm2835-pixelvalve2";
                        reg = <0x7e807000 0x100>;
                        interrupts = <0x2 0xa>;
                        status = "disabled";
                        phandle = <0x2c>;
                };

                hdmi@7e902000 {
                        compatible = "brcm,bcm2835-hdmi";
                        reg = <0x7e902000 0x600 0x7e808000 0x100>;
                        interrupts = <0x2 0x8 0x2 0x9>;
                        ddc = <0x10>;
                        clocks = <0x6 0x10 0x6 0x19>;
                        clock-names = "pixel", "hdmi";
                        dmas = <0x7 0x11>;
                        dma-names = "audio-rx";
                        status = "disabled";
                        power-domains = <0xe 0x5>;
                        hpd-gpios = <0x9 0x2e 0x0>;
                        phandle = <0x2d>;
                };

                usb@7e980000 {
                        compatible = "brcm,bcm2708-usb";
                        reg = <0x7e980000 0x10000 0x7e006000 0x1000>;
                        interrupts = <0x2 0x0 0x1 0x9>;
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        clocks = <0x11>;
                        clock-names = "otg";
                        power-domains = <0xe 0x6>;
                        phandle = <0x2e>;
                };

                v3d@7ec00000 {
                        compatible = "brcm,vc4-v3d";
                        reg = <0x7ec00000 0x1000>;
                        interrupts = <0x1 0xa>;
                        power-domains = <0xe 0xa>;
                        status = "disabled";
                        phandle = <0x2f>;
                };

                gpu {
                        compatible = "brcm,bcm2835-vc4";
                        status = "disabled";
                        phandle = <0x30>;
                };

                arm-pmu {
                        compatible = "arm,arm1176-pmu";
                };

                sdhost@7e202000 {
                        compatible = "brcm,bcm2835-sdhost";
                        reg = <0x7e202000 0x100>;
                        interrupts = <0x2 0x18>;
                        clocks = <0x6 0x14>;
                        dmas = <0x7 0xd>;
                        dma-names = "rx-tx";
                        brcm,overclock-50 = <0x0>;
                        brcm,pio-limit = <0x1>;
                        status = "okay";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x12>;
                        non-removable;
                        bus-width = <0x4>;
                        phandle = <0x31>;
                };

                dpi@7e208000 {
                        compatible = "brcm,bcm2835-dpi";
                        reg = <0x7e208000 0x8c>;
                        clocks = <0x6 0x14 0x6 0x2c>;
                        clock-names = "core", "pixel";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        phandle = <0x32>;
                };

                mmc@7e300000 {
                        compatible = "brcm,bcm2835-mmc";
                        reg = <0x7e300000 0x100>;
                        interrupts = <0x2 0x1e>;
                        clocks = <0x6 0x1c>;
                        dmas = <0x7 0xb>;
                        dma-names = "rx-tx";
                        brcm,overclock-50 = <0x0>;
                        status = "disabled";
                        phandle = <0x1a>;
                };

                firmwarekms@7e600000 {
                        compatible = "raspberrypi,rpi-firmware-kms";
                        reg = <0x7e600000 0x100>;
                        interrupts = <0x2 0x10>;
                        brcm,firmware = <0x5>;
                        status = "disabled";
                        phandle = <0x33>;
                };

                smi@7e600000 {
                        compatible = "brcm,bcm2835-smi";
                        reg = <0x7e600000 0x100>;
                        interrupts = <0x2 0x10>;
                        clocks = <0x6 0x2a>;
                        assigned-clocks = <0x6 0x2a>;
                        assigned-clock-rates = <0x7735940>;
                        dmas = <0x7 0x4>;
                        dma-names = "rx-tx";
                        status = "disabled";
                        phandle = <0x34>;
                };

                i2cdsi {
                        compatible = "i2c-gpio";
                        #address-cells = <0x1>;
                        #size-cells = <0x0>;
                        status = "disabled";
                        phandle = <0x35>;

                        bridge@45 {
                                compatible = "raspberrypi,touchscreen-bridge-i2c";
                                reg = <0x45>;
                                phandle = <0x36>;
                        };

                        bridge@38 {
                                compatible = "raspberrypi,touchscreen-ts-i2c";
                                reg = <0x38>;
                                phandle = <0x37>;
                        };
                };

                gpiomem {
                        compatible = "brcm,bcm2835-gpiomem";
                        reg = <0x7e200000 0x1000>;
                };

                firmware {
                        compatible = "raspberrypi,bcm2835-firmware";
                        mboxes = <0x13>;
                        phandle = <0x5>;
                };

                power {
                        compatible = "raspberrypi,bcm2835-power";
                        firmware = <0x5>;
                        #power-domain-cells = <0x1>;
                        phandle = <0xe>;
                };

                fb {
                        compatible = "brcm,bcm2708-fb";
                        firmware = <0x5>;
                        status = "okay";
                        phandle = <0x38>;
                };

                vchiq {
                        compatible = "brcm,bcm2835-vchiq";
                        reg = <0x7e00b840 0xf>;
                        interrupts = <0x0 0x2>;
                        cache-line-size = <0x20>;
                        firmware = <0x5>;
                        phandle = <0x15>;
                };

                thermal {
                        compatible = "brcm,bcm2835-thermal";
                        firmware = <0x5>;
                        phandle = <0x39>;
                };

                audio {
                        compatible = "brcm,bcm2835-audio";
                        brcm,pwm-channels = <0x8>;
                        status = "disabled";
                        pinctrl-names = "default";
                        pinctrl-0 = <0x14>;
                        phandle = <0x17>;
                };

                sound {
                        status = "disabled";
                        phandle = <0x3a>;
                };
        };

        clocks {
                compatible = "simple-bus";
                #address-cells = <0x1>;
                #size-cells = <0x0>;

                clock@3 {
                        compatible = "fixed-clock";
                        reg = <0x3>;
                        #clock-cells = <0x0>;
                        clock-output-names = "osc";
                        clock-frequency = <0x124f800>;
                        phandle = <0x2>;
                };

                clock@4 {
                        compatible = "fixed-clock";
                        reg = <0x4>;
                        #clock-cells = <0x0>;
                        clock-output-names = "otg";
                        clock-frequency = <0x1c9c3800>;
                        phandle = <0x11>;
                };
        };

        fixedregulator_5v0 {
                compatible = "regulator-fixed";
                regulator-name = "5v0";
                regulator-min-microvolt = <0x4c4b40>;
                regulator-max-microvolt = <0x4c4b40>;
                regulator-always-on;
                phandle = <0x3b>;
        };

        fixedregulator_3v3 {
                compatible = "regulator-fixed";
                regulator-name = "3v3";
                regulator-min-microvolt = <0x325aa0>;
                regulator-max-microvolt = <0x325aa0>;
                regulator-always-on;
                phandle = <0x3c>;
        };

        memory {
                device_type = "memory";
                reg = <0x0 0x1f000000>;
        };

        aliases {
                serial1 = "/soc/serial@7e215040";
                serial0 = "/soc/serial@7e201000";
                i2c_arm = "/soc/i2c@7e804000";
                i2c = "/soc/i2c@7e804000";
                i2c_vc = "/soc/i2c@7e205000";
                audio = "/soc/audio";
                aux = "/soc/aux@0x7e215000";
                sound = "/soc/sound";
                soc = "/soc";
                dma = "/soc/dma@7e007000";
                intc = "/soc/interrupt-controller@7e00b200";
                watchdog = "/soc/watchdog@7e100000";
                random = "/soc/rng@7e104000";
                mailbox = "/soc/mailbox@7e00b880";
                gpio = "/soc/gpio@7e200000";
                uart0 = "/soc/serial@7e201000";
                sdhost = "/soc/sdhost@7e202000";
                i2s = "/soc/i2s@7e203000";
                spi0 = "/soc/spi@7e204000";
                i2c0 = "/soc/i2c@7e205000";
                uart1 = "/soc/serial@7e215040";
                spi1 = "/soc/spi@7e215080";
                spi2 = "/soc/spi@7e2150c0";
                mmc = "/soc/mmc@7e300000";
                i2c1 = "/soc/i2c@7e804000";
                i2c2 = "/soc/i2c@7e805000";
                usb = "/soc/usb@7e980000";
                leds = "/leds";
                fb = "/soc/fb";
                vchiq = "/soc/vchiq";
                thermal = "/soc/thermal";
        };

        leds {
                compatible = "gpio-leds";
                phandle = <0x3d>;

                act {
                        label = "led0";
                        linux,default-trigger = "mmc0";
                        gpios = <0x9 0x2f 0x0>;
                        phandle = <0x16>;
                };
        };

        __overrides__ {
                i2c_arm_baudrate = "", "", "", " clock-frequency:0";
                i2c_baudrate = "", "", "", " clock-frequency:0";
                i2c_arm = "", "", "", " status";
                i2c = "", "", "", " status";
                i2c_vc_baudrate = [00 00 00 1f 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
                i2c_vc = [00 00 00 1f 73 74 61 74 75 73 00];
                cache_line_size = [00 00 00 15 63 61 63 68 65 2d 6c 69 6e 65 2d 73 69 7a 65 3a 30 00];
                act_led_gpio = <0x16 0x6770696f 0x733a3400>;
                act_led_activelow = <0x16 0x6770696f 0x733a3800>;
                act_led_trigger = [00 00 00 16 6c 69 6e 75 78 2c 64 65 66 61 75 6c 74 2d 74 72 69 67 67 65 72 00];
                audio = [00 00 00 17 73 74 61 74 75 73 00];
                watchdog = [00 00 00 18 73 74 61 74 75 73 00];
                random = [00 00 00 19 73 74 61 74 75 73 00];
                sd_overclock = <0x1a 0x6272636d 0x2c6f7665 0x72636c6f 0x636b2d35 0x303a3000>;
                uart0 = [00 00 00 1b 73 74 61 74 75 73 00];
                uart1 = [00 00 00 1c 73 74 61 74 75 73 00];
                i2s = [00 00 00 1d 73 74 61 74 75 73 00];
                spi = [00 00 00 1e 73 74 61 74 75 73 00];
                i2c0 = [00 00 00 1f 73 74 61 74 75 73 00];
                i2c1 = "", "", "", " status";
                i2c2_iknowwhatimdoing = [00 00 00 10 73 74 61 74 75 73 00];
                i2c0_baudrate = [00 00 00 1f 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
                i2c1_baudrate = "", "", "", " clock-frequency:0";
                i2c2_baudrate = [00 00 00 10 63 6c 6f 63 6b 2d 66 72 65 71 75 65 6e 63 79 3a 30 00];
        };

        __symbols__ {
                i2c_arm = "/soc/i2c@7e804000";
                i2c = "/soc/i2c@7e804000";
                i2c_vc = "/soc/i2c@7e205000";
                soc = "/soc";
                dma = "/soc/dma@7e007000";
                intc = "/soc/interrupt-controller@7e00b200";
                watchdog = "/soc/watchdog@7e100000";
                cprman = "/soc/cprman@7e101000";
                clocks = "/soc/cprman@7e101000";
                random = "/soc/rng@7e104000";
                mailbox = "/soc/mailbox@7e00b880";
                gpio = "/soc/gpio@7e200000";
                sdhost_pins = "/soc/gpio@7e200000/sdhost_pins";
                mmc_pins = "/soc/gpio@7e200000/mmc_pins";
                spi0_pins = "/soc/gpio@7e200000/spi0_pins";
                spi0_cs_pins = "/soc/gpio@7e200000/spi0_cs_pins";
                i2c0_pins = "/soc/gpio@7e200000/i2c0";
                i2c1_pins = "/soc/gpio@7e200000/i2c1";
                i2s_pins = "/soc/gpio@7e200000/i2s";
                audio_pins = "/soc/gpio@7e200000/audio_pins";
                uart0 = "/soc/serial@7e201000";
                i2s = "/soc/i2s@7e203000";
                spi0 = "/soc/spi@7e204000";
                spi = "/soc/spi@7e204000";
                spidev0 = "/soc/spi@7e204000/spidev@0";
                spidev1 = "/soc/spi@7e204000/spidev@1";
                i2c0 = "/soc/i2c@7e205000";
                pixelvalve0 = "/soc/pixelvalve@7e206000";
                pixelvalve1 = "/soc/pixelvalve@7e207000";
                dsi0 = "/soc/dsi@7e209000";
                aux = "/soc/aux@0x7e215000";
                uart1 = "/soc/serial@7e215040";
                spi1 = "/soc/spi@7e215080";
                spi2 = "/soc/spi@7e2150c0";
                pwm = "/soc/pwm@7e20c000";
                hvs = "/soc/hvs@7e400000";
                dsi1 = "/soc/dsi@7e700000";
                i2c1 = "/soc/i2c@7e804000";
                i2c2 = "/soc/i2c@7e805000";
                vec = "/soc/vec@7e806000";
                pixelvalve2 = "/soc/pixelvalve@7e807000";
                hdmi = "/soc/hdmi@7e902000";
                usb = "/soc/usb@7e980000";
                v3d = "/soc/v3d@7ec00000";
                gpu = "/soc/gpu";
                vc4 = "/soc/gpu";
                sdhost = "/soc/sdhost@7e202000";
                dpi = "/soc/dpi@7e208000";
                mmc = "/soc/mmc@7e300000";
                firmwarekms = "/soc/firmwarekms@7e600000";
                smi = "/soc/smi@7e600000";
                i2c_dsi = "/soc/i2cdsi";
                pitouchscreen_bridge = "/soc/i2cdsi/bridge@45";
                pitouchscreen_touch = "/soc/i2cdsi/bridge@38";
                firmware = "/soc/firmware";
                power = "/soc/power";
                fb = "/soc/fb";
                vchiq = "/soc/vchiq";
                thermal = "/soc/thermal";
                audio = "/soc/audio";
                sound = "/soc/sound";
                clk_osc = "/clocks/clock@3";
                clk_usb = "/clocks/clock@4";
                vdd_5v0_reg = "/fixedregulator_5v0";
                vdd_3v3_reg = "/fixedregulator_3v3";
                leds = "/leds";
                act_led = "/leds/act";
        };
};

Code: Select all

root@RevPi:~# ls -l /sys/bus/i2c/*
-rw-r--r-- 1 root root 4096 Oct  2 11:26 /sys/bus/i2c/drivers_autoprobe
--w------- 1 root root 4096 Oct  2 11:26 /sys/bus/i2c/drivers_probe
--w------- 1 root root 4096 Jan  1  1970 /sys/bus/i2c/uevent

/sys/bus/i2c/devices:
total 0

/sys/bus/i2c/drivers:
total 0
drwxr-xr-x 2 root root 0 Jan  1  1970 dummy
drwxr-xr-x 2 root root 0 Jan  1  1970 stmpe-i2c
Post Reply