This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Unable to Run PWMSS0, PWMSS1, and PWMSS2 from PRU on Beagle Bone Black.

Other Parts Discussed in Thread: SYSCONFIG, TPS65217

This is an issue I reported back in December 2015, still no answer. I am using ti-processor-sdk-linux-am335x-evm-02.00.01.07.

I wrote code to dump registers from the PRU to Linux  user space. The register are being set correctly...

Except for the following

pwmss_ctrl Register (offset = 664h) [reset = 0h] i try to write 0x7, to enable clocks, and it stays 0x0.

I have tried to set the SYSCONFIG Register (offset = 4h) [reset = 28h] in all three PWM Sub-Systems. The TRM says the reset should be 0x28. That is not true, On my BBB it is always 0x8.

What do I need to enable in order to get the PWM Sub-Systems out of STANDBYMODE?

I also wrote code to enable the PWM Sub-Systems from the Linux user space. I got the exact same results.

Here is a dump of my initialization:


cm_pwmss_ctrl                                   0x00000000
CM_PER_EPWMSS0_CLKCTRL  0x00000002
CM_PER_EPWMSS1_CLKCTRL  0x00000002
CM_PER_EPWMSS2_CLKCTRL  0x00000002
 
PWMSS 0:
EPWM_TBCTL         0x80b0
EPWM_TBSTS         0x0001
EPWM_TBPHSHR   0x0000
EPWM_TBPHS        0x0000
EPWM_TBCNT        0x0000
EPWM_TBPRD        0x03e8
EPWM_CMPCTRL  0x0300
EPWM_CMPAHR    0x0100
EPWM_CMPA          0x0000
EPWM_CMPB         0x0000
EPWM_AQCTLA     0x0012
EPWM_AQCTLB     0x0102
EPWM_AQSFRC    0x0000
EPWM_AQCSFRC  0x0000
EPWM_DBCTL        0x0000
EPWM_TZSEL         0x0000
EPWM_ETSEL         0x0000
EPWM_PCCTL        0x0000
EPWM_HRCNFG    0x0000
 
PWMSS0 SYSCONFIG:   0x00000008
PWMSS0 CLKCONFIG:   0x00000110
PWMSS0 CLKSTATUS:   0x00000110
 
PWMSS 1
EPWM_TBCTL        0x80b0
EPWM_TBSTS        0x0001
EPWM_TBPHSHR   0x0000
EPWM_TBPHS         0x0000
EPWM_TBCNT         0x0000
EPWM_TBPRD         0x03e8
EPWM_CMPCTRL   0x0300
EPWM_CMPAHR     0x0100
EPWM_CMPA           0x0000
EPWM_CMPB           0x0000
EPWM_AQCTLA      0x0012
EPWM_AQCTLB      0x0102
EPWM_AQSFRC      0x0000
EPWM_AQCSFRC   0x0000
EPWM_DBCTL         0x0000
EPWM_TZSEL          0x0000
EPWM_ETSEL         0x0000
EPWM_PCCTL        0x0000
EPWM_HRCNFG    0x0000


PWMSS1 SYSCONFIG:    0x00000008
PWMSS1 CLKCONFIG:    0x00000110
PWMSS1 CLKSTATUS:     0x00000110
 
PWMSS 2:
EPWM_TBCTL          0x80b0
EPWM_TBSTS          0x0001
EPWM_TBPHSHR   0x0000
EPWM_TBPHS         0x0000
EPWM_TBCNT         0x0000
EPWM_TBPRD         0x03e8
EPWM_CMPCTRL   0x0300
EPWM_CMPAHR     0x0100
EPWM_CMPA           0x0000
EPWM_CMPB           0x0000
EPWM_AQCTLA       0x0012
EPWM_AQCTLB       0x0000
EPWM_AQSFRC      0x0000
EPWM_AQCSFRC   0x0000
EPWM_DBCTL         0x0000
EPWM_TZSEL          0x0000
EPWM_ETSEL         0x0000
EPWM_PCCTL        0x0000
EPWM_HRCNFG    0x0000


PWMSS2 SYSCONFIG:    0x00000008
PWMSS2 CLKCONFIG:    0x00000110
PWMSS2 CLKSTATUS:    0x00000110
 
Reset PWMSS2 SYSCONFIG writing 0x1:
PWMSS2 SYSCONFIG:    0x00000000


Now Set PWMSS2 SYSCONFIG to operate, writing 0x28:
PWMSS2 SYSCONFIG:    0x00000008
 
Turning on PWM:
EPWM_CMPA    0x0310
EPWM_CMPB   0x0150
EPWM_CMPA   0x0320
EPWM_CMPB   0x0150
EPWM_CMPA    0x0330

Please Help.

Regards,

Mike

  • Hi,

    Can you post the absolute addresses of all these registers, as you have defined them?
  •  I am building this from Code Composer Studio Version 6.1.2.00015.

    The Address's and offsets come from "SPRUH73L – October 2011 – Revised February 2015" posted on the TI website.

    My defines from the Linux user side:


    #define CM_BASE_ADDRESS                 0x44E10000
    #define CM_CONTROL_SYSCONFIG_OFFSET        0x10
    #define CM_CONTROL_STATUS_OFFSET        0x40
    #define CM_PWMSS_CTRL_OFFSET            0x664


    #define CM_PER_EPWMSS_CLKCTRL_BASE        0x44E00000
    #define CM_PER_EPWMSS0_CLKCTRL_OFFSET    0xd4
    #define CM_PER_EPWMSS1_CLKCTRL_OFFSET    0xcc
    #define CM_PER_EPWMSS2_CLKCTRL_OFFSET    0xd8


    #define PWMSS0_BASE_ADDRESS        0x48300000
    #define PWMSS1_BASE_ADDRESS        0x48302000
    #define PWMSS2_BASE_ADDRESS        0x48304000


    #define PWMSS_SYSCONFIG_OFFSET    0x4
    #define PWMSS_CLKCONFIG_OFFSET    0x8
    #define PWMSS_CLKSTATUS_OFFSET    0xC

    #define EPWM_TBCTL_OFFSET     0x200
    #define EPWM_TBSTS_OFFSET     0x202
    #define EPWM_TBPHSHR_OFFSET   0x204
    #define EPWM_TBPHS_OFFSET     0x206
    #define EPWM_TBCNT_OFFSET     0x208
    #define EPWM_TBPRD_OFFSET     0x20a
    #define EPWM_CMPCTRL_OFFSET   0x20e
    #define EPWM_CMPAHR_OFFSET    0x210
    #define EPWM_CMPA_OFFSET      0x212
    #define EPWM_CMPB_OFFSET      0x214
    #define EPWM_AQCTLA_OFFSET    0x216
    #define EPWM_AQCTLB_OFFSET    0x218
    #define EPWM_AQSFRC_OFFSET    0x21a
    #define EPWM_AQCSFRC_OFFSET   0x21c
    #define EPWM_DBCTL_OFFSET     0x21e
    #define EPWM_DBRED_OFFSET     0x220
    #define EPWM_DBFED_OFFSET     0x222
    #define EPWM_TZSEL_OFFSET     0x224
    #define EPWM_TZCTL_OFFSET     0x228
    #define EPWM_TZEINT_OFFSET    0x22a
    #define EPWM_TZFLG_OFFSET     0x22c
    #define EPWM_TZCLR_OFFSET     0x22e
    #define EPWM_TZFRC_OFFSET     0x230
    #define EPWM_ETSEL_OFFSET     0x232
    #define EPWM_ETPS_OFFSET      0x234
    #define EPWM_ETFLG_OFFSET     0x236
    #define EPWM_ETCLR_OFFSET     0x238
    #define EPWM_ETFRC_OFFSET     0x23a
    #define EPWM_PCCTL_OFFSET     0x23c
    #define EPWM_HRCNFG_OFFSET    0x2c0

     

    My Defines From the PRU side, taken from,

    ti-processor-sdk-linux-am335x-evm-02.00.01.07/example-applications/pru-icss-4.0.1/include/am335x/sys_pwmss.h

    /* SYS_PWMSS register set */
    typedef struct{

        /***************************/
        /* PWM Subsystem Registers */
        /***************************/
        /* SYS_PWMSS_IDVER register bit field */
        union {
            volatile uint32_t IDVER;

            volatile struct {
                unsigned Y_MINOR    : 6;        //5:0
                unsigned CUSTOM        : 2;        //7:6
                unsigned X_MAJOR    : 3;        //10:8
                unsigned R_RTL        : 5;        //15:11
                unsigned FUNC        : 12;        //27:16
                unsigned rsvd28        : 2;        //29:28
                unsigned SCHEME        : 2;        //31:30
            } IDVER_bit;
        } ;    // 0x0

        /* SYS_PWMSS_SYSCONFIG register bit field */
        union {
            volatile uint32_t SYSCONFIG;

            volatile struct {
                unsigned SOFTRESET        : 1;        //0
                unsigned FREEEMU        : 1;        //1
                unsigned IDLEMODE        : 2;        //3:2
                unsigned STANDBYMODE    : 2;        //5:4
                unsigned rsvd6            : 26;        //31:6
            } SYSCONFIG_bit;
        } ;    // 0x4

        /* SYS_PWMSS_CLKCONFIG register bit field */
        union {
            volatile uint32_t CLKCONFIG;

            volatile struct {
                unsigned ECAPCLK_EN            : 1;        //0
                unsigned ECAPCLKSTOP_REQ    : 1;        //1
                unsigned rsvd2                : 2;        //3:2
                unsigned EQEPCLK_EN            : 1;        //4
                unsigned EQEPCLKSTOP_REQ    : 1;        //5
                unsigned rsvd6                : 2;        //7:6
                unsigned EPWMCLK_EN            : 1;        //8
                unsigned EPWMCLKSTOP_REQ    : 1;        //9
                unsigned rsvd10                : 22;        //31:10
            } CLKCONFIG_bit;
        } ;    // 0x8

        /* SYS_PWMSS_CLKSTATUS register bit field */
        union {
            volatile uint32_t CLKSTATUS;

            volatile struct {
                unsigned ECAPCLK_EN_ACK        : 1;        //0
                unsigned ECAPCLKSTOP_ACK    : 1;        //1
                unsigned rsvd2                : 2;        //3:2
                unsigned EQEPCLK_EN_ACK        : 1;        //4
                unsigned EQEPCLKSTOP_ACK    : 1;        //5
                unsigned rsvd6                : 2;        //7:6
                unsigned EPWMCLK_EN_ACK        : 1;        //8
                unsigned EPWMCLKSTOP_ACK    : 1;        //9
                unsigned rsvd10                : 22;        //31:10
            } CLKSTATUS_bit;
        } ;    // 0xC

        uint32_t rsvd10[60];        // 0x10 - 0xFC

        /*************************/
        /* eCAP Module Registers */
        /*************************/
        /* SYS_PWMSS_ECAP_TSCTR register bit field */
        union {
            volatile uint32_t ECAP_TSCTR;

            volatile struct {
                unsigned TSCTR    : 32;        //31:0
            } ECAP_TSCTR_bit;
        } ;    // 0x100

        /* SYS_PWMSS_ECAP_CTRPHS register bit field */
        union {
            volatile uint32_t ECAP_CTRPHS;

            volatile struct {
                unsigned CTRPHS    : 32;        //31:0
            } ECAP_CTRPHS_bit;
        } ;    // 0x104

        /* SYS_PWMSS_ECAP_CAP1 register bit field */
        union {
            volatile uint32_t ECAP_CAP1;

            volatile struct {
                unsigned CAP1    : 32;        //31:0
            } ECAP_CAP1_bit;
        } ;    // 0x108

        /* SYS_PWMSS_ECAP_CAP2 register bit field */
        union {
            volatile uint32_t ECAP_CAP2;

            volatile struct {
                unsigned CAP2    : 32;        //31:0
            } ECAP_CAP2_bit;
        } ;    // 0x10C

        /* SYS_PWMSS_ECAP_CAP3 register bit field */
        union {
            volatile uint32_t ECAP_CAP3;

            volatile struct {
                unsigned CAP3    : 32;        //31:0
            } ECAP_CAP3_bit;
        } ;    // 0x110

        /* SYS_PWMSS_ECAP_CAP4 register bit field */
        union {
            volatile uint32_t ECAP_CAP4;

            volatile struct {
                unsigned CAP4    : 32;        //31:0
            } ECAP_CAP4_bit;
        } ;    // 0x114

        uint32_t rsvd118[4];        // 0x118 - 0x124

        /* SYS_PWMSS_ECAP_ECCTL1 register bit field */
        volatile uint16_t ECAP_ECCTL1;    // 0x128

        /* SYS_PWMSS_ECAP_ECCTL2 register bit field */
        volatile uint16_t ECAP_ECCTL2;    // 0x12A

        /* SYS_PWMSS_ECAP_ECEINT register bit field */
        volatile uint16_t ECAP_ECEINT;    // 0x12C

        /* SYS_PWMSS_ECAP_ECFLG register bit field */
        volatile uint16_t ECAP_ECFLG;    // 0x12E

        /* SYS_PWMSS_ECAP_ECCLR register bit field */
        volatile uint16_t ECAP_ECCLR;    // 0x130

        /* SYS_PWMSS_ECAP_ECFRC register bit field */
        volatile uint16_t ECAP_ECFRC;    // 0x132

        uint32_t rsvd134[10];        // 0x134 - 0x158

        /* SYS_PWMSS_ECAP_REVID register bit field */
        union {
            volatile uint32_t ECAP_REVID;

            volatile struct {
                unsigned REV        : 32;        //31:0
            } ECAP_REVID_bit;
        } ;    // 0x15C

        uint32_t rsvd160[8];        // 0x160 - 0x17C

        /*************************/
        /* eQEP Module Registers */
        /*************************/
        /* SYS_PWMSS_EQEP_QPOSCNT register bit field */
        union {
            volatile uint32_t EQEP_QPOSCNT;

            volatile struct {
                unsigned QPOSCNT    : 32;        //31:0
            } EQEP_QPOSCNT_bit;
        } ;    // 0x180

        /* SYS_PWMSS_EQEP_QPOSINIT register bit field */
        union {
            volatile uint32_t EQEP_QPOSINIT;

            volatile struct {
                unsigned QPOSINIT    : 32;        //31:0
            } EQEP_QPOSINIT_bit;
        } ;    // 0x184

        /* SYS_PWMSS_EQEP_QPOSMAX register bit field */
        union {
            volatile uint32_t EQEP_QPOSMAX;

            volatile struct {
                unsigned QPOSMAX    : 32;        //31:0
            } EQEP_QPOSMAX_bit;
        } ;    // 0x188

        /* SYS_PWMSS_EQEP_QPOSCMP register bit field */
        union {
            volatile uint32_t EQEP_QPOSCMP;

            volatile struct {
                unsigned QPOSCMP    : 32;        //31:0
            } EQEP_QPOSCMP_bit;
        } ;    // 0x18C

        /* SYS_PWMSS_EQEP_QPOSILAT register bit field */
        union {
            volatile uint32_t EQEP_QPOSILAT;

            volatile struct {
                unsigned QPOSILAT    : 32;        //31:0
            } EQEP_QPOSILAT_bit;
        } ;    // 0x190

        /* SYS_PWMSS_EQEP_QPOSSLAT register bit field */
        union {
            volatile uint32_t EQEP_QPOSSLAT;

            volatile struct {
                unsigned QPOSSLAT    : 32;        //31:0
            } EQEP_QPOSSLAT_bit;
        } ;    // 0x194

        /* SYS_PWMSS_EQEP_QPOSLAT register bit field */
        union {
            volatile uint32_t EQEP_QPOSLAT;

            volatile struct {
                unsigned QPOSLAT    : 32;        //31:0
            } EQEP_QPOSLAT_bit;
        } ;    // 0x198

        /* SYS_PWMSS_EQEP_QUTMR register bit field */
        union {
            volatile uint32_t EQEP_QUTMR;

            volatile struct {
                unsigned QUTMR    : 32;        //31:0
            } EQEP_QUTMR_bit;
        } ;    // 0x19C

        /* SYS_PWMSS_EQEP_QUPRD register bit field */
        union {
            volatile uint32_t EQEP_QUPRD;

            volatile struct {
                unsigned QUPRD    : 32;        //31:0
            } EQEP_QUPRD_bit;
        } ;    // 0x1A0

        /* SYS_PWMSS_EQEP_QWDTMR register bit field */
        volatile uint16_t EQEP_QWDTMR;    // 0x1A4

        /* SYS_PWMSS_EQEP_QWDPRD register bit field */
        volatile uint16_t EQEP_QWDPRD;    // 0x1A6

        /* SYS_PWMSS_EQEP_QDECCTL register bit field */
        volatile uint16_t EQEP_QDECCTL;    // 0x1A8

        /* SYS_PWMSS_EQEP_QEPCTL register bit field */
        volatile uint16_t EQEP_QEPCTL;    // 0x1AA

        /* SYS_PWMSS_EQEP_QCAPCTL register bit field */
        volatile uint16_t EQEP_QCAPCTL;    // 0x1AC

        /* SYS_PWMSS_EQEP_QPOSCTL register bit field */
        volatile uint16_t EQEP_QPOSCTL;    // 0x1AE

        /* SYS_PWMSS_EQEP_QEINT register bit field */
        volatile uint16_t EQEP_QEINT;    // 0x1B0

        /* SYS_PWMSS_EQEP_QFLG register bit field */
        volatile uint16_t EQEP_QFLG;    // 0x1B2

        /* SYS_PWMSS_EQEP_QCLR register bit field */
        volatile uint16_t EQEP_QCLR;    // 0x1B4

        /* SYS_PWMSS_EQEP_QFRC register bit field */
        volatile uint16_t EQEP_QFRC;    // 0x1B6

        /* SYS_PWMSS_EQEP_QEPSTS register bit field */
        volatile uint16_t EQEP_QEPSTS;    // 0x1B8

        /* SYS_PWMSS_EQEP_QCTMR register bit field */
        volatile uint16_t EQEP_QCTMR;    // 0x1BA

        /* SYS_PWMSS_EQEP_QCPRD register bit field */
        volatile uint16_t EQEP_QCPRD;    // 0x1BC

        /* SYS_PWMSS_EQEP_QCTMRLAT register bit field */
        volatile uint16_t EQEP_QCTMRLAT;    // 0x1BE

        /* SYS_PWMSS_EQEP_QCPRDLAT register bit field */
        volatile uint16_t EQEP_QCPRDLAT;    // 0x1C0

        uint16_t rsvd1C2[1];        // 0x1C2 - 0x1C3
        uint32_t rsvd1C4[6];        // 0x1C4 - 0x1D8

        /* SYS_PWMSS_EQEP_REVID register bit field */
        union {
            volatile uint32_t EQEP_REVID;

            volatile struct {
                unsigned REVID    : 32;        //31:0
            } EQEP_REVID_bit;
        } ;    // 0x1DC

        uint32_t rsvd1E0[8];        // 0x1E0 - 0x1FC

        /*************************/
        /* ePWM Module Registers */
        /*************************/
        /* SYS_PWMSS_EPWM_TBCTL register bit field */
        volatile uint16_t EPWM_TBCTL;    // 0x200

        /* SYS_PWMSS_EPWM_TBSTS register bit field */
        volatile uint16_t EPWM_TBSTS;    // 0x202

        /* SYS_PWMSS_EPWM_TBPHSHR register bit field */
        volatile uint16_t EPWM_TBPHSHR;    // 0x204

        /* SYS_PWMSS_EPWM_TBPHS register bit field */
        volatile uint16_t EPWM_TBPHS;    // 0x206

        /* SYS_PWMSS_EPWM_TBCNT register bit field */
        volatile uint16_t EPWM_TBCNT;    // 0x208

        /* SYS_PWMSS_EPWM_TBPRD register bit field */
        volatile uint16_t EPWM_TBPRD;    // 0x20A

        uint16_t rsvd20C[1];        // 0x20C - 0x20D

        /* SYS_PWMSS_EPWM_CMPCTL register bit field */
        volatile uint16_t EPWM_CMPCTL;    // 0x20E

        /* SYS_PWMSS_EPWM_CMPAHR register bit field */
        volatile uint16_t EPWM_CMPAHR;    // 0x210

        /* SYS_PWMSS_EPWM_CMPA register bit field */
        volatile uint16_t EPWM_CMPA;    // 0x212

        /* SYS_PWMSS_EPWM_CMPB register bit field */
        volatile uint16_t EPWM_CMPB;    // 0x214

        /* SYS_PWMSS_EPWM_AQCTLA register bit field */
        volatile uint16_t EPWM_AQCTLA;    // 0x216

        /* SYS_PWMSS_EPWM_AQCTLB register bit field */
        volatile uint16_t EPWM_AQCTLB;    // 0x218

        /* SYS_PWMSS_EPWM_AQSFRC register bit field */
        volatile uint16_t EPWM_AQSFRC;    // 0x21A

        /* SYS_PWMSS_EPWM_AQCSFRC register bit field */
        volatile uint16_t EPWM_AQCSFRC;    // 0x21C

        /* SYS_PWMSS_EPWM_DBCTL register bit field */
        volatile uint16_t EPWM_DBCTL;    // 0x21E

        /* SYS_PWMSS_EPWM_DBRED register bit field */
        volatile uint16_t EPWM_DBRED;    // 0x220

        /* SYS_PWMSS_EPWM_DBFED register bit field */
        volatile uint16_t EPWM_DBFED;    // 0x222

        /* SYS_PWMSS_EPWM_TZSEL register bit field */
        volatile uint16_t EPWM_TZSEL;    // 0x224

        uint16_t rsvd226[1];        // 0x226 - 0x227

        /* SYS_PWMSS_EPWM_TZCTL register bit field */
        volatile uint16_t EPWM_TZCTL;    // 0x228

        /* SYS_PWMSS_EPWM_TZEINT register bit field */
        volatile uint16_t EPWM_TZEINT;    // 0x22A

        /* SYS_PWMSS_EPWM_TZFLG register bit field */
        volatile uint16_t EPWM_TZFLG;    // 0x22C

        /* SYS_PWMSS_EPWM_TZCLR register bit field */
        volatile uint16_t EPWM_TZCLR;    // 0x22E

        /* SYS_PWMSS_EPWM_TZFRC register bit field */
        volatile uint16_t EPWM_TZFRC;    // 0x230

        /* SYS_PWMSS_EPWM_ETSEL register bit field */
        volatile uint16_t EPWM_ETSEL;    // 0x232

        /* SYS_PWMSS_EPWM_ETPS register bit field */
        volatile uint16_t EPWM_ETPS;    // 0x234

        /* SYS_PWMSS_EPWM_ETFLG register bit field */
        volatile uint16_t EPWM_ETFLG;    // 0x236

        /* SYS_PWMSS_EPWM_ETCLR register bit field */
        volatile uint16_t EPWM_ETCLR;    // 0x238

        /* SYS_PWMSS_EPWM_ETFRC register bit field */
        volatile uint16_t EPWM_ETFRC;    // 0x23A

        /* SYS_PWMSS_EPWM_PCCTL register bit field */
        volatile uint16_t EPWM_PCCTL;    // 0x23C

        uint16_t rsvd23E[1];        // 0x23E - 0x23F
        uint32_t rsvd240[32];        // 0x240 - 0x2BC

        /* SYS_PWMSS_EPWM_HRCNGF register bit field */
        volatile uint16_t EPWM_HRCNGF;    // 0x2C0

    } sysPwmss;

    volatile __far sysPwmss PWMSS0 __attribute__((cregister("PWMSS0", far), peripheral));
    volatile __far sysPwmss PWMSS1 __attribute__((cregister("PWMSS1", far), peripheral));
    volatile __far sysPwmss PWMSS2 __attribute__((cregister("PWMSS2", far), peripheral));

    In my PRU 1 file I have the following includes:


    #include <stdint.h>
    #include <limits.h>
    #include <pru_cfg.h>
    //#include <pru_ecap.h>
    #include <sys_pwmss.h>
    #include <pru_intc.h>
    #include <rsc_types.h>
    #include <pru_virtqueue.h>
    #include <pru_rpmsg.h>
    #include <sys_mailbox.h>
    #include "resource_table_1.h"
    #include "pruio.h"

  • To enable the PWMSS subsystems you first need to enable the clocks (section 15.1.2.3 of the AM335X TRM Rev. M). This wiki page describes the sequence necessary to start the eHRPWM submodule. It's for Starterware but you can use it as a guideline.
  • What wiki page?

    section 15.1.2.3 describes the CLKCONFIG register.
    That register is being set.

    This is what I wrote:
    PWMSS0 CLKCONFIG 0x00000111
    PWMSS1 CLKCONFIG 0x00000111
    PWMSS2 CLKCONFIG 0x00000111

    This is what I read back:
    PWMSS0 CLKCONFIG 0x00000111
    PWMSS1 CLKCONFIG 0x00000111
    PWMSS2 CLKCONFIG 0x00000111

    Is 15.1.2.4 the CLOCK status?
    CLKSTATUS Register (offset = Ch) [reset = 0h]
    CLKSTATUS is shown in Figure 15-6 and described in Table 15-8.
    The clock status register is used in the PWMSS submodule for clkstop ack and clk_en ack status.

    This is what I read from CLKSTATUS:
    PWMSS0 CLKSTATUS 0x00000111
    PWMSS1 CLKSTATUS 0x00000111
    PWMSS2 CLKSTATUS 0x00000111

    This indicates the clocks are running, correct?
  • Yes, this is correct. Sorry about the link in my previous post, here it is again: processors.wiki.ti.com/.../StarterWare_EHRPWM
  •  

    Biser Gatchev-XID said:
    Yes, this is correct. Sorry about the link in my previous post, here it is again: processors.wiki.ti.com/.../StarterWare_EHRPWM
    The functions referenced in the document do not exist in StarterWare.
    I am beginning to highly suspect the pin-mux parser in the TI SDK.
    I am not able to even get PWMSS2 eCAP2 or PWMSS0 eCAP0 running.
    On the BBB PWMSS0 eCAP0 shares the same pin with pru1 eCAP.
    pru1 eCAP works fine. 

  • Michael,

    Can you confirm that you are writing a 0x2 into bits 1:0 of the CM_PER_EPWMSSn_CLKCTRL registers before attempting to use the peripherals? I see where you create the definitions for the addresses and the definition of the correct value, but I can't see if you are writing it anywhere.

    Something like this:
    #define CM_PER_EPWMSS1 (*((volatile unsigned int *)0x44E000CC))
    while (!(CM_PER_EPWMSS1 & 0x2))
    CM_PER_EPWMSS1 |= 0x2;

    Jason Reeder
  • Jason Reeder said:
    Michael,

    Can you confirm that you are writing a 0x2 into bits 1:0 of the CM_PER_EPWMSSn_CLKCTRL registers before attempting to use the peripherals? I see where you create the definitions for the addresses and the definition of the correct value, but I can't see if you are writing it anywhere.

    Something like this:
    #define CM_PER_EPWMSS1 (*((volatile unsigned int *)0x44E000CC))
    while (!(CM_PER_EPWMSS1 & 0x2))
    CM_PER_EPWMSS1 |= 0x2;

    Jason Reeder

    Yes, all clock control registers are set correctly, I read them all back to verify.

    all clocks are running, all registers are set correctly. I just do not get pwm output on any configured pins.

    This appears to me the SDK is broken, specifically the device tree parser driver. I do not use device tree overlays,

    I have tried the ehrpwm and ecap on all three Sub-system Modules (PWWSS0, PWMSS1, PWMSS2), neither module will output pwm on the configured pins.

    regards,

    Mike Brainerd

  • Mike,

    Seems like we might be running into a pin mux issue. After your board boots can you put the contents of dmesg into a text file and post it here as an attachment.

    root@am335x-evm:~#dmesg > dmesg.txt

    I'm assuming that we'll get some errors on some 'pinctrl' lines.

    Jason Reeder

  • root@BlueGiant:~# shutdown -h nowdmesg
    [ 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.1.13mrb18FEB2016-g8dc6617 (mbrainerd@oscar) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #12 PREEMPT Thu Feb 18 14:27:32 CST 2016
    [ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [ 0.000000] Machine model: TI AM335x BeagleBone Black
    [ 0.000000] cma: Reserved 24 MiB at 0x9e800000
    [ 0.000000] Memory policy: Data cache writeback
    [ 0.000000] On node 0 totalpages: 131072
    [ 0.000000] free_area_init_node: node 0, pgdat c0863204, node_mem_map de36d000
    [ 0.000000] Normal zone: 1152 pages used for memmap
    [ 0.000000] Normal zone: 0 pages reserved
    [ 0.000000] Normal zone: 131072 pages, LIFO batch:31
    [ 0.000000] CPU: All CPU(s) started in SVC mode.
    [ 0.000000] AM335X ES2.1 (sgx neon )
    [ 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: 129920
    [ 0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=00000000-02 rw 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: 485632K/524288K available (6047K kernel code, 252K rwdata, 1996K rodata, 264K init, 225K bss, 14080K reserved, 24576K cma-reserved, 0K highmem)
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
    [ 0.000000] vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .text : 0xc0008000 - 0xc07e302c (8045 kB)
    [ 0.000000] .init : 0xc07e4000 - 0xc0826000 ( 264 kB)
    [ 0.000000] .data : 0xc0826000 - 0xc0865268 ( 253 kB)
    [ 0.000000] .bss : 0xc0868000 - 0xc08a07a8 ( 226 kB)
    [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] Preemptible hierarchical RCU implementation.
    [ 0.000000] Additional per-CPU info printed with stalls.
    [ 0.000000] NR_IRQS:16 nr_irqs:16 16
    [ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [ 0.000000] OMAP clockevent source: timer2 at 26000000 Hz
    [ 0.000012] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 82595524588ns
    [ 0.000029] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 73510017198 ns
    [ 0.000038] OMAP clocksource: timer1 at 26000000 Hz
    [ 0.000190] Console: colour dummy device 80x30
    [ 0.000208] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [ 0.000214] This ensures that you still see kernel messages. Please
    [ 0.000218] update your kernel commandline.
    [ 0.000234] Calibrating delay loop... 1082.16 BogoMIPS (lpj=5410816)
    [ 0.089348] pid_max: default: 32768 minimum: 301
    [ 0.089436] Security Framework initialized
    [ 0.089480] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [ 0.089488] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [ 0.090051] Initializing cgroup subsys blkio
    [ 0.090071] Initializing cgroup subsys memory
    [ 0.090107] Initializing cgroup subsys devices
    [ 0.090120] Initializing cgroup subsys freezer
    [ 0.090132] Initializing cgroup subsys perf_event
    [ 0.090152] CPU: Testing write buffer coherency: ok
    [ 0.090482] Setting up static identity map for 0x80008200 - 0x80008270
    [ 0.091723] devtmpfs: initialized
    [ 0.099246] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [ 0.107373] omap_hwmod: tptc0 using broken dt data from edma
    [ 0.107479] omap_hwmod: tptc1 using broken dt data from edma
    [ 0.107572] omap_hwmod: tptc2 using broken dt data from edma
    [ 0.111821] omap_hwmod: debugss: _wait_target_disable failed
    [ 0.165416] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [ 0.167219] pinctrl core: initialized pinctrl subsystem
    [ 0.168213] NET: Registered protocol family 16
    [ 0.170066] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [ 0.199365] cpuidle: using governor ladder
    [ 0.229355] cpuidle: using governor menu
    [ 0.232048] gpiochip_add: registered GPIOs 0 to 31 on device: gpio
    [ 0.232303] OMAP GPIO hardware version 0.1
    [ 0.232891] gpiochip_add: registered GPIOs 32 to 63 on device: gpio
    [ 0.233506] gpiochip_add: registered GPIOs 64 to 95 on device: gpio
    [ 0.234072] gpiochip_add: registered GPIOs 96 to 127 on device: gpio
    [ 0.239898] No ATAGs?
    [ 0.239925] hw-breakpoint: debug architecture 0x4 unsupported.
    [ 0.275678] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
    [ 0.276054] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator@0[0]'
    [ 0.278087] vgaarb: loaded
    [ 0.278518] SCSI subsystem initialized
    [ 0.278828] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [ 0.278974] pps_core: LinuxPPS API ver. 1 registered
    [ 0.278981] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [ 0.279014] PTP clock support registered
    [ 0.279766] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [ 0.280520] Switched to clocksource timer1
    [ 0.288526] NET: Registered protocol family 2
    [ 0.289205] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [ 0.289246] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
    [ 0.289281] TCP: Hash tables configured (established 4096 bind 4096)
    [ 0.289433] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [ 0.289450] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [ 0.289592] NET: Registered protocol family 1
    [ 0.289917] RPC: Registered named UNIX socket transport module.
    [ 0.289930] RPC: Registered udp transport module.
    [ 0.289935] RPC: Registered tcp transport module.
    [ 0.289940] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [ 0.289964] PCI: CLS 0 bytes, default 64
    [ 0.290481] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [ 0.290615] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [ 0.292190] futex hash table entries: 256 (order: -1, 3072 bytes)
    [ 0.292262] audit: initializing netlink subsys (disabled)
    [ 0.292318] audit: type=2000 audit(0.280:1): initialized
    [ 0.298094] VFS: Disk quotas dquot_6.6.0
    [ 0.298266] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [ 0.299963] NFS: Registering the id_resolver key type
    [ 0.300030] Key type id_resolver registered
    [ 0.300036] Key type id_legacy registered
    [ 0.300100] jffs2: version 2.2. (NAND) (SUMMARY) © 2001-2006 Red Hat, Inc.
    [ 0.302336] NET: Registered protocol family 38
    [ 0.302390] io scheduler noop registered
    [ 0.302400] io scheduler deadline registered
    [ 0.302447] io scheduler cfq registered (default)
    [ 0.303280] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [ 0.304862] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [ 0.307343] omap8250 44e09000.serial: GPIO lookup for consumer enable
    [ 0.307361] omap8250 44e09000.serial: using device tree for GPIO lookup
    [ 0.307374] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/ocp/serial@44e09000[0]'
    [ 0.307382] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/ocp/serial@44e09000[0]'
    [ 0.307389] omap8250 44e09000.serial: using lookup tables for GPIO lookup
    [ 0.307398] omap8250 44e09000.serial: lookup for GPIO enable failed
    [ 0.307781] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 155, base_baud = 3000000) is a 8250
    [ 0.884065] console [ttyS0] enabled
    [ 0.888090] [drm] Initialized drm 1.1.0 20060810
    [ 0.900692] brd: module loaded
    [ 0.907491] loop: module loaded
    [ 0.911265] mtdoops: mtd device (mtddev=name/number) must be supplied
    [ 0.980573] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
    [ 0.986237] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
    [ 0.992821] libphy: 4a101000.mdio: probed
    [ 0.996553] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
    [ 1.005641] cpsw 4a100000.ethernet: Detected MACID = 20:cd:39:dc:f9:33
    [ 1.012948] mousedev: PS/2 mouse device common for all mice
    [ 1.018130] i2c /dev entries driver
    [ 1.022400] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd
    [ 1.022415] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
    [ 1.022440] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@48060000[0]' - status (0)
    [ 1.022510] omap_hsmmc 48060000.mmc: Got CD GPIO
    [ 1.026797] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp
    [ 1.026805] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
    [ 1.026813] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@48060000[0]'
    [ 1.026822] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@48060000[0]'
    [ 1.026828] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup
    [ 1.026836] omap_hsmmc 48060000.mmc: lookup for GPIO wp failed
    [ 1.061005] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer cd
    [ 1.061021] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
    [ 1.061032] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@481d8000[0]'
    [ 1.061040] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@481d8000[0]'
    [ 1.061047] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
    [ 1.061056] omap_hsmmc 481d8000.mmc: lookup for GPIO cd failed
    [ 1.061065] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer wp
    [ 1.061072] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
    [ 1.061079] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@481d8000[0]'
    [ 1.061086] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@481d8000[0]'
    [ 1.061163] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
    [ 1.061171] omap_hsmmc 481d8000.mmc: lookup for GPIO wp failed
    [ 1.097337] mmc0: host does not support reading read-only switch, assuming write-enable
    [ 1.105066] ledtrig-cpu: registered to indicate activity on CPUs
    [ 1.111028] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [ 1.116456] mmc0: new high speed SDHC card at address 0001
    [ 1.122368] mmcblk0: mmc0:0001 00000 3.79 GiB
    [ 1.127966] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [ 1.133479] mmcblk0: p1 p2
    [ 1.139623] oprofile: using arm/armv7
    [ 1.145596] Initializing XFRM netlink socket
    [ 1.149644] NET: Registered protocol family 17
    [ 1.153937] NET: Registered protocol family 15
    [ 1.158207] Key type dns_resolver registered
    [ 1.162488] omap_voltage_late_init: Voltage driver support not added
    [ 1.168716] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
    [ 1.176909] cpu cpu0: cpu0 clock notifier not ready, retry
    [ 1.182343] ThumbEE CPU extension supported.
    [ 1.186389] Registering SWP/SWPB emulation handler
    [ 1.217095] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [ 1.222128] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [ 1.227343] mmc1: MAN_BKOPS_EN bit is not set
    [ 1.231861] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
    [ 1.241373] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
    [ 1.250690] cpufreq: __cpufreq_add_dev: CPU0: Running at unlisted freq: 1083333 KHz
    [ 1.259295] mmc1: new high speed MMC card at address 0001
    [ 1.264358] cpufreq: __cpufreq_add_dev: CPU0: Unlisted initial frequency changed to: 1000000 KHz
    [ 1.272995] mmcblk1: mmc1:0001 MMC04G 3.52 GiB
    [ 1.277333] mmcblk1boot0: mmc1:0001 MMC04G partition 1 16.0 MiB
    [ 1.283358] hctosys: unable to open rtc device (rtc0)
    [ 1.291840] mmcblk1boot1: mmc1:0001 MMC04G partition 2 16.0 MiB
    [ 1.299369] mmcblk1: p1 p2
    [ 1.325310] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [ 1.332973] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [ 1.341082] devtmpfs: mounted
    [ 1.344130] Freeing unused kernel memory: 264K (c07e4000 - c0826000)
    [ 2.242272] udevd[96]: starting version 182
    [ 2.521898] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@2[0]' - status (0)
    [ 2.522223] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@3[0]' - status (0)
    [ 2.522411] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@4[0]' - status (0)
    [ 2.522577] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@5[0]' - status (0)
    [ 2.592262] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [ 2.672159] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
    [ 2.919888] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
    [ 3.499013] pruss-rproc 4a300000.pruss: 8 PRU interrupts parsed
    [ 3.499083] pruss-rproc 4a300000.pruss: memory dram0: pa 0x4a300000 size 0x2000 va e0c18000
    [ 3.499099] pruss-rproc 4a300000.pruss: memory dram1: pa 0x4a302000 size 0x2000 va e0c1c000
    [ 3.499113] pruss-rproc 4a300000.pruss: memory shrdram2: pa 0x4a310000 size 0x3000 va e0c20000
    [ 3.499127] pruss-rproc 4a300000.pruss: memory intc: pa 0x4a320000 size 0x2000 va e0c24000
    [ 3.499140] pruss-rproc 4a300000.pruss: memory cfg: pa 0x4a326000 size 0x2000 va e0c28000
    [ 3.499336] pruss-rproc 4a300000.pruss: creating platform devices for PRU cores
    [ 3.664918] pru-rproc 4a334000.pru0: memory iram: pa 0x4a334000 size 0x2000 va e0c2c000
    [ 3.664963] pru-rproc 4a334000.pru0: memory control: pa 0x4a322000 size 0x400 va e0c16000
    [ 3.664981] pru-rproc 4a334000.pru0: memory debug: pa 0x4a322400 size 0x100 va e0c30400
    [ 3.665198] remoteproc0: 4a334000.pru0 is available
    [ 3.712920] remoteproc0: Note: remoteproc is still under development and considered experimental.
    [ 3.793366] remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 4.086555] remoteproc0: registered virtio0 (type 7)
    [ 4.219254] pru-rproc 4a334000.pru0: PRU rproc node /ocp/pruss@4a300000/pru@4a334000 probed successfully
    [ 4.351218] pru-rproc 4a338000.pru1: memory iram: pa 0x4a338000 size 0x2000 va e0c40000
    [ 4.351264] pru-rproc 4a338000.pru1: memory control: pa 0x4a324000 size 0x400 va e0c44000
    [ 4.351279] pru-rproc 4a338000.pru1: memory debug: pa 0x4a324400 size 0x100 va e0c46400
    [ 4.351459] remoteproc1: 4a338000.pru1 is available
    [ 4.356068] remoteproc1: Note: remoteproc is still under development and considered experimental.
    [ 4.874543] remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 5.204056] remoteproc1: registered virtio1 (type 7)
    [ 5.208856] pru-rproc 4a338000.pru1: PRU rproc node /ocp/pruss@4a300000/pru@4a338000 probed successfully
    [ 5.617912] remoteproc0: powering up 4a334000.pru0
    [ 5.641125] remoteproc0: Booting fw image am335x-pru0-fw, size 46276
    [ 5.647210] pru-rproc 4a334000.pru0: version 0 event_chnl_map_size 1 event_chnl_map 00000180
    [ 5.647221] pru-rproc 4a334000.pru0: sysevt-to-ch[60] -> 0
    [ 5.647230] pru-rproc 4a334000.pru0: chnl-to-host[0] -> 0
    [ 5.647237] pru-rproc 4a334000.pru0: skip intr mapping for chnl 1
    [ 5.647245] pru-rproc 4a334000.pru0: skip intr mapping for chnl 2
    [ 5.647252] pru-rproc 4a334000.pru0: skip intr mapping for chnl 3
    [ 5.647259] pru-rproc 4a334000.pru0: skip intr mapping for chnl 4
    [ 5.647266] pru-rproc 4a334000.pru0: skip intr mapping for chnl 5
    [ 5.647274] pru-rproc 4a334000.pru0: skip intr mapping for chnl 6
    [ 5.647281] pru-rproc 4a334000.pru0: skip intr mapping for chnl 7
    [ 5.647288] pru-rproc 4a334000.pru0: skip intr mapping for chnl 8
    [ 5.647295] pru-rproc 4a334000.pru0: skip intr mapping for chnl 9
    [ 5.647308] pruss-rproc 4a300000.pruss: SYSEV60 -> CH0 (CMR15 0x00000000)
    [ 5.647318] pruss-rproc 4a300000.pruss: CH0 -> HOST0 (HMR0 0x00000000)
    [ 5.647328] pruss-rproc 4a300000.pruss: configured system_events = 0x1000000000000000 intr_channels = 0x00000001 host_intr = 0x00000001
    [ 5.681213] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [ 5.695304] remoteproc0: starting PRU0: entry-point = 0x0
    [ 5.695329] remoteproc0: remote processor 4a334000.pru0 is now up
    [ 5.706220] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
    [ 5.722565] remoteproc0: kicking vqid 0 on PRU0
    [ 5.723672] virtio_rpmsg_bus virtio0: rpmsg host is online
    [ 5.739448] FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [ 5.781220] remoteproc1: powering up 4a338000.pru1
    [ 5.786353] remoteproc1: Booting fw image am335x-pru1-fw, size 104580
    [ 5.856018] pru-rproc 4a338000.pru1: version 0 event_chnl_map_size 1 event_chnl_map 00000402
    [ 5.856044] pru-rproc 4a338000.pru1: sysevt-to-ch[59] -> 1
    [ 5.856052] pru-rproc 4a338000.pru1: skip intr mapping for chnl 0
    [ 5.856061] pru-rproc 4a338000.pru1: chnl-to-host[1] -> 1
    [ 5.856068] pru-rproc 4a338000.pru1: skip intr mapping for chnl 2
    [ 5.856075] pru-rproc 4a338000.pru1: skip intr mapping for chnl 3
    [ 5.856083] pru-rproc 4a338000.pru1: skip intr mapping for chnl 4
    [ 5.856090] pru-rproc 4a338000.pru1: skip intr mapping for chnl 5
    [ 5.856097] pru-rproc 4a338000.pru1: skip intr mapping for chnl 6
    [ 5.856104] pru-rproc 4a338000.pru1: skip intr mapping for chnl 7
    [ 5.856112] pru-rproc 4a338000.pru1: skip intr mapping for chnl 8
    [ 5.856119] pru-rproc 4a338000.pru1: skip intr mapping for chnl 9
    [ 5.856133] pruss-rproc 4a300000.pruss: SYSEV59 -> CH1 (CMR14 0x01000000)
    [ 5.856142] pruss-rproc 4a300000.pruss: SYSEV60 -> CH0 (CMR15 0x00000000)
    [ 5.856152] pruss-rproc 4a300000.pruss: CH0 -> HOST0 (HMR0 0x00000000)
    [ 5.856161] pruss-rproc 4a300000.pruss: CH1 -> HOST1 (HMR0 0x00000100)
    [ 5.856171] pruss-rproc 4a300000.pruss: configured system_events = 0x1800000000000000 intr_channels = 0x00000003 host_intr = 0x00000003
    [ 5.912235] remoteproc1: starting PRU1: entry-point = 0x0
    [ 5.912260] remoteproc1: remote processor 4a338000.pru1 is now up
    [ 5.945144] remoteproc1: mbox msg: 0x0
    [ 5.945189] virtio_rpmsg_bus virtio1: creating channel rpmsg-pru addr 0x1e
    [ 5.951802] remoteproc1: kicking vqid 0 on PRU1
    [ 5.951831] virtio_rpmsg_bus virtio1: rpmsg host is online
    [ 5.971814] virtio_rpmsg_bus virtio1: creating channel rpmsg-pru addr 0x1f
    [ 6.003094] remoteproc1: kicking vqid 0 on PRU1
    [ 6.003151] remoteproc1: mbox msg: 0x0
    [ 6.003161] remoteproc1: no message was found in vqid 0
    [ 6.052254] rpmsg_pru rpmsg0: new rpmsg_pru device: /dev/rpmsg_pru30
    [ 6.079693] rpmsg_pru rpmsg1: new rpmsg_pru device: /dev/rpmsg_pru31
    [ 6.270460] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
    [ 6.588785] random: nonblocking pool is initialized
    [ 7.776990] net eth0: initializing cpsw version 1.12 (0)
    [ 7.784551] net eth0: phy found : id is : 0x7c0f1
    [ 7.788974] libphy: PHY 4a101000.mdio:01 not found
    [ 7.793604] net eth0: phy 4a101000.mdio:01 not found on slave 1
    [ 9.133785] NET: Registered protocol family 10
    [ 9.146505] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    [ 10.861268] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
    [ 10.868686] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    root@BlueGiant:~#
  • 7268.dmesg.txt
    [    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.1.13mrb18FEB2016-g8dc6617 (mbrainerd@oscar) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #13 PREEMPT Thu Feb 18 15:39:30 CST 2016
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] Machine model: TI AM335x BeagleBone Black
    [    0.000000] cma: Reserved 24 MiB at 0x9e800000
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] On node 0 totalpages: 131072
    [    0.000000] free_area_init_node: node 0, pgdat c085f1dc, node_mem_map de36d000
    [    0.000000]   Normal zone: 1152 pages used for memmap
    [    0.000000]   Normal zone: 0 pages reserved
    [    0.000000]   Normal zone: 131072 pages, LIFO batch:31
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (sgx neon )
    [    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: 129920
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=00000000-02 rw 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: 485648K/524288K available (6035K kernel code, 252K rwdata, 1992K rodata, 264K init, 225K bss, 14064K reserved, 24576K cma-reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc07df02c   (8029 kB)
    [    0.000000]       .init : 0xc07e0000 - 0xc0822000   ( 264 kB)
    [    0.000000]       .data : 0xc0822000 - 0xc0861228   ( 253 kB)
    [    0.000000]        .bss : 0xc0864000 - 0xc089c768   ( 226 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] 	Additional per-CPU info printed with stalls.
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] OMAP clockevent source: timer2 at 26000000 Hz
    [    0.000010] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 82595524588ns
    [    0.000025] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 73510017198 ns
    [    0.000034] OMAP clocksource: timer1 at 26000000 Hz
    [    0.000180] Console: colour dummy device 80x30
    [    0.000199] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.000204] This ensures that you still see kernel messages. Please
    [    0.000208] update your kernel commandline.
    [    0.000223] Calibrating delay loop... 1082.16 BogoMIPS (lpj=5410816)
    [    0.089347] pid_max: default: 32768 minimum: 301
    [    0.089433] Security Framework initialized
    [    0.089476] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.089485] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.090043] Initializing cgroup subsys blkio
    [    0.090063] Initializing cgroup subsys memory
    [    0.090098] Initializing cgroup subsys devices
    [    0.090111] Initializing cgroup subsys freezer
    [    0.090122] Initializing cgroup subsys perf_event
    [    0.090142] CPU: Testing write buffer coherency: ok
    [    0.090466] Setting up static identity map for 0x80008200 - 0x80008270
    [    0.091735] devtmpfs: initialized
    [    0.099451] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.106296] omap_hwmod: tptc0 using broken dt data from edma
    [    0.106384] omap_hwmod: tptc1 using broken dt data from edma
    [    0.106459] omap_hwmod: tptc2 using broken dt data from edma
    [    0.110532] omap_hwmod: debugss: _wait_target_disable failed
    [    0.164149] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.165945] pinctrl core: initialized pinctrl subsystem
    [    0.166942] NET: Registered protocol family 16
    [    0.168654] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.199363] cpuidle: using governor ladder
    [    0.229354] cpuidle: using governor menu
    [    0.232008] gpiochip_add: registered GPIOs 0 to 31 on device: gpio
    [    0.232258] OMAP GPIO hardware version 0.1
    [    0.232822] gpiochip_add: registered GPIOs 32 to 63 on device: gpio
    [    0.233427] gpiochip_add: registered GPIOs 64 to 95 on device: gpio
    [    0.233983] gpiochip_add: registered GPIOs 96 to 127 on device: gpio
    [    0.239730] No ATAGs?
    [    0.239757] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.275772] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
    [    0.276147] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator@0[0]'
    [    0.278265] vgaarb: loaded
    [    0.278695] SCSI subsystem initialized
    [    0.279011] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [    0.279157] pps_core: LinuxPPS API ver. 1 registered
    [    0.279164] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.279196] PTP clock support registered
    [    0.279963] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.280708] Switched to clocksource timer1
    [    0.288678] NET: Registered protocol family 2
    [    0.289432] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.289475] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.289510] TCP: Hash tables configured (established 4096 bind 4096)
    [    0.289576] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.289590] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.289723] NET: Registered protocol family 1
    [    0.290042] RPC: Registered named UNIX socket transport module.
    [    0.290055] RPC: Registered udp transport module.
    [    0.290060] RPC: Registered tcp transport module.
    [    0.290065] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.290085] PCI: CLS 0 bytes, default 64
    [    0.290586] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [    0.290624] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.292292] futex hash table entries: 256 (order: -1, 3072 bytes)
    [    0.292367] audit: initializing netlink subsys (disabled)
    [    0.292423] audit: type=2000 audit(0.280:1): initialized
    [    0.298238] VFS: Disk quotas dquot_6.6.0
    [    0.298416] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    0.300124] NFS: Registering the id_resolver key type
    [    0.300186] Key type id_resolver registered
    [    0.300192] Key type id_legacy registered
    [    0.300258] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
    [    0.302476] NET: Registered protocol family 38
    [    0.302537] io scheduler noop registered
    [    0.302548] io scheduler deadline registered
    [    0.302595] io scheduler cfq registered (default)
    [    0.303452] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.305036] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.307531] omap8250 44e09000.serial: GPIO lookup for consumer enable
    [    0.307549] omap8250 44e09000.serial: using device tree for GPIO lookup
    [    0.307561] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/ocp/serial@44e09000[0]'
    [    0.307569] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/ocp/serial@44e09000[0]'
    [    0.307577] omap8250 44e09000.serial: using lookup tables for GPIO lookup
    [    0.307586] omap8250 44e09000.serial: lookup for GPIO enable failed
    [    0.307960] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 155, base_baud = 3000000) is a 8250
    [    0.884248] console [ttyS0] enabled
    [    0.888296] [drm] Initialized drm 1.1.0 20060810
    [    0.900918] brd: module loaded
    [    0.907714] loop: module loaded
    [    0.911487] mtdoops: mtd device (mtddev=name/number) must be supplied
    [    0.980757] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
    [    0.986418] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
    [    0.993017] libphy: 4a101000.mdio: probed
    [    0.996748] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
    [    1.005835] cpsw 4a100000.ethernet: Detected MACID = 20:cd:39:dc:f9:33
    [    1.013141] mousedev: PS/2 mouse device common for all mice
    [    1.018323] i2c /dev entries driver
    [    1.022631] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd
    [    1.022645] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
    [    1.022669] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@48060000[0]' - status (0)
    [    1.022736] omap_hsmmc 48060000.mmc: Got CD GPIO
    [    1.027021] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp
    [    1.027028] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
    [    1.027036] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@48060000[0]'
    [    1.027044] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@48060000[0]'
    [    1.027052] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup
    [    1.027060] omap_hsmmc 48060000.mmc: lookup for GPIO wp failed
    [    1.061186] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer cd
    [    1.061204] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
    [    1.061215] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@481d8000[0]'
    [    1.061223] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@481d8000[0]'
    [    1.061231] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
    [    1.061239] omap_hsmmc 481d8000.mmc: lookup for GPIO cd failed
    [    1.061248] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer wp
    [    1.061255] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
    [    1.061262] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@481d8000[0]'
    [    1.061339] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@481d8000[0]'
    [    1.061349] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
    [    1.061356] omap_hsmmc 481d8000.mmc: lookup for GPIO wp failed
    [    1.097515] mmc0: host does not support reading read-only switch, assuming write-enable
    [    1.105254] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.111222] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [    1.116643] mmc0: new high speed SDHC card at address 0001
    [    1.122562] mmcblk0: mmc0:0001 00000 3.79 GiB 
    [    1.128167] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [    1.133685]  mmcblk0: p1 p2
    [    1.139818] oprofile: using arm/armv7
    [    1.145767] Initializing XFRM netlink socket
    [    1.149809] NET: Registered protocol family 17
    [    1.154103] NET: Registered protocol family 15
    [    1.158366] Key type dns_resolver registered
    [    1.162636] omap_voltage_late_init: Voltage driver support not added
    [    1.168874] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
    [    1.177061] cpu cpu0: cpu0 clock notifier not ready, retry
    [    1.182488] ThumbEE CPU extension supported.
    [    1.186532] Registering SWP/SWPB emulation handler
    [    1.217280] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [    1.222316] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    1.227531] mmc1: MAN_BKOPS_EN bit is not set
    [    1.232027] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
    [    1.241539] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
    [    1.250848] cpufreq: __cpufreq_add_dev: CPU0: Running at unlisted freq: 1083333 KHz
    [    1.259458] mmc1: new high speed MMC card at address 0001
    [    1.264515] cpufreq: __cpufreq_add_dev: CPU0: Unlisted initial frequency changed to: 1000000 KHz
    [    1.273141] mmcblk1: mmc1:0001 MMC04G 3.52 GiB 
    [    1.277475] mmcblk1boot0: mmc1:0001 MMC04G partition 1 16.0 MiB
    [    1.283491] hctosys: unable to open rtc device (rtc0)
    [    1.291981] mmcblk1boot1: mmc1:0001 MMC04G partition 2 16.0 MiB
    [    1.299520]  mmcblk1: p1 p2
    [    1.324987] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    1.332650] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    1.340690] devtmpfs: mounted
    [    1.343805] Freeing unused kernel memory: 264K (c07e0000 - c0822000)
    [    2.242315] udevd[96]: starting version 182
    [    2.522326] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@2[0]' - status (0)
    [    2.522643] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@3[0]' - status (0)
    [    2.522821] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@4[0]' - status (0)
    [    2.522987] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@5[0]' - status (0)
    [    2.598108] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [    2.708324] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
    [    2.948837] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
    [    3.503106] pruss-rproc 4a300000.pruss: 8 PRU interrupts parsed
    [    3.503178] pruss-rproc 4a300000.pruss: memory    dram0: pa 0x4a300000 size 0x2000 va e0c18000
    [    3.503203] pruss-rproc 4a300000.pruss: memory    dram1: pa 0x4a302000 size 0x2000 va e0c1c000
    [    3.503219] pruss-rproc 4a300000.pruss: memory shrdram2: pa 0x4a310000 size 0x3000 va e0c20000
    [    3.503232] pruss-rproc 4a300000.pruss: memory     intc: pa 0x4a320000 size 0x2000 va e0c24000
    [    3.503246] pruss-rproc 4a300000.pruss: memory      cfg: pa 0x4a326000 size 0x2000 va e0c28000
    [    3.503435] pruss-rproc 4a300000.pruss: creating platform devices for PRU cores
    [    3.635214] pru-rproc 4a334000.pru0: memory     iram: pa 0x4a334000 size 0x2000 va e0c2c000
    [    3.635261] pru-rproc 4a334000.pru0: memory  control: pa 0x4a322000 size 0x400 va e0c16000
    [    3.635278] pru-rproc 4a334000.pru0: memory    debug: pa 0x4a322400 size 0x100 va e0c30400
    [    3.635503]  remoteproc0: 4a334000.pru0 is available
    [    3.680895]  remoteproc0: Note: remoteproc is still under development and considered experimental.
    [    3.740326]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    4.017288]  remoteproc0: registered virtio0 (type 7)
    [    4.050213] pru-rproc 4a334000.pru0: PRU rproc node /ocp/pruss@4a300000/pru@4a334000 probed successfully
    [    4.261068] pru-rproc 4a338000.pru1: memory     iram: pa 0x4a338000 size 0x2000 va e0c40000
    [    4.261113] pru-rproc 4a338000.pru1: memory  control: pa 0x4a324000 size 0x400 va e0c44000
    [    4.261129] pru-rproc 4a338000.pru1: memory    debug: pa 0x4a324400 size 0x100 va e0c46400
    [    4.261316]  remoteproc1: 4a338000.pru1 is available
    [    4.265927]  remoteproc1: Note: remoteproc is still under development and considered experimental.
    [    4.598293]  remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    5.023193]  remoteproc1: registered virtio1 (type 7)
    [    5.027965] pru-rproc 4a338000.pru1: PRU rproc node /ocp/pruss@4a300000/pru@4a338000 probed successfully
    [    5.509370]  remoteproc0: powering up 4a334000.pru0
    [    5.556750]  remoteproc0: Booting fw image am335x-pru0-fw, size 46276
    [    5.600376] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [    5.610927] pru-rproc 4a334000.pru0: version 0 event_chnl_map_size 1 event_chnl_map 00000180
    [    5.610947] pru-rproc 4a334000.pru0: sysevt-to-ch[60] -> 0
    [    5.610956] pru-rproc 4a334000.pru0: chnl-to-host[0] -> 0
    [    5.610964] pru-rproc 4a334000.pru0: skip intr mapping for chnl 1
    [    5.610972] pru-rproc 4a334000.pru0: skip intr mapping for chnl 2
    [    5.610979] pru-rproc 4a334000.pru0: skip intr mapping for chnl 3
    [    5.610986] pru-rproc 4a334000.pru0: skip intr mapping for chnl 4
    [    5.610994] pru-rproc 4a334000.pru0: skip intr mapping for chnl 5
    [    5.611001] pru-rproc 4a334000.pru0: skip intr mapping for chnl 6
    [    5.611008] pru-rproc 4a334000.pru0: skip intr mapping for chnl 7
    [    5.611016] pru-rproc 4a334000.pru0: skip intr mapping for chnl 8
    [    5.611023] pru-rproc 4a334000.pru0: skip intr mapping for chnl 9
    [    5.611036] pruss-rproc 4a300000.pruss: SYSEV60 -> CH0 (CMR15 0x00000000)
    [    5.611047] pruss-rproc 4a300000.pruss: CH0 -> HOST0 (HMR0 0x00000000)
    [    5.611057] pruss-rproc 4a300000.pruss: configured system_events = 0x1000000000000000 intr_channels = 0x00000001 host_intr = 0x00000001
    [    5.682235]  remoteproc0: starting PRU0: entry-point = 0x0
    [    5.682261]  remoteproc0: remote processor 4a334000.pru0 is now up
    [    5.703258]  remoteproc0: kicking vqid 0 on PRU0
    [    5.703315] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    5.747505]  remoteproc1: powering up 4a338000.pru1
    [    5.782423]  remoteproc1: Booting fw image am335x-pru1-fw, size 104424
    [    5.788642] pru-rproc 4a338000.pru1: version 0 event_chnl_map_size 1 event_chnl_map 00000402
    [    5.788654] pru-rproc 4a338000.pru1: sysevt-to-ch[59] -> 1
    [    5.788663] pru-rproc 4a338000.pru1: skip intr mapping for chnl 0
    [    5.788672] pru-rproc 4a338000.pru1: chnl-to-host[1] -> 1
    [    5.788679] pru-rproc 4a338000.pru1: skip intr mapping for chnl 2
    [    5.788686] pru-rproc 4a338000.pru1: skip intr mapping for chnl 3
    [    5.788694] pru-rproc 4a338000.pru1: skip intr mapping for chnl 4
    [    5.788701] pru-rproc 4a338000.pru1: skip intr mapping for chnl 5
    [    5.788708] pru-rproc 4a338000.pru1: skip intr mapping for chnl 6
    [    5.788716] pru-rproc 4a338000.pru1: skip intr mapping for chnl 7
    [    5.788723] pru-rproc 4a338000.pru1: skip intr mapping for chnl 8
    [    5.788730] pru-rproc 4a338000.pru1: skip intr mapping for chnl 9
    [    5.788743] pruss-rproc 4a300000.pruss: SYSEV59 -> CH1 (CMR14 0x01000000)
    [    5.788752] pruss-rproc 4a300000.pruss: SYSEV60 -> CH0 (CMR15 0x00000000)
    [    5.788762] pruss-rproc 4a300000.pruss: CH0 -> HOST0 (HMR0 0x00000000)
    [    5.788771] pruss-rproc 4a300000.pruss: CH1 -> HOST1 (HMR0 0x00000100)
    [    5.788781] pruss-rproc 4a300000.pruss: configured system_events = 0x1800000000000000 intr_channels = 0x00000003 host_intr = 0x00000003
    [    5.867408]  remoteproc1: starting PRU1: entry-point = 0x0
    [    5.867433]  remoteproc1: remote processor 4a338000.pru1 is now up
    [    5.886999]  remoteproc1: mbox msg: 0x0
    [    5.887043] virtio_rpmsg_bus virtio1: creating channel rpmsg-pru addr 0x1e
    [    5.893607]  remoteproc1: kicking vqid 0 on PRU1
    [    5.893632] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    5.908627] virtio_rpmsg_bus virtio1: creating channel rpmsg-pru addr 0x1f
    [    5.936338]  remoteproc1: kicking vqid 0 on PRU1
    [    5.936387]  remoteproc1: mbox msg: 0x0
    [    5.936396]  remoteproc1: no message was found in vqid 0
    [    5.948925] rpmsg_pru rpmsg0: new rpmsg_pru device: /dev/rpmsg_pru30
    [    5.961689] rpmsg_pru rpmsg1: new rpmsg_pru device: /dev/rpmsg_pru31
    [    5.973957] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
    [    5.997250] FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [    6.313486] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
    [    6.618493] random: nonblocking pool is initialized
    [    7.788531] net eth0: initializing cpsw version 1.12 (0)
    [    7.796084] net eth0: phy found : id is : 0x7c0f1
    [    7.800505] libphy: PHY 4a101000.mdio:01 not found
    [    7.805130] net eth0: phy 4a101000.mdio:01 not found on slave 1
    [    9.149938] NET: Registered protocol family 10
    [    9.164809] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    [   10.871503] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
    [   10.878926] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    
    7331.bootlog.txt
    =~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2016.02.18 15:33:46 =~=~=~=~=~=~=~=~=~=~=~=
    
    
    U-Boot SPL 2015.07 (Oct 07 2015 - 14:27:57)
    reading args
    spl_load_image_fat_os: error reading image args, err - -1
    reading u-boot.img
    reading u-boot.img
    
    
    
    U-Boot 2015.07 (Oct 07 2015 - 14:27:57 -0400)
    
    
           Watchdog enabled
    
    I2C:   ready
    
    DRAM:  512 MiB
    
    NAND:  0 MiB
    
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    
    reading uboot.env
    
    
    ** Unable to read "uboot.env" from mmc0:1 **
    
    Using default environment
    
    
    Net:   <ethaddr> not set. Validating first E-fuse MAC
    
    cpsw, usb_ether
    
    Hit any key to stop autoboot:  1  0 
    
    switch to partitions #0, OK
    
    mmc0 is current device
    
    SD/MMC found on device 0
    
    reading boot.scr
    
    ** Unable to read file boot.scr **
    
    reading uEnv.txt
    
    ** Unable to read file uEnv.txt **
    
    3112776 bytes read in 217 ms (13.7 MiB/s)
    
    33802 bytes read in 27 ms (1.2 MiB/s)
    
    Kernel image @ 0x82000000 [ 0x000000 - 0x2f7f48 ]
    
    ## Flattened Device Tree blob at 88000000
    
       Booting using the fdt blob at 0x88000000
    
       Loading Device Tree to 8fff4000, end 8ffff409 ... OK
    
    
    Starting kernel ...
    
    
    [    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.1.13mrb18FEB2016-g8dc6617 (mbrainerd@oscar) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #13 PREEMPT Thu Feb 18 15:39:30 CST 2016
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] Machine model: TI AM335x BeagleBone Black
    [    0.000000] cma: Reserved 24 MiB at 0x9e800000
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (sgx neon )
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129920
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=00000000-02 rw 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: 485648K/524288K available (6035K kernel code, 252K rwdata, 1992K rodata, 264K init, 225K bss, 14064K reserved, 24576K cma-reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc07df02c   (8029 kB)
    [    0.000000]       .init : 0xc07e0000 - 0xc0822000   ( 264 kB)
    [    0.000000]       .data : 0xc0822000 - 0xc0861228   ( 253 kB)
    [    0.000000]        .bss : 0xc0864000 - 0xc089c768   ( 226 kB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] Preemptible hierarchical RCU implementation.
    [    0.000000] Additional per-CPU info printed with stalls.
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] OMAP clockevent source: timer2 at 26000000 Hz
    [    0.000010] sched_clock: 32 bits at 26MHz, resolution 38ns, wraps every 82595524588ns
    [    0.000025] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 73510017198 ns
    [    0.000034] OMAP clocksource: timer1 at 26000000 Hz
    [    0.000180] Console: colour dummy device 80x30
    [    0.000199] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.000204] This ensures that you still see kernel messages. Please
    [    0.000208] update your kernel commandline.
    [    0.000223] Calibrating delay loop... 1082.16 BogoMIPS (lpj=5410816)
    [    0.089347] pid_max: default: 32768 minimum: 301
    [    0.089433] Security Framework initialized
    [    0.089476] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.089485] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.090043] Initializing cgroup subsys blkio
    [    0.090063] Initializing cgroup subsys memory
    [    0.090098] Initializing cgroup subsys devices
    [    0.090111] Initializing cgroup subsys freezer
    [    0.090122] Initializing cgroup subsys perf_event
    [    0.090142] CPU: Testing write buffer coherency: ok
    [    0.090466] Setting up static identity map for 0x80008200 - 0x80008270
    [    0.091735] devtmpfs: initialized
    [    0.099451] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.106296] omap_hwmod: tptc0 using broken dt data from edma
    [    0.106384] omap_hwmod: tptc1 using broken dt data from edma
    [    0.106459] omap_hwmod: tptc2 using broken dt data from edma
    [    0.110532] omap_hwmod: debugss: _wait_target_disable failed
    [    0.164149] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.165945] pinctrl core: initialized pinctrl subsystem
    [    0.166942] NET: Registered protocol family 16
    [    0.168654] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.199363] cpuidle: using governor ladder
    [    0.229354] cpuidle: using governor menu
    [    0.232258] OMAP GPIO hardware version 0.1
    [    0.239730] No ATAGs?
    [    0.239757] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.275772] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
    [    0.278265] vgaarb: loaded
    [    0.278695] SCSI subsystem initialized
    [    0.279011] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
    [    0.279157] pps_core: LinuxPPS API ver. 1 registered
    [    0.279164] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.279196] PTP clock support registered
    [    0.279963] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.280708] Switched to clocksource timer1
    [    0.288678] NET: Registered protocol family 2
    [    0.289432] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.289475] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.289510] TCP: Hash tables configured (established 4096 bind 4096)
    [    0.289576] UDP hash table entries: 256 (order: 0, 4096 bytes)
    [    0.289590] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    [    0.289723] NET: Registered protocol family 1
    [    0.290042] RPC: Registered named UNIX socket transport module.
    [    0.290055] RPC: Registered udp transport module.
    [    0.290060] RPC: Registered tcp transport module.
    [    0.290065] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.290586] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [    0.290624] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.292292] futex hash table entries: 256 (order: -1, 3072 bytes)
    [    0.292367] audit: initializing netlink subsys (disabled)
    [    0.292423] audit: type=2000 audit(0.280:1): initialized
    [    0.298238] VFS: Disk quotas dquot_6.6.0
    [    0.298416] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    0.300124] NFS: Registering the id_resolver key type
    [    0.300186] Key type id_resolver registered
    [    0.300192] Key type id_legacy registered
    [    0.300258] jffs2: version 2.2. (NAND) (SUMMARY)  2001-2006 Red Hat, Inc.
    [    0.302476] NET: Registered protocol family 38
    [    0.302537] io scheduler noop registered
    [    0.302548] io scheduler deadline registered
    [    0.302595] io scheduler cfq registered (default)
    [    0.303452] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.305036] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.307960] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 155, base_baud = 3000000) is a 8250
    [    0.884248] console [ttyS0] enabled
    [    0.888296] [drm] Initialized drm 1.1.0 20060810
    [    0.900918] brd: module loaded
    [    0.907714] loop: module loaded
    [    0.911487] mtdoops: mtd device (mtddev=name/number) must be supplied
    [    0.980757] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
    [    0.986418] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
    [    0.993017] libphy: 4a101000.mdio: probed
    [    0.996748] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
    [    1.005835] cpsw 4a100000.ethernet: Detected MACID = 20:cd:39:dc:f9:33
    [    1.013141] mousedev: PS/2 mouse device common for all mice
    [    1.018323] i2c /dev entries driver
    [    1.022736] omap_hsmmc 48060000.mmc: Got CD GPIO
    [    1.097515] mmc0: host does not support reading read-only switch, assuming write-enable
    [    1.105254] ledtrig-cpu: registered to indicate activity on CPUs
    [    1.111222] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [    1.116643] mmc0: new high speed SDHC card at address 0001
    [    1.122562] mmcblk0: mmc0:0001 00000 3.79 GiB 
    [    1.128167] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [    1.133685]  mmcblk0: p1 p2
    [    1.139818] oprofile: using arm/armv7
    [    1.145767] Initializing XFRM netlink socket
    [    1.149809] NET: Registered protocol family 17
    [    1.154103] NET: Registered protocol family 15
    [    1.158366] Key type dns_resolver registered
    [    1.162636] omap_voltage_late_init: Voltage driver support not added
    [    1.168874] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
    [    1.177061] cpu cpu0: cpu0 clock notifier not ready, retry
    [    1.182488] ThumbEE CPU extension supported.
    [    1.186532] Registering SWP/SWPB emulation handler
    [    1.217280] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [    1.222316] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    1.227531] mmc1: MAN_BKOPS_EN bit is not set
    [    1.232027] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
    [    1.241539] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
    [    1.250848] cpufreq: __cpufreq_add_dev: CPU0: Running at unlisted freq: 1083333 KHz
    [    1.259458] mmc1: new high speed MMC card at address 0001
    [    1.264515] cpufreq: __cpufreq_add_dev: CPU0: Unlisted initial frequency changed to: 1000000 KHz
    [    1.273141] mmcblk1: mmc1:0001 MMC04G 3.52 GiB 
    [    1.277475] mmcblk1boot0: mmc1:0001 MMC04G partition 1 16.0 MiB
    [    1.283491] hctosys: unable to open rtc device (rtc0)
    [    1.291981] mmcblk1boot1: mmc1:0001 MMC04G partition 2 16.0 MiB
    [    1.299520]  mmcblk1: p1 p2
    [    1.324987] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    1.332650] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    1.340690] devtmpfs: mounted
    [    1.343805] Freeing unused kernel memory: 264K (c07e0000 - c0822000)
    
    INIT: version 2.88 booting
    
    Error opening /dev/fb0: No such file or directory
    Starting udev
    udev: Not using udev cache because of changes detected in the following files:
    udev:     /proc/version /proc/cmdline /proc/devices
    udev:     lib/udev/rules.d/* etc/udev/rules.d/*
    udev: The udev cache will be regenerated. To identify the detected changes,
    udev: compare the cached sysconf at   /etc/udev/cache.data
    udev: against the current sysconf at  /dev/shm/udev.cache
    [    2.242315] udevd[96]: starting version 182
    [    2.598108] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [    2.708324] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
    [    2.948837] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
    [    3.503435] pruss-rproc 4a300000.pruss: creating platform devices for PRU cores
    [    3.635503]  remoteproc0: 4a334000.pru0 is available
    [    3.680895]  remoteproc0: Note: remoteproc is still under development and considered experimental.
    [    3.740326]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    4.017288]  remoteproc0: registered virtio0 (type 7)
    [    4.050213] pru-rproc 4a334000.pru0: PRU rproc node /ocp/pruss@4a300000/pru@4a334000 probed successfully
    [    4.261316]  remoteproc1: 4a338000.pru1 is available
    [    4.265927]  remoteproc1: Note: remoteproc is still under development and considered experimental.
    [    4.598293]  remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    5.023193]  remoteproc1: registered virtio1 (type 7)
    [    5.027965] pru-rproc 4a338000.pru1: PRU rproc node /ocp/pruss@4a300000/pru@4a338000 probed successfully
    [    5.509370]  remoteproc0: powering up 4a334000.pru0
    [    5.556750]  remoteproc0: Booting fw image am335x-pru0-fw, size 46276
    [    5.600376] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [    5.611057] pruss-rproc 4a300000.pruss: configured system_events = 0x1000000000000000 intr_channels = 0x00000001 host_intr = 0x00000001
    [    5.682261]  remoteproc0: remote processor 4a334000.pru0 is now up
    [    5.703315] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    5.747505]  remoteproc1: powering up 4a338000.pru1
    [    5.782423]  remoteproc1: Booting fw image am335x-pru1-fw, size 104424
    [    5.788781] pruss-rproc 4a300000.pruss: configured system_events = 0x1800000000000000 intr_channels = 0x00000003 host_intr = 0x00000003
    [    5.867433]  remoteproc1: remote processor 4a338000.pru1 is now up
    [    5.887043] virtio_rpmsg_bus virtio1: creating channel rpmsg-pru addr 0x1e
    [    5.893632] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    5.908627] virtio_rpmsg_bus virtio1: creating channel rpmsg-pru addr 0x1f
    [    5.948925] rpmsg_pru rpmsg0: new rpmsg_pru device: /dev/rpmsg_pru30
    [    5.961689] rpmsg_pru rpmsg1: new rpmsg_pru device: /dev/rpmsg_pru31
    [    5.973957] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
    [    5.997250] FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [    6.313486] EXT4-fs (mmcblk0p2): re-mounted. Opts: data=ordered
    bootlogd: cannot allocate pseudo tty: No such file or directory
    Starting random number generator daemon.
    [    6.618493] random: nonblocking pool is initialized
    Populating dev cache
    ALSA: Restoring mixer settings...
    /usr/sbin/alsactl: load_state:1729: No soundcards found...
    Sun Jan 31 16:05:58 UTC 2016
    
    INIT: Entering runlevel: 5
    
    Configuring network interfaces... [    7.788531] net eth0: initializing cpsw version 1.12 (0)
    [    7.796084] net eth0: phy found : id is : 0x7c0f1
    [    7.800505] libphy: PHY 4a101000.mdio:01 not found
    [    7.805130] net eth0: phy 4a101000.mdio:01 not found on slave 1
    done.
    Starting system message bus: dbus.
    UIM SYSFS Node Not Found
    Initializing the graphics driver ...
    PVR:(Error): OpenServices: Cannot open device driver /dev/omapdrm_pvr. [140, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2572, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    PVR:(Error): main: SrvInit failed (4) [49, /pvrsrvinit.c]
    Starting Dropbear SSH server: [    9.149938] NET: Registered protocol family 10
    [    9.164809] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    dropbear.
    Starting telnet daemon.
    Starting rpcbind daemon...done.
    starting statd: done
    Starting syslogd/klogd: done
    Starting thttpd.
    Starting Lighttpd Web Server: lighttpd.
    2016-01-31 16:06:00: (/home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-linux-gnueabi/lighttpd/1.4.35-r1/lighttpd-1.4.35/src/log.c.164) server started 
    /
    Starting Matrix GUI application.
    [   10.871503] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
    [   10.878926] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    Enabling thermal zones...
    /etc/rc5.d/S98thermal-zone-init: line 7: /sys/class/thermal/thermal_zone*/mode: No such file or directory
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPLv3 packages:
    autoconf
    binutils
    cpp-symlinks
    cpp
    g++-symlinks
    g++
    gcc-symlinks
    gcc
    gdbserver
    gstreamer1.0-libav
    libgmp10
    libmpc3
    libmpfr4
    make
    
    If you do not wish to distribute GPLv3 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above
    
    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************
    ***************************************************************
    
    
     _____                    _____           _         _   
    
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
    
                  |___|                    |___|            
    
    
    
    Arago Project http://arago-project.org BlueGiant /dev/ttyO0
    
    
    
    Arago 2015.09 BlueGiant /dev/ttyO0
    
    
    
    BlueGiant login: root
    
    

  • I don't see any pin mux conflicts occurring in dmesg. Can you post your dts file where you are trying to configure your pin muxing?

    Jason

  • 6254.DTS_file.txt
    /*
     * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
     *
     * This program is free software; you can redistribute it and/or modify
     * it under the terms of the GNU General Public License version 2 as
     * published by the Free Software Foundation.
     */
    /dts-v1/;
    
    #include "am33xx.dtsi"
    #include "am335x-bone-common.dtsi"
    
    / {
    	model = "TI AM335x BeagleBone Black";
    	compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
    };
    
    &ldo3_reg {
    	regulator-min-microvolt = <1800000>;
    	regulator-max-microvolt = <1800000>;
    	regulator-always-on;
    };
    
    &mmc1 {
    	vmmc-supply = <&vmmcsd_fixed>;
    };
    
    &mmc2 {
    	vmmc-supply = <&vmmcsd_fixed>;
    	pinctrl-names = "default";
    	pinctrl-0 = <&emmc_pins>;
    	bus-width = <8>;
    	status = "okay";
    };
    
    &sgx {
    	status = "okay";
    };
    
    &am33xx_pinmux {
    	nxp_hdmi_bonelt_pins: nxp_hdmi_bonelt_pins {
    		pinctrl-single,pins = <
    			0x1b0 0x03      /* xdma_event_intr0, OMAP_MUX_MODE3 | AM33XX_PIN_OUTPUT */
      		0xa0 0x08       /* lcd_data0.lcd_data0, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xa4 0x08       /* lcd_data1.lcd_data1, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xa8 0x08       /* lcd_data2.lcd_data2, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xac 0x08       /* lcd_data3.lcd_data3, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xb0 0x08       /* lcd_data4.lcd_data4, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xb4 0x08       /* lcd_data5.lcd_data5, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xb8 0x08       /* lcd_data6.lcd_data6, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xbc 0x08       /* lcd_data7.lcd_data7, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xc0 0x08       /* lcd_data8.lcd_data8, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xc4 0x08       /* lcd_data9.lcd_data9, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xc8 0x08       /* lcd_data10.lcd_data10, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xcc 0x08       /* lcd_data11.lcd_data11, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xd0 0x08       /* lcd_data12.lcd_data12, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xd4 0x08       /* lcd_data13.lcd_data13, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xd8 0x08       /* lcd_data14.lcd_data14, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xdc 0x08       /* lcd_data15.lcd_data15, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT | AM33XX_PULL_DISA */
    			0xe0 0x00       /* lcd_vsync.lcd_vsync, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
    			0xe4 0x00       /* lcd_hsync.lcd_hsync, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
    			0xe8 0x00       /* lcd_pclk.lcd_pclk, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
    			0xec 0x00       /* lcd_ac_bias_en.lcd_ac_bias_en, OMAP_MUX_MODE0 | AM33XX_PIN_OUTPUT */
    		>;
    	};
    	nxp_hdmi_bonelt_off_pins: nxp_hdmi_bonelt_off_pins {
    		pinctrl-single,pins = <
    			0x1b0 0x03      /* xdma_event_intr0, OMAP_MUX_MODE3 | AM33XX_PIN_OUTPUT */
    		>;
    	};
    
    	mcasp0_pins: mcasp0_pins {
    		pinctrl-single,pins = <
    			0x1ac (PIN_INPUT_PULLUP | MUX_MODE0)	/* mcasp0_ahclkx.mcasp0_ahclkx */
    			0x19c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mcasp0_ahclkr.mcasp0_axr2 */
    			0x194 (PIN_OUTPUT_PULLUP | MUX_MODE0)	/* mcasp0_fsx.mcasp0_fsx */
    			0x190 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)	/* mcasp0_aclkx.mcasp0_aclkx */
    			0x06c (PIN_OUTPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a11.GPIO1_27 */
    		>;
    	};
    
    	mcasp0_pins_sleep: mcasp0_pins_sleep {
    		pinctrl-single,pins = <
    			0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* mcasp0_ahclkx.mcasp0_ahclkx */
    			0x19c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* mcasp0_ahclkr.mcasp0_axr2 */
    			0x194 (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* mcasp0_fsx.mcasp0_fsx */
    			0x190 (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* mcasp0_aclkx.mcasp0_aclkx */
    			0x06c (PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a11.GPIO1_27 */
    		>;
    	};
    };
    
    &lcdc {
    	status = "okay";
    };
    
    &mcasp0	{
    	pinctrl-names = "default", "sleep";
    	pinctrl-0 = <&mcasp0_pins>;
    	pinctrl-1 = <&mcasp0_pins_sleep>;
    	status = "okay";
    	op-mode = <0>;	/* MCASP_IIS_MODE */
    	tdm-slots = <2>;
    	serial-dir = <	/* 0: INACTIVE, 1: TX, 2: RX */
    			0 0 1 0
    		>;
    	tx-num-evt = <1>;
    	rx-num-evt = <1>;
    };
    
    / {
    	hdmi: hdmi {
    		compatible = "ti,tilcdc,slave";
    		i2c = <&i2c0>;
    		pinctrl-names = "default", "off";
    		pinctrl-0 = <&nxp_hdmi_bonelt_pins>;
    		pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>;
    		status = "okay";
    	};
    
    	clk_mcasp0_fixed: clk_mcasp0_fixed {
    	      #clock-cells = <0>;
    	      compatible = "fixed-clock";
    	      clock-frequency = <24576000>;
    	};
    
    	clk_mcasp0: clk_mcasp0 {
    	      #clock-cells = <0>;
    	      compatible = "gpio-gate-clock";
    	      clocks = <&clk_mcasp0_fixed>;
    	      enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */
    	};
    
    	hdmi_audio: hdmi_audio@0 {
    	       compatible = "linux,hdmi-audio";
    	       status = "okay";
    	};
    
    	sound: sound {
    		compatible = "ti,beaglebone-black-audio";
    		ti,model = "TI BeagleBone Black";
    		ti,audio-codec = <&hdmi_audio>;
    		ti,mcasp-controller = <&mcasp0>;
    		ti,audio-routing = "HDMI Out",	"TX";
    		clocks = <&clk_mcasp0>;
    		clock-names = "mclk";
    	};
    };
    
    #include "am335x-boneblack-prucape.dtsi"
    
    /* ****************************************************************************
     * am335x-boneblack-prucape.dtsi
     */ 
    
    &lcdc {
    	status = "disabled";  		/* Disable HDMI due to pin mux conflicts with PRU Cape */
    };
    
    &hdmi {
    	status = "disabled";
    };
    
    &mcasp0 {
    	status = "disabled";
    };
    
    &sound {
    	status = "disabled";
    };
     
     
    &am33xx_pinmux {
    	pru_cape_bone_pins: pru_cape_bone_pins {
    		pinctrl-single,pins = <
          0x1a0 (PIN_INPUT_PULLDOWN | MUX_MODE1)      // eQEP0A       P9-42 AZIMUTH 
    			0x1a4 (PIN_INPUT_PULLDOWN | MUX_MODE1)      // eQEP0B       P9-27 AZIMUTH 
    //			0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE1)      // eQEP0index   P9-41 AZIMUTH 
    //    	0x1ac (PIN_INPUT_PULLDOWN | MUX_MODE1)      // eQEP0Strobe  P9-25 AZIMUTH
    			0x0d0 (PIN_INPUT_PULLDOWN | MUX_MODE2)      // eQEP1A       P8-35 ELEVATION
    			0x0d4 (PIN_INPUT_PULLDOWN | MUX_MODE2)      // eQEP1B       P8-33 ELEVATION
    //			0x0d8 (PIN_INPUT_PULLDOWN | MUX_MODE2)      // eQEP1index   P8-31 ELEVATION
    //			0x0dC (PIN_INPUT_PULLDOWN | MUX_MODE2)      // eQEP1Strobe  P8-32 ELEVATION
          0x030 (PIN_INPUT_PULLDOWN | MUX_MODE4)      // eQEP2A         P8-12 TILT 
    			0x034 (PIN_INPUT_PULLDOWN | MUX_MODE4)      // eQEP2B         P8-11 TILT
    //			0x038 (PIN_INPUT_PULLDOWN | MUX_MODE4)      // eQEP2index     P8-16 TILT
    //      0x03c (PIN_INPUT_PULLDOWN | MUX_MODE4)      // eQEP2Strobe    P8-15 TILT
    			/*
    			 * MUX'd Outputs
    			 */
    			0x0a0 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_0   MUX_ADDR_0  P8-45
    			0x0a4 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_1   MUX_ADDR_1  P8-46
    			0x0a8 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_2   MUX_ADDR_2  P8-43
    			0x0ac (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_3   MUX_DATA_0  P8-44
    			0x0b0 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_4   MUX_DATA_1  P8-27
    			0x0b4 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_5   MUX_DATA_2  P8-29
    			0x0b8 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_6   MUX_DATA_3  P8-28
    			0x0bc (PIN_OUTPUT_PULLUP | MUX_MODE5)     //pru1_r30_7   MUX_ENABLE  P8-40
    			0x0e0 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_8   MUX_RESET   P8-27  
    			0x0e4 (PIN_OUTPUT_PULLDOWN | MUX_MODE5)   //pru1_r30_9   Toggle      P8-29
    		>;
    	};
    	
      ehrpwm0_pins: pinmux_ehrpwm0_pins {
        pinctrl-single,pins = <
          0x150 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)      // ehrpwm0A       P9-22 Azimuth PWM
          0x154 (PIN_OUTPUT_PULLDOWN | MUX_MODE3)      // ehrpwm0B       P9-21 Skew 1 PWM
        >;
      };
    
    //  ecap0_pins: pinmux_ecap0_pins {     //test debug
    //    pinctrl-single,pins = <
    //      0x164 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)     // ECAP PWM P9->42
    //    >;  
    //  };
    
      ehrpwm1_pins: pinmux_ehrpwm1_pins {
        pinctrl-single,pins = <
    	    0x048 (PIN_OUTPUT_PULLDOWN | MUX_MODE6)     // ehrpwm1A     P9-14 Elevation PWM		
    	    0x04c (PIN_OUTPUT_PULLDOWN | MUX_MODE6)     // ehrpwm1B     P9-16 Skew 2 PWM
        >;
      };
    
      ehrpwm2_pins: pinmux_ehrpwm2_pins {
        pinctrl-single,pins = <
    	    0x020 (PIN_OUTPUT_PULLDOWN | MUX_MODE4)     // ehrpwm2A     P8-19 Tilt PWM		
        >;
      };
    
    //  ecap2_pins: pinmux_ecap2_pins {
    //    pinctrl-single,pins = <
    //      0x19c (PIN_OUTPUT_PULLDOWN | MUX_MODE4)     // P9-28  eCAP2 pwm
    //    >;  
    //  };
     
    };  
    
    
    &epwmss0 {
      status = "okay";
    };
    
    //&ecap0 {
    //  status = "okay";
    //  pinctrl-names = "default";
    //  pinctrl-0 = <&ecap0_pins>;
    //};
    
    &ehrpwm0 {
      status = "okay";
      pinctrl-names = "default";
      pinctrl-0 = <&ehrpwm0_pins>;
    };
    
    &epwmss1 {
      status = "okay";
    };
     
    &ehrpwm1 {
      status = "okay";
      pinctrl-names = "default";
      pinctrl-0 = <&ehrpwm1_pins>;
      status = "okay";
    };
    
    &epwmss2 {
      status = "okay";
    };
    
    //&ecap2 {
    //  status = "okay";
    //  pinctrl-names = "default";
    //  pinctrl-0 = <&ecap2_pins>;
    //};
    
    &ehrpwm2 {
      status = "okay";
      pinctrl-names = "default";
      pinctrl-0 = <&ehrpwm2_pins>;
      status = "okay";
    };
    
    
    &pruss {
      pinctrl-names = "default";
    	pinctrl-0 = <&pru_cape_bone_pins>;
    };
    
    
    

  • Nothing jumps out at me in the dts file. Have you tried turning off the kernel modules that are enabled by default in your .config file? They might be trying to control the same registers that your PRU firmware is trying to control. Below are the default .config settings.

    CONFIG_PWM_TIPWMSS=y
    CONFIG_PWM_TIECAP=y
    CONFIG_PWM_TIEHRPWM=y
  • I just did a grep for:

    CONFIG_PWM_TIPWMSS=y
    CONFIG_PWM_TIECAP=y
    CONFIG_PWM_TIEHRPWM=y

    They are not in my .config file,

    They are in arch/arm/configs/tisdk_am335x-evm_defconfig, which is what I started with.

    But I turned that off a long time ago from menuconfig panel > Device Drivers > Pulse-width Modulation (PWM) support.

  • What is the Status of this issue?

    How do we escalate this?

    I have been struggling with TI support for more than Three months.

    Regards,

    Mike