Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- uchcom.c.bak Mon Jul 8 01:22:38 2013
- +++ uchcom.c Fri May 2 08:59:21 2014
- @@ -695,16 +695,18 @@
- if (uchcom_calc_divider_settings(&dv, rate))
- return EINVAL;
- - if ((err = uchcom_write_reg(sc,
- - UCHCOM_REG_BPS_PRE, dv.dv_prescaler,
- - UCHCOM_REG_BPS_DIV, dv.dv_div)) ||
- - (err = uchcom_write_reg(sc,
- - UCHCOM_REG_BPS_MOD, dv.dv_mod,
- - UCHCOM_REG_BPS_PAD, 0))) {
- - printf("%s: cannot set DTE rate: %s\n",
- - sc->sc_dev.dv_xname, usbd_errstr(err));
- - return EIO;
- - }
- +err = uchcom_generic_control_out(sc, UCHCOM_REQ_WRITE_REG, 0x1312, 0xb202);
- +err = uchcom_generic_control_out(sc, UCHCOM_REQ_WRITE_REG, 0x0f2c, 0x000c);
- +// if ((err = uchcom_write_reg(sc,
- +// UCHCOM_REG_BPS_PRE, dv.dv_prescaler,
- +// UCHCOM_REG_BPS_DIV, dv.dv_div)) ||
- +// (err = uchcom_write_reg(sc,
- +// UCHCOM_REG_BPS_MOD, dv.dv_mod,
- +// UCHCOM_REG_BPS_PAD, 0))) {
- +// printf("%s: cannot set DTE rate: %s\n",
- +// sc->sc_dev.dv_xname, usbd_errstr(err));
- +// return EIO;
- +// }
- return 0;
- }
- @@ -751,7 +753,7 @@
- else
- lcr2 |= UCHCOM_LCR2_PAREVEN;
- }
- -
- +lcr2 |= 0x10;
- err = uchcom_write_reg(sc, UCHCOM_REG_LCR1, lcr1, UCHCOM_REG_LCR2,
- lcr2);
- if (err) {
- @@ -783,9 +785,9 @@
- uchcom_reset_chip(struct uchcom_softc *sc)
- {
- usbd_status err;
- - uint8_t lcr1, lcr2, pre, div, mod;
- +// uint8_t lcr1, lcr2, pre, div, mod;
- uint16_t val=0, idx=0;
- -
- +#if 0
- err = uchcom_read_reg(sc, UCHCOM_REG_LCR1, &lcr1, UCHCOM_REG_LCR2, &lcr2);
- if (err)
- goto failed;
- @@ -813,7 +815,9 @@
- DPRINTF(("%s: reset v=0x%04X, i=0x%04X\n",
- sc->sc_dev.dv_xname, val, idx));
- -
- +#endif
- +val=0x501f;//0xc39c;
- +idx=0xd90a;//0xb2b9;
- err = uchcom_generic_control_out(sc, UCHCOM_REQ_RESET, val, idx);
- if (err)
- goto failed;
- @@ -863,7 +867,7 @@
- ret = uchcom_set_dtrrts(sc, sc->sc_dtr, sc->sc_rts);
- if (ret)
- return ret;
- -
- +uchcom_read_status(sc, NULL);
- return 0;
- }
- @@ -981,11 +985,19 @@
- if (sc->sc_dying)
- return EIO;
- - ret = uchcom_setup_intr_pipe(sc);
- +// ret = uchcom_setup_intr_pipe(sc);
- +// if (ret)
- +// return ret;
- +
- + ret = uchcom_setup_comm(sc);
- if (ret)
- return ret;
- ret = uchcom_setup_comm(sc);
- + if (ret)
- + return ret;
- +
- + ret = uchcom_setup_intr_pipe(sc);
- if (ret)
- return ret;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement