summaryrefslogtreecommitdiff
path: root/firmware/drivers/m5636.c
blob: e7b7a174df3cfd0260518980bb97a1c9bd558938 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/***************************************************************************
 *             __________               __   ___.
 *   Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
 *   Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
 *   Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
 *   Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
 *                     \/            \/     \/    \/            \/
 * $Id$
 *
 * Copyright (C) 2006 Ulrich Pegelow
 *
 * All files in this archive are subject to the GNU General Public License.
 * See the file COPYING in the source tree root for full license agreement.
 *
 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
 * KIND, either express or implied.
 *
 ****************************************************************************/

#include "system.h"
#include "kernel.h"
#include "logf.h"
#include "m5636.h"
#include "m5636-target.h"

/* Disclaimer: This code had to be developed without any documentation for the
               M5636 USBOTG chip, due to the restrictive information policy of
               its manufacturer.
               The development is solely based on reverse engineering.
               Malfunctioning (with the risk of possible damage to the
               hardware) can not be fully excluded.
               USE THIS CODE AT YOUR OWN RISK!
*/

/* Init: This currently just puts the M5636 into sleep mode */

void m5636_init(void)
{
    m5636_device_init();

    M5636_4068 |= 0x0003; /* ???? */
    M5636_4068 |= 0x0080; /* ???? */
    M5636_4078 |= 0x0001; /* ???? */
}